[llvm] [AMDGPU] Port AMDGPURewriteUndefForPHI to new pass manager (PR #66008)

Matt Arsenault via llvm-commits llvm-commits at lists.llvm.org
Mon Sep 11 23:16:20 PDT 2023


================
@@ -177,6 +177,20 @@ bool AMDGPURewriteUndefForPHI::runOnFunction(Function &F) {
   return rewritePHIs(F, UA, DT);
 }
 
+PreservedAnalyses
+AMDGPURewriteUndefForPHIPass::run(Function &F, FunctionAnalysisManager &AM) {
+  UniformityInfo &UA = AM.getResult<UniformityInfoAnalysis>(F);
+  DominatorTree *DT = &AM.getResult<DominatorTreeAnalysis>(F);
+  bool Changed = rewritePHIs(F, UA, DT);
+  if (Changed) {
+    PreservedAnalyses PA;
+    PA.preserveSet<CFGAnalyses>();
+    return PA;
+  }
+
+  return PreservedAnalyses::all();
+}
+
 FunctionPass *llvm::createAMDGPURewriteUndefForPHIPass() {
----------------
arsenm wrote:

AMDGPURewriteUndefForPHILegacy, some places have always been stuck with "PassPass"

https://github.com/llvm/llvm-project/pull/66008


More information about the llvm-commits mailing list