diff options
| author | Ulrich Weigand <ulrich.weigand@de.ibm.com> | 2016-11-08 20:15:26 +0000 |
|---|---|---|
| committer | Ulrich Weigand <ulrich.weigand@de.ibm.com> | 2016-11-08 20:15:26 +0000 |
| commit | fffc7110d65564c2ecaa705913f69db21fa9981e (patch) | |
| tree | a7e5832c7452b0d4b65cb5502650893b5026a3f1 /llvm/lib/Target/SystemZ/SystemZRegisterInfo.cpp | |
| parent | 9c5a69d2ac4d205b39dc8041922ba9fdd90198f1 (diff) | |
| download | bcm5719-llvm-fffc7110d65564c2ecaa705913f69db21fa9981e.tar.gz bcm5719-llvm-fffc7110d65564c2ecaa705913f69db21fa9981e.zip | |
[SystemZ] Model access registers as LLVM registers
Add the 16 access registers as LLVM registers. This allows removing
a lot of special cases in the assembler and disassembler where we
were handling access registers; this can all just use the generic
register code now.
Also add a bunch of instructions to operate on access registers,
for assembler/disassembler use only. No change in code generation
intended.
llvm-svn: 286283
Diffstat (limited to 'llvm/lib/Target/SystemZ/SystemZRegisterInfo.cpp')
| -rw-r--r-- | llvm/lib/Target/SystemZ/SystemZRegisterInfo.cpp | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/llvm/lib/Target/SystemZ/SystemZRegisterInfo.cpp b/llvm/lib/Target/SystemZ/SystemZRegisterInfo.cpp index b5e5fd4bfc4..6ef8000d6f4 100644 --- a/llvm/lib/Target/SystemZ/SystemZRegisterInfo.cpp +++ b/llvm/lib/Target/SystemZ/SystemZRegisterInfo.cpp @@ -59,6 +59,11 @@ SystemZRegisterInfo::getReservedRegs(const MachineFunction &MF) const { Reserved.set(SystemZ::R15L); Reserved.set(SystemZ::R15H); Reserved.set(SystemZ::R14Q); + + // A0 and A1 hold the thread pointer. + Reserved.set(SystemZ::A0); + Reserved.set(SystemZ::A1); + return Reserved; } |

