OSDN Git Service

* config/mips/mips.h (PARM_BOUNDARY): Guarantee alignment of
authoraoliva <aoliva@138bc75d-0d04-0410-961f-82ee72b054a4>
Thu, 31 Jan 2002 01:40:54 +0000 (01:40 +0000)
committeraoliva <aoliva@138bc75d-0d04-0410-961f-82ee72b054a4>
Thu, 31 Jan 2002 01:40:54 +0000 (01:40 +0000)
arguments to 64-bit boundaries on 64-bit ABIs.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@49356 138bc75d-0d04-0410-961f-82ee72b054a4

gcc/ChangeLog
gcc/config/mips/mips.h

index eb8865e..74c0c9b 100644 (file)
@@ -1,3 +1,8 @@
+2002-01-30  Alexandre Oliva  <aoliva@redhat.com>
+
+       * config/mips/mips.h (PARM_BOUNDARY): Guarantee alignment of
+       arguments to 64-bit boundaries on 64-bit ABIs.
+
 2002-01-30  Steve Ellcey  <sje@cup.hp.com>
 
        * loop.c (loop_invariant_p): Special case pic_offset_table_rtx.
index 58fba77..898f9f7 100644 (file)
@@ -1646,7 +1646,9 @@ do {                                                      \
 #define POINTER_BOUNDARY (Pmode == DImode ? 64 : 32)
 
 /* Allocation boundary (in *bits*) for storing arguments in argument list.  */
-#define PARM_BOUNDARY (TARGET_64BIT ? 64 : 32)
+#define PARM_BOUNDARY ((mips_abi == ABI_O64 || mips_abi == ABI_N32 \
+                       || mips_abi == ABI_64 \
+                       || (mips_abi == ABI_EABI && TARGET_64BIT)) ? 64 : 32)
 
 /* Allocation boundary (in *bits*) for the code of a function.  */
 #define FUNCTION_BOUNDARY 32