Skip to content

[DirectX] Rename backend DXIL resource analysis passes to DXILResourceMD*. NFC #101393

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion llvm/lib/Target/DirectX/DXILPrepare.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -246,7 +246,7 @@ class DXILPrepareModule : public ModulePass {
DXILPrepareModule() : ModulePass(ID) {}
void getAnalysisUsage(AnalysisUsage &AU) const override {
AU.addPreserved<ShaderFlagsAnalysisWrapper>();
AU.addPreserved<DXILResourceWrapper>();
AU.addPreserved<DXILResourceMDWrapper>();
}
static char ID; // Pass identification.
};
Expand Down
6 changes: 3 additions & 3 deletions llvm/lib/Target/DirectX/DXILPrettyPrinter.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -41,20 +41,20 @@ class DXILPrettyPrinter : public llvm::ModulePass {
bool runOnModule(Module &M) override;
void getAnalysisUsage(AnalysisUsage &AU) const override {
AU.setPreservesAll();
AU.addRequired<DXILResourceWrapper>();
AU.addRequired<DXILResourceMDWrapper>();
}
};
} // namespace

char DXILPrettyPrinter::ID = 0;
INITIALIZE_PASS_BEGIN(DXILPrettyPrinter, "dxil-pretty-printer",
"DXIL Metadata Pretty Printer", true, true)
INITIALIZE_PASS_DEPENDENCY(DXILResourceWrapper)
INITIALIZE_PASS_DEPENDENCY(DXILResourceMDWrapper)
INITIALIZE_PASS_END(DXILPrettyPrinter, "dxil-pretty-printer",
"DXIL Metadata Pretty Printer", true, true)

bool DXILPrettyPrinter::runOnModule(Module &M) {
dxil::Resources &Res = getAnalysis<DXILResourceWrapper>().getDXILResource();
dxil::Resources &Res = getAnalysis<DXILResourceMDWrapper>().getDXILResource();
Res.print(OS);
return false;
}
Expand Down
24 changes: 12 additions & 12 deletions llvm/lib/Target/DirectX/DXILResourceAnalysis.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -18,35 +18,35 @@ using namespace llvm;

#define DEBUG_TYPE "dxil-resource-analysis"

dxil::Resources DXILResourceAnalysis::run(Module &M,
ModuleAnalysisManager &AM) {
dxil::Resources DXILResourceMDAnalysis::run(Module &M,
ModuleAnalysisManager &AM) {
dxil::Resources R;
R.collect(M);
return R;
}

AnalysisKey DXILResourceAnalysis::Key;
AnalysisKey DXILResourceMDAnalysis::Key;

PreservedAnalyses DXILResourcePrinterPass::run(Module &M,
ModuleAnalysisManager &AM) {
dxil::Resources Res = AM.getResult<DXILResourceAnalysis>(M);
PreservedAnalyses DXILResourceMDPrinterPass::run(Module &M,
ModuleAnalysisManager &AM) {
dxil::Resources Res = AM.getResult<DXILResourceMDAnalysis>(M);
Res.print(OS);
return PreservedAnalyses::all();
}

char DXILResourceWrapper::ID = 0;
INITIALIZE_PASS_BEGIN(DXILResourceWrapper, DEBUG_TYPE,
char DXILResourceMDWrapper::ID = 0;
INITIALIZE_PASS_BEGIN(DXILResourceMDWrapper, DEBUG_TYPE,
"DXIL resource Information", true, true)
INITIALIZE_PASS_END(DXILResourceWrapper, DEBUG_TYPE,
INITIALIZE_PASS_END(DXILResourceMDWrapper, DEBUG_TYPE,
"DXIL resource Information", true, true)

bool DXILResourceWrapper::runOnModule(Module &M) {
bool DXILResourceMDWrapper::runOnModule(Module &M) {
Resources.collect(M);
return false;
}

DXILResourceWrapper::DXILResourceWrapper() : ModulePass(ID) {}
DXILResourceMDWrapper::DXILResourceMDWrapper() : ModulePass(ID) {}

void DXILResourceWrapper::print(raw_ostream &OS, const Module *) const {
void DXILResourceMDWrapper::print(raw_ostream &OS, const Module *) const {
Resources.print(OS);
}
16 changes: 9 additions & 7 deletions llvm/lib/Target/DirectX/DXILResourceAnalysis.h
Original file line number Diff line number Diff line change
Expand Up @@ -20,34 +20,36 @@

namespace llvm {
/// Analysis pass that exposes the \c DXILResource for a module.
class DXILResourceAnalysis : public AnalysisInfoMixin<DXILResourceAnalysis> {
friend AnalysisInfoMixin<DXILResourceAnalysis>;
class DXILResourceMDAnalysis
: public AnalysisInfoMixin<DXILResourceMDAnalysis> {
friend AnalysisInfoMixin<DXILResourceMDAnalysis>;
static AnalysisKey Key;

public:
typedef dxil::Resources Result;
dxil::Resources run(Module &M, ModuleAnalysisManager &AM);
};

/// Printer pass for the \c DXILResourceAnalysis results.
class DXILResourcePrinterPass : public PassInfoMixin<DXILResourcePrinterPass> {
/// Printer pass for the \c DXILResourceMDAnalysis results.
class DXILResourceMDPrinterPass
: public PassInfoMixin<DXILResourceMDPrinterPass> {
raw_ostream &OS;

public:
explicit DXILResourcePrinterPass(raw_ostream &OS) : OS(OS) {}
explicit DXILResourceMDPrinterPass(raw_ostream &OS) : OS(OS) {}
PreservedAnalyses run(Module &M, ModuleAnalysisManager &AM);
static bool isRequired() { return true; }
};

/// The legacy pass manager's analysis pass to compute DXIL resource
/// information.
class DXILResourceWrapper : public ModulePass {
class DXILResourceMDWrapper : public ModulePass {
dxil::Resources Resources;

public:
static char ID; // Pass identification, replacement for typeid

DXILResourceWrapper();
DXILResourceMDWrapper();

dxil::Resources &getDXILResource() { return Resources; }
const dxil::Resources &getDXILResource() const { return Resources; }
Expand Down
6 changes: 3 additions & 3 deletions llvm/lib/Target/DirectX/DXILTranslateMetadata.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@ class DXILTranslateMetadata : public ModulePass {

void getAnalysisUsage(AnalysisUsage &AU) const override {
AU.setPreservesAll();
AU.addRequired<DXILResourceWrapper>();
AU.addRequired<DXILResourceMDWrapper>();
AU.addRequired<ShaderFlagsAnalysisWrapper>();
}

Expand All @@ -51,7 +51,7 @@ bool DXILTranslateMetadata::runOnModule(Module &M) {
dxil::createDXILVersionMD(M);

const dxil::Resources &Res =
getAnalysis<DXILResourceWrapper>().getDXILResource();
getAnalysis<DXILResourceMDWrapper>().getDXILResource();
Res.write(M);

const uint64_t Flags = static_cast<uint64_t>(
Expand All @@ -69,7 +69,7 @@ ModulePass *llvm::createDXILTranslateMetadataPass() {

INITIALIZE_PASS_BEGIN(DXILTranslateMetadata, "dxil-metadata-emit",
"DXIL Metadata Emit", false, false)
INITIALIZE_PASS_DEPENDENCY(DXILResourceWrapper)
INITIALIZE_PASS_DEPENDENCY(DXILResourceMDWrapper)
INITIALIZE_PASS_DEPENDENCY(ShaderFlagsAnalysisWrapper)
INITIALIZE_PASS_END(DXILTranslateMetadata, "dxil-metadata-emit",
"DXIL Metadata Emit", false, false)
2 changes: 1 addition & 1 deletion llvm/lib/Target/DirectX/DirectX.h
Original file line number Diff line number Diff line change
Expand Up @@ -47,7 +47,7 @@ void initializeDXILTranslateMetadataPass(PassRegistry &);
ModulePass *createDXILTranslateMetadataPass();

/// Initializer for DXILTranslateMetadata.
void initializeDXILResourceWrapperPass(PassRegistry &);
void initializeDXILResourceMDWrapperPass(PassRegistry &);

/// Pass to pretty print DXIL metadata.
ModulePass *createDXILPrettyPrinterPass(raw_ostream &OS);
Expand Down
4 changes: 2 additions & 2 deletions llvm/lib/Target/DirectX/DirectXPassRegistry.def
Original file line number Diff line number Diff line change
Expand Up @@ -17,13 +17,13 @@
#define MODULE_ANALYSIS(NAME, CREATE_PASS)
#endif
MODULE_ANALYSIS("dx-shader-flags", dxil::ShaderFlagsAnalysis())
MODULE_ANALYSIS("dxil-resource", DXILResourceAnalysis())
MODULE_ANALYSIS("dxil-resource-md", DXILResourceMDAnalysis())
#undef MODULE_ANALYSIS

#ifndef MODULE_PASS
#define MODULE_PASS(NAME, CREATE_PASS)
#endif
// TODO: rename to print<foo> after NPM switch
MODULE_PASS("print-dx-shader-flags", dxil::ShaderFlagsAnalysisPrinter(dbgs()))
MODULE_PASS("print-dxil-resource", DXILResourcePrinterPass(dbgs()))
MODULE_PASS("print-dxil-resource-md", DXILResourceMDPrinterPass(dbgs()))
#undef MODULE_PASS
2 changes: 1 addition & 1 deletion llvm/lib/Target/DirectX/DirectXTargetMachine.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -46,7 +46,7 @@ extern "C" LLVM_EXTERNAL_VISIBILITY void LLVMInitializeDirectXTarget() {
initializeDXContainerGlobalsPass(*PR);
initializeDXILOpLoweringLegacyPass(*PR);
initializeDXILTranslateMetadataPass(*PR);
initializeDXILResourceWrapperPass(*PR);
initializeDXILResourceMDWrapperPass(*PR);
initializeShaderFlagsAnalysisWrapperPass(*PR);
}

Expand Down
2 changes: 1 addition & 1 deletion llvm/test/CodeGen/DirectX/UAVMetadata.ll
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
; RUN: opt -S -dxil-metadata-emit < %s | FileCheck %s
; RUN: opt -S --passes="print-dxil-resource" < %s 2>&1 | FileCheck %s --check-prefix=PRINT
; RUN: opt -S --passes="print-dxil-resource-md" < %s 2>&1 | FileCheck %s --check-prefix=PRINT
; RUN: llc %s --filetype=asm -o - < %s 2>&1 | FileCheck %s --check-prefixes=CHECK,PRINT

target datalayout = "e-m:e-p:32:32-i1:32-i8:8-i16:16-i32:32-i64:64-f16:16-f32:32-f64:64-n8:16:32:64"
Expand Down
2 changes: 1 addition & 1 deletion llvm/test/CodeGen/DirectX/cbuf.ll
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
; RUN: opt -S -dxil-metadata-emit < %s | FileCheck %s --check-prefix=DXILMD
; RUN: opt -S --passes="print-dxil-resource" < %s 2>&1 | FileCheck %s --check-prefix=PRINT
; RUN: opt -S --passes="print-dxil-resource-md" < %s 2>&1 | FileCheck %s --check-prefix=PRINT

target datalayout = "e-m:e-p:32:32-i1:32-i8:8-i16:16-i32:32-i64:64-f16:16-f32:32-f64:64-n8:16:32:64"
target triple = "dxil-unknown-shadermodel6.7-library"
Expand Down
Loading