diff options
| author | Richard Osborne <richard@xmos.com> | 2013-04-04 19:57:46 +0000 |
|---|---|---|
| committer | Richard Osborne <richard@xmos.com> | 2013-04-04 19:57:46 +0000 |
| commit | f18d95f756b745a6d96d03b6b800714f18e639db (patch) | |
| tree | e0cd354078311f3bc17d58c9cbe3fd34b972ce68 /llvm/lib/Target/XCore/XCoreFrameLowering.cpp | |
| parent | 3ab4db67f743d120ca1c3a6b09b6544ee965c851 (diff) | |
| download | bcm5719-llvm-f18d95f756b745a6d96d03b6b800714f18e639db.tar.gz bcm5719-llvm-f18d95f756b745a6d96d03b6b800714f18e639db.zip | |
[XCore] The RRegs register class is a superset of GRRegs.
At the time when the XCore backend was added there were some issues with
with overlapping register classes but these all seem to be fixed now.
Describing the register classes correctly allow us to get rid of a
codegen only instruction (LDAWSP_lru6_RRegs) and it means we can
disassemble ru6 instructions that use registers above r11.
llvm-svn: 178782
Diffstat (limited to 'llvm/lib/Target/XCore/XCoreFrameLowering.cpp')
| -rw-r--r-- | llvm/lib/Target/XCore/XCoreFrameLowering.cpp | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/llvm/lib/Target/XCore/XCoreFrameLowering.cpp b/llvm/lib/Target/XCore/XCoreFrameLowering.cpp index 6b6480e4b46..beeb07f831c 100644 --- a/llvm/lib/Target/XCore/XCoreFrameLowering.cpp +++ b/llvm/lib/Target/XCore/XCoreFrameLowering.cpp @@ -261,7 +261,7 @@ void XCoreFrameLowering::emitEpilogue(MachineFunction &MF, BuildMI(MBB, MBBI, dl, TII.get(Opcode)).addImm(FrameSize); MBB.erase(MBBI); } else { - int Opcode = (isU6) ? XCore::LDAWSP_ru6_RRegs : XCore::LDAWSP_lru6_RRegs; + int Opcode = (isU6) ? XCore::LDAWSP_ru6 : XCore::LDAWSP_lru6; BuildMI(MBB, MBBI, dl, TII.get(Opcode), XCore::SP).addImm(FrameSize); } } @@ -371,7 +371,7 @@ eliminateCallFramePseudoInstr(MachineFunction &MF, MachineBasicBlock &MBB, .addImm(Amount); } else { assert(Old->getOpcode() == XCore::ADJCALLSTACKUP); - int Opcode = isU6 ? XCore::LDAWSP_ru6_RRegs : XCore::LDAWSP_lru6_RRegs; + int Opcode = isU6 ? XCore::LDAWSP_ru6 : XCore::LDAWSP_lru6; New=BuildMI(MF, Old->getDebugLoc(), TII.get(Opcode), XCore::SP) .addImm(Amount); } |

