diff options
author | Richard Kenner <kenner@gcc.gnu.org> | 1997-04-13 15:34:53 -0400 |
---|---|---|
committer | Richard Kenner <kenner@gcc.gnu.org> | 1997-04-13 15:34:53 -0400 |
commit | 53c87bfd9cb9ee6dd7c44daaabdea298913f033f (patch) | |
tree | 46c83573b46efee9a8c971157c2e3746ac04dd62 /gcc/config/m68k/linux.h | |
parent | 75ef7cf8dab2f3bc3996850f03e30e9fb2050a0d (diff) | |
download | gcc-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.h | 38 |
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 |