Skip to content

Commit fe0f610

Browse files
committed
[EVM] Add merge identical bb pass to opt pipeline
1 parent 022a80b commit fe0f610

File tree

1 file changed

+6
-0
lines changed

1 file changed

+6
-0
lines changed

llvm/lib/Target/EVM/EVMTargetMachine.cpp

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,7 @@
2626
#include "llvm/MC/TargetRegistry.h"
2727
#include "llvm/Passes/PassBuilder.h"
2828
#include "llvm/Transforms/IPO/GlobalDCE.h"
29+
#include "llvm/Transforms/Scalar/MergeIdenticalBB.h"
2930
#include "llvm/Transforms/Utils.h"
3031

3132
using namespace llvm;
@@ -115,6 +116,11 @@ void EVMTargetMachine::registerPassBuilderCallbacks(PassBuilder &PB) {
115116
PM.addPass(GlobalDCEPass());
116117
PM.addPass(createModuleToFunctionPassAdaptor(EVMAllocaHoistingPass()));
117118
});
119+
PB.registerScalarOptimizerLateEPCallback(
120+
[](FunctionPassManager &PM, OptimizationLevel Level) {
121+
if (Level.getSizeLevel() || Level.getSpeedupLevel() > 1)
122+
PM.addPass(MergeIdenticalBBPass());
123+
});
118124
}
119125

120126
namespace {

0 commit comments

Comments
 (0)