mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2024-11-23 03:02:36 +01:00
Cleanup: Delete seemingly unused reference to MachineDominatorTree from ScheduleDAGInstrs.
llvm-svn: 216124
This commit is contained in:
parent
3effcd99a5
commit
08af4466dd
@ -107,9 +107,7 @@ protected:
|
||||
std::map<MachineInstr*, SUnit*> MIToSUnit;
|
||||
|
||||
public:
|
||||
VLIWPacketizerList(
|
||||
MachineFunction &MF, MachineLoopInfo &MLI, MachineDominatorTree &MDT,
|
||||
bool IsPostRA);
|
||||
VLIWPacketizerList(MachineFunction &MF, MachineLoopInfo &MLI, bool IsPostRA);
|
||||
|
||||
virtual ~VLIWPacketizerList();
|
||||
|
||||
|
@ -250,7 +250,7 @@ protected:
|
||||
public:
|
||||
ScheduleDAGMI(MachineSchedContext *C, std::unique_ptr<MachineSchedStrategy> S,
|
||||
bool IsPostRA)
|
||||
: ScheduleDAGInstrs(*C->MF, C->MLI, C->MDT, IsPostRA,
|
||||
: ScheduleDAGInstrs(*C->MF, C->MLI, IsPostRA,
|
||||
/*RemoveKillFlags=*/IsPostRA, C->LIS),
|
||||
AA(C->AA), SchedImpl(std::move(S)), Topo(SUnits, &ExitSU), CurrentTop(),
|
||||
CurrentBottom(), NextClusterPred(nullptr), NextClusterSucc(nullptr) {
|
||||
|
@ -76,7 +76,6 @@ namespace llvm {
|
||||
class ScheduleDAGInstrs : public ScheduleDAG {
|
||||
protected:
|
||||
const MachineLoopInfo *MLI;
|
||||
const MachineDominatorTree *MDT;
|
||||
const MachineFrameInfo *MFI;
|
||||
|
||||
/// Live Intervals provides reaching defs in preRA scheduling.
|
||||
@ -155,7 +154,6 @@ namespace llvm {
|
||||
public:
|
||||
explicit ScheduleDAGInstrs(MachineFunction &mf,
|
||||
const MachineLoopInfo *mli,
|
||||
const MachineDominatorTree *mdt,
|
||||
bool IsPostRAFlag,
|
||||
bool RemoveKillFlags = false,
|
||||
LiveIntervals *LIS = nullptr);
|
||||
|
@ -106,16 +106,15 @@ namespace llvm {
|
||||
class DefaultVLIWScheduler : public ScheduleDAGInstrs {
|
||||
public:
|
||||
DefaultVLIWScheduler(MachineFunction &MF, MachineLoopInfo &MLI,
|
||||
MachineDominatorTree &MDT, bool IsPostRA);
|
||||
bool IsPostRA);
|
||||
// Schedule - Actual scheduling work.
|
||||
void schedule() override;
|
||||
};
|
||||
}
|
||||
|
||||
DefaultVLIWScheduler::DefaultVLIWScheduler(
|
||||
MachineFunction &MF, MachineLoopInfo &MLI, MachineDominatorTree &MDT,
|
||||
bool IsPostRA) :
|
||||
ScheduleDAGInstrs(MF, &MLI, &MDT, IsPostRA) {
|
||||
DefaultVLIWScheduler::DefaultVLIWScheduler(MachineFunction &MF,
|
||||
MachineLoopInfo &MLI, bool IsPostRA)
|
||||
: ScheduleDAGInstrs(MF, &MLI, IsPostRA) {
|
||||
CanHandleTerminators = true;
|
||||
}
|
||||
|
||||
@ -125,12 +124,12 @@ void DefaultVLIWScheduler::schedule() {
|
||||
}
|
||||
|
||||
// VLIWPacketizerList Ctor
|
||||
VLIWPacketizerList::VLIWPacketizerList(
|
||||
MachineFunction &MF, MachineLoopInfo &MLI, MachineDominatorTree &MDT,
|
||||
bool IsPostRA) : TM(MF.getTarget()), MF(MF) {
|
||||
VLIWPacketizerList::VLIWPacketizerList(MachineFunction &MF,
|
||||
MachineLoopInfo &MLI, bool IsPostRA)
|
||||
: TM(MF.getTarget()), MF(MF) {
|
||||
TII = TM.getSubtargetImpl()->getInstrInfo();
|
||||
ResourceTracker = TII->CreateTargetScheduleState(&TM, nullptr);
|
||||
VLIWScheduler = new DefaultVLIWScheduler(MF, MLI, MDT, IsPostRA);
|
||||
VLIWScheduler = new DefaultVLIWScheduler(MF, MLI, IsPostRA);
|
||||
}
|
||||
|
||||
// VLIWPacketizerList Dtor
|
||||
|
@ -137,10 +137,10 @@ namespace {
|
||||
|
||||
public:
|
||||
SchedulePostRATDList(
|
||||
MachineFunction &MF, MachineLoopInfo &MLI, MachineDominatorTree &MDT,
|
||||
AliasAnalysis *AA, const RegisterClassInfo&,
|
||||
MachineFunction &MF, MachineLoopInfo &MLI, AliasAnalysis *AA,
|
||||
const RegisterClassInfo &,
|
||||
TargetSubtargetInfo::AntiDepBreakMode AntiDepMode,
|
||||
SmallVectorImpl<const TargetRegisterClass*> &CriticalPathRCs);
|
||||
SmallVectorImpl<const TargetRegisterClass *> &CriticalPathRCs);
|
||||
|
||||
~SchedulePostRATDList();
|
||||
|
||||
@ -193,11 +193,11 @@ INITIALIZE_PASS(PostRAScheduler, "post-RA-sched",
|
||||
"Post RA top-down list latency scheduler", false, false)
|
||||
|
||||
SchedulePostRATDList::SchedulePostRATDList(
|
||||
MachineFunction &MF, MachineLoopInfo &MLI, MachineDominatorTree &MDT,
|
||||
AliasAnalysis *AA, const RegisterClassInfo &RCI,
|
||||
MachineFunction &MF, MachineLoopInfo &MLI, AliasAnalysis *AA,
|
||||
const RegisterClassInfo &RCI,
|
||||
TargetSubtargetInfo::AntiDepBreakMode AntiDepMode,
|
||||
SmallVectorImpl<const TargetRegisterClass*> &CriticalPathRCs)
|
||||
: ScheduleDAGInstrs(MF, &MLI, &MDT, /*IsPostRA=*/true), AA(AA), EndIndex(0) {
|
||||
SmallVectorImpl<const TargetRegisterClass *> &CriticalPathRCs)
|
||||
: ScheduleDAGInstrs(MF, &MLI, /*IsPostRA=*/true), AA(AA), EndIndex(0) {
|
||||
|
||||
const TargetMachine &TM = MF.getTarget();
|
||||
const InstrItineraryData *InstrItins =
|
||||
@ -269,7 +269,6 @@ bool PostRAScheduler::runOnMachineFunction(MachineFunction &Fn) {
|
||||
|
||||
TII = Fn.getSubtarget().getInstrInfo();
|
||||
MachineLoopInfo &MLI = getAnalysis<MachineLoopInfo>();
|
||||
MachineDominatorTree &MDT = getAnalysis<MachineDominatorTree>();
|
||||
AliasAnalysis *AA = &getAnalysis<AliasAnalysis>();
|
||||
TargetPassConfig *PassConfig = &getAnalysis<TargetPassConfig>();
|
||||
|
||||
@ -303,7 +302,7 @@ bool PostRAScheduler::runOnMachineFunction(MachineFunction &Fn) {
|
||||
|
||||
DEBUG(dbgs() << "PostRAScheduler\n");
|
||||
|
||||
SchedulePostRATDList Scheduler(Fn, MLI, MDT, AA, RegClassInfo, AntiDepMode,
|
||||
SchedulePostRATDList Scheduler(Fn, MLI, AA, RegClassInfo, AntiDepMode,
|
||||
CriticalPathRCs);
|
||||
|
||||
// Loop over all of the basic blocks
|
||||
|
@ -51,11 +51,10 @@ static cl::opt<bool> UseTBAA("use-tbaa-in-sched-mi", cl::Hidden,
|
||||
|
||||
ScheduleDAGInstrs::ScheduleDAGInstrs(MachineFunction &mf,
|
||||
const MachineLoopInfo *mli,
|
||||
const MachineDominatorTree *mdt,
|
||||
bool IsPostRAFlag,
|
||||
bool RemoveKillFlags,
|
||||
LiveIntervals *lis)
|
||||
: ScheduleDAG(mf), MLI(mli), MDT(mdt), MFI(mf.getFrameInfo()), LIS(lis),
|
||||
: ScheduleDAG(mf), MLI(mli), MFI(mf.getFrameInfo()), LIS(lis),
|
||||
IsPostRA(IsPostRAFlag), RemoveKillFlags(RemoveKillFlags),
|
||||
CanHandleTerminators(false), FirstDbgValue(nullptr) {
|
||||
assert((IsPostRA || LIS) && "PreRA scheduling requires LiveIntervals");
|
||||
|
@ -118,7 +118,6 @@ namespace {
|
||||
public:
|
||||
// Ctor.
|
||||
HexagonPacketizerList(MachineFunction &MF, MachineLoopInfo &MLI,
|
||||
MachineDominatorTree &MDT,
|
||||
const MachineBranchProbabilityInfo *MBPI);
|
||||
|
||||
// initPacketizerState - initialize some internal flags.
|
||||
@ -184,20 +183,19 @@ INITIALIZE_PASS_END(HexagonPacketizer, "packets", "Hexagon Packetizer",
|
||||
|
||||
// HexagonPacketizerList Ctor.
|
||||
HexagonPacketizerList::HexagonPacketizerList(
|
||||
MachineFunction &MF, MachineLoopInfo &MLI,MachineDominatorTree &MDT,
|
||||
MachineFunction &MF, MachineLoopInfo &MLI,
|
||||
const MachineBranchProbabilityInfo *MBPI)
|
||||
: VLIWPacketizerList(MF, MLI, MDT, true){
|
||||
: VLIWPacketizerList(MF, MLI, true) {
|
||||
this->MBPI = MBPI;
|
||||
}
|
||||
|
||||
bool HexagonPacketizer::runOnMachineFunction(MachineFunction &Fn) {
|
||||
const TargetInstrInfo *TII = Fn.getSubtarget().getInstrInfo();
|
||||
MachineLoopInfo &MLI = getAnalysis<MachineLoopInfo>();
|
||||
MachineDominatorTree &MDT = getAnalysis<MachineDominatorTree>();
|
||||
const MachineBranchProbabilityInfo *MBPI =
|
||||
&getAnalysis<MachineBranchProbabilityInfo>();
|
||||
// Instantiate the packetizer.
|
||||
HexagonPacketizerList Packetizer(Fn, MLI, MDT, MBPI);
|
||||
HexagonPacketizerList Packetizer(Fn, MLI, MBPI);
|
||||
|
||||
// DFA state table should not be empty.
|
||||
assert(Packetizer.getResourceTracker() && "Empty DFA table!");
|
||||
|
@ -148,9 +148,8 @@ private:
|
||||
}
|
||||
public:
|
||||
// Ctor.
|
||||
R600PacketizerList(MachineFunction &MF, MachineLoopInfo &MLI,
|
||||
MachineDominatorTree &MDT)
|
||||
: VLIWPacketizerList(MF, MLI, MDT, true),
|
||||
R600PacketizerList(MachineFunction &MF, MachineLoopInfo &MLI)
|
||||
: VLIWPacketizerList(MF, MLI, true),
|
||||
TII(static_cast<const R600InstrInfo *>(
|
||||
MF.getSubtarget().getInstrInfo())),
|
||||
TRI(TII->getRegisterInfo()) {
|
||||
@ -331,10 +330,9 @@ public:
|
||||
bool R600Packetizer::runOnMachineFunction(MachineFunction &Fn) {
|
||||
const TargetInstrInfo *TII = Fn.getSubtarget().getInstrInfo();
|
||||
MachineLoopInfo &MLI = getAnalysis<MachineLoopInfo>();
|
||||
MachineDominatorTree &MDT = getAnalysis<MachineDominatorTree>();
|
||||
|
||||
// Instantiate the packetizer.
|
||||
R600PacketizerList Packetizer(Fn, MLI, MDT);
|
||||
R600PacketizerList Packetizer(Fn, MLI);
|
||||
|
||||
// DFA state table should not be empty.
|
||||
assert(Packetizer.getResourceTracker() && "Empty DFA table!");
|
||||
|
Loading…
Reference in New Issue
Block a user