summaryrefslogtreecommitdiffstats
path: root/llvm/lib/AsmParser/llvmAsmParser.h.cvs
blob: 2f150bf83dfcae743eaad2b995cc0f1cfb82ddcb (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
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<llvm::PATypeHolder>          *TypeList;
  llvm::PATypeHolder                     *TypeVal;
  llvm::Value                            *ValueVal;
  std::vector<llvm::Value*>              *ValueList;
  llvm::ArgListType                      *ArgList;
  llvm::TypeWithAttrs                     TypeWithAttrs;
  llvm::TypeWithAttrsList                *TypeWithAttrsList;
  llvm::ValueRefList                     *ValueRefList;

  // Represent the RHS of PHI node
  std::list<std::pair<llvm::Value*,
                      llvm::BasicBlock*> > *PHIList;
  std::vector<std::pair<llvm::Constant*, llvm::BasicBlock*> > *JumpTable;
  std::vector<llvm::Constant*>           *ConstVector;

  llvm::GlobalValue::LinkageTypes         Linkage;
  llvm::FunctionType::ParameterAttributes ParamAttrs;
  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::Module::Endianness          Endianness;
  llvm::ICmpInst::Predicate         IPredicate;
  llvm::FCmpInst::Predicate         FPredicate;
} YYSTYPE;
#define	ESINT64VAL	257
#define	EUINT64VAL	258
#define	SINTVAL	259
#define	UINTVAL	260
#define	FPVAL	261
#define	VOID	262
#define	BOOL	263
#define	INTTYPE	264
#define	FLOAT	265
#define	DOUBLE	266
#define	LABEL	267
#define	TYPE	268
#define	VAR_ID	269
#define	LABELSTR	270
#define	STRINGCONSTANT	271
#define	IMPLEMENTATION	272
#define	ZEROINITIALIZER	273
#define	TRUETOK	274
#define	FALSETOK	275
#define	BEGINTOK	276
#define	ENDTOK	277
#define	DECLARE	278
#define	DEFINE	279
#define	GLOBAL	280
#define	CONSTANT	281
#define	SECTION	282
#define	VOLATILE	283
#define	TO	284
#define	DOTDOTDOT	285
#define	NULL_TOK	286
#define	UNDEF	287
#define	INTERNAL	288
#define	LINKONCE	289
#define	WEAK	290
#define	APPENDING	291
#define	DLLIMPORT	292
#define	DLLEXPORT	293
#define	EXTERN_WEAK	294
#define	OPAQUE	295
#define	EXTERNAL	296
#define	TARGET	297
#define	TRIPLE	298
#define	ENDIAN	299
#define	POINTERSIZE	300
#define	LITTLE	301
#define	BIG	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	CSRETCC_TOK	312
#define	FASTCC_TOK	313
#define	COLDCC_TOK	314
#define	X86_STDCALLCC_TOK	315
#define	X86_FASTCALLCC_TOK	316
#define	DATALAYOUT	317
#define	RET	318
#define	BR	319
#define	SWITCH	320
#define	INVOKE	321
#define	UNWIND	322
#define	UNREACHABLE	323
#define	ADD	324
#define	SUB	325
#define	MUL	326
#define	UDIV	327
#define	SDIV	328
#define	FDIV	329
#define	UREM	330
#define	SREM	331
#define	FREM	332
#define	AND	333
#define	OR	334
#define	XOR	335
#define	ICMP	336
#define	FCMP	337
#define	EQ	338
#define	NE	339
#define	SLT	340
#define	SGT	341
#define	SLE	342
#define	SGE	343
#define	ULT	344
#define	UGT	345
#define	ULE	346
#define	UGE	347
#define	OEQ	348
#define	ONE	349
#define	OLT	350
#define	OGT	351
#define	OLE	352
#define	OGE	353
#define	ORD	354
#define	UNO	355
#define	UEQ	356
#define	UNE	357
#define	MALLOC	358
#define	ALLOCA	359
#define	FREE	360
#define	LOAD	361
#define	STORE	362
#define	GETELEMENTPTR	363
#define	TRUNC	364
#define	ZEXT	365
#define	SEXT	366
#define	FPTRUNC	367
#define	FPEXT	368
#define	BITCAST	369
#define	UITOFP	370
#define	SITOFP	371
#define	FPTOUI	372
#define	FPTOSI	373
#define	INTTOPTR	374
#define	PTRTOINT	375
#define	PHI_TOK	376
#define	SELECT	377
#define	SHL	378
#define	LSHR	379
#define	ASHR	380
#define	VAARG	381
#define	EXTRACTELEMENT	382
#define	INSERTELEMENT	383
#define	SHUFFLEVECTOR	384
#define	NORETURN	385


extern YYSTYPE llvmAsmlval;
OpenPOWER on IntegriCloud