Index: lib/Transforms/Scalar/SCCP.cpp =================================================================== --- lib/Transforms/Scalar/SCCP.cpp +++ lib/Transforms/Scalar/SCCP.cpp @@ -1776,6 +1776,7 @@ return PreservedAnalyses::all(); auto PA = PreservedAnalyses(); + PA.preserve(); PA.preserve(); return PA; } @@ -1798,6 +1799,7 @@ void getAnalysisUsage(AnalysisUsage &AU) const override { AU.addRequired(); + AU.addPreserved(); AU.addPreserved(); } Index: test/Other/opt-O2-pipeline.ll =================================================================== --- test/Other/opt-O2-pipeline.ll +++ test/Other/opt-O2-pipeline.ll @@ -134,7 +134,6 @@ ; CHECK-NEXT: Memory Dependence Analysis ; CHECK-NEXT: MemCpy Optimization ; CHECK-NEXT: Sparse Conditional Constant Propagation -; CHECK-NEXT: Dominator Tree Construction ; CHECK-NEXT: Demanded bits analysis ; CHECK-NEXT: Bit-Tracking Dead Code Elimination ; CHECK-NEXT: Basic Alias Analysis (stateless AA impl) Index: test/Other/opt-O3-pipeline.ll =================================================================== --- test/Other/opt-O3-pipeline.ll +++ test/Other/opt-O3-pipeline.ll @@ -138,7 +138,6 @@ ; CHECK-NEXT: Memory Dependence Analysis ; CHECK-NEXT: MemCpy Optimization ; CHECK-NEXT: Sparse Conditional Constant Propagation -; CHECK-NEXT: Dominator Tree Construction ; CHECK-NEXT: Demanded bits analysis ; CHECK-NEXT: Bit-Tracking Dead Code Elimination ; CHECK-NEXT: Basic Alias Analysis (stateless AA impl) Index: test/Other/opt-Os-pipeline.ll =================================================================== --- test/Other/opt-Os-pipeline.ll +++ test/Other/opt-Os-pipeline.ll @@ -120,7 +120,6 @@ ; CHECK-NEXT: Memory Dependence Analysis ; CHECK-NEXT: MemCpy Optimization ; CHECK-NEXT: Sparse Conditional Constant Propagation -; CHECK-NEXT: Dominator Tree Construction ; CHECK-NEXT: Demanded bits analysis ; CHECK-NEXT: Bit-Tracking Dead Code Elimination ; CHECK-NEXT: Basic Alias Analysis (stateless AA impl)