i386.h (BIGGEST_FIELD_ALIGNMENT): Set proper default for x86_64.
authorJan Hubicka <jh@suse.cz>
Sun, 22 Sep 2002 03:15:38 +0000 (05:15 +0200)
committerJan Hubicka <hubicka@gcc.gnu.org>
Sun, 22 Sep 2002 03:15:38 +0000 (03:15 +0000)
* 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
gcc/config/i386/i386.c
gcc/config/i386/i386.h

index 59176736c3eb304fffa3eab2a505c6c36e0a430d..821271cb7c02cbb20ec6ceb60caf773094085658 100644 (file)
@@ -1,3 +1,12 @@
+Tue Aug 27 22:26:35 CEST 2002  Jan Hubicka  <jh@suse.cz>
+
+       * i386.h (BIGGEST_FIELD_ALIGNMENT): Set proper default for x86_64.
+
+Tue Aug 27 20:07:01 CEST 2002  Jan Hubicka  <jh@suse.cz>
+
+       * i386.c (overwrite_options): Set -mpreferred-stack-boundary to 128
+       for -Os/TARGET_64BIT too.
+
 2002-09-21  Kazu Hirata  <kazu@cs.umass.edu>
 
        * ChangeLog: Follow spelling conventions.
index 252c724f2dec9f20a2f8d6bb449679d63cee11dd..b72047e6b4485c6adf4902ef53ddadf083fa6d4f 100644 (file)
@@ -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;
     }
index 7cd3962b195f88d65c8e64ef29c418ea3dd64fd1..acd2db040e10c0c09e1f4f40d0a3e052b7dad655 100644 (file)
@@ -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)