From ef49d42ecee756c213ee45076cb22048e8b8154e Mon Sep 17 00:00:00 2001 From: Jan Hubicka Date: Sun, 22 Sep 2002 05:15:38 +0200 Subject: [PATCH] i386.h (BIGGEST_FIELD_ALIGNMENT): Set proper default for x86_64. * i386.h (BIGGEST_FIELD_ALIGNMENT): Set proper default for x86_64. * i386.c (overwrite_options): Set -mpreferred-stack-boundary to 128 for -Os/TARGET_64BIT too. From-SVN: r57399 --- gcc/ChangeLog | 9 +++++++++ gcc/config/i386/i386.c | 6 +++--- gcc/config/i386/i386.h | 4 ++++ 3 files changed, 16 insertions(+), 3 deletions(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 59176736c3e..821271cb7c0 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,12 @@ +Tue Aug 27 22:26:35 CEST 2002 Jan Hubicka + + * i386.h (BIGGEST_FIELD_ALIGNMENT): Set proper default for x86_64. + +Tue Aug 27 20:07:01 CEST 2002 Jan Hubicka + + * i386.c (overwrite_options): Set -mpreferred-stack-boundary to 128 + for -Os/TARGET_64BIT too. + 2002-09-21 Kazu Hirata * ChangeLog: Follow spelling conventions. diff --git a/gcc/config/i386/i386.c b/gcc/config/i386/i386.c index 252c724f2de..b72047e6b44 100644 --- a/gcc/config/i386/i386.c +++ b/gcc/config/i386/i386.c @@ -1120,14 +1120,14 @@ override_options () don't want additional code to keep the stack aligned when optimizing for code size. */ ix86_preferred_stack_boundary = (optimize_size - ? TARGET_64BIT ? 64 : 32 + ? TARGET_64BIT ? 128 : 32 : 128); if (ix86_preferred_stack_boundary_string) { i = atoi (ix86_preferred_stack_boundary_string); - if (i < (TARGET_64BIT ? 3 : 2) || i > 12) + if (i < (TARGET_64BIT ? 4 : 2) || i > 12) error ("-mpreferred-stack-boundary=%d is not between %d and 12", i, - TARGET_64BIT ? 3 : 2); + TARGET_64BIT ? 4 : 2); else ix86_preferred_stack_boundary = (1 << i) * BITS_PER_UNIT; } diff --git a/gcc/config/i386/i386.h b/gcc/config/i386/i386.h index 7cd3962b195..acd2db040e1 100644 --- a/gcc/config/i386/i386.h +++ b/gcc/config/i386/i386.h @@ -729,7 +729,11 @@ extern int x86_prefetch_sse; supports no vector modes, cut out the complexity and fall back on BIGGEST_FIELD_ALIGNMENT. */ #ifdef IN_TARGET_LIBS +#ifdef __x86_64__ +#define BIGGEST_FIELD_ALIGNMENT 128 +#else #define BIGGEST_FIELD_ALIGNMENT 32 +#endif #else #define ADJUST_FIELD_ALIGN(FIELD, COMPUTED) \ x86_field_alignment (FIELD, COMPUTED) -- 2.30.2