summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Target/Mips/Mips16RegisterInfo.cpp
diff options
context:
space:
mode:
authorEric Christopher <echristo@gmail.com>2015-03-12 05:43:57 +0000
committerEric Christopher <echristo@gmail.com>2015-03-12 05:43:57 +0000
commita20c3cf85db43efc6def7c150116bc9e42ed1842 (patch)
tree0253e1751e3f180b17a0781cd7ca27edaf6a8537 /llvm/lib/Target/Mips/Mips16RegisterInfo.cpp
parent49bc764310158c1b5f1ae37a52de52918cba41c3 (diff)
downloadbcm5719-llvm-a20c3cf85db43efc6def7c150116bc9e42ed1842.tar.gz
bcm5719-llvm-a20c3cf85db43efc6def7c150116bc9e42ed1842.zip
Remove the need to cache the subtarget in the Mips TargetRegisterInfo
classes. llvm-svn: 232012
Diffstat (limited to 'llvm/lib/Target/Mips/Mips16RegisterInfo.cpp')
-rw-r--r--llvm/lib/Target/Mips/Mips16RegisterInfo.cpp9
1 files changed, 4 insertions, 5 deletions
diff --git a/llvm/lib/Target/Mips/Mips16RegisterInfo.cpp b/llvm/lib/Target/Mips/Mips16RegisterInfo.cpp
index c45acc4bcf4..ebd51d7b507 100644
--- a/llvm/lib/Target/Mips/Mips16RegisterInfo.cpp
+++ b/llvm/lib/Target/Mips/Mips16RegisterInfo.cpp
@@ -41,8 +41,7 @@ using namespace llvm;
#define DEBUG_TYPE "mips16-registerinfo"
-Mips16RegisterInfo::Mips16RegisterInfo(const MipsSubtarget &ST)
- : MipsRegisterInfo(ST) {}
+Mips16RegisterInfo::Mips16RegisterInfo() : MipsRegisterInfo() {}
bool Mips16RegisterInfo::requiresRegisterScavenging
(const MachineFunction &MF) const {
@@ -65,7 +64,7 @@ bool Mips16RegisterInfo::saveScavengerRegister
const TargetRegisterClass *RC,
unsigned Reg) const {
DebugLoc DL;
- const TargetInstrInfo &TII = *Subtarget.getInstrInfo();
+ const TargetInstrInfo &TII = *MBB.getParent()->getSubtarget().getInstrInfo();
TII.copyPhysReg(MBB, I, DL, Mips::T0, Reg, true);
TII.copyPhysReg(MBB, UseMI, DL, Reg, Mips::T0, true);
return true;
@@ -106,7 +105,7 @@ void Mips16RegisterInfo::eliminateFI(MachineBasicBlock::iterator II,
if (FrameIndex >= MinCSFI && FrameIndex <= MaxCSFI)
FrameReg = Mips::SP;
else {
- const TargetFrameLowering *TFI = Subtarget.getFrameLowering();
+ const TargetFrameLowering *TFI = MF.getSubtarget().getFrameLowering();
if (TFI->hasFP(MF)) {
FrameReg = Mips::S0;
}
@@ -140,7 +139,7 @@ void Mips16RegisterInfo::eliminateFI(MachineBasicBlock::iterator II,
DebugLoc DL = II->getDebugLoc();
unsigned NewImm;
const Mips16InstrInfo &TII =
- *static_cast<const Mips16InstrInfo *>(Subtarget.getInstrInfo());
+ *static_cast<const Mips16InstrInfo *>(MF.getSubtarget().getInstrInfo());
FrameReg = TII.loadImmediate(FrameReg, Offset, MBB, II, DL, NewImm);
Offset = SignExtend64<16>(NewImm);
IsKill = true;
OpenPOWER on IntegriCloud