LLVM 22.0.0git
CodeGen.h File Reference
#include <cstdint>
#include <optional>

Go to the source code of this file.

Namespaces

namespace  llvm
 This is an optimization pass for GlobalISel generic memory operations.
namespace  llvm::Reloc
namespace  llvm::CodeModel
namespace  llvm::PICLevel
namespace  llvm::PIELevel
namespace  llvm::TLSModel
namespace  llvm::FloatABI
namespace  llvm::CodeGenOpt
namespace  llvm::ZeroCallUsedRegs

Enumerations

enum  llvm::Reloc::Model {
  llvm::Reloc::Static , llvm::Reloc::PIC_ , llvm::Reloc::DynamicNoPIC , llvm::Reloc::ROPI ,
  llvm::Reloc::RWPI , llvm::Reloc::ROPI_RWPI
}
enum  llvm::CodeModel::Model {
  llvm::CodeModel::Tiny , llvm::CodeModel::Small , llvm::CodeModel::Kernel , llvm::CodeModel::Medium ,
  llvm::CodeModel::Large
}
enum  llvm::PICLevel::Level { llvm::PICLevel::NotPIC =0 , llvm::PICLevel::SmallPIC =1 , llvm::PICLevel::BigPIC =2 }
enum  llvm::PIELevel::Level { llvm::PIELevel::Default =0 , llvm::PIELevel::Small =1 , llvm::PIELevel::Large =2 }
enum  llvm::TLSModel::Model { llvm::TLSModel::GeneralDynamic , llvm::TLSModel::LocalDynamic , llvm::TLSModel::InitialExec , llvm::TLSModel::LocalExec }
enum class  llvm::ExceptionHandling {
  llvm::None , llvm::DwarfCFI , llvm::SjLj , llvm::ARM ,
  llvm::WinEH , llvm::Wasm , llvm::AIX , llvm::ZOS
}
enum  llvm::FloatABI::ABIType { llvm::FloatABI::Default , llvm::FloatABI::Soft , llvm::FloatABI::Hard }
enum class  llvm::EABI {
  llvm::Unknown , llvm::Default , llvm::EABI4 , llvm::EABI5 ,
  llvm::GNU
}
enum class  llvm::CodeGenOptLevel { llvm::None = 0 , llvm::Less = 1 , llvm::Default = 2 , llvm::Aggressive = 3 }
 Code generation optimization level. More...
enum class  llvm::CodeGenFileType { llvm::AssemblyFile , llvm::ObjectFile , llvm::Null }
 These enums are meant to be passed into addPassesToEmitFile to indicate what type of file to emit, and returned by it to indicate what type of file could actually be made. More...
enum class  llvm::FramePointerKind { llvm::None , llvm::NonLeaf , llvm::All , llvm::Reserved }
enum class  llvm::ZeroCallUsedRegs::ZeroCallUsedRegsKind : unsigned int {
  llvm::ZeroCallUsedRegs::Skip = 1U << 0 , llvm::ZeroCallUsedRegs::UsedGPRArg = ONLY_USED | ONLY_GPR | ONLY_ARG , llvm::ZeroCallUsedRegs::UsedGPR = ONLY_USED | ONLY_GPR , llvm::ZeroCallUsedRegs::UsedArg = ONLY_USED | ONLY_ARG ,
  llvm::ZeroCallUsedRegs::Used = ONLY_USED , llvm::ZeroCallUsedRegs::AllGPRArg = ONLY_GPR | ONLY_ARG , llvm::ZeroCallUsedRegs::AllGPR = ONLY_GPR , llvm::ZeroCallUsedRegs::AllArg = ONLY_ARG ,
  llvm::ZeroCallUsedRegs::All = 0
}
enum class  llvm::UWTableKind { llvm::None = 0 , llvm::Sync = 1 , llvm::Async = 2 , llvm::Default = 2 }
enum class  llvm::FunctionReturnThunksKind : unsigned int { llvm::Keep = 0 , llvm::Extern = 1 , llvm::Invalid = 2 }
enum class  llvm::WinX64EHUnwindV2Mode { llvm::Disabled = 0 , llvm::BestEffort = 1 , llvm::Required = 2 }

Functions

std::optional< CodeGenOptLevelllvm::CodeGenOpt::getLevel (int OL)
 Get the Level identified by the integer OL.
std::optional< CodeGenOptLevelllvm::CodeGenOpt::parseLevel (char C)
 Parse C as a single digit integer and get matching CodeGenLevel.

Variables

const unsigned llvm::ZeroCallUsedRegs::ONLY_USED = 1U << 1
const unsigned llvm::ZeroCallUsedRegs::ONLY_GPR = 1U << 2
const unsigned llvm::ZeroCallUsedRegs::ONLY_ARG = 1U << 3