| typedef union { |
| Module *ModuleVal; |
| Method *MethodVal; |
| MethodArgument *MethArgVal; |
| BasicBlock *BasicBlockVal; |
| TerminatorInst *TermInstVal; |
| Instruction *InstVal; |
| ConstPoolVal *ConstVal; |
| const Type *TypeVal; |
| |
| list<MethodArgument*> *MethodArgList; |
| list<Value*> *ValueList; |
| list<const Type*> *TypeList; |
| list<pair<Value*, BasicBlock*> > *PHIList; // Represent the RHS of PHI node |
| list<pair<ConstPoolVal*, BasicBlock*> > *JumpTable; |
| vector<ConstPoolVal*> *ConstVector; |
| |
| int64_t SInt64Val; |
| uint64_t UInt64Val; |
| int SIntVal; |
| unsigned UIntVal; |
| |
| char *StrVal; // This memory is allocated by strdup! |
| ValID ValIDVal; // May contain memory allocated by strdup |
| |
| Instruction::UnaryOps UnaryOpVal; |
| Instruction::BinaryOps BinaryOpVal; |
| Instruction::TermOps TermOpVal; |
| Instruction::MemoryOps MemOpVal; |
| } YYSTYPE; |
| #define ESINT64VAL 257 |
| #define EUINT64VAL 258 |
| #define SINTVAL 259 |
| #define UINTVAL 260 |
| #define VOID 261 |
| #define BOOL 262 |
| #define SBYTE 263 |
| #define UBYTE 264 |
| #define SHORT 265 |
| #define USHORT 266 |
| #define INT 267 |
| #define UINT 268 |
| #define LONG 269 |
| #define ULONG 270 |
| #define FLOAT 271 |
| #define DOUBLE 272 |
| #define STRING 273 |
| #define TYPE 274 |
| #define LABEL 275 |
| #define VAR_ID 276 |
| #define LABELSTR 277 |
| #define STRINGCONSTANT 278 |
| #define IMPLEMENTATION 279 |
| #define TRUE 280 |
| #define FALSE 281 |
| #define BEGINTOK 282 |
| #define END 283 |
| #define DECLARE 284 |
| #define PHI 285 |
| #define CALL 286 |
| #define RET 287 |
| #define BR 288 |
| #define SWITCH 289 |
| #define NEG 290 |
| #define NOT 291 |
| #define TOINT 292 |
| #define TOUINT 293 |
| #define ADD 294 |
| #define SUB 295 |
| #define MUL 296 |
| #define DIV 297 |
| #define REM 298 |
| #define SETLE 299 |
| #define SETGE 300 |
| #define SETLT 301 |
| #define SETGT 302 |
| #define SETEQ 303 |
| #define SETNE 304 |
| #define MALLOC 305 |
| #define ALLOCA 306 |
| #define FREE 307 |
| #define LOAD 308 |
| #define STORE 309 |
| #define GETFIELD 310 |
| #define PUTFIELD 311 |
| |
| |
| extern YYSTYPE llvmAsmlval; |