re PR target/11598 (testcase gcc.dg/20020118-1.c fails runtime check of __attribute__((aligned(16))))

2003-10-28  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>

	PR target/11598
	PR libgcj/10610
	* config/rs6000/sysv4.h (PREFERRED_STACK_BOUNDARY): New macro.

From-SVN: r73017
This commit is contained in:
Franz Sirl 2003-10-28 19:46:42 +00:00 committed by Franz Sirl
parent ed1ca05a17
commit 06ba585456
2 changed files with 21 additions and 0 deletions

View File

@ -1,3 +1,9 @@
2003-10-28 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
PR target/11598
PR libgcj/10610
* config/rs6000/sysv4.h (PREFERRED_STACK_BOUNDARY): New macro.
2003-10-28 Richard Earnshaw <rearnsha@arm.com>
* arm.c (arm_output_epilogue): When using a frame pointer, don't emit

View File

@ -389,6 +389,21 @@ do { \
#undef STACK_BOUNDARY
#define STACK_BOUNDARY (TARGET_ALTIVEC_ABI ? 128 : 64)
/* Define this macro if you wish to preserve a certain alignment for
the stack pointer, greater than what the hardware enforces. The
definition is a C expression for the desired alignment (measured
in bits). This macro must evaluate to a value equal to or larger
than STACK_BOUNDARY.
For the SYSV ABI and variants the alignment of the stack pointer
is usually controlled manually in rs6000.c. However, to maintain
alignment across alloca () in all circumstances,
PREFERRED_STACK_BOUNDARY needs to be set as well.
This has the additional advantage of allowing a bigger maximum
alignment of user objects on the stack. */
#undef PREFERRED_STACK_BOUNDARY
#define PREFERRED_STACK_BOUNDARY 128
/* Real stack boundary as mandated by the appropriate ABI. */
#define ABI_STACK_BOUNDARY ((TARGET_EABI && !TARGET_ALTIVEC_ABI) ? 64 : 128)