diff options
| author | Michael Liao <michael.liao@intel.com> | 2012-11-01 03:47:50 +0000 |
|---|---|---|
| committer | Michael Liao <michael.liao@intel.com> | 2012-11-01 03:47:50 +0000 |
| commit | 70a99c8e19b381318263d860b45fb8c1f8f68791 (patch) | |
| tree | 6e0b84433ff559b704be05d095cbe2ec617b72d2 /llvm/lib | |
| parent | e9b89b4fe5fd875870b0bf9da5dbf54c5fd69707 (diff) | |
| download | bcm5719-llvm-70a99c8e19b381318263d860b45fb8c1f8f68791.tar.gz bcm5719-llvm-70a99c8e19b381318263d860b45fb8c1f8f68791.zip | |
Cleanup another place redundant SP maintained
llvm-svn: 167209
Diffstat (limited to 'llvm/lib')
| -rw-r--r-- | llvm/lib/Target/X86/X86FastISel.cpp | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/llvm/lib/Target/X86/X86FastISel.cpp b/llvm/lib/Target/X86/X86FastISel.cpp index d319d9e998b..785838e13e7 100644 --- a/llvm/lib/Target/X86/X86FastISel.cpp +++ b/llvm/lib/Target/X86/X86FastISel.cpp @@ -45,9 +45,9 @@ class X86FastISel : public FastISel { /// make the right decision when generating code for different targets. const X86Subtarget *Subtarget; - /// StackPtr - Register used as the stack pointer. + /// RegInfo - X86 register info. /// - unsigned StackPtr; + const X86RegisterInfo *RegInfo; /// X86ScalarSSEf32, X86ScalarSSEf64 - Select between SSE or x87 /// floating point ops. @@ -61,9 +61,9 @@ public: const TargetLibraryInfo *libInfo) : FastISel(funcInfo, libInfo) { Subtarget = &TM.getSubtarget<X86Subtarget>(); - StackPtr = Subtarget->is64Bit() ? X86::RSP : X86::ESP; X86ScalarSSEf64 = Subtarget->hasSSE2(); X86ScalarSSEf32 = Subtarget->hasSSE1(); + RegInfo = static_cast<const X86RegisterInfo*>(TM.getRegisterInfo()); } virtual bool TargetSelectInstruction(const Instruction *I); @@ -1787,7 +1787,7 @@ bool X86FastISel::DoSelectCall(const Instruction *I, const char *MemIntName) { } else { unsigned LocMemOffset = VA.getLocMemOffset(); X86AddressMode AM; - AM.Base.Reg = StackPtr; + AM.Base.Reg = RegInfo->getStackRegister(); AM.Disp = LocMemOffset; const Value *ArgVal = ArgVals[VA.getValNo()]; ISD::ArgFlagsTy Flags = ArgFlags[VA.getValNo()]; |

