[llvm] [NVPTX] Add NewPM boilerplate to NVPTXAddressFolder (PR #215334)
Aiden Grossman via llvm-commits
llvm-commits at lists.llvm.org
Mon Aug 10 17:00:05 PDT 2026
================
@@ -97,27 +97,33 @@ static bool foldAddresses(MachineFunction &MF) {
/// ----------------------------------------------------------------------------
namespace {
-struct NVPTXAddressFolderPass : public MachineFunctionPass {
+struct NVPTXAddressFolderLegacyPass : public MachineFunctionPass {
static char ID;
- NVPTXAddressFolderPass() : MachineFunctionPass(ID) {}
+ NVPTXAddressFolderLegacyPass() : MachineFunctionPass(ID) {}
- bool runOnMachineFunction(MachineFunction &MF) override;
+ bool runOnMachineFunction(MachineFunction &MF) override {
+ return foldAddresses(MF);
+ }
void getAnalysisUsage(AnalysisUsage &AU) const override {
MachineFunctionPass::getAnalysisUsage(AU);
}
};
} // namespace
-char NVPTXAddressFolderPass::ID = 0;
+char NVPTXAddressFolderLegacyPass::ID = 0;
-INITIALIZE_PASS(NVPTXAddressFolderPass, "nvptx-address-folder",
+INITIALIZE_PASS(NVPTXAddressFolderLegacyPass, "nvptx-address-folder",
"NVPTX Address Folder", false, false)
-bool NVPTXAddressFolderPass::runOnMachineFunction(MachineFunction &MF) {
- return foldAddresses(MF);
+MachineFunctionPass *llvm::createNVPTXAddressFolderLegacyPass() {
+ return new NVPTXAddressFolderLegacyPass();
}
-MachineFunctionPass *llvm::createNVPTXAddressFolderPass() {
- return new NVPTXAddressFolderPass();
+PreservedAnalyses
+NVPTXAddressFolderPass::run(MachineFunction &MF,
+ MachineFunctionAnalysisManager &MFAM) {
+ if (!foldAddresses(MF))
+ return PreservedAnalyses::all();
+ return getMachineFunctionPassPreservedAnalyses().preserveSet<CFGAnalyses>();
----------------
boomanaiden154 wrote:
We should preserve the CFG in the legacy PM too.
https://github.com/llvm/llvm-project/pull/215334
More information about the llvm-commits
mailing list