summaryrefslogtreecommitdiff
path: root/gcc/config/m68k/m68k.h
diff options
context:
space:
mode:
authorRichard Sandiford <richard@codesourcery.com>2007-01-18 19:12:34 +0000
committerRichard Sandiford <rsandifo@gcc.gnu.org>2007-01-18 19:12:34 +0000
commitba5f7c88dc4e3ec1c9bd367b7c053a05ea41f4f2 (patch)
tree358f384c5ca6f85df6f37a4df3797dab0cebfacc /gcc/config/m68k/m68k.h
parentabe92a04b69b6598609da0f1d334ac4a01f7edf5 (diff)
downloadgcc-ba5f7c88dc4e3ec1c9bd367b7c053a05ea41f4f2.tar.gz
200x-xx-xx Richard Sandiford <richard@codesourcery.com> Nathan Sidwell <nathan@codesourcery.com>
gcc/ 200x-xx-xx Richard Sandiford <richard@codesourcery.com> Nathan Sidwell <nathan@codesourcery.com> * config/m68k/m68k.h (PCC_STATIC_STRUCT_RETURN): Delete. (ASM_OUTPUT_REG_PUSH, ASM_OUTPUT_REG_POP): Add MOTOROLA cases. * config/m68k/coff.h (REGISTER_PREFIX_MD): Delete. * config/m68k/m68020-elf.h (LIB_SPEC): Delete. * config/m68k/m68k-none.h (CC1_SPEC, CPP_SUBTARGET_SPEC): Delete. * config/m68k/m68kelf.h (IMMEDIATE_PREFIX, REGISTER_PREFIX_MD) (ASM_OUTPUT_REG_PUSH, ASM_OUTPUT_REG_POP): Delete. (NO_DOLLAR_IN_LABEL, PCC_STATIC_STRUCT_RETURN): Don't undefine. (BSS_ASM_OP, ASM_OUTPUT_SKIP, ASM_OUTPUT_ASCII): Delete. * config/m68k/m68kemb.h (PCC_STATIC_STRUCT_RETURN): Don't undefine. * config/m68k/linux.h (SIZE_TYPE, PTRDIFF_TYPE, WCHAR_TYPE) (WCHAR_TYPE_SIZE, TARGET_OBJFMT_CPP_BUILTINS): Delete. (TARGET_OS_CPP_BUILTINS): Don't define mc68000 and mc68020 here. (DBX_REGISTER_NUMBER): Delete. * config/m68k/netbsd-elf.h (IMMEDIATE_PREFIX): Delete. (PCC_STATIC_STRUCT_RETURN): Don't undefine. * config/m68k/openbsd.h (PCC_STATIC_STRUCT_RETURN): Define. Co-Authored-By: Nathan Sidwell <nathan@codesourcery.com> From-SVN: r120913
Diffstat (limited to 'gcc/config/m68k/m68k.h')
-rw-r--r--gcc/config/m68k/m68k.h17
1 files changed, 11 insertions, 6 deletions
diff --git a/gcc/config/m68k/m68k.h b/gcc/config/m68k/m68k.h
index 7b3a74c4ba3..1d8b4ae48a3 100644
--- a/gcc/config/m68k/m68k.h
+++ b/gcc/config/m68k/m68k.h
@@ -625,8 +625,6 @@ extern enum reg_class regno_reg_class[];
XXX This macro is m68k specific and used only for m68kemb.h. */
#define NEEDS_UNTYPED_CALL 0
-#define PCC_STATIC_STRUCT_RETURN
-
/* On the m68k, all arguments are usually pushed on the stack. */
#define FUNCTION_ARG_REGNO_P(N) 0
@@ -1127,10 +1125,17 @@ do { if (cc_prev_status.flags & CC_IN_68881) \
#define ASM_GENERATE_INTERNAL_LABEL(LABEL,PREFIX,NUM) \
sprintf (LABEL, "*%s%s%ld", LOCAL_LABEL_PREFIX, PREFIX, (long)(NUM))
-#define ASM_OUTPUT_REG_PUSH(FILE,REGNO) \
- asm_fprintf (FILE, "\tmovel %s,%Rsp@-\n", reg_names[REGNO])
-#define ASM_OUTPUT_REG_POP(FILE,REGNO) \
- asm_fprintf (FILE, "\tmovel %Rsp@+,%s\n", reg_names[REGNO])
+#define ASM_OUTPUT_REG_PUSH(FILE,REGNO) \
+ asm_fprintf (FILE, (MOTOROLA \
+ ? "\tmove.l %s,-(%Rsp)\n" \
+ : "\tmovel %s,%Rsp@-\n"), \
+ reg_names[REGNO])
+
+#define ASM_OUTPUT_REG_POP(FILE,REGNO) \
+ asm_fprintf (FILE, (MOTOROLA \
+ ? "\tmove.l (%Rsp)+,%s\n" \
+ : "\tmovel %Rsp@+,%s\n"), \
+ reg_names[REGNO])
/* The m68k does not use absolute case-vectors, but we must define this macro
anyway. */