diff options
author | Dale Johannesen <dalej@apple.com> | 2005-01-31 18:03:46 +0000 |
---|---|---|
committer | Dale Johannesen <dalej@gcc.gnu.org> | 2005-01-31 18:03:46 +0000 |
commit | 42d262fa87203f848da6b81cfa3ecceb6e83c905 (patch) | |
tree | 2f59ee79bbf0d248c52442cda745fdb177033edb /gcc | |
parent | 3b70b82ab91b33eaa01866cce11853ff60ad780c (diff) | |
download | gcc-42d262fa87203f848da6b81cfa3ecceb6e83c905.zip gcc-42d262fa87203f848da6b81cfa3ecceb6e83c905.tar.gz gcc-42d262fa87203f848da6b81cfa3ecceb6e83c905.tar.bz2 |
darwin-tramp.asm (__trampoline_setup): Make work for 64 bit.
2005-01-31 Dale Johannesen <dalej@apple.com>
* config/rs6000/darwin-tramp.asm (__trampoline_setup):
Make work for 64 bit.
From-SVN: r94486
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/config/rs6000/darwin-tramp.asm | 10 |
2 files changed, 11 insertions, 4 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 132be3f..b7650f8 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2005-01-31 Dale Johannesen <dalej@apple.com> + + * config/rs6000/darwin-tramp.asm (__trampoline_setup): + Make work for 64 bit. + 2005-01-31 Roger Sayle <roger@eyesopen.com> Dale Johannesen <dalej@apple.com> diff --git a/gcc/config/rs6000/darwin-tramp.asm b/gcc/config/rs6000/darwin-tramp.asm index 6d0fab2..a812552 100644 --- a/gcc/config/rs6000/darwin-tramp.asm +++ b/gcc/config/rs6000/darwin-tramp.asm @@ -33,6 +33,8 @@ * executable file might be covered by the GNU General Public License. */ +/* APPLE LOCAL mainline throughout this file */ + #include "darwin-asm.h" /* Set up trampolines. */ @@ -68,11 +70,11 @@ LCF0: mflr r11 addis r7,r11,ha16(LTRAMP-LCF0) lg r7,lo16(LTRAMP-LCF0)(r7) - subi r7,r7,GPR_BYTES + subi r7,r7,4 li r8,trampoline_size /* verify trampoline big enough */ cmpg cr1,r8,r4 srwi r4,r4,2 /* # words to move (insns always 4-byte) */ - addi r9,r3,-GPR_BYTES /* adjust pointer for lgu */ + addi r9,r3,-4 /* adjust pointer for lgu */ mtctr r4 blt cr1,Labort @@ -80,8 +82,8 @@ LCF0: /* Copy the instructions to the stack */ Lmove: - lgu r10,GPR_BYTES(r7) - stgu r10,GPR_BYTES(r9) + lwzu r10,4(r7) + stwu r10,4(r9) bdnz Lmove /* Store correct function and static chain */ |