LLVM: include/llvm/Support/CodeGen.h Source File (original) (raw)
Go to the documentation of this file.
1
2
3
4
5
6
7
8
9
10
11
12
13
14#ifndef LLVM_SUPPORT_CODEGEN_H
15#define LLVM_SUPPORT_CODEGEN_H
16
17#include
18#include
19
20namespace llvm {
21
22
27
28
33
38
42
43
52
64
72
80
81
88
90
91
92
93 inline std::optional getLevel(int OL) {
94 if (OL < 0 || OL > 3)
95 return std::nullopt;
97 }
98
99
100
101 inline std::optional parseLevel(char C) {
102 if (C < '0')
103 return std::nullopt;
104 return getLevel(static_cast<int>(C - '0'));
105 }
106 }
107
108
109
110
116
117
125
126
131
133
135
137
139
141
143
145
147
149
151 };
152 }
153
160
166
175
176 }
177
178#endif
This class is the base class for all object file types.
Define some predicates that are used for node matching.
@ C
The default llvm calling convention, compatible with C.
std::optional< CodeGenOptLevel > getLevel(int OL)
Get the Level identified by the integer OL.
Definition CodeGen.h:93
std::optional< CodeGenOptLevel > parseLevel(char C)
Parse C as a single digit integer and get matching CodeGenLevel.
Definition CodeGen.h:101
Model
Definition CodeGen.h:31
@ Medium
Definition CodeGen.h:31
@ Large
Definition CodeGen.h:31
@ Tiny
Definition CodeGen.h:31
@ Small
Definition CodeGen.h:31
@ Kernel
Definition CodeGen.h:31
ABIType
Definition CodeGen.h:66
@ Hard
Definition CodeGen.h:69
@ Soft
Definition CodeGen.h:68
@ Default
Definition CodeGen.h:67
Level
Definition CodeGen.h:36
@ NotPIC
Definition CodeGen.h:36
@ BigPIC
Definition CodeGen.h:36
@ SmallPIC
Definition CodeGen.h:36
Level
Definition CodeGen.h:40
@ Large
Definition CodeGen.h:40
@ Default
Definition CodeGen.h:40
@ Small
Definition CodeGen.h:40
Model
Definition CodeGen.h:25
@ Static
Definition CodeGen.h:25
@ RWPI
Definition CodeGen.h:25
@ DynamicNoPIC
Definition CodeGen.h:25
@ ROPI
Definition CodeGen.h:25
@ ROPI_RWPI
Definition CodeGen.h:25
@ PIC_
Definition CodeGen.h:25
Model
Definition CodeGen.h:45
@ LocalDynamic
Definition CodeGen.h:47
@ InitialExec
Definition CodeGen.h:48
@ GeneralDynamic
Definition CodeGen.h:46
@ LocalExec
Definition CodeGen.h:49
const unsigned ONLY_GPR
Definition CodeGen.h:129
const unsigned ONLY_USED
Definition CodeGen.h:128
ZeroCallUsedRegsKind
Definition CodeGen.h:132
@ Used
Definition CodeGen.h:142
@ UsedGPRArg
Definition CodeGen.h:136
@ AllGPR
Definition CodeGen.h:146
@ AllGPRArg
Definition CodeGen.h:144
@ Skip
Definition CodeGen.h:134
@ UsedGPR
Definition CodeGen.h:138
@ AllArg
Definition CodeGen.h:148
@ All
Definition CodeGen.h:150
@ UsedArg
Definition CodeGen.h:140
const unsigned ONLY_ARG
Definition CodeGen.h:130
This is an optimization pass for GlobalISel generic memory operations.
FramePointerKind
Definition CodeGen.h:118
@ NonLeafNoReserve
Definition CodeGen.h:123
@ NonLeaf
Definition CodeGen.h:120
ExceptionHandling
Definition CodeGen.h:53
@ SjLj
setjmp/longjmp based exceptions
Definition CodeGen.h:56
@ ZOS
z/OS MVS Exception Handling.
Definition CodeGen.h:61
@ AIX
AIX Exception Handling.
Definition CodeGen.h:60
@ DwarfCFI
DWARF-like instruction based exceptions.
Definition CodeGen.h:55
@ Wasm
WebAssembly Exception Handling.
Definition CodeGen.h:59
UWTableKind
Definition CodeGen.h:154
@ Async
"Asynchronous" unwind tables (instr precise)
Definition CodeGen.h:157
@ Sync
"Synchronous" unwind tables
Definition CodeGen.h:156
CodeGenFileType
These enums are meant to be passed into addPassesToEmitFile to indicate what type of file to emit,...
Definition CodeGen.h:111
@ Null
Definition CodeGen.h:114
@ AssemblyFile
Definition CodeGen.h:112
CodeGenOptLevel
Code generation optimization level.
Definition CodeGen.h:82
@ Less
-O1
Definition CodeGen.h:84
@ Aggressive
-O3
Definition CodeGen.h:86
EABI
Definition CodeGen.h:73
@ EABI5
Definition CodeGen.h:77
@ GNU
Definition CodeGen.h:78
@ EABI4
Definition CodeGen.h:76
@ Disabled
Don't do any conversion of .debug_str_offsets tables.
@ Default
The result values are uniform if and only if all operands are uniform.
WinX64EHUnwindV2Mode
Definition CodeGen.h:167
@ BestEffort
Definition CodeGen.h:171
@ Required
Definition CodeGen.h:173
FunctionReturnThunksKind
Definition CodeGen.h:161
@ Keep
No function return thunk.
Definition CodeGen.h:162
@ Extern
Replace returns with jump to thunk, don't emit thunk.
Definition CodeGen.h:163