Skip to content

Commit 0a0f100

Browse files
authored
Revert "[LTO] Run Argument Promotion before IPSCCP" (#111839)
Reverts #111163, as this was merged prematurely.
1 parent a3cd269 commit 0a0f100

File tree

2 files changed

+3
-15
lines changed

2 files changed

+3
-15
lines changed

llvm/lib/Passes/PassBuilderPipelines.cpp

Lines changed: 0 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1831,15 +1831,6 @@ PassBuilder::buildLTODefaultPipeline(OptimizationLevel Level,
18311831
MPM.addPass(PGOIndirectCallPromotion(
18321832
true /* InLTO */, PGOOpt && PGOOpt->Action == PGOOptions::SampleUse));
18331833

1834-
// Promoting by-reference arguments to by-value exposes more constants to
1835-
// IPSCCP.
1836-
MPM.addPass(createModuleToPostOrderCGSCCPassAdaptor(
1837-
PostOrderFunctionAttrsPass(/*SkipNonRecursive*/ true)));
1838-
MPM.addPass(
1839-
createModuleToPostOrderCGSCCPassAdaptor(ArgumentPromotionPass()));
1840-
MPM.addPass(
1841-
createModuleToFunctionPassAdaptor(SROAPass(SROAOptions::ModifyCFG)));
1842-
18431834
// Propagate constants at call sites into the functions they call. This
18441835
// opens opportunities for globalopt (and inlining) by substituting function
18451836
// pointers passed as arguments to direct uses of functions.

llvm/test/Other/new-pm-lto-defaults.ll

Lines changed: 3 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -41,17 +41,14 @@
4141
; CHECK-O23SZ-NEXT: PGOIndirectCallPromotion
4242
; CHECK-O23SZ-NEXT: Running analysis: ProfileSummaryAnalysis
4343
; CHECK-O23SZ-NEXT: Running analysis: OptimizationRemarkEmitterAnalysis
44+
; CHECK-O23SZ-NEXT: Running pass: IPSCCPPass
45+
; CHECK-O23SZ-NEXT: Running analysis: AssumptionAnalysis on foo
46+
; CHECK-O23SZ-NEXT: Running pass: CalledValuePropagationPass
4447
; CHECK-O-NEXT: Running analysis: InnerAnalysisManagerProxy<{{.*}}SCC
4548
; CHECK-O-NEXT: Running analysis: LazyCallGraphAnalysis
4649
; CHECK-O1-NEXT: Running analysis: TargetLibraryAnalysis
4750
; CHECK-O-NEXT: Running analysis: FunctionAnalysisManagerCGSCCProxy
4851
; CHECK-O-NEXT: Running analysis: OuterAnalysisManagerProxy<{{.*}}LazyCallGraph{{.*}}>
49-
; CHECK-O23SZ-NEXT: Running pass: PostOrderFunctionAttrsPass
50-
; CHECK-O23SZ-NEXT: Running pass: ArgumentPromotionPass
51-
; CHECK-O23SZ-NEXT: Running pass: SROAPass
52-
; CHECK-O23SZ-NEXT: Running analysis: AssumptionAnalysis on foo
53-
; CHECK-O23SZ-NEXT: Running pass: IPSCCPPass
54-
; CHECK-O23SZ-NEXT: Running pass: CalledValuePropagationPass
5552
; CHECK-O-NEXT: Running pass: PostOrderFunctionAttrsPass
5653
; CHECK-O-NEXT: Running analysis: AAManager
5754
; CHECK-O-NEXT: Running analysis: BasicAA

0 commit comments

Comments
 (0)