aboutsummaryrefslogtreecommitdiff
path: root/llvm/lib/CodeGen/MachineBasicBlock.cpp
diff options
context:
space:
mode:
authorpaperchalice <liujunchang97@outlook.com>2024-12-11 14:25:17 +0800
committerGitHub <noreply@github.com>2024-12-11 14:25:17 +0800
commit553058f825157b33a2d7f793c811f301260b765b (patch)
tree0fefea1a58354cbb957df525a951dd615640a9b4 /llvm/lib/CodeGen/MachineBasicBlock.cpp
parent839c8217b989a22908fdd1ec48105ff22d655fb2 (diff)
downloadllvm-553058f825157b33a2d7f793c811f301260b765b.zip
llvm-553058f825157b33a2d7f793c811f301260b765b.tar.gz
llvm-553058f825157b33a2d7f793c811f301260b765b.tar.bz2
Revert "[DomTreeUpdater] Move critical edge splitting code to updater" (#119512)
Reverts llvm/llvm-project#115111 Causes #119511
Diffstat (limited to 'llvm/lib/CodeGen/MachineBasicBlock.cpp')
-rw-r--r--llvm/lib/CodeGen/MachineBasicBlock.cpp8
1 files changed, 3 insertions, 5 deletions
diff --git a/llvm/lib/CodeGen/MachineBasicBlock.cpp b/llvm/lib/CodeGen/MachineBasicBlock.cpp
index 5ac6472..5d06af3e 100644
--- a/llvm/lib/CodeGen/MachineBasicBlock.cpp
+++ b/llvm/lib/CodeGen/MachineBasicBlock.cpp
@@ -16,13 +16,11 @@
#include "llvm/CodeGen/LiveIntervals.h"
#include "llvm/CodeGen/LivePhysRegs.h"
#include "llvm/CodeGen/LiveVariables.h"
-#include "llvm/CodeGen/MachineDomTreeUpdater.h"
#include "llvm/CodeGen/MachineDominators.h"
#include "llvm/CodeGen/MachineFunction.h"
#include "llvm/CodeGen/MachineInstrBuilder.h"
#include "llvm/CodeGen/MachineJumpTableInfo.h"
#include "llvm/CodeGen/MachineLoopInfo.h"
-#include "llvm/CodeGen/MachinePostDominators.h"
#include "llvm/CodeGen/MachineRegisterInfo.h"
#include "llvm/CodeGen/SlotIndexes.h"
#include "llvm/CodeGen/TargetInstrInfo.h"
@@ -1148,7 +1146,7 @@ public:
MachineBasicBlock *MachineBasicBlock::SplitCriticalEdge(
MachineBasicBlock *Succ, Pass *P, MachineFunctionAnalysisManager *MFAM,
- std::vector<SparseBitVector<>> *LiveInSets, MachineDomTreeUpdater *MDTU) {
+ std::vector<SparseBitVector<>> *LiveInSets) {
assert((P || MFAM) && "Need a way to get analysis results!");
if (!canSplitCriticalEdge(Succ))
return nullptr;
@@ -1348,8 +1346,8 @@ MachineBasicBlock *MachineBasicBlock::SplitCriticalEdge(
LIS->repairIntervalsInRange(this, getFirstTerminator(), end(), UsedRegs);
}
- if (MDTU)
- MDTU->splitCriticalEdge(this, Succ, NMBB);
+ if (auto *MDT = GET_RESULT(MachineDominatorTree, getDomTree, ))
+ MDT->recordSplitCriticalEdge(this, Succ, NMBB);
if (MachineLoopInfo *MLI = GET_RESULT(MachineLoop, getLI, Info))
if (MachineLoop *TIL = MLI->getLoopFor(this)) {