summaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorwilson <wilson@138bc75d-0d04-0410-961f-82ee72b054a4>2003-06-28 00:36:23 +0000
committerwilson <wilson@138bc75d-0d04-0410-961f-82ee72b054a4>2003-06-28 00:36:23 +0000
commit2269f4239c2e18fb2107ad897347bd18780174f5 (patch)
tree94fc9d5bd9cc654d4d48a993351222c6beda5b8d /gcc
parent9140e457bad848392137faee369e102bfae7e012 (diff)
downloadgcc-2269f4239c2e18fb2107ad897347bd18780174f5.tar.gz
PR target/11014
* config/m68k/m68k.c (m68k_output_mi_thunk): Use correct assembly syntax for MIT / MOTOROLA. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@68623 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog4
-rw-r--r--gcc/config/m68k/m68k.c16
2 files changed, 18 insertions, 2 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 60e018b2234..d30b4db4ca8 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -8,6 +8,10 @@
* unwind-c.c (PERSONALITY_FUNCTION): Delete duplicate define.
+ PR target/11014
+ * config/m68k/m68k.c (m68k_output_mi_thunk): Use correct assembly
+ syntax for MIT / MOTOROLA.
+
2003-06-27 Chris Demetriou <cgd@broadcom.com>
* config/mips/mips.c (mips_build_va_list): Make padding in
diff --git a/gcc/config/m68k/m68k.c b/gcc/config/m68k/m68k.c
index d4df6cf3351..3d034819ea3 100644
--- a/gcc/config/m68k/m68k.c
+++ b/gcc/config/m68k/m68k.c
@@ -3691,11 +3691,23 @@ m68k_output_mi_thunk (file, thunk, delta, vcall_offset, function)
const char *fmt;
if (delta > 0 && delta <= 8)
+#ifdef MOTOROLA
asm_fprintf (file, "\taddq.l %I%d,4(%Rsp)\n", (int) delta);
+#else
+ asm_fprintf (file, "\taddql %I%d,%Rsp@(4)\n", (int) delta);
+#endif
else if (delta < 0 && delta >= -8)
+#ifdef MOTOROLA
asm_fprintf (file, "\tsubq.l %I%d,4(%Rsp)\n", (int) -delta);
+#else
+ asm_fprintf (file, "\tsubql %I%d,%Rsp@(4)\n", (int) -delta);
+#endif
else
+#ifdef MOTOROLA
asm_fprintf (file, "\tadd.l %I%wd,4(%Rsp)\n", delta);
+#else
+ asm_fprintf (file, "\taddl %I%wd,%Rsp@(4)\n", delta);
+#endif
xops[0] = DECL_RTL (function);
@@ -3720,7 +3732,7 @@ m68k_output_mi_thunk (file, thunk, delta, vcall_offset, function)
#ifdef USE_GAS
fmt = "bra.l %0";
#else
- fmt = "jbra %0,a1";
+ fmt = "jra %0,a1";
#endif
#endif
}
@@ -3734,7 +3746,7 @@ m68k_output_mi_thunk (file, thunk, delta, vcall_offset, function)
fmt = "jmp %0";
#endif
#else
- fmt = "jbra %0";
+ fmt = "jra %0";
#endif
}