FrameLowering depends only upon the Subtarget, so only take a subtarget
authorEric Christopher <echristo@gmail.com>
Fri, 18 Jul 2014 23:33:47 +0000 (23:33 +0000)
committerEric Christopher <echristo@gmail.com>
Fri, 18 Jul 2014 23:33:47 +0000 (23:33 +0000)
during initialization.

llvm-svn: 213429

llvm/lib/Target/Mips/MipsFrameLowering.cpp
llvm/lib/Target/Mips/MipsFrameLowering.h
llvm/lib/Target/Mips/MipsSubtarget.cpp

index 8ba35fa..61afe17 100644 (file)
@@ -82,9 +82,8 @@ using namespace llvm;
 //
 //===----------------------------------------------------------------------===//
 
-const MipsFrameLowering *MipsFrameLowering::create(MipsTargetMachine &TM,
-                                                   const MipsSubtarget &ST) {
-  if (TM.getSubtargetImpl()->inMips16Mode())
+const MipsFrameLowering *MipsFrameLowering::create(const MipsSubtarget &ST) {
+  if (ST.inMips16Mode())
     return llvm::createMips16FrameLowering(ST);
 
   return llvm::createMipsSEFrameLowering(ST);
index 8e9196c..9d59309 100644 (file)
@@ -28,8 +28,7 @@ public:
   explicit MipsFrameLowering(const MipsSubtarget &sti, unsigned Alignment)
     : TargetFrameLowering(StackGrowsDown, Alignment, 0, Alignment), STI(sti) {}
 
-  static const MipsFrameLowering *create(MipsTargetMachine &TM,
-                                         const MipsSubtarget &ST);
+  static const MipsFrameLowering *create(const MipsSubtarget &ST);
 
   bool hasFP(const MachineFunction &MF) const override;
 
index f801dcd..1fa28dc 100644 (file)
@@ -116,7 +116,7 @@ MipsSubtarget::MipsSubtarget(const std::string &TT, const std::string &CPU,
       HasMSA(false), OverrideMode(NoOverride), TM(_TM), TargetTriple(TT),
       DL(computeDataLayout(initializeSubtargetDependencies(CPU, FS, TM))),
       TSInfo(DL), JITInfo(), InstrInfo(MipsInstrInfo::create(*this)),
-      FrameLowering(MipsFrameLowering::create(*TM, *this)),
+      FrameLowering(MipsFrameLowering::create(*this)),
       TLInfo(MipsTargetLowering::create(*TM, *this)) {
 
   PreviousInMips16Mode = InMips16Mode;
@@ -255,7 +255,7 @@ void MipsSubtarget::setHelperClassesMips16() {
   TLInfoSE.swap(TLInfo);
   if (!InstrInfo16) {
     InstrInfo.reset(MipsInstrInfo::create(*this));
-    FrameLowering.reset(MipsFrameLowering::create(*TM, *this));
+    FrameLowering.reset(MipsFrameLowering::create(*this));
     TLInfo.reset(MipsTargetLowering::create(*TM, *this));
   } else {
     InstrInfo16.swap(InstrInfo);
@@ -273,7 +273,7 @@ void MipsSubtarget::setHelperClassesMipsSE() {
   TLInfo16.swap(TLInfo);
   if (!InstrInfoSE) {
     InstrInfo.reset(MipsInstrInfo::create(*this));
-    FrameLowering.reset(MipsFrameLowering::create(*TM, *this));
+    FrameLowering.reset(MipsFrameLowering::create(*this));
     TLInfo.reset(MipsTargetLowering::create(*TM, *this));
   } else {
     InstrInfoSE.swap(InstrInfo);