From: tmsriram Date: Mon, 7 Jun 2010 05:24:37 +0000 (+0000) Subject: 2010-06-06 Sriraman Tallam X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=7c64ac08b6dfa096a1b1198a17ff3c60d9e7f5f2;p=thirdparty%2Fgcc.git 2010-06-06 Sriraman Tallam PR target/44319 * config/i386/i386.c (override_options): Turn zee pass on for level 2 and above and defer till target is known. (optimization_options): Turn on zee pass if TARGET_64BIT is set and turn off otherwise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@160357 138bc75d-0d04-0410-961f-82ee72b054a4 --- diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 4403b7245ee4..e8b617926572 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,11 @@ +2010-06-06 Sriraman Tallam + + PR target/44319 + * config/i386/i386.c (override_options): Turn zee pass on for level 2 + and above and defer till target is known. + (optimization_options): Turn on zee pass if TARGET_64BIT is set and + turn off otherwise. + 2010-05-25 Jan Hubicka * df-core.c (df_set_blocks): Use bitmap_head instead of bitmap. diff --git a/gcc/config/i386/i386.c b/gcc/config/i386/i386.c index 2a46f89cb248..8ae0c24a5b56 100644 --- a/gcc/config/i386/i386.c +++ b/gcc/config/i386/i386.c @@ -2891,6 +2891,8 @@ override_options (bool main_args_p) in case they weren't overwritten by command line options. */ if (TARGET_64BIT) { + if (flag_zee == 2) + flag_zee = 1; /* Mach-O doesn't support omitting the frame pointer for now. */ if (flag_omit_frame_pointer == 2) flag_omit_frame_pointer = (TARGET_MACHO ? 0 : 1); @@ -2901,6 +2903,8 @@ override_options (bool main_args_p) } else { + if (flag_zee == 2) + flag_zee = 0; if (flag_omit_frame_pointer == 2) flag_omit_frame_pointer = 0; if (flag_asynchronous_unwind_tables == 2) @@ -4390,10 +4394,6 @@ optimization_options (int level, int size ATTRIBUTE_UNUSED) flag_schedule_insns = 0; #endif - /* For -O2 and beyond, turn on -fzee for x86_64 target. */ - if (level > 1 && TARGET_64BIT) - flag_zee = 1; - if (TARGET_MACHO) /* The Darwin libraries never set errno, so we might as well avoid calling them when that's the only reason we would. */ @@ -4405,6 +4405,11 @@ optimization_options (int level, int size ATTRIBUTE_UNUSED) specifying them, we will set the defaults in override_options. */ if (optimize >= 1) flag_omit_frame_pointer = 2; + + /* For -O2 and beyond, turn on -fzee for x86_64 target. */ + if (level > 1) + flag_zee = 2; + flag_pcc_struct_return = 2; flag_asynchronous_unwind_tables = 2; flag_vect_cost_model = 1;