Patchwork Fix mn10300 compile

login
register
mail settings
Submitter Richard Guenther
Date Feb. 13, 2013, 9:36 a.m.
Message ID <alpine.LNX.2.00.1302131034120.3394@zhemvz.fhfr.qr>
Download mbox | patch
Permalink /patch/220100/
State New
Headers show

Comments

Richard Guenther - Feb. 13, 2013, 9:36 a.m.
The following fixes compilation of mn10300 which broke when the
interface to flow_loops_find changed (as reported in a comment
in PR56294).  I took the liberty to use the proper interface
for initializing the loop tree.

Built a mn10300 cc1, committed as obvious.

Richard.

2013-02-13  Richard Biener  <rguenther@suse.de>

	* config/mn10300/mn10300.c (mn10300_scan_for_setlb_lcc):
	Fix loop discovery code.

Patch

Index: gcc/config/mn10300/mn10300.c
===================================================================
--- gcc/config/mn10300/mn10300.c	(revision 195997)
+++ gcc/config/mn10300/mn10300.c	(working copy)
@@ -3235,9 +3235,7 @@  mn10300_scan_for_setlb_lcc (void)
   compute_bb_for_insn ();
 
   /* Find the loops.  */
-  if (flow_loops_find (& loops) < 1)
-    DUMP ("No loops found", NULL_RTX);
-  current_loops = & loops;
+  loop_optimizer_init (AVOID_CFG_MODIFICATIONS);
 
   /* FIXME: For now we only investigate innermost loops.  In practice however
      if an inner loop is not suitable for use with the SETLB/Lcc insns, it may
@@ -3287,15 +3285,7 @@  mn10300_scan_for_setlb_lcc (void)
 		 reason);
     }
 
-#if 0 /* FIXME: We should free the storage we allocated, but
-	 for some unknown reason this leads to seg-faults.  */
-  FOR_EACH_LOOP (liter, loop, 0)
-    free_simple_loop_desc (loop);
-
-  flow_loops_free (current_loops);
-#endif
-
-  current_loops = NULL;
+  loop_optimizer_finalize ();
 
   df_finish_pass (false);