diff options
author | Chris Lattner <sabre@nondot.org> | 2010-11-14 22:48:15 +0000 |
---|---|---|
committer | Chris Lattner <sabre@nondot.org> | 2010-11-14 22:48:15 +0000 |
commit | 7077efe894cd456e57763f05ffb51e544a2a147e (patch) | |
tree | c2b9cbf4ea27d7578fc91f2df5bebbb6fb90cceb /llvm/lib/Target/PowerPC/PPCInstr64Bit.td | |
parent | 239f9a35edfeca699e35112938b23c555065dbfd (diff) | |
download | bcm5719-llvm-7077efe894cd456e57763f05ffb51e544a2a147e.tar.gz bcm5719-llvm-7077efe894cd456e57763f05ffb51e544a2a147e.zip |
move the pic base symbol stuff up to MachineFunction
since it is trivial and will be shared between ppc and x86.
This substantially simplifies the X86 backend also.
llvm-svn: 119089
Diffstat (limited to 'llvm/lib/Target/PowerPC/PPCInstr64Bit.td')
-rw-r--r-- | llvm/lib/Target/PowerPC/PPCInstr64Bit.td | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/llvm/lib/Target/PowerPC/PPCInstr64Bit.td b/llvm/lib/Target/PowerPC/PPCInstr64Bit.td index 3cae32642ca..131baae69fd 100644 --- a/llvm/lib/Target/PowerPC/PPCInstr64Bit.td +++ b/llvm/lib/Target/PowerPC/PPCInstr64Bit.td @@ -555,6 +555,8 @@ let canFoldAsLoad = 1, PPC970_Unit = 2 in { def LD : DSForm_1<58, 0, (outs G8RC:$rD), (ins memrix:$src), "ld $rD, $src", LdStLD, [(set G8RC:$rD, (load ixaddr:$src))]>, isPPC64; +// FIXME: This is a pseudo instruction. When the JIT switches to MC, remove its +// encoding information. def LDtoc: DSForm_1<58, 0, (outs G8RC:$rD), (ins tocentry:$disp, G8RC:$reg), "ld $rD, $disp($reg)", LdStLD, [(set G8RC:$rD, @@ -563,6 +565,7 @@ let RST = 2, DS = 8 in def LDinto_toc: DSForm_1<58, 0, (outs), (ins G8RC:$reg), "ld 2, 8($reg)", LdStLD, [(PPCload_toc G8RC:$reg)]>, isPPC64; + let RST = 2, DS = 40, RA = 1 in def LDtoc_restore : DSForm_1<58, 0, (outs), (ins), "ld 2, 40(1)", LdStLD, |