LLVM 20.0.0git
Functions | Variables
R600TargetMachine.cpp File Reference

This file contains both AMDGPU-R600 target machine and the CodeGen pass builder. More...

#include "R600TargetMachine.h"
#include "R600.h"
#include "R600MachineFunctionInfo.h"
#include "R600MachineScheduler.h"
#include "R600TargetTransformInfo.h"
#include "llvm/Transforms/Scalar.h"
#include <optional>

Go to the source code of this file.

Functions

static ScheduleDAGInstrscreateR600MachineScheduler (MachineSchedContext *C)
 

Variables

static cl::opt< boolEnableR600StructurizeCFG ("r600-ir-structurize", cl::desc("Use StructurizeCFG IR pass"), cl::init(true))
 
static cl::opt< boolEnableR600IfConvert ("r600-if-convert", cl::desc("Use if conversion pass"), cl::ReallyHidden, cl::init(true))
 
static cl::opt< bool, trueEnableAMDGPUFunctionCallsOpt ("amdgpu-function-calls", cl::desc("Enable AMDGPU function call support"), cl::location(AMDGPUTargetMachine::EnableFunctionCalls), cl::init(true), cl::Hidden)
 
static MachineSchedRegistry R600SchedRegistry ("r600", "Run R600's custom scheduler", createR600MachineScheduler)
 

Detailed Description

This file contains both AMDGPU-R600 target machine and the CodeGen pass builder.

The target machine contains all of the hardware specific information needed to emit code for R600 GPUs and the CodeGen pass builder handles the pass pipeline for new pass manager.

Definition in file R600TargetMachine.cpp.

Function Documentation

◆ createR600MachineScheduler()

static ScheduleDAGInstrs * createR600MachineScheduler ( MachineSchedContext C)
static

Definition at line 41 of file R600TargetMachine.cpp.

References llvm::CallingConv::C.

Variable Documentation

◆ EnableAMDGPUFunctionCallsOpt

cl::opt< bool, true > EnableAMDGPUFunctionCallsOpt("amdgpu-function-calls", cl::desc("Enable AMDGPU function call support"), cl::location(AMDGPUTargetMachine::EnableFunctionCalls), cl::init(true), cl::Hidden) ( "amdgpu-function-calls"  ,
cl::desc("Enable AMDGPU function call support")  ,
cl::location(AMDGPUTargetMachine::EnableFunctionCalls)  ,
cl::init(true ,
cl::Hidden   
)
static

◆ EnableR600IfConvert

cl::opt< bool > EnableR600IfConvert("r600-if-convert", cl::desc("Use if conversion pass"), cl::ReallyHidden, cl::init(true)) ( "r600-if-convert"  ,
cl::desc("Use if conversion pass")  ,
cl::ReallyHidden  ,
cl::init(true  
)
static

◆ EnableR600StructurizeCFG

cl::opt< bool > EnableR600StructurizeCFG("r600-ir-structurize", cl::desc("Use StructurizeCFG IR pass"), cl::init(true)) ( "r600-ir-structurize"  ,
cl::desc("Use StructurizeCFG IR pass")  ,
cl::init(true  
)
static

◆ R600SchedRegistry

MachineSchedRegistry R600SchedRegistry("r600", "Run R600's custom scheduler", createR600MachineScheduler) ( "r600"  ,
"Run R600's custom scheduler"  ,
createR600MachineScheduler   
)
static