LLVM: include/llvm/Bitcode/LLVMBitCodes.h Source File (original) (raw)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17#ifndef LLVM_BITCODE_LLVMBITCODES_H
18#define LLVM_BITCODE_LLVMBITCODES_H
19
20
21
22
24
25namespace llvm {
26namespace bitc {
27
29
31
32
35
38
39
40
41
43
47
49
51
54
56
58
60
62
64
66};
67
68
69
73};
74
75
76
77
78
79
80
82
83
90
91
93
94
95
97
98
99
101
102
104
107
109
110
112
114
115
117
118
120
121
123};
124
125
127
129
133
134
137
138
146
148
149
151
154
155
156
157
161
163
165
169
171
173
176
178
180};
181
184};
185
188};
189
190
195
198
199
203};
204
205
206
208
209
211
212
213
215
217
218
220
221
222
224
226
228
230
232
234
235
236
238
239
240
241
243
244
245
246
248
249
250
252
253
254
256
257
258
260
261
262
264
265
266
268
269
270
271
273
275
276
277
278
279
281
282
283
284
285
286
287
288
289
290
291
292
293
295
296
297
298
299
301
303
304
306
307
309
310
311
313
314
315
317
318
319
320
322
323
325
326
327
328
329
330
331
332
334
335
336
338};
339
356 METADATA_FILE = 16,
382
383
388};
389
390
391
411
417
423
424
427
428
429
433};
434
435
436
437
438
454
455
456
457
458
462
463
464
465
466
482
483
484
485
507
508
509
514
515
516
521
522
523
524
535
536
538
539
540
542
543
544
546
547
549
550
551
556};
557
558
559
561
562
572
573
580 CALL_FMF = 17
582
583
584
587
596
601
603
605
606
609
610
612
613
614
616
619
620
622
626
628
630
634
635
637
638
641 40,
643
645
650
651
658 52,
659
660
664
667
668
670
672 61,
674 62,
676 63,
677
679 64,
681};
682
687
689
792};
793
800};
801
804};
805
808};
809
810}
811}
812
813#endif
TypeCodes
TYPE blocks have codes for each type primitive they use.
@ TYPE_CODE_OPAQUE_POINTER
@ METADATA_TEMPLATE_VALUE
@ METADATA_LEXICAL_BLOCK_FILE
@ METADATA_SUBROUTINE_TYPE
@ METADATA_GLOBAL_DECL_ATTACHMENT
@ METADATA_IMPORTED_ENTITY
@ METADATA_GENERIC_SUBRANGE
@ METADATA_COMPOSITE_TYPE
@ METADATA_GLOBAL_VAR_EXPR
RMWOperations
These are values used in the bitcode files to encode AtomicRMW operations.
GlobalValueSummarySymtabCodes
@ FS_CONTEXT_RADIX_TREE_ARRAY
@ FS_COMBINED_GLOBALVAR_INIT_REFS
@ FS_TYPE_CHECKED_LOAD_VCALLS
@ FS_COMBINED_ORIGINAL_NAME
@ FS_PERMODULE_VTABLE_GLOBALVAR_INIT_REFS
@ FS_TYPE_TEST_ASSUME_CONST_VCALL
@ FS_PERMODULE_GLOBALVAR_INIT_REFS
@ FS_TYPE_TEST_ASSUME_VCALLS
@ FS_COMBINED_CALLSITE_INFO
@ FS_PERMODULE_CALLSITE_INFO
@ FS_PERMODULE_ALLOC_INFO
@ FS_TYPE_CHECKED_LOAD_CONST_VCALL
PossiblyNonNegInstOptionalFlags
Flags for serializing PossiblyNonNegInst's SubclassOptionalData contents.
IdentificationCodes
Identification block contains a string that describes the producer details, and an epoch that defines...
@ IDENTIFICATION_CODE_EPOCH
@ IDENTIFICATION_CODE_STRING
@ CST_CODE_CE_INBOUNDS_GEP
@ CST_CODE_INLINEASM_OLD3
@ CST_CODE_CE_GEP_WITH_INRANGE_INDEX_OLD
@ CST_CODE_DSO_LOCAL_EQUIVALENT
@ CST_CODE_INLINEASM_OLD2
@ CST_CODE_CE_GEP_WITH_INRANGE
GetElementPtrOptionalFlags
GetElementPtrOptionalFlags - Flags for serializing GEPOperator's SubclassOptionalData contents.
CallMarkersFlags
Markers and flags for call instruction.
@ VST_CODE_COMBINED_ENTRY
PossiblyExactOperatorOptionalFlags
PossiblyExactOperatorOptionalFlags - Flags for serializing PossiblyExactOperator's SubclassOptionalDa...
@ COMDAT_SELECTION_KIND_LARGEST
@ COMDAT_SELECTION_KIND_ANY
@ COMDAT_SELECTION_KIND_SAME_SIZE
@ COMDAT_SELECTION_KIND_EXACT_MATCH
@ COMDAT_SELECTION_KIND_NO_DUPLICATES
@ ATTR_KIND_STACK_PROTECT
@ ATTR_KIND_STACK_PROTECT_STRONG
@ ATTR_KIND_SANITIZE_MEMORY
@ ATTR_KIND_OPTIMIZE_FOR_SIZE
@ ATTR_KIND_INACCESSIBLEMEM_ONLY
@ ATTR_KIND_FNRETTHUNK_EXTERN
@ ATTR_KIND_NO_DIVERGENCE_SOURCE
@ ATTR_KIND_SANITIZE_ADDRESS
@ ATTR_KIND_NO_IMPLICIT_FLOAT
@ ATTR_KIND_DEAD_ON_UNWIND
@ ATTR_KIND_STACK_ALIGNMENT
@ ATTR_KIND_INACCESSIBLEMEM_OR_ARGMEMONLY
@ ATTR_KIND_STACK_PROTECT_REQ
@ ATTR_KIND_NULL_POINTER_IS_VALID
@ ATTR_KIND_SANITIZE_HWADDRESS
@ ATTR_KIND_RETURNS_TWICE
@ ATTR_KIND_SHADOWCALLSTACK
@ ATTR_KIND_OPT_FOR_FUZZING
@ ATTR_KIND_SANITIZE_NUMERICAL_STABILITY
@ ATTR_KIND_ALLOCATED_POINTER
@ ATTR_KIND_DISABLE_SANITIZER_INSTRUMENTATION
@ ATTR_KIND_CORO_ELIDE_SAFE
@ ATTR_KIND_NON_LAZY_BIND
@ ATTR_KIND_DEREFERENCEABLE
@ ATTR_KIND_OPTIMIZE_NONE
@ ATTR_KIND_HYBRID_PATCHABLE
@ ATTR_KIND_DEREFERENCEABLE_OR_NULL
@ ATTR_KIND_SANITIZE_REALTIME
@ ATTR_KIND_SPECULATIVE_LOAD_HARDENING
@ ATTR_KIND_ALWAYS_INLINE
@ ATTR_KIND_SANITIZE_TYPE
@ ATTR_KIND_PRESPLIT_COROUTINE
@ ATTR_KIND_NO_SANITIZE_COVERAGE
@ ATTR_KIND_SANITIZE_REALTIME_BLOCKING
@ ATTR_KIND_NO_SANITIZE_BOUNDS
@ ATTR_KIND_SANITIZE_MEMTAG
@ ATTR_KIND_CORO_ONLY_DESTROY_WHEN_COMPLETE
@ ATTR_KIND_SANITIZE_THREAD
@ ATTR_KIND_OPTIMIZE_FOR_DEBUGGING
OverflowingBinaryOperatorOptionalFlags
OverflowingBinaryOperatorOptionalFlags - Flags for serializing OverflowingBinaryOperator's SubclassOp...
TruncInstOptionalFlags
TruncInstOptionalFlags - Flags for serializing TruncInstOptionalFlags's SubclassOptionalData contents...
UnaryOpcodes
UnaryOpcodes - These are values used in the bitcode files to encode which unop a CST_CODE_CE_UNOP or ...
@ SYNC_SCOPE_NAMES_BLOCK_ID
@ PARAMATTR_GROUP_BLOCK_ID
@ IDENTIFICATION_BLOCK_ID
@ GLOBALVAL_SUMMARY_BLOCK_ID
@ FULL_LTO_GLOBALVAL_SUMMARY_BLOCK_ID
@ OPERAND_BUNDLE_TAGS_BLOCK_ID
MetadataOperandBundleValueMarker
Mark to distinguish metadata from value in an operator bundle.
CastOpcodes
CastOpcodes - These are values used in the bitcode files to encode which cast a CST_CODE_CE_CAST or a...
@ FIRST_APPLICATION_BLOCKID
ModuleCodes
MODULE blocks have a number of optional fields and subblocks.
@ MODULE_CODE_SOURCE_FILENAME
@ MODULE_CODE_SECTIONNAME
@ MODULE_CODE_METADATA_VALUES_UNUSED
@ FUNC_CODE_INST_ATOMICRMW_OLD
@ FUNC_CODE_INST_CATCHRET
@ FUNC_CODE_INST_LANDINGPAD
@ FUNC_CODE_INST_EXTRACTVAL
@ FUNC_CODE_INST_CATCHPAD
@ FUNC_CODE_INST_CATCHSWITCH
@ FUNC_CODE_INST_INBOUNDS_GEP_OLD
@ FUNC_CODE_INST_STOREATOMIC_OLD
@ FUNC_CODE_INST_CLEANUPRET
@ FUNC_CODE_INST_LANDINGPAD_OLD
@ FUNC_CODE_DEBUG_RECORD_VALUE
@ FUNC_CODE_INST_LOADATOMIC
@ FUNC_CODE_DEBUG_RECORD_ASSIGN
@ FUNC_CODE_INST_STOREATOMIC
@ FUNC_CODE_INST_ATOMICRMW
@ FUNC_CODE_DEBUG_LOC_AGAIN
@ FUNC_CODE_INST_EXTRACTELT
@ FUNC_CODE_INST_INDIRECTBR
@ FUNC_CODE_DEBUG_RECORD_VALUE_SIMPLE
@ FUNC_CODE_INST_INSERTVAL
@ FUNC_CODE_DECLAREBLOCKS
@ FUNC_CODE_DEBUG_RECORD_LABEL
@ FUNC_CODE_INST_INSERTELT
@ FUNC_CODE_BLOCKADDR_USERS
@ FUNC_CODE_INST_CLEANUPPAD
@ FUNC_CODE_INST_SHUFFLEVEC
@ FUNC_CODE_INST_STORE_OLD
@ FUNC_CODE_INST_UNREACHABLE
@ FUNC_CODE_INST_CMPXCHG_OLD
@ FUNC_CODE_DEBUG_RECORD_DECLARE
@ FUNC_CODE_OPERAND_BUNDLE
ICmpOptionalFlags
ICmpOptionalFlags - Flags for serializing ICmpOptionalFlags's SubclassOptionalData contents.
PossiblyDisjointInstOptionalFlags
PossiblyDisjointInstOptionalFlags - Flags for serializing PossiblyDisjointInst's SubclassOptionalData...
FastMathMap
FastMath Flags This is a fixed layout derived from the bitcode emitted by LLVM 5.0 intended to decoup...
AttributeCodes
PARAMATTR blocks have code for defining a parameter attribute set.
@ PARAMATTR_CODE_ENTRY_OLD
@ PARAMATTR_GRP_CODE_ENTRY
BinaryOpcodes
BinaryOpcodes - These are values used in the bitcode files to encode which binop a CST_CODE_CE_BINOP ...
AtomicOrderingCodes
Encoded AtomicOrdering values.
This is an optimization pass for GlobalISel generic memory operations.