2012-09-19 Richard Guenther <rguenther@suse.de>
authorrguenth <rguenth@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 19 Sep 2012 13:46:34 +0000 (13:46 +0000)
committerrguenth <rguenth@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 19 Sep 2012 13:46:34 +0000 (13:46 +0000)
* passes.c (init_optimization_passes): For -Og move
pass_object_sizes inbetween CCP and copyprop.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191476 138bc75d-0d04-0410-961f-82ee72b054a4

gcc/ChangeLog
gcc/passes.c

index c9d8012..e7c8f9b 100644 (file)
@@ -1,5 +1,10 @@
 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. 
 
 2012-09-19  Jan Hubicka  <jh@suse.cz>
index c96d533..97a1d0e 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