14#ifndef LLVM_SUPPORT_CODEGEN_H
15#define LLVM_SUPPORT_CODEGEN_H
99 if (Name ==
"x86_fp80")
103 if (Name ==
"ppc_fp128")
188 inline std::optional<CodeGenOptLevel>
getLevel(
int OL) {
189 if (OL < 0 || OL > 3)
199 return getLevel(
static_cast<int>(
C -
'0'));
static GCRegistry::Add< ShadowStackGC > C("shadow-stack", "Very portable GC for uncooperative code generators")
Represent a constant reference to a string, i.e.
This class is the base class for all object file types.
Define some predicates that are used for node matching.
std::optional< CodeGenOptLevel > getLevel(int OL)
Get the Level identified by the integer OL.
std::optional< CodeGenOptLevel > parseLevel(char C)
Parse C as a single digit integer and get matching CodeGenLevel.
std::optional< ABIType > parseABIType(StringRef S)
Parse the string spelling used by the "float-abi" IR module flag into an ABIType.
StringRef getABITypeName(ABIType ABI)
Returns the string spelling used by the "float-abi" IR module flag for a Soft or Hard ABIType.
This is an optimization pass for GlobalISel generic memory operations.
std::optional< LongDoubleFormat > parseLongDoubleFormat(StringRef Name)
Parses an IR floating-point type name into a LongDoubleFormat, returning std::nullopt if it does not ...
@ Unknown
Not known to have no common set bits.
StringRef getLongDoubleFormatName(LongDoubleFormat Format)
Returns the IR floating-point type name for a LongDoubleFormat.
LongDoubleFormat
The floating-point format used for the target's "long double" type.
@ Async
"Asynchronous" unwind tables (instr precise)
@ Sync
"Synchronous" unwind tables
CodeGenFileType
These enums are meant to be passed into addPassesToEmitFile to indicate what type of file to emit,...
CodeGenOptLevel
Code generation optimization level.
ThreadModel
The threading model to assume for lowering, e.g. of atomics.
std::optional< ThreadModel > parseThreadModel(StringRef S)
Parse the string spelling used by the "thread-model" IR module flag into a ThreadModel.
@ SjLj
setjmp/longjmp based exceptions
@ ZOS
z/OS MVS Exception Handling.
@ AIX
AIX Exception Handling.
@ DwarfCFI
DWARF-like instruction based exceptions.
@ Wasm
WebAssembly Exception Handling.
ControlFlowGuardMechanism
StringRef getThreadModelName(ThreadModel TM)
Returns the string spelling used by the "thread-model" IR module flag for a ThreadModel.
@ Enabled
Convert any .debug_str_offsets tables to DWARF64 if needed.
@ Disabled
Don't do any conversion of .debug_str_offsets tables.
@ Default
The result value is uniform if and only if all operands are uniform.
@ Keep
No function return thunk.
@ Extern
Replace returns with jump to thunk, don't emit thunk.