aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNathan Sidwell <nathan@codesourcery.com>2006-06-16 12:51:17 +0000
committerNathan Sidwell <nathan@codesourcery.com>2006-06-16 12:51:17 +0000
commit4284799dd50ee0aa0cd015b3796c9baa47caec52 (patch)
tree36c49c19372fd21fb26135d81c250fadf6194f71
parente223ddeba13037d698c88b6d6dade85bc7725728 (diff)
gcc/
* config/m68k/m68k.h (PCC_STATIC_STRUCT_RETURN): Don't define here. * config/m68k/m68kemb.h (PCC_STATIC_STRUCT_RETURN): Don't undefine here ... * config/m68k/m68kelf.h (PCC_STATIC_STRUCT_RETURN): ... or here ... * config/m68k/netbsd-elf.h (PCC_STATIC_STRUCT_RETURN): ... or here. * /config/m68k/openbsd.h (PCC_STATIC_STRUCT_RETURN): Define here. git-svn-id: https://gcc.gnu.org/svn/gcc/branches/csl/coldfire-4_1@114720 138bc75d-0d04-0410-961f-82ee72b054a4
-rw-r--r--gcc/config/m68k/m68k.h2
-rw-r--r--gcc/config/m68k/m68kelf.h10
-rw-r--r--gcc/config/m68k/m68kemb.h4
-rw-r--r--gcc/config/m68k/netbsd-elf.h6
-rw-r--r--gcc/config/m68k/openbsd.h7
5 files changed, 7 insertions, 22 deletions
diff --git a/gcc/config/m68k/m68k.h b/gcc/config/m68k/m68k.h
index c7df7450644..2cac63642e6 100644
--- a/gcc/config/m68k/m68k.h
+++ b/gcc/config/m68k/m68k.h
@@ -579,8 +579,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
diff --git a/gcc/config/m68k/m68kelf.h b/gcc/config/m68k/m68kelf.h
index 0177d0dad09..f4697ac859c 100644
--- a/gcc/config/m68k/m68kelf.h
+++ b/gcc/config/m68k/m68kelf.h
@@ -105,16 +105,6 @@ do { \
#undef NO_DOLLAR_IN_LABEL
-/* Define PCC_STATIC_STRUCT_RETURN if the convention on the target machine
- is to use the nonreentrant technique for returning structure and union
- values, as commonly implemented by the AT&T Portable C Compiler (PCC).
- When defined, the gcc option -fpcc-struct-return can be used to cause
- this form to be generated. When undefined, the option does nothing.
- For m68k SVR4, the convention is to use a reentrant technique compatible
- with the gcc default, so override the definition of this macro in m68k.h */
-
-#undef PCC_STATIC_STRUCT_RETURN
-
/* Local common symbols are declared to the assembler with ".lcomm" rather
than ".bss", so override the definition in svr4.h */
diff --git a/gcc/config/m68k/m68kemb.h b/gcc/config/m68k/m68kemb.h
index 9804e2a2225..d93af3001a6 100644
--- a/gcc/config/m68k/m68kemb.h
+++ b/gcc/config/m68k/m68kemb.h
@@ -13,10 +13,6 @@
so we define PCC_BITFIELD_TYPE_MATTERS. */
#define PCC_BITFIELD_TYPE_MATTERS 1
-/* Undef PCC_STATIC_STRUCT_RETURN so that we get a re-entrant calling
- convention. */
-#undef PCC_STATIC_STRUCT_RETURN
-
/* Don't default to pcc-struct-return, so that we can return small structures
and unions in registers, which is slightly more efficient. */
#define DEFAULT_PCC_STRUCT_RETURN 0
diff --git a/gcc/config/m68k/netbsd-elf.h b/gcc/config/m68k/netbsd-elf.h
index 1a69b3c4559..2f463772cf9 100644
--- a/gcc/config/m68k/netbsd-elf.h
+++ b/gcc/config/m68k/netbsd-elf.h
@@ -361,12 +361,6 @@ while (0)
#define BIGGEST_ALIGNMENT 64
-/* For m68k SVR4, structures are returned using the reentrant
- technique. */
-
-#undef PCC_STATIC_STRUCT_RETURN
-
-
/* The svr4 ABI for the m68k says that records and unions are returned
in memory. */
diff --git a/gcc/config/m68k/openbsd.h b/gcc/config/m68k/openbsd.h
index 20cdc6f05ef..eb0c13d2979 100644
--- a/gcc/config/m68k/openbsd.h
+++ b/gcc/config/m68k/openbsd.h
@@ -74,6 +74,13 @@ Boston, MA 02110-1301, USA. */
/* Stack & calling: aggregate returns. */
+/* Define PCC_STATIC_STRUCT_RETURN if the convention on the target machine
+ is to use the nonreentrant technique for returning structure and union
+ values, as commonly implemented by the AT&T Portable C Compiler
+ (PCC). */
+/*FIXME:This is quite possibly wrong, and disagrees with gdb. */
+#define PCC_STATIC_STRUCT_RETURN 1
+
/* Don't default to pcc-struct-return, because gcc is the only compiler, and
we want to retain compatibility with older gcc versions. */
#define DEFAULT_PCC_STRUCT_RETURN 0