LLVM 22.0.0git
X86TargetMachine.cpp File Reference

Go to the source code of this file.

Functions

LLVM_C_ABI void LLVMInitializeX86Target ()
static std::unique_ptr< TargetLoweringObjectFilecreateTLOF (const Triple &TT)
static Reloc::Model getEffectiveRelocModel (const Triple &TT, bool JIT, std::optional< Reloc::Model > RM)
static CodeModel::Model getEffectiveX86CodeModel (const Triple &TT, std::optional< CodeModel::Model > CM, bool JIT)
 INITIALIZE_PASS_BEGIN (X86ExecutionDomainFix, "x86-execution-domain-fix", "X86 Execution Domain Fix", false, false) INITIALIZE_PASS_END(X86ExecutionDomainFix
static bool onlyAllocateTileRegisters (const TargetRegisterInfo &TRI, const MachineRegisterInfo &MRI, const Register Reg)

Variables

static cl::opt< boolEnableMachineCombinerPass ("x86-machine-combiner", cl::desc("Enable the machine combiner pass"), cl::init(true), cl::Hidden)
static cl::opt< boolEnableTileRAPass ("x86-tile-ra", cl::desc("Enable the tile register allocation pass"), cl::init(true), cl::Hidden)
x86 execution domain fix
x86 execution domain X86 Execution Domain Fix
x86 execution domain X86 Execution Domain false

Function Documentation

◆ createTLOF()

std::unique_ptr< TargetLoweringObjectFile > createTLOF ( const Triple & TT)
static

Definition at line 113 of file X86TargetMachine.cpp.

◆ getEffectiveRelocModel()

Reloc::Model getEffectiveRelocModel ( const Triple & TT,
bool JIT,
std::optional< Reloc::Model > RM )
static

◆ getEffectiveX86CodeModel()

CodeModel::Model getEffectiveX86CodeModel ( const Triple & TT,
std::optional< CodeModel::Model > CM,
bool JIT )
static

◆ INITIALIZE_PASS_BEGIN()

INITIALIZE_PASS_BEGIN ( X86ExecutionDomainFix ,
"x86-execution-domain-fix" ,
"X86 Execution Domain Fix" ,
false ,
false  )

◆ LLVMInitializeX86Target()

LLVM_C_ABI void LLVMInitializeX86Target ( )

Definition at line 66 of file X86TargetMachine.cpp.

References llvm::PassRegistry::getPassRegistry(), llvm::getTheX86_32Target(), llvm::getTheX86_64Target(), llvm::initializeCompressEVEXPassPass(), llvm::initializeFixupBWInstPassPass(), llvm::initializeFixupLEAPassPass(), llvm::initializeFPSPass(), llvm::initializeGlobalISel(), llvm::initializeKCFIPass(), llvm::initializePseudoProbeInserterPass(), llvm::initializeWinEHStatePassPass(), llvm::initializeX86ArgumentStackSlotPassPass(), llvm::initializeX86AsmPrinterPass(), llvm::initializeX86AvoidSFBPassPass(), llvm::initializeX86AvoidTrailingCallPassPass(), llvm::initializeX86CallFrameOptimizationPass(), llvm::initializeX86CmovConverterPassPass(), llvm::initializeX86DAGToDAGISelLegacyPass(), llvm::initializeX86DomainReassignmentPass(), llvm::initializeX86DynAllocaExpanderPass(), llvm::initializeX86ExecutionDomainFixPass(), llvm::initializeX86ExpandPseudoPass(), llvm::initializeX86FastPreTileConfigPass(), llvm::initializeX86FastTileConfigPass(), llvm::initializeX86FixupInstTuningPassPass(), llvm::initializeX86FixupSetCCPassPass(), llvm::initializeX86FixupVectorConstantsPassPass(), llvm::initializeX86FlagsCopyLoweringPassPass(), llvm::initializeX86LoadValueInjectionLoadHardeningPassPass(), llvm::initializeX86LoadValueInjectionRetHardeningPassPass(), llvm::initializeX86LowerAMXIntrinsicsLegacyPassPass(), llvm::initializeX86LowerAMXTypeLegacyPassPass(), llvm::initializeX86LowerTileCopyPass(), llvm::initializeX86OptimizeLEAPassPass(), llvm::initializeX86PartialReductionPass(), llvm::initializeX86PreTileConfigPass(), llvm::initializeX86ReturnThunksPass(), llvm::initializeX86SpeculativeExecutionSideEffectSuppressionPass(), llvm::initializeX86SpeculativeLoadHardeningPassPass(), llvm::initializeX86SuppressAPXForRelocationPassPass(), llvm::initializeX86TileConfigPass(), llvm::initializeX86WinEHUnwindV2Pass(), LLVM_C_ABI, X, and Y.

◆ onlyAllocateTileRegisters()

bool onlyAllocateTileRegisters ( const TargetRegisterInfo & TRI,
const MachineRegisterInfo & MRI,
const Register Reg )
static

Definition at line 641 of file X86TargetMachine.cpp.

References MRI, Reg, and TRI.

Variable Documentation

◆ EnableMachineCombinerPass

cl::opt< bool > EnableMachineCombinerPass("x86-machine-combiner", cl::desc("Enable the machine combiner pass"), cl::init(true), cl::Hidden) ( "x86-machine-combiner" ,
cl::desc("Enable the machine combiner pass") ,
cl::init(true) ,
cl::Hidden  )
static

◆ EnableTileRAPass

cl::opt< bool > EnableTileRAPass("x86-tile-ra", cl::desc("Enable the tile register allocation pass"), cl::init(true), cl::Hidden) ( "x86-tile-ra" ,
cl::desc("Enable the tile register allocation pass") ,
cl::init(true) ,
cl::Hidden  )
static

◆ false

x86 execution domain X86 Execution Domain false

Definition at line 407 of file X86TargetMachine.cpp.

◆ Fix

x86 execution domain X86 Execution Domain Fix

Definition at line 407 of file X86TargetMachine.cpp.

◆ fix

x86 execution domain fix

Definition at line 406 of file X86TargetMachine.cpp.