summaryrefslogtreecommitdiff
path: root/gcc/config/m68k/linux.h
diff options
context:
space:
mode:
authorRichard Kenner <kenner@gcc.gnu.org>1997-04-13 15:34:53 -0400
committerRichard Kenner <kenner@gcc.gnu.org>1997-04-13 15:34:53 -0400
commit53c87bfd9cb9ee6dd7c44daaabdea298913f033f (patch)
tree46c83573b46efee9a8c971157c2e3746ac04dd62 /gcc/config/m68k/linux.h
parent75ef7cf8dab2f3bc3996850f03e30e9fb2050a0d (diff)
downloadgcc-53c87bfd9cb9ee6dd7c44daaabdea298913f033f.tar.gz
(ASM_SPEC): Define.
(STRUCT_VALUE_REGNUM, STATIC_CHAIN_REGNUM, INITIALIZE_TRAMPOLINE): Remove definitions, undoing the change of Mar 20 1996. From-SVN: r13894
Diffstat (limited to 'gcc/config/m68k/linux.h')
-rw-r--r--gcc/config/m68k/linux.h38
1 files changed, 7 insertions, 31 deletions
diff --git a/gcc/config/m68k/linux.h b/gcc/config/m68k/linux.h
index 10ef0e8be06..7e9641cb844 100644
--- a/gcc/config/m68k/linux.h
+++ b/gcc/config/m68k/linux.h
@@ -112,6 +112,13 @@ Boston, MA 02111-1307, USA. */
"%{fPIC:-D__PIC__ -D__pic__} %{fpic:-D__PIC__ -D__pic__} %{m68881:-D__HAVE_68881__} %{posix:-D_POSIX_SOURCE}"
#endif
+/* We override the ASM_SPEC from svr4.h because we must pass -m68040 down
+ to the assembler. */
+#undef ASM_SPEC
+#define ASM_SPEC \
+ "%{v:-V} %{Qy:} %{!Qn:-Qy} %{n} %{T} %{Ym,*} %{Yd,*} %{Wa,*:%*} \
+%{m68040} %{m68060:-m68040}"
+
/* Provide a LINK_SPEC appropriate for Linux. Here we provide support
for the special GCC options -static and -shared, which allow us to
link things in one of these three modes by applying the appropriate
@@ -199,19 +206,6 @@ Boston, MA 02111-1307, USA. */
fprintf (FILE, "\tjbsr _mcount\n"); \
}
-/* Register in which address to store a structure value is passed to a
- function. The default in m68k.h is a1. For m68k/SVR4 it is a0. */
-
-#undef STRUCT_VALUE_REGNUM
-#define STRUCT_VALUE_REGNUM 8
-
-/* Register in which static-chain is passed to a function. The
- default in m68k.h is a0, but that is already the struct value
- regnum. Make it a1 instead. */
-
-#undef STATIC_CHAIN_REGNUM
-#define STATIC_CHAIN_REGNUM 9
-
/* How to renumber registers for dbx and gdb.
On the Sun-3, the floating point registers have numbers
18 to 25, not 16 to 23 as they do in the compiler. */
@@ -306,24 +300,6 @@ do { \
#undef PCC_STATIC_STRUCT_RETURN
#define DEFAULT_PCC_STRUCT_RETURN 0
-/* Emit RTL insns to initialize the variable parts of a trampoline.
- FNADDR is an RTX for the address of the function's pure code.
- CXT is an RTX for the static chain value for the function. */
-
-/* This is different from the generic version in that we use a1 as the
- static call chain. */
-
-#undef INITIALIZE_TRAMPOLINE
-#define INITIALIZE_TRAMPOLINE(TRAMP, FNADDR, CXT) \
-{ \
- emit_move_insn (gen_rtx (MEM, HImode, TRAMP), GEN_INT (0x227C)); \
- emit_move_insn (gen_rtx (MEM, SImode, plus_constant (TRAMP, 2)), CXT); \
- emit_move_insn (gen_rtx (MEM, HImode, plus_constant (TRAMP, 6)), \
- GEN_INT (0x4EF9)); \
- emit_move_insn (gen_rtx (MEM, SImode, plus_constant (TRAMP, 8)), FNADDR); \
- FINALIZE_TRAMPOLINE (TRAMP); \
-}
-
/* Finalize the trampoline by flushing the insn cache. */
#undef FINALIZE_TRAMPOLINE