diff options
author | Evan Cheng <evan.cheng@apple.com> | 2007-02-07 21:44:33 +0000 |
---|---|---|
committer | Evan Cheng <evan.cheng@apple.com> | 2007-02-07 21:44:33 +0000 |
commit | bd8251a9a6d4f90065b52e04d15120bc111e56aa (patch) | |
tree | 552f2a72d187f530b09e555985e4c8f869a83313 /lib/Target/ARM/ARMRegisterInfo.cpp | |
parent | f2e292ce58ca07d9bbe3cad75f8baa35bd85964a (diff) | |
download | external_llvm-bd8251a9a6d4f90065b52e04d15120bc111e56aa.zip external_llvm-bd8251a9a6d4f90065b52e04d15120bc111e56aa.tar.gz external_llvm-bd8251a9a6d4f90065b52e04d15120bc111e56aa.tar.bz2 |
isLowRegister() expects input is a physical register.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34013 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Target/ARM/ARMRegisterInfo.cpp')
-rw-r--r-- | lib/Target/ARM/ARMRegisterInfo.cpp | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/lib/Target/ARM/ARMRegisterInfo.cpp b/lib/Target/ARM/ARMRegisterInfo.cpp index d7e8674..a96be56 100644 --- a/lib/Target/ARM/ARMRegisterInfo.cpp +++ b/lib/Target/ARM/ARMRegisterInfo.cpp @@ -218,14 +218,14 @@ MachineInstr *ARMRegisterInfo::foldMemoryOperand(MachineInstr *MI, case ARM::tMOVrr: { if (OpNum == 0) { // move -> store unsigned SrcReg = MI->getOperand(1).getReg(); - if (!isLowRegister(SrcReg)) + if (isPhysicalRegister(SrcReg) && !isLowRegister(SrcReg)) // tSpill cannot take a high register operand. break; NewMI = BuildMI(TII.get(ARM::tSpill)).addReg(SrcReg).addFrameIndex(FI) .addImm(0); } else { // move -> load unsigned DstReg = MI->getOperand(0).getReg(); - if (!isLowRegister(DstReg)) + if (isPhysicalRegister(DstReg) && !isLowRegister(DstReg)) // tRestore cannot target a high register operand. break; NewMI = BuildMI(TII.get(ARM::tRestore), DstReg).addFrameIndex(FI) |