Remove the TargetMachine from DFAPacketizer since it was only
authorEric Christopher <echristo@gmail.com>
Tue, 14 Oct 2014 01:03:16 +0000 (01:03 +0000)
committerEric Christopher <echristo@gmail.com>
Tue, 14 Oct 2014 01:03:16 +0000 (01:03 +0000)
being used to grab subtarget specific things that we can grab
from the MachineFunction anyhow.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@219650 91177308-0d34-0410-b5e6-96231b3b80d8

include/llvm/CodeGen/DFAPacketizer.h
lib/CodeGen/DFAPacketizer.cpp
lib/Target/Hexagon/HexagonVLIWPacketizer.cpp

index a0826059e091ee268bbe85e3dde9307fdc85eeff..f9cdc2a469ff39e97628b47fa628c5f5235efbfc 100644 (file)
@@ -91,7 +91,6 @@ public:
 // API call is made to prune the dependence.
 class VLIWPacketizerList {
 protected:
-  const TargetMachine &TM;
   const MachineFunction &MF;
   const TargetInstrInfo *TII;
 
index 7bd578ff2545f31aff2526e93eae63438b98a4fa..0a188c0935adba07a0b6eca2b737e0ed468c82a9 100644 (file)
@@ -126,8 +126,8 @@ void DefaultVLIWScheduler::schedule() {
 // VLIWPacketizerList Ctor
 VLIWPacketizerList::VLIWPacketizerList(MachineFunction &MF,
                                        MachineLoopInfo &MLI, bool IsPostRA)
-    : TM(MF.getTarget()), MF(MF) {
-  TII = TM.getSubtargetImpl()->getInstrInfo();
+    : MF(MF) {
+  TII = MF.getSubtarget().getInstrInfo();
   ResourceTracker = TII->CreateTargetScheduleState(MF.getSubtarget());
   VLIWScheduler = new DefaultVLIWScheduler(MF, MLI, IsPostRA);
 }
index 522c810ba0fce6de525ddfd5fbf5f61aa3615912..e7296d65078ff71bc03e8ea883f2943b7585ae2c 100644 (file)
@@ -323,7 +323,7 @@ bool HexagonPacketizerList::IsCallDependent(MachineInstr* MI,
 
   const HexagonInstrInfo *QII = (const HexagonInstrInfo *) TII;
   const HexagonRegisterInfo *QRI =
-      (const HexagonRegisterInfo *)TM.getSubtargetImpl()->getRegisterInfo();
+      (const HexagonRegisterInfo *)MF.getSubtarget().getRegisterInfo();
 
   // Check for lr dependence
   if (DepReg == QRI->getRARegister()) {
@@ -548,7 +548,7 @@ bool HexagonPacketizerList::CanPromoteToNewValueStore(
     return false;
 
   const HexagonRegisterInfo *QRI =
-      (const HexagonRegisterInfo *)TM.getSubtargetImpl()->getRegisterInfo();
+      (const HexagonRegisterInfo *)MF.getSubtarget().getRegisterInfo();
   const MCInstrDesc& MCID = PacketMI->getDesc();
   // first operand is always the result
 
@@ -722,7 +722,7 @@ bool HexagonPacketizerList::CanPromoteToNewValue(
 
   const HexagonInstrInfo *QII = (const HexagonInstrInfo *) TII;
   const HexagonRegisterInfo *QRI =
-      (const HexagonRegisterInfo *)TM.getSubtargetImpl()->getRegisterInfo();
+      (const HexagonRegisterInfo *)MF.getSubtarget().getRegisterInfo();
   if (!QRI->Subtarget.hasV4TOps() ||
       !QII->mayBeNewStore(MI))
     return false;
@@ -1004,7 +1004,7 @@ bool HexagonPacketizerList::isLegalToPacketizeTogether(SUnit *SUI, SUnit *SUJ) {
 
   const unsigned FrameSize = MF.getFrameInfo()->getStackSize();
   const HexagonRegisterInfo *QRI =
-      (const HexagonRegisterInfo *)TM.getSubtargetImpl()->getRegisterInfo();
+      (const HexagonRegisterInfo *)MF.getSubtarget().getRegisterInfo();
   const HexagonInstrInfo *QII = (const HexagonInstrInfo *) TII;
 
   // Inline asm cannot go in the packet.