mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2024-12-13 04:30:23 +00:00
c24d2088dc
* Changes in PHI node structure * Change to PHI syntax git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@24 91177308-0d34-0410-b5e6-96231b3b80d8
89 lines
2.1 KiB
C
89 lines
2.1 KiB
C
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;
|