27class DXILTranslateMetadata :
public ModulePass {
45bool DXILTranslateMetadata::runOnModule(
Module &M) {
48 if (ValVerMD.isEmpty())
54 getAnalysis<DXILResourceMDWrapper>().getDXILResource();
58 getAnalysis<ShaderFlagsAnalysisWrapper>().getShaderFlags());
64char DXILTranslateMetadata::ID = 0;
67 return new DXILTranslateMetadata();
71 "DXIL Translate Metadata",
false,
false)
This file contains the declarations for the subclasses of Constant, which represent the different fla...
Module.h This file contains the declarations for the Module class.
#define INITIALIZE_PASS_DEPENDENCY(depName)
#define INITIALIZE_PASS_END(passName, arg, name, cfg, analysis)
#define INITIALIZE_PASS_BEGIN(passName, arg, name, cfg, analysis)
StringSet - A set-like wrapper for the StringMap.
Represent the analysis usage information of a pass.
AnalysisUsage & addRequired()
void setPreservesAll()
Set by analyses that do not transform their input at all.
The legacy pass manager's analysis pass to compute DXIL resource information.
ModulePass class - This class is used to implement unstructured interprocedural optimizations and ana...
virtual bool runOnModule(Module &M)=0
runOnModule - Virtual method overriden by subclasses to process the module being operated on.
A Module instance is used to store all the information related to an LLVM module.
virtual void getAnalysisUsage(AnalysisUsage &) const
getAnalysisUsage - This function should be overriden by passes that need analysis information to do t...
virtual StringRef getPassName() const
getPassName - Return a nice clean name for a pass.
StringRef - Represent a constant reference to a string, i.e.
Represents a version number in the form major[.minor[.subminor[.build]]].
void write(Module &M) const
Wrapper pass for the legacy pass manager.
unsigned ID
LLVM IR allows to use arbitrary numbers as calling convention identifiers.
void createShaderModelMD(Module &M)
void createDXILVersionMD(Module &M)
void createEntryMD(Module &M, const uint64_t ShaderFlags)
This is an optimization pass for GlobalISel generic memory operations.
ModulePass * createDXILTranslateMetadataPass()
Pass to emit metadata for DXIL.