mirror of
git://gcc.gnu.org/git/gcc.git
synced 2024-12-26 15:00:04 +08:00
(ASM_SPEC): Define.
(STRUCT_VALUE_REGNUM, STATIC_CHAIN_REGNUM, INITIALIZE_TRAMPOLINE): Remove definitions, undoing the change of Mar 20 1996. From-SVN: r13894
This commit is contained in:
parent
75ef7cf8da
commit
53c87bfd9c
@ -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}"
|
"%{fPIC:-D__PIC__ -D__pic__} %{fpic:-D__PIC__ -D__pic__} %{m68881:-D__HAVE_68881__} %{posix:-D_POSIX_SOURCE}"
|
||||||
#endif
|
#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
|
/* Provide a LINK_SPEC appropriate for Linux. Here we provide support
|
||||||
for the special GCC options -static and -shared, which allow us to
|
for the special GCC options -static and -shared, which allow us to
|
||||||
link things in one of these three modes by applying the appropriate
|
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"); \
|
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.
|
/* How to renumber registers for dbx and gdb.
|
||||||
On the Sun-3, the floating point registers have numbers
|
On the Sun-3, the floating point registers have numbers
|
||||||
18 to 25, not 16 to 23 as they do in the compiler. */
|
18 to 25, not 16 to 23 as they do in the compiler. */
|
||||||
@ -306,24 +300,6 @@ do { \
|
|||||||
#undef PCC_STATIC_STRUCT_RETURN
|
#undef PCC_STATIC_STRUCT_RETURN
|
||||||
#define DEFAULT_PCC_STRUCT_RETURN 0
|
#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. */
|
/* Finalize the trampoline by flushing the insn cache. */
|
||||||
|
|
||||||
#undef FINALIZE_TRAMPOLINE
|
#undef FINALIZE_TRAMPOLINE
|
||||||
|
Loading…
Reference in New Issue
Block a user