It's already done by fwprop_done.

Bootstrapped and tested on x86_64-unknown-linux-gnu, applied to trunk.

Richard.

2016-05-06  Richard Biener  <rguent...@suse.de>

        * fwprop.c (fwprop): Remove duplicate cleanup_cfg call.
        (fwprop_addr): Likewise.

Index: gcc/fwprop.c
===================================================================
--- gcc/fwprop.c        (revision 235865)
+++ gcc/fwprop.c        (working copy)
@@ -1461,7 +1461,6 @@ static unsigned int
 fwprop (void)
 {
   unsigned i;
-  bool need_cleanup = false;
 
   fwprop_init ();
 
@@ -1479,12 +1478,10 @@ fwprop (void)
            || DF_REF_BB (use)->loop_father == NULL
            /* The outer most loop is not really a loop.  */
            || loop_outer (DF_REF_BB (use)->loop_father) == NULL)
-         need_cleanup |= forward_propagate_into (use);
+         forward_propagate_into (use);
     }
 
   fwprop_done ();
-  if (need_cleanup)
-    cleanup_cfg (0);
   return 0;
 }
 
@@ -1528,7 +1525,6 @@ static unsigned int
 fwprop_addr (void)
 {
   unsigned i;
-  bool need_cleanup = false;
 
   fwprop_init ();
 
@@ -1542,13 +1538,10 @@ fwprop_addr (void)
            && DF_REF_BB (use)->loop_father != NULL
            /* The outer most loop is not really a loop.  */
            && loop_outer (DF_REF_BB (use)->loop_father) != NULL)
-         need_cleanup |= forward_propagate_into (use);
+         forward_propagate_into (use);
     }
 
   fwprop_done ();
-
-  if (need_cleanup)
-    cleanup_cfg (0);
   return 0;
 }
 

Reply via email to