See http://gcc.gnu.org/bugzilla/show_bug.cgi?id=54369 for more infos. SVN-Revision: 33328
		
			
				
	
	
		
			46 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			Diff
		
	
	
	
	
	
			
		
		
	
	
			46 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			Diff
		
	
	
	
	
	
Author: ebotcazou
 | 
						|
Date: Sun Sep  2 10:36:54 2012
 | 
						|
New Revision: 190859
 | 
						|
 | 
						|
URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=190859
 | 
						|
Log:
 | 
						|
    PR rtl-optimization/54369
 | 
						|
    * config/mips/mips.c (mips_reorg): Invoke cleanup_barriers before
 | 
						|
    calling dbr_schedule.
 | 
						|
    * config/sparc/sparc.c (sparc_reorg): Likewise.
 | 
						|
 | 
						|
Modified:
 | 
						|
    branches/gcc-4_7-branch/gcc/ChangeLog
 | 
						|
    branches/gcc-4_7-branch/gcc/config/mips/mips.c
 | 
						|
    branches/gcc-4_7-branch/gcc/config/sparc/sparc.c
 | 
						|
---
 | 
						|
--- gcc-4_7-branch/gcc/config/mips/mips.c	2012/09/02 10:36:27	190858
 | 
						|
+++ gcc-4_7-branch/gcc/config/mips/mips.c	2012/09/02 10:36:54	190859
 | 
						|
@@ -15415,7 +15415,10 @@
 | 
						|
     }
 | 
						|
 
 | 
						|
   if (optimize > 0 && flag_delayed_branch)
 | 
						|
-    dbr_schedule (get_insns ());
 | 
						|
+    {
 | 
						|
+      cleanup_barriers ();
 | 
						|
+      dbr_schedule (get_insns ());
 | 
						|
+    }
 | 
						|
   mips_reorg_process_insns ();
 | 
						|
   if (!TARGET_MIPS16
 | 
						|
       && TARGET_EXPLICIT_RELOCS
 | 
						|
--- gcc-4_7-branch/gcc/config/sparc/sparc.c	2012/09/02 10:36:27	190858
 | 
						|
+++ gcc-4_7-branch/gcc/config/sparc/sparc.c	2012/09/02 10:36:54	190859
 | 
						|
@@ -10663,7 +10663,10 @@
 | 
						|
   /* We need to have the (essentially) final form of the insn stream in order
 | 
						|
      to properly detect the various hazards.  Run delay slot scheduling.  */
 | 
						|
   if (optimize > 0 && flag_delayed_branch)
 | 
						|
-    dbr_schedule (get_insns ());
 | 
						|
+    {
 | 
						|
+      cleanup_barriers ();
 | 
						|
+      dbr_schedule (get_insns ());
 | 
						|
+    }
 | 
						|
 
 | 
						|
   /* Now look for specific patterns in the insn stream.  */
 | 
						|
   for (insn = get_insns (); insn; insn = next)
 | 
						|
 |