2 llvm::Module *ModuleVal;
3 llvm::Function *FunctionVal;
4 llvm::BasicBlock *BasicBlockVal;
5 llvm::TerminatorInst *TermInstVal;
6 llvm::Instruction *InstVal;
7 llvm::Constant *ConstVal;
9 const llvm::Type *PrimType;
10 std::list<llvm::PATypeHolder> *TypeList;
11 llvm::PATypeHolder *TypeVal;
12 llvm::Value *ValueVal;
13 std::vector<llvm::Value*> *ValueList;
14 llvm::ArgListType *ArgList;
15 llvm::TypeWithAttrs TypeWithAttrs;
16 llvm::TypeWithAttrsList *TypeWithAttrsList;
17 llvm::ValueRefList *ValueRefList;
19 // Represent the RHS of PHI node
20 std::list<std::pair<llvm::Value*,
21 llvm::BasicBlock*> > *PHIList;
22 std::vector<std::pair<llvm::Constant*, llvm::BasicBlock*> > *JumpTable;
23 std::vector<llvm::Constant*> *ConstVector;
25 llvm::GlobalValue::LinkageTypes Linkage;
26 llvm::GlobalValue::VisibilityTypes Visibility;
28 llvm::APInt *APIntVal;
36 char *StrVal; // This memory is strdup'd!
37 llvm::ValID ValIDVal; // strdup'd memory maybe!
39 llvm::Instruction::BinaryOps BinaryOpVal;
40 llvm::Instruction::TermOps TermOpVal;
41 llvm::Instruction::MemoryOps MemOpVal;
42 llvm::Instruction::CastOps CastOpVal;
43 llvm::Instruction::OtherOps OtherOpVal;
44 llvm::ICmpInst::Predicate IPredicate;
45 llvm::FCmpInst::Predicate FPredicate;
47 #define ESINT64VAL 257
48 #define EUINT64VAL 258
49 #define ESAPINTVAL 259
50 #define EUAPINTVAL 260
51 #define LOCALVAL_ID 261
52 #define GLOBALVAL_ID 262
63 #define STRINGCONSTANT 273
64 #define ATSTRINGCONSTANT 274
65 #define ZEROINITIALIZER 275
77 #define THREAD_LOCAL 287
88 #define EXTERN_WEAK 298
99 #define SIDEEFFECT 309
102 #define FASTCC_TOK 312
103 #define COLDCC_TOK 313
104 #define X86_STDCALLCC_TOK 314
105 #define X86_FASTCALLCC_TOK 315
106 #define DATALAYOUT 316
112 #define UNREACHABLE 322
155 #define GETELEMENTPTR 365
171 #define EXTRACTELEMENT 381
172 #define INSERTELEMENT 382
173 #define SHUFFLEVECTOR 383
180 #define PROTECTED 390
183 extern YYSTYPE llvmAsmlval;