LLVM 24.0.0git
DXILContainerGlobals.cpp File Reference

Go to the source code of this file.

Functions

static GlobalVariable * buildContainerGlobal (Module &M, Constant *Content, StringRef Name, StringRef SectionName)
static GlobalVariable * getFeatureFlags (Module &M, function_ref< const ModuleShaderFlags &()> GetShaderFlags)
static void addSection (Module &M, SmallVector< GlobalValue * > &Globals, StringRef SectionData, StringRef MetadataName, StringRef SectionName)
static void computeShaderHashAndDebugName (Module &M, SmallVector< GlobalValue * > &Globals)
static GlobalVariable * buildSignature (Module &M, Signature &Sig, StringRef Name, StringRef SectionName, const dxil::ModuleMetadataInfo &MMI)
static void addSignature (Module &M, SmallVector< GlobalValue * > &Globals, function_ref< dxil::ModuleMetadataInfo &()> GetModuleMetadataInfo, function_ref< const ModuleSignatureInfo &()> GetSignatureInfo)
static void addRootSignature (Module &M, SmallVector< GlobalValue * > &Globals, function_ref< dxil::ModuleMetadataInfo &()> GetModuleMetadataInfo, function_ref< RootSignatureBindingInfo &()> GetRootSignatureBindingInfo)
static void addResourcesForPSV (Module &M, PSVRuntimeInfo &PSV, function_ref< DXILResourceMap &()> GetResourceMap, function_ref< DXILResourceTypeMap &()> GetResourceTypeMap)
static void addPipelineStateValidationInfo (Module &M, SmallVector< GlobalValue * > &Globals, function_ref< dxil::ModuleMetadataInfo &()> GetModuleMetadataInfo, function_ref< DXILResourceMap &()> GetResourceMap, function_ref< DXILResourceTypeMap &()> GetResourceTypeMap, function_ref< const ModuleShaderFlags &()> GetModuleShaderFlags, function_ref< const ModuleSignatureInfo &()> GetModuleSignatureInfo)
static void addCompilerVersion (Module &M, SmallVector< GlobalValue * > &Globals)
static void addSourceInfo (Module &M, SmallVector< GlobalValue * > &Globals, function_ref< dxil::ModuleMetadataInfo &()> GetModuleMetadataInfo)
static bool runContainerGlobalsOnModule (Module &M, function_ref< dxil::ModuleMetadataInfo &()> GetModuleMetadataInfo, function_ref< DXILResourceMap &()> GetResourceMap, function_ref< DXILResourceTypeMap &()> GetResourceTypeMap, function_ref< const ModuleShaderFlags &()> GetModuleShaderFlags, function_ref< const ModuleSignatureInfo &()> GetModuleSignatureInfo, function_ref< RootSignatureBindingInfo &()> GetRootSignatureBindingInfo)
 INITIALIZE_PASS_BEGIN (DXILContainerGlobalsLegacy, "dxil-container-globals", "DXContainer Global Emitter", false, true) INITIALIZE_PASS_END(DXILContainerGlobalsLegacy

Variables

static cl::opt< bool > ShaderHashDependsOnSource ("dx-Zss", cl::desc("Compute Shader Hash considering source information"))
dxil container globals
dxil container DXContainer Global Emitter
dxil container DXContainer Global false

Function Documentation

◆ addCompilerVersion()

void addCompilerVersion ( Module & M,
SmallVector< GlobalValue * > & Globals )
static

◆ addPipelineStateValidationInfo()

◆ addResourcesForPSV()

◆ addRootSignature()

◆ addSection()

void addSection ( Module & M,
SmallVector< GlobalValue * > & Globals,
StringRef SectionData,
StringRef MetadataName,
StringRef SectionName )
static

◆ addSignature()

◆ addSourceInfo()

void addSourceInfo ( Module & M,
SmallVector< GlobalValue * > & Globals,
function_ref< dxil::ModuleMetadataInfo &()> GetModuleMetadataInfo )
static

◆ buildContainerGlobal()

GlobalVariable * buildContainerGlobal ( Module & M,
Constant * Content,
StringRef Name,
StringRef SectionName )
static

◆ buildSignature()

◆ computeShaderHashAndDebugName()

◆ getFeatureFlags()

GlobalVariable * getFeatureFlags ( Module & M,
function_ref< const ModuleShaderFlags &()> GetShaderFlags )
static

Definition at line 89 of file DXILContainerGlobals.cpp.

References buildContainerGlobal(), and uint64_t.

Referenced by runContainerGlobalsOnModule().

◆ INITIALIZE_PASS_BEGIN()

INITIALIZE_PASS_BEGIN ( DXILContainerGlobalsLegacy ,
"dxil-container-globals" ,
"DXContainer Global Emitter" ,
false ,
true  )

◆ runContainerGlobalsOnModule()

Variable Documentation

◆ Emitter

dxil container DXContainer Global Emitter

Definition at line 502 of file DXILContainerGlobals.cpp.

Referenced by llvm::AVRMCELFStreamer::AVRMCELFStreamer(), llvm::AVRMCELFStreamer::AVRMCELFStreamer(), llvm::createAArch64ELFStreamer(), llvm::createAArch64WinCOFFStreamer(), llvm::createAMDGPUELFStreamer(), llvm::createARMELFStreamer(), createARMMachOStreamer(), llvm::createARMWinCOFFStreamer(), createBPFMCStreamer(), createELFStreamer(), createELFStreamer(), createMachOStreamer(), createMachOStreamer(), llvm::Target::createMCObjectStreamer(), createMCStreamer(), createMCStreamer(), createMCStreamer(), createMCStreamer(), createMCStreamer(), llvm::createMipsELFStreamer(), llvm::createPPCELFStreamer(), llvm::createPPCXCOFFStreamer(), llvm::CSKYELFStreamer::CSKYELFStreamer(), llvm::MCDwarfFrameEmitter::emit(), llvm::MCSFrameEmitter::emit(), llvm::dwarf_linker::parallel::DWARFLinkerImpl::emitAppleAcceleratorSections(), llvm::dwarf_linker::parallel::DwarfUnit::emitDebugInfo(), llvm::dwarf_linker::parallel::DWARFLinkerImpl::emitDWARFv5DebugNamesSection(), llvm::PPCELFStreamer::emitInstruction(), llvm::PPCXCOFFStreamer::emitInstruction(), llvm::ScheduleDAGSDNodes::EmitSchedule(), llvm::HexagonMCELFStreamer::HexagonMCELFStreamer(), llvm::HexagonMCELFStreamer::HexagonMCELFStreamer(), llvm::MCAsmBaseStreamer::MCAsmBaseStreamer(), llvm::MCDXContainerStreamer::MCDXContainerStreamer(), llvm::MCELFStreamer::MCELFStreamer(), llvm::MCGOFFStreamer::MCGOFFStreamer(), llvm::MCObjectStreamer::MCObjectStreamer(), llvm::MCSPIRVStreamer::MCSPIRVStreamer(), llvm::MCWasmStreamer::MCWasmStreamer(), llvm::MCXCOFFStreamer::MCXCOFFStreamer(), llvm::MipsELFStreamer::MipsELFStreamer(), llvm::PPCELFStreamer::PPCELFStreamer(), llvm::PPCXCOFFStreamer::PPCXCOFFStreamer(), ProcessSDDbgValues(), ProcessSourceNode(), llvm::dwarf_linker::classic::DWARFLinker::setOutputDWARFEmitter(), and llvm::SystemZHLASMAsmStreamer::SystemZHLASMAsmStreamer().

◆ false

dxil container DXContainer Global false

Definition at line 502 of file DXILContainerGlobals.cpp.

◆ globals

dxil container globals

Definition at line 501 of file DXILContainerGlobals.cpp.

◆ ShaderHashDependsOnSource

cl::opt< bool > ShaderHashDependsOnSource("dx-Zss", cl::desc("Compute Shader Hash considering source information")) ( "dx-Zss" ,
cl::desc("Compute Shader Hash considering source information")  )
static