]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
2010-06-06 Sriraman Tallam <tmsriram@google.com>
authortmsriram <tmsriram@138bc75d-0d04-0410-961f-82ee72b054a4>
Mon, 7 Jun 2010 05:24:37 +0000 (05:24 +0000)
committertmsriram <tmsriram@138bc75d-0d04-0410-961f-82ee72b054a4>
Mon, 7 Jun 2010 05:24:37 +0000 (05:24 +0000)
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

gcc/ChangeLog
gcc/config/i386/i386.c

index 4403b7245ee4dc11c37b7fb7c32e47528740724c..e8b617926572dffed4a39794c2379e811aea79dd 100644 (file)
@@ -1,3 +1,11 @@
+2010-06-06  Sriraman Tallam  <tmsriram@google.com>
+
+       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  <jh@suse.cz>
 
        * df-core.c (df_set_blocks): Use bitmap_head instead of bitmap.
index 2a46f89cb248c31c643661ba2aad7bcf4229a7f2..8ae0c24a5b5673fc2419439192d7e18fe437d36b 100644 (file)
@@ -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;