diff options
Diffstat (limited to 'gcc/config/i386/i386.c')
| -rw-r--r-- | gcc/config/i386/i386.c | 32 |
1 files changed, 16 insertions, 16 deletions
diff --git a/gcc/config/i386/i386.c b/gcc/config/i386/i386.c index f668782..962b990 100644 --- a/gcc/config/i386/i386.c +++ b/gcc/config/i386/i386.c @@ -1799,22 +1799,6 @@ override_options (void) align_functions = processor_target_table[ix86_tune].align_func; } - /* Validate -mpreferred-stack-boundary= value, or provide default. - The default of 128 bits is for Pentium III's SSE __m128, but we - don't want additional code to keep the stack aligned when - optimizing for code size. */ - ix86_preferred_stack_boundary = ((TARGET_64BIT || TARGET_MACHO || !optimize_size) - ? 128 : 32); - if (ix86_preferred_stack_boundary_string) - { - i = atoi (ix86_preferred_stack_boundary_string); - if (i < (TARGET_64BIT ? 4 : 2) || i > 12) - error ("-mpreferred-stack-boundary=%d is not between %d and 12", i, - TARGET_64BIT ? 4 : 2); - else - ix86_preferred_stack_boundary = (1 << i) * BITS_PER_UNIT; - } - /* Validate -mbranch-cost= value, or provide default. */ ix86_branch_cost = ix86_cost->branch_cost; if (ix86_branch_cost_string) @@ -1909,6 +1893,22 @@ override_options (void) target_flags |= MASK_NO_RED_ZONE; } + /* Validate -mpreferred-stack-boundary= value, or provide default. + The default of 128 bits is for Pentium III's SSE __m128, but we + don't want additional code to keep the stack aligned when + optimizing for code size. */ + ix86_preferred_stack_boundary + = ((TARGET_MACHO || TARGET_SSE || !optimize_size) ? 128 : 32); + if (ix86_preferred_stack_boundary_string) + { + i = atoi (ix86_preferred_stack_boundary_string); + if (i < (TARGET_64BIT ? 4 : 2) || i > 12) + error ("-mpreferred-stack-boundary=%d is not between %d and 12", i, + TARGET_64BIT ? 4 : 2); + else + ix86_preferred_stack_boundary = (1 << i) * BITS_PER_UNIT; + } + /* Accept -msseregparm only if at least SSE support is enabled. */ if (TARGET_SSEREGPARM && ! TARGET_SSE) |
