[llvm-branch-commits] [llvm] 6d2dfd3 - [LPM] Set gen_crash_diag=false for non-MSSA pass in MSSA pipeline

Nikita Popov via llvm-branch-commits llvm-branch-commits at lists.llvm.org
Thu Nov 30 09:46:37 PST 2023


Author: Nikita Popov
Date: 2023-11-30T10:21:35+01:00
New Revision: 6d2dfd37bd50b21ed90427052198bd1f06c761f8

URL: https://github.com/llvm/llvm-project/commit/6d2dfd37bd50b21ed90427052198bd1f06c761f8
DIFF: https://github.com/llvm/llvm-project/commit/6d2dfd37bd50b21ed90427052198bd1f06c761f8.diff

LOG: [LPM] Set gen_crash_diag=false for non-MSSA pass in MSSA pipeline

When a loop pass that does not preserve MSSA is run as part of a
loop-mssa pipeline, this is user error and we should not ask for
a bug report.

Fixes https://github.com/llvm/llvm-project/issues/73554.

Added: 
    

Modified: 
    llvm/lib/Transforms/Scalar/LoopPassManager.cpp
    llvm/test/Other/loop-mssa-not-preserved.ll

Removed: 
    


################################################################################
diff  --git a/llvm/lib/Transforms/Scalar/LoopPassManager.cpp b/llvm/lib/Transforms/Scalar/LoopPassManager.cpp
index 4bf192b0600766d..a4f2dbf9a582899 100644
--- a/llvm/lib/Transforms/Scalar/LoopPassManager.cpp
+++ b/llvm/lib/Transforms/Scalar/LoopPassManager.cpp
@@ -313,7 +313,8 @@ PreservedAnalyses FunctionToLoopPassAdaptor::run(Function &F,
 
     if (LAR.MSSA && !PassPA.getChecker<MemorySSAAnalysis>().preserved())
       report_fatal_error("Loop pass manager using MemorySSA contains a pass "
-                         "that does not preserve MemorySSA");
+                         "that does not preserve MemorySSA",
+                         /*gen_crash_diag*/ false);
 
 #ifndef NDEBUG
     // LoopAnalysisResults should always be valid.

diff  --git a/llvm/test/Other/loop-mssa-not-preserved.ll b/llvm/test/Other/loop-mssa-not-preserved.ll
index 38390262f113aec..d33e7a83326f492 100644
--- a/llvm/test/Other/loop-mssa-not-preserved.ll
+++ b/llvm/test/Other/loop-mssa-not-preserved.ll
@@ -1,4 +1,4 @@
-; RUN: not --crash opt -passes='loop-mssa(loop-unroll-full)' 2>&1 < %s | FileCheck %s
+; RUN: not opt -passes='loop-mssa(loop-unroll-full)' 2>&1 < %s | FileCheck %s
 
 ; CHECK: LLVM ERROR: Loop pass manager using MemorySSA contains a pass that does not preserve MemorySSA
 


        


More information about the llvm-branch-commits mailing list