All of lore.kernel.org
 help / color / mirror / Atom feed
* [RFC] [PATCH 2/4] remove dead branch usage
@ 2006-12-28  9:25 Christopher Li
  0 siblings, 0 replies; only message in thread
From: Christopher Li @ 2006-12-28  9:25 UTC (permalink / raw)
  To: linux-sparse; +Cc: Linus Torvalds, Josh Triplett, Dan Carpenter

Fix some problem cause by dead branch instruction left in the user chain.

Signed-off-by: Christopher Li <sparse@chrisli.org>

Index: sparse/flow.c
===================================================================
--- sparse.orig/flow.c	2006-12-21 14:35:18.000000000 -0800
+++ sparse/flow.c	2006-12-21 14:35:55.000000000 -0800
@@ -195,6 +195,7 @@ try_to_rewrite_target:
 	if (bb_list_size(target->parents) != 1)
 		return retval;
 	insert_branch(target, insn, final);
+	kill_instruction(insn);
 	return 1;
 }
 
Index: sparse/simplify.c
===================================================================
--- sparse.orig/simplify.c	2006-12-21 14:35:18.000000000 -0800
+++ sparse/simplify.c	2006-12-21 14:35:55.000000000 -0800
@@ -217,6 +217,11 @@ void kill_instruction(struct instruction
 		kill_use(&insn->src2);
 		kill_use(&insn->src3);
 		return;
+	case OP_BR:
+		insn->bb = NULL;
+		repeat_phase |= REPEAT_CSE;
+		if (insn->cond)
+			kill_use(&insn->cond);
 	}
 }
 

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2006-12-28  9:43 UTC | newest]

Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2006-12-28  9:25 [RFC] [PATCH 2/4] remove dead branch usage Christopher Li

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.