]> gcc.gnu.org Git - gcc.git/commitdiff
passes.c (init_optimization_passes): For -Og move pass_object_sizes inbetween CCP...
authorRichard Guenther <rguenther@suse.de>
Wed, 19 Sep 2012 13:46:34 +0000 (13:46 +0000)
committerRichard Biener <rguenth@gcc.gnu.org>
Wed, 19 Sep 2012 13:46:34 +0000 (13:46 +0000)
2012-09-19  Richard Guenther  <rguenther@suse.de>

* passes.c (init_optimization_passes): For -Og move
pass_object_sizes inbetween CCP and copyprop.

From-SVN: r191476

gcc/ChangeLog
gcc/passes.c

index c9d801214eb201e14077770ad99e43b585c350dd..e7c8f9bf6d4208192d912e18c2c845920df4d93a 100644 (file)
@@ -1,3 +1,8 @@
+2012-09-19  Richard Guenther  <rguenther@suse.de>
+
+       * passes.c (init_optimization_passes): For -Og move
+       pass_object_sizes inbetween CCP and copyprop.
+
 2012-09-19  Richard Guenther  <rguenther@suse.de>
 
        * tree-ssa-forwprop.c (get_prop_source_stmt): Simplify. 
index c96d5333efefda5958cb5966db04bb9bb42b11ee..97a1d0ec7fda58b4fbae7cb481a3ca1fddd668bf 100644 (file)
@@ -1528,11 +1528,13 @@ init_optimization_passes (void)
       NEXT_PASS (pass_lower_vector_ssa);
       /* Perform simple scalar cleanup which is constant/copy propagation.  */
       NEXT_PASS (pass_ccp);
+      NEXT_PASS (pass_object_sizes);
+      /* Copy propagation also copy-propagates constants, this is necessary
+         to forward object-size results properly.  */
       NEXT_PASS (pass_copy_prop);
       NEXT_PASS (pass_rename_ssa_copies);
       NEXT_PASS (pass_dce);
       /* Fold remaining builtins.  */
-      NEXT_PASS (pass_object_sizes);
       NEXT_PASS (pass_fold_builtins);
       /* ???  We do want some kind of loop invariant motion, but we possibly
          need to adjust LIM to be more friendly towards preserving accurate
This page took 0.083128 seconds and 5 git commands to generate.