From: Eric Christopher Date: Thu, 9 Oct 2014 01:59:35 +0000 (+0000) Subject: Remove unused argument to CreateTargetScheduleState and change X-Git-Url: http://plrg.eecs.uci.edu/git/?p=oota-llvm.git;a=commitdiff_plain;h=e6d97094b7e7570cb89e5871bb993ce169f85775 Remove unused argument to CreateTargetScheduleState and change the TargetMachine to a TargetSubtargetInfo since everything we wanted is off of that. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@219382 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/include/llvm/Target/TargetInstrInfo.h b/include/llvm/Target/TargetInstrInfo.h index 2910b2024ab..d33452f47d0 100644 --- a/include/llvm/Target/TargetInstrInfo.h +++ b/include/llvm/Target/TargetInstrInfo.h @@ -1185,8 +1185,8 @@ public: const TargetRegisterInfo *TRI) const {} /// Create machine specific model for scheduling. - virtual DFAPacketizer* - CreateTargetScheduleState(const TargetMachine*, const ScheduleDAG*) const { + virtual DFAPacketizer * + CreateTargetScheduleState(const TargetSubtargetInfo &) const { return nullptr; } diff --git a/lib/CodeGen/DFAPacketizer.cpp b/lib/CodeGen/DFAPacketizer.cpp index e0266cace2e..7bd578ff254 100644 --- a/lib/CodeGen/DFAPacketizer.cpp +++ b/lib/CodeGen/DFAPacketizer.cpp @@ -128,7 +128,7 @@ VLIWPacketizerList::VLIWPacketizerList(MachineFunction &MF, MachineLoopInfo &MLI, bool IsPostRA) : TM(MF.getTarget()), MF(MF) { TII = TM.getSubtargetImpl()->getInstrInfo(); - ResourceTracker = TII->CreateTargetScheduleState(&TM, nullptr); + ResourceTracker = TII->CreateTargetScheduleState(MF.getSubtarget()); VLIWScheduler = new DefaultVLIWScheduler(MF, MLI, IsPostRA); } diff --git a/lib/CodeGen/SelectionDAG/ResourcePriorityQueue.cpp b/lib/CodeGen/SelectionDAG/ResourcePriorityQueue.cpp index 5038d522b74..db38b76cf93 100644 --- a/lib/CodeGen/SelectionDAG/ResourcePriorityQueue.cpp +++ b/lib/CodeGen/SelectionDAG/ResourcePriorityQueue.cpp @@ -47,7 +47,7 @@ ResourcePriorityQueue::ResourcePriorityQueue(SelectionDAGISel *IS) TRI = STI.getRegisterInfo(); TLI = IS->TLI; TII = STI.getInstrInfo(); - ResourcesModel = TII->CreateTargetScheduleState(&IS->MF->getTarget(), nullptr); + ResourcesModel = TII->CreateTargetScheduleState(STI); // This hard requirement could be relaxed, but for now // do not let it procede. assert(ResourcesModel && "Unimplemented CreateTargetScheduleState."); diff --git a/lib/Target/Hexagon/HexagonInstrInfo.cpp b/lib/Target/Hexagon/HexagonInstrInfo.cpp index a63e3826f07..1fc4f7f4979 100644 --- a/lib/Target/Hexagon/HexagonInstrInfo.cpp +++ b/lib/Target/Hexagon/HexagonInstrInfo.cpp @@ -1636,12 +1636,10 @@ void HexagonInstrInfo::immediateExtend(MachineInstr *MI) const { MO.addTargetFlag(HexagonII::HMOTF_ConstExtended); } -DFAPacketizer *HexagonInstrInfo:: -CreateTargetScheduleState(const TargetMachine *TM, - const ScheduleDAG *DAG) const { - const InstrItineraryData *II = - TM->getSubtargetImpl()->getInstrItineraryData(); - return TM->getSubtarget().createDFAPacketizer(II); +DFAPacketizer *HexagonInstrInfo::CreateTargetScheduleState( + const TargetSubtargetInfo &STI) const { + const InstrItineraryData *II = STI.getInstrItineraryData(); + return static_cast(STI).createDFAPacketizer(II); } bool HexagonInstrInfo::isSchedulingBoundary(const MachineInstr *MI, diff --git a/lib/Target/Hexagon/HexagonInstrInfo.h b/lib/Target/Hexagon/HexagonInstrInfo.h index 161db35c632..6acfbec2470 100644 --- a/lib/Target/Hexagon/HexagonInstrInfo.h +++ b/lib/Target/Hexagon/HexagonInstrInfo.h @@ -148,9 +148,8 @@ public: bool isProfitableToDupForIfCvt(MachineBasicBlock &MBB, unsigned NumCycles, const BranchProbability &Probability) const override; - DFAPacketizer* - CreateTargetScheduleState(const TargetMachine *TM, - const ScheduleDAG *DAG) const override; + DFAPacketizer * + CreateTargetScheduleState(const TargetSubtargetInfo &STI) const override; bool isSchedulingBoundary(const MachineInstr *MI, const MachineBasicBlock *MBB, diff --git a/lib/Target/Hexagon/HexagonMachineScheduler.h b/lib/Target/Hexagon/HexagonMachineScheduler.h index 059996a9656..1e023c32bb8 100644 --- a/lib/Target/Hexagon/HexagonMachineScheduler.h +++ b/lib/Target/Hexagon/HexagonMachineScheduler.h @@ -57,8 +57,8 @@ public: VLIWResourceModel(const TargetMachine &TM, const TargetSchedModel *SM) : SchedModel(SM), TotalPackets(0) { ResourcesModel = - TM.getSubtargetImpl()->getInstrInfo()->CreateTargetScheduleState(&TM, - nullptr); + TM.getSubtargetImpl()->getInstrInfo()->CreateTargetScheduleState( + *TM.getSubtargetImpl()); // This hard requirement could be relaxed, // but for now do not let it proceed. diff --git a/lib/Target/R600/R600InstrInfo.cpp b/lib/Target/R600/R600InstrInfo.cpp index 1da2f5f1c2a..653fd0d5275 100644 --- a/lib/Target/R600/R600InstrInfo.cpp +++ b/lib/Target/R600/R600InstrInfo.cpp @@ -654,11 +654,10 @@ R600InstrInfo::fitsConstReadLimitations(const std::vector &MIs) return fitsConstReadLimitations(Consts); } -DFAPacketizer *R600InstrInfo::CreateTargetScheduleState(const TargetMachine *TM, - const ScheduleDAG *DAG) const { - const InstrItineraryData *II = - TM->getSubtargetImpl()->getInstrItineraryData(); - return TM->getSubtarget().createDFAPacketizer(II); +DFAPacketizer * +R600InstrInfo::CreateTargetScheduleState(const TargetSubtargetInfo &STI) const { + const InstrItineraryData *II = STI.getInstrItineraryData(); + return static_cast(STI).createDFAPacketizer(II); } static bool diff --git a/lib/Target/R600/R600InstrInfo.h b/lib/Target/R600/R600InstrInfo.h index 6b646aa7f3c..d3dc0e58daa 100644 --- a/lib/Target/R600/R600InstrInfo.h +++ b/lib/Target/R600/R600InstrInfo.h @@ -154,8 +154,8 @@ namespace llvm { bool isMov(unsigned Opcode) const override; - DFAPacketizer *CreateTargetScheduleState(const TargetMachine *TM, - const ScheduleDAG *DAG) const override; + DFAPacketizer * + CreateTargetScheduleState(const TargetSubtargetInfo &) const override; bool ReverseBranchCondition(SmallVectorImpl &Cond) const override;