aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorDale Johannesen <dalej@apple.com>2005-01-31 18:03:46 +0000
committerDale Johannesen <dalej@gcc.gnu.org>2005-01-31 18:03:46 +0000
commit42d262fa87203f848da6b81cfa3ecceb6e83c905 (patch)
tree2f59ee79bbf0d248c52442cda745fdb177033edb /gcc
parent3b70b82ab91b33eaa01866cce11853ff60ad780c (diff)
downloadgcc-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/ChangeLog5
-rw-r--r--gcc/config/rs6000/darwin-tramp.asm10
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 */