Skip to content

Commit a682a9c

Browse files
committed
Revert "Port Swift's merge function pass to llvm: merging functions that differ in constants (#68235)"
This reverts commit 19b5495. PR landed without approval, with severe quality issues.
1 parent 71a1367 commit a682a9c

13 files changed

+0
-2373
lines changed

llvm/include/llvm/Transforms/IPO/MergeFunctionsIgnoringConst.h

Lines changed: 0 additions & 42 deletions
This file was deleted.

llvm/include/llvm/Transforms/Utils/FunctionComparator.h

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -379,7 +379,6 @@ class FunctionComparator {
379379
/// But, we are still not able to compare operands of PHI nodes, since those
380380
/// could be operands from further BBs we didn't scan yet.
381381
/// So it's impossible to use dominance properties in general.
382-
protected:
383382
mutable DenseMap<const Value*, int> sn_mapL, sn_mapR;
384383

385384
// The global state we will use

llvm/include/llvm/Transforms/Utils/FunctionComparatorIgnoringConst.h

Lines changed: 0 additions & 58 deletions
This file was deleted.

llvm/include/llvm/Transforms/Utils/MergeFunctionsIgnoringConst.h

Lines changed: 0 additions & 29 deletions
This file was deleted.

llvm/lib/Passes/PassBuilder.cpp

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -123,7 +123,6 @@
123123
#include "llvm/Transforms/IPO/LowerTypeTests.h"
124124
#include "llvm/Transforms/IPO/MemProfContextDisambiguation.h"
125125
#include "llvm/Transforms/IPO/MergeFunctions.h"
126-
#include "llvm/Transforms/IPO/MergeFunctionsIgnoringConst.h"
127126
#include "llvm/Transforms/IPO/ModuleInliner.h"
128127
#include "llvm/Transforms/IPO/OpenMPOpt.h"
129128
#include "llvm/Transforms/IPO/PartialInlining.h"

llvm/lib/Passes/PassBuilderPipelines.cpp

Lines changed: 0 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -60,7 +60,6 @@
6060
#include "llvm/Transforms/IPO/LowerTypeTests.h"
6161
#include "llvm/Transforms/IPO/MemProfContextDisambiguation.h"
6262
#include "llvm/Transforms/IPO/MergeFunctions.h"
63-
#include "llvm/Transforms/IPO/MergeFunctionsIgnoringConst.h"
6463
#include "llvm/Transforms/IPO/ModuleInliner.h"
6564
#include "llvm/Transforms/IPO/OpenMPOpt.h"
6665
#include "llvm/Transforms/IPO/PartialInlining.h"
@@ -177,10 +176,6 @@ static cl::opt<bool> EnableMergeFunctions(
177176
"enable-merge-functions", cl::init(false), cl::Hidden,
178177
cl::desc("Enable function merging as part of the optimization pipeline"));
179178

180-
static cl::opt<bool> EnableMergeFuncIgnoringConst(
181-
"enable-merge-func-ignoring-const", cl::init(false), cl::Hidden,
182-
cl::desc("Enable function merger that ignores constants"));
183-
184179
static cl::opt<bool> EnablePostPGOLoopRotation(
185180
"enable-post-pgo-loop-rotation", cl::init(true), cl::Hidden,
186181
cl::desc("Run the loop rotation transformation after PGO instrumentation"));
@@ -1638,9 +1633,6 @@ ModulePassManager PassBuilder::buildThinLTODefaultPipeline(
16381633
MPM.addPass(buildModuleOptimizationPipeline(
16391634
Level, ThinOrFullLTOPhase::ThinLTOPostLink));
16401635

1641-
if (EnableMergeFuncIgnoringConst)
1642-
MPM.addPass(MergeFuncIgnoringConstPass());
1643-
16441636
// Emit annotation remarks.
16451637
addAnnotationRemarksPass(MPM);
16461638

@@ -1966,9 +1958,6 @@ PassBuilder::buildLTODefaultPipeline(OptimizationLevel Level,
19661958

19671959
invokeFullLinkTimeOptimizationLastEPCallbacks(MPM, Level);
19681960

1969-
if (EnableMergeFuncIgnoringConst)
1970-
MPM.addPass(MergeFuncIgnoringConstPass());
1971-
19721961
// Emit annotation remarks.
19731962
addAnnotationRemarksPass(MPM);
19741963

llvm/lib/Passes/PassRegistry.def

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -87,7 +87,6 @@ MODULE_PASS("lower-ifunc", LowerIFuncPass())
8787
MODULE_PASS("lowertypetests", LowerTypeTestsPass())
8888
MODULE_PASS("metarenamer", MetaRenamerPass())
8989
MODULE_PASS("mergefunc", MergeFunctionsPass())
90-
MODULE_PASS("mergefunc-ignoring-const", MergeFuncIgnoringConstPass())
9190
MODULE_PASS("name-anon-globals", NameAnonGlobalPass())
9291
MODULE_PASS("no-op-module", NoOpModulePass())
9392
MODULE_PASS("objc-arc-apelim", ObjCARCAPElimPass())

llvm/lib/Transforms/IPO/CMakeLists.txt

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,6 @@ add_llvm_component_library(LLVMipo
3030
LowerTypeTests.cpp
3131
MemProfContextDisambiguation.cpp
3232
MergeFunctions.cpp
33-
MergeFunctionsIgnoringConst.cpp
3433
ModuleInliner.cpp
3534
OpenMPOpt.cpp
3635
PartialInlining.cpp

0 commit comments

Comments
 (0)