This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[patch] alpha: Clean up FUNCTION_ARG_PADDING.


Hi,

Attached is a patch to clean up FUNCTION_ARG_PADDING in alpha port.

If BYTES_BIG_ENDIAN == 0, the default definition of
FUNCTION_ARG_PADDING always evaluates to upward, so alpha.h does not
need to override FUNCTINO_ARG_PADDING.  unicosmk.h sipmly wants the
default definition.  This is pretty obvious, but I'd like to hear a
second opinion.  OK to apply?

Kazu Hirata

2003-06-28  Kazu Hirata  <kazu@cs.umass.edu>

	* config/alpha/alpha.h (FUNCTION_ARG_PADDING): Remove.
	* config/alpha/unicosmk.h: Don't #undef FUNCTION_ARG_PADDING.

Index: alpha.h
===================================================================
RCS file: /cvs/gcc/gcc/gcc/config/alpha/alpha.h,v
retrieving revision 1.202
diff -u -r1.202 alpha.h
--- alpha.h	27 Jun 2003 17:52:03 -0000	1.202
+++ alpha.h	28 Jun 2003 21:12:41 -0000
@@ -1088,13 +1088,6 @@
 #define FUNCTION_ARG_PASS_BY_REFERENCE(CUM, MODE, TYPE, NAMED) \
   ((MODE) == TFmode || (MODE) == TCmode)
 
-/* Specify the padding direction of arguments.
-
-   On the Alpha, we must pad upwards in order to be able to pass args in
-   registers.  */
-
-#define FUNCTION_ARG_PADDING(MODE, TYPE)	upward
-
 /* For an arg passed partly in registers and partly in memory,
    this is the number of registers used.
    For args passed entirely in registers or entirely in memory, zero.  */
Index: unicosmk.h
===================================================================
RCS file: /cvs/gcc/gcc/gcc/config/alpha/unicosmk.h,v
retrieving revision 1.21
diff -u -r1.21 unicosmk.h
--- unicosmk.h	19 Jun 2003 21:47:03 -0000	1.21
+++ unicosmk.h	28 Jun 2003 21:12:42 -0000
@@ -218,12 +218,6 @@
   ++(CUM).num_args;						\
 } while(0)
 
-/* We want the default definition for this.
-   ??? In fact, we should delete the definition from alpha.h as it
-   corresponds to the default definition for little-endian machines.  */
-
-#undef FUNCTION_ARG_PADDING
-
 /* An argument is passed either entirely in registers or entirely on stack.  */
  
 #undef FUNCTION_ARG_PARTIAL_NREGS


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]