typedef union { llvm::Module *ModuleVal; llvm::Function *FunctionVal; llvm::BasicBlock *BasicBlockVal; llvm::TerminatorInst *TermInstVal; llvm::Instruction *InstVal; llvm::Constant *ConstVal; const llvm::Type *PrimType; std::list *TypeList; llvm::PATypeHolder *TypeVal; llvm::Value *ValueVal; std::vector *ValueList; llvm::ArgListType *ArgList; llvm::TypeWithAttrs TypeWithAttrs; llvm::TypeWithAttrsList *TypeWithAttrsList; llvm::ValueRefList *ValueRefList; // Represent the RHS of PHI node std::list > *PHIList; std::vector > *JumpTable; std::vector *ConstVector; llvm::GlobalValue::LinkageTypes Linkage; llvm::GlobalValue::VisibilityTypes Visibility; uint16_t ParamAttrs; llvm::APInt *APIntVal; int64_t SInt64Val; uint64_t UInt64Val; int SIntVal; unsigned UIntVal; double FPVal; bool BoolVal; char *StrVal; // This memory is strdup'd! llvm::ValID ValIDVal; // strdup'd memory maybe! llvm::Instruction::BinaryOps BinaryOpVal; llvm::Instruction::TermOps TermOpVal; llvm::Instruction::MemoryOps MemOpVal; llvm::Instruction::CastOps CastOpVal; llvm::Instruction::OtherOps OtherOpVal; llvm::ICmpInst::Predicate IPredicate; llvm::FCmpInst::Predicate FPredicate; } YYSTYPE; #define ESINT64VAL 257 #define EUINT64VAL 258 #define ESAPINTVAL 259 #define EUAPINTVAL 260 #define LOCALVAL_ID 261 #define GLOBALVAL_ID 262 #define FPVAL 263 #define VOID 264 #define INTTYPE 265 #define FLOAT 266 #define DOUBLE 267 #define LABEL 268 #define TYPE 269 #define LOCALVAR 270 #define GLOBALVAR 271 #define LABELSTR 272 #define STRINGCONSTANT 273 #define ATSTRINGCONSTANT 274 #define ZEROINITIALIZER 275 #define TRUETOK 276 #define FALSETOK 277 #define BEGINTOK 278 #define ENDTOK 279 #define DECLARE 280 #define DEFINE 281 #define GLOBAL 282 #define CONSTANT 283 #define SECTION 284 #define ALIAS 285 #define VOLATILE 286 #define THREAD_LOCAL 287 #define TO 288 #define DOTDOTDOT 289 #define NULL_TOK 290 #define UNDEF 291 #define INTERNAL 292 #define LINKONCE 293 #define WEAK 294 #define APPENDING 295 #define DLLIMPORT 296 #define DLLEXPORT 297 #define EXTERN_WEAK 298 #define OPAQUE 299 #define EXTERNAL 300 #define TARGET 301 #define TRIPLE 302 #define ALIGN 303 #define DEPLIBS 304 #define CALL 305 #define TAIL 306 #define ASM_TOK 307 #define MODULE 308 #define SIDEEFFECT 309 #define CC_TOK 310 #define CCC_TOK 311 #define FASTCC_TOK 312 #define COLDCC_TOK 313 #define X86_STDCALLCC_TOK 314 #define X86_FASTCALLCC_TOK 315 #define DATALAYOUT 316 #define RET 317 #define BR 318 #define SWITCH 319 #define INVOKE 320 #define UNWIND 321 #define UNREACHABLE 322 #define ADD 323 #define SUB 324 #define MUL 325 #define UDIV 326 #define SDIV 327 #define FDIV 328 #define UREM 329 #define SREM 330 #define FREM 331 #define AND 332 #define OR 333 #define XOR 334 #define SHL 335 #define LSHR 336 #define ASHR 337 #define ICMP 338 #define FCMP 339 #define EQ 340 #define NE 341 #define SLT 342 #define SGT 343 #define SLE 344 #define SGE 345 #define ULT 346 #define UGT 347 #define ULE 348 #define UGE 349 #define OEQ 350 #define ONE 351 #define OLT 352 #define OGT 353 #define OLE 354 #define OGE 355 #define ORD 356 #define UNO 357 #define UEQ 358 #define UNE 359 #define MALLOC 360 #define ALLOCA 361 #define FREE 362 #define LOAD 363 #define STORE 364 #define GETELEMENTPTR 365 #define TRUNC 366 #define ZEXT 367 #define SEXT 368 #define FPTRUNC 369 #define FPEXT 370 #define BITCAST 371 #define UITOFP 372 #define SITOFP 373 #define FPTOUI 374 #define FPTOSI 375 #define INTTOPTR 376 #define PTRTOINT 377 #define PHI_TOK 378 #define SELECT 379 #define VAARG 380 #define EXTRACTELEMENT 381 #define INSERTELEMENT 382 #define SHUFFLEVECTOR 383 #define NORETURN 384 #define INREG 385 #define SRET 386 #define NOUNWIND 387 #define DEFAULT 388 #define HIDDEN 389 #define PROTECTED 390 extern YYSTYPE llvmAsmlval;