Chris Lattner | 9d2fda6 | 2007-02-13 05:53:56 +0000 | [diff] [blame^] | 1 | typedef union { |
Reid Spencer | 68a24bd | 2005-08-27 18:50:39 +0000 | [diff] [blame] | 2 | llvm::Module *ModuleVal; |
| 3 | llvm::Function *FunctionVal; |
Reid Spencer | 68a24bd | 2005-08-27 18:50:39 +0000 | [diff] [blame] | 4 | llvm::BasicBlock *BasicBlockVal; |
| 5 | llvm::TerminatorInst *TermInstVal; |
| 6 | llvm::Instruction *InstVal; |
Reid Spencer | a132e04 | 2006-12-03 05:46:11 +0000 | [diff] [blame] | 7 | llvm::Constant *ConstVal; |
Reid Spencer | 68a24bd | 2005-08-27 18:50:39 +0000 | [diff] [blame] | 8 | |
Reid Spencer | a132e04 | 2006-12-03 05:46:11 +0000 | [diff] [blame] | 9 | const llvm::Type *PrimType; |
Reid Spencer | 1431061 | 2006-12-31 05:40:51 +0000 | [diff] [blame] | 10 | std::list<llvm::PATypeHolder> *TypeList; |
Reid Spencer | a132e04 | 2006-12-03 05:46:11 +0000 | [diff] [blame] | 11 | llvm::PATypeHolder *TypeVal; |
| 12 | llvm::Value *ValueVal; |
Reid Spencer | a132e04 | 2006-12-03 05:46:11 +0000 | [diff] [blame] | 13 | std::vector<llvm::Value*> *ValueList; |
Reid Spencer | 1431061 | 2006-12-31 05:40:51 +0000 | [diff] [blame] | 14 | llvm::ArgListType *ArgList; |
| 15 | llvm::TypeWithAttrs TypeWithAttrs; |
| 16 | llvm::TypeWithAttrsList *TypeWithAttrsList; |
| 17 | llvm::ValueRefList *ValueRefList; |
| 18 | |
Reid Spencer | 68a24bd | 2005-08-27 18:50:39 +0000 | [diff] [blame] | 19 | // Represent the RHS of PHI node |
Reid Spencer | a132e04 | 2006-12-03 05:46:11 +0000 | [diff] [blame] | 20 | std::list<std::pair<llvm::Value*, |
| 21 | llvm::BasicBlock*> > *PHIList; |
Reid Spencer | 68a24bd | 2005-08-27 18:50:39 +0000 | [diff] [blame] | 22 | std::vector<std::pair<llvm::Constant*, llvm::BasicBlock*> > *JumpTable; |
Reid Spencer | a132e04 | 2006-12-03 05:46:11 +0000 | [diff] [blame] | 23 | std::vector<llvm::Constant*> *ConstVector; |
Reid Spencer | 68a24bd | 2005-08-27 18:50:39 +0000 | [diff] [blame] | 24 | |
| 25 | llvm::GlobalValue::LinkageTypes Linkage; |
Anton Korobeynikov | 178a352 | 2007-01-12 19:22:51 +0000 | [diff] [blame] | 26 | llvm::GlobalValue::VisibilityTypes Visibility; |
Reid Spencer | 1431061 | 2006-12-31 05:40:51 +0000 | [diff] [blame] | 27 | llvm::FunctionType::ParameterAttributes ParamAttrs; |
Reid Spencer | 68a24bd | 2005-08-27 18:50:39 +0000 | [diff] [blame] | 28 | int64_t SInt64Val; |
| 29 | uint64_t UInt64Val; |
| 30 | int SIntVal; |
| 31 | unsigned UIntVal; |
| 32 | double FPVal; |
| 33 | bool BoolVal; |
| 34 | |
| 35 | char *StrVal; // This memory is strdup'd! |
Reid Spencer | 1628cec | 2006-10-26 06:15:43 +0000 | [diff] [blame] | 36 | llvm::ValID ValIDVal; // strdup'd memory maybe! |
Reid Spencer | 68a24bd | 2005-08-27 18:50:39 +0000 | [diff] [blame] | 37 | |
Reid Spencer | a132e04 | 2006-12-03 05:46:11 +0000 | [diff] [blame] | 38 | llvm::Instruction::BinaryOps BinaryOpVal; |
| 39 | llvm::Instruction::TermOps TermOpVal; |
| 40 | llvm::Instruction::MemoryOps MemOpVal; |
| 41 | llvm::Instruction::CastOps CastOpVal; |
| 42 | llvm::Instruction::OtherOps OtherOpVal; |
Reid Spencer | a132e04 | 2006-12-03 05:46:11 +0000 | [diff] [blame] | 43 | llvm::ICmpInst::Predicate IPredicate; |
| 44 | llvm::FCmpInst::Predicate FPredicate; |
Chris Lattner | 9d2fda6 | 2007-02-13 05:53:56 +0000 | [diff] [blame^] | 45 | } YYSTYPE; |
| 46 | #define ESINT64VAL 257 |
| 47 | #define EUINT64VAL 258 |
| 48 | #define LOCALVAL_ID 259 |
| 49 | #define GLOBALVAL_ID 260 |
| 50 | #define FPVAL 261 |
| 51 | #define VOID 262 |
| 52 | #define INTTYPE 263 |
| 53 | #define FLOAT 264 |
| 54 | #define DOUBLE 265 |
| 55 | #define LABEL 266 |
| 56 | #define TYPE 267 |
| 57 | #define LOCALVAR 268 |
| 58 | #define GLOBALVAR 269 |
| 59 | #define LABELSTR 270 |
| 60 | #define STRINGCONSTANT 271 |
| 61 | #define ATSTRINGCONSTANT 272 |
| 62 | #define IMPLEMENTATION 273 |
| 63 | #define ZEROINITIALIZER 274 |
| 64 | #define TRUETOK 275 |
| 65 | #define FALSETOK 276 |
| 66 | #define BEGINTOK 277 |
| 67 | #define ENDTOK 278 |
| 68 | #define DECLARE 279 |
| 69 | #define DEFINE 280 |
| 70 | #define GLOBAL 281 |
| 71 | #define CONSTANT 282 |
| 72 | #define SECTION 283 |
| 73 | #define VOLATILE 284 |
| 74 | #define TO 285 |
| 75 | #define DOTDOTDOT 286 |
| 76 | #define NULL_TOK 287 |
| 77 | #define UNDEF 288 |
| 78 | #define INTERNAL 289 |
| 79 | #define LINKONCE 290 |
| 80 | #define WEAK 291 |
| 81 | #define APPENDING 292 |
| 82 | #define DLLIMPORT 293 |
| 83 | #define DLLEXPORT 294 |
| 84 | #define EXTERN_WEAK 295 |
| 85 | #define OPAQUE 296 |
| 86 | #define EXTERNAL 297 |
| 87 | #define TARGET 298 |
| 88 | #define TRIPLE 299 |
| 89 | #define ALIGN 300 |
| 90 | #define DEPLIBS 301 |
| 91 | #define CALL 302 |
| 92 | #define TAIL 303 |
| 93 | #define ASM_TOK 304 |
| 94 | #define MODULE 305 |
| 95 | #define SIDEEFFECT 306 |
| 96 | #define CC_TOK 307 |
| 97 | #define CCC_TOK 308 |
| 98 | #define FASTCC_TOK 309 |
| 99 | #define COLDCC_TOK 310 |
| 100 | #define X86_STDCALLCC_TOK 311 |
| 101 | #define X86_FASTCALLCC_TOK 312 |
| 102 | #define DATALAYOUT 313 |
| 103 | #define RET 314 |
| 104 | #define BR 315 |
| 105 | #define SWITCH 316 |
| 106 | #define INVOKE 317 |
| 107 | #define UNWIND 318 |
| 108 | #define UNREACHABLE 319 |
| 109 | #define ADD 320 |
| 110 | #define SUB 321 |
| 111 | #define MUL 322 |
| 112 | #define UDIV 323 |
| 113 | #define SDIV 324 |
| 114 | #define FDIV 325 |
| 115 | #define UREM 326 |
| 116 | #define SREM 327 |
| 117 | #define FREM 328 |
| 118 | #define AND 329 |
| 119 | #define OR 330 |
| 120 | #define XOR 331 |
| 121 | #define SHL 332 |
| 122 | #define LSHR 333 |
| 123 | #define ASHR 334 |
| 124 | #define ICMP 335 |
| 125 | #define FCMP 336 |
| 126 | #define EQ 337 |
| 127 | #define NE 338 |
| 128 | #define SLT 339 |
| 129 | #define SGT 340 |
| 130 | #define SLE 341 |
| 131 | #define SGE 342 |
| 132 | #define ULT 343 |
| 133 | #define UGT 344 |
| 134 | #define ULE 345 |
| 135 | #define UGE 346 |
| 136 | #define OEQ 347 |
| 137 | #define ONE 348 |
| 138 | #define OLT 349 |
| 139 | #define OGT 350 |
| 140 | #define OLE 351 |
| 141 | #define OGE 352 |
| 142 | #define ORD 353 |
| 143 | #define UNO 354 |
| 144 | #define UEQ 355 |
| 145 | #define UNE 356 |
| 146 | #define MALLOC 357 |
| 147 | #define ALLOCA 358 |
| 148 | #define FREE 359 |
| 149 | #define LOAD 360 |
| 150 | #define STORE 361 |
| 151 | #define GETELEMENTPTR 362 |
| 152 | #define TRUNC 363 |
| 153 | #define ZEXT 364 |
| 154 | #define SEXT 365 |
| 155 | #define FPTRUNC 366 |
| 156 | #define FPEXT 367 |
| 157 | #define BITCAST 368 |
| 158 | #define UITOFP 369 |
| 159 | #define SITOFP 370 |
| 160 | #define FPTOUI 371 |
| 161 | #define FPTOSI 372 |
| 162 | #define INTTOPTR 373 |
| 163 | #define PTRTOINT 374 |
| 164 | #define PHI_TOK 375 |
| 165 | #define SELECT 376 |
| 166 | #define VAARG 377 |
| 167 | #define EXTRACTELEMENT 378 |
| 168 | #define INSERTELEMENT 379 |
| 169 | #define SHUFFLEVECTOR 380 |
| 170 | #define NORETURN 381 |
| 171 | #define INREG 382 |
| 172 | #define SRET 383 |
| 173 | #define DEFAULT 384 |
| 174 | #define HIDDEN 385 |
| 175 | |
Reid Spencer | 68a24bd | 2005-08-27 18:50:39 +0000 | [diff] [blame] | 176 | |
| 177 | extern YYSTYPE llvmAsmlval; |