[llvm] [NVPTX] Preserve CFGAnalyses in more passes (PR #217062)
Alex MacLean via llvm-commits
llvm-commits at lists.llvm.org
Tue Aug 18 08:51:21 PDT 2026
https://github.com/AlexMaclean created https://github.com/llvm/llvm-project/pull/217062
None
>From 28e4c5b6700219c0a0b8900efd0ad0370ae32818 Mon Sep 17 00:00:00 2001
From: Alex Maclean <amaclean at nvidia.com>
Date: Tue, 18 Aug 2026 08:49:17 -0700
Subject: [PATCH] [NVPTX] Preserve CFGAnalyses in more passes
---
llvm/lib/Target/NVPTX/NVPTXMarkKernelPtrsGlobal.cpp | 5 +++--
llvm/lib/Target/NVPTX/NVPTXTagInvariantLoads.cpp | 5 +++--
llvm/lib/Target/NVPTX/NVVMIntrRange.cpp | 5 +++--
3 files changed, 9 insertions(+), 6 deletions(-)
diff --git a/llvm/lib/Target/NVPTX/NVPTXMarkKernelPtrsGlobal.cpp b/llvm/lib/Target/NVPTX/NVPTXMarkKernelPtrsGlobal.cpp
index c218e2aa4cbf1..fa3e67263d156 100644
--- a/llvm/lib/Target/NVPTX/NVPTXMarkKernelPtrsGlobal.cpp
+++ b/llvm/lib/Target/NVPTX/NVPTXMarkKernelPtrsGlobal.cpp
@@ -119,6 +119,7 @@ FunctionPass *llvm::createNVPTXMarkKernelPtrsGlobalPass() {
PreservedAnalyses
NVPTXMarkKernelPtrsGlobalPass::run(Function &F, FunctionAnalysisManager &) {
- return markKernelPtrsGlobal(F) ? PreservedAnalyses::none()
- : PreservedAnalyses::all();
+ if (!markKernelPtrsGlobal(F))
+ return PreservedAnalyses::all();
+ return PreservedAnalyses::none().preserveSet<CFGAnalyses>();
}
diff --git a/llvm/lib/Target/NVPTX/NVPTXTagInvariantLoads.cpp b/llvm/lib/Target/NVPTX/NVPTXTagInvariantLoads.cpp
index 5abbfff222d1e..26c21c43f95cd 100644
--- a/llvm/lib/Target/NVPTX/NVPTXTagInvariantLoads.cpp
+++ b/llvm/lib/Target/NVPTX/NVPTXTagInvariantLoads.cpp
@@ -108,6 +108,7 @@ FunctionPass *llvm::createNVPTXTagInvariantLoadsPass() {
PreservedAnalyses NVPTXTagInvariantLoadsPass::run(Function &F,
FunctionAnalysisManager &) {
- return tagInvariantLoads(F) ? PreservedAnalyses::none()
- : PreservedAnalyses::all();
+ if (!tagInvariantLoads(F))
+ return PreservedAnalyses::all();
+ return PreservedAnalyses::none().preserveSet<CFGAnalyses>();
}
diff --git a/llvm/lib/Target/NVPTX/NVVMIntrRange.cpp b/llvm/lib/Target/NVPTX/NVVMIntrRange.cpp
index a00bb85a19c73..45f4ffc79ec93 100644
--- a/llvm/lib/Target/NVPTX/NVVMIntrRange.cpp
+++ b/llvm/lib/Target/NVPTX/NVVMIntrRange.cpp
@@ -175,6 +175,7 @@ bool NVVMIntrRange::runOnFunction(Function &F) { return runNVVMIntrRange(F); }
PreservedAnalyses NVVMIntrRangePass::run(Function &F,
FunctionAnalysisManager &AM) {
- return runNVVMIntrRange(F) ? PreservedAnalyses::none()
- : PreservedAnalyses::all();
+ if (!runNVVMIntrRange(F))
+ return PreservedAnalyses::all();
+ return PreservedAnalyses::none().preserveSet<CFGAnalyses>();
}
More information about the llvm-commits
mailing list