OSDN Git Service

2005-01-31 Dale Johannesen <dalej@apple.com>
authordalej <dalej@138bc75d-0d04-0410-961f-82ee72b054a4>
Mon, 31 Jan 2005 18:03:46 +0000 (18:03 +0000)
committerdalej <dalej@138bc75d-0d04-0410-961f-82ee72b054a4>
Mon, 31 Jan 2005 18:03:46 +0000 (18:03 +0000)
* config/rs6000/darwin-tramp.asm (__trampoline_setup):
Make work for 64 bit.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@94486 138bc75d-0d04-0410-961f-82ee72b054a4

gcc/ChangeLog
gcc/config/rs6000/darwin-tramp.asm

index 132be3f..b7650f8 100644 (file)
@@ -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>
 
index 6d0fab2..a812552 100644 (file)
@@ -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 */