This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[vta] fix obvious fallout from 2008-10-10 merge


Sorry that I've been sitting on this for so long.  I still haven't had
enough time to complete the re-stabilization of the branch after that
merge, but since I got one-too-many comments about the failures, I
figured it would be nicer to people to just have whatever patches I
have in.

I still think people might be better off using the revision prior to
the merge for the time being, r141024, also available as the named tag
var-tracking-assignments-merge-141024-before.

Anyhow, here's a patch that fixes the most blatant merge problems.
I'm installing it in the branch.

for  gcc/ChangeLog.vta
from  Alexandre Oliva  <aoliva@redhat.com>

	* tree-inline.c (tree_function_versioning): Fix merge fallout.
	* haifa-sched.c (schedule_block): Likewise.
	* ipa-reference.c (scan_stmt_for_static_refs): Likewise.
	
Index: gcc/tree-inline.c
===================================================================
--- gcc/tree-inline.c.orig	2008-10-10 09:31:06.000000000 -0300
+++ gcc/tree-inline.c	2008-10-10 10:08:49.000000000 -0300
@@ -4335,7 +4335,7 @@ tree_function_versioning (tree old_decl,
 	      }
 	    gcc_assert (TREE_CODE (replace_info->old_tree) == PARM_DECL);
 	    init = setup_one_parameter (&id, replace_info->old_tree,
-	    			        replace_info->new_tree, id.src_fn,
+	    			        replace_info->new_tree,
 				        NULL,
 				        &vars);
 	    if (init)
Index: gcc/haifa-sched.c
===================================================================
--- gcc/haifa-sched.c.orig	2008-10-10 09:31:05.000000000 -0300
+++ gcc/haifa-sched.c	2008-10-10 10:11:34.000000000 -0300
@@ -2616,7 +2616,8 @@ schedule_block (basic_block *target_bb)
 	      gcc_assert (DEBUG_INSN_P (insn));
 	      (*current_sched_info->begin_schedule_ready) (insn,
 							   last_scheduled_insn);
-	      move_insn (insn);
+	      move_insn (insn, last_scheduled_insn,
+			 current_sched_info->next_tail);
 	      last_scheduled_insn = insn;
 	      advance = schedule_insn (insn);
 	      gcc_assert (advance == 0);
@@ -2865,7 +2866,8 @@ schedule_block (basic_block *target_bb)
 		  gcc_assert (DEBUG_INSN_P (insn));
 		  (*current_sched_info->begin_schedule_ready)
 		    (insn, last_scheduled_insn);
-		  move_insn (insn);
+		  move_insn (insn, last_scheduled_insn,
+			     current_sched_info->next_tail);
 		  advance = schedule_insn (insn);
 		  last_scheduled_insn = insn;
 		  gcc_assert (advance == 0);
Index: gcc/ipa-reference.c
===================================================================
--- gcc/ipa-reference.c.orig	2008-10-10 09:31:05.000000000 -0300
+++ gcc/ipa-reference.c	2008-10-10 10:17:11.000000000 -0300
@@ -430,6 +430,9 @@ scan_stmt_for_static_refs (gimple_stmt_i
   unsigned int i;
   bitmap_iterator bi;
 
+  if (IS_DEBUG_STMT (stmt))
+    return NULL;
+
   if (fn)
     local = get_reference_vars_info (fn)->local;
 
@@ -457,10 +460,6 @@ scan_stmt_for_static_refs (gimple_stmt_i
        everything.  This is not needed, since we can get to nonlocal label only
        from callee and thus we will get info propagated.  */
 
-    case GIMPLE_DEBUG:
-      *handled_ops_p = true;
-      break;
-
     default:
       break;
     }
-- 
Alexandre Oliva         http://www.lsd.ic.unicamp.br/~oliva/
Free Software Evangelist  oliva@{lsd.ic.unicamp.br, gnu.org}
FSFLA Board Member       ÂSÃ Libre! => http://www.fsfla.org/
Red Hat Compiler Engineer   aoliva@{redhat.com, gcc.gnu.org}

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]