From b71b43d913a9f2f9b4f3c635879480c7adb1bbef Mon Sep 17 00:00:00 2001
From: Steven Bosscher <steven@gcc.gnu.org>
Date: Tue, 5 Apr 2011 18:15:04 +0000
Subject: [PATCH] re PR middle-end/48441 (ICE in mark_oprs_set)

	PR middle-end/48441
	* cprop.c (one_cprop_pass): Do not mark_oprs_set of deleted insns.

From-SVN: r171994
---
 gcc/ChangeLog | 5 +++++
 gcc/cprop.c   | 4 ++--
 2 files changed, 7 insertions(+), 2 deletions(-)

diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index b2e4a86f3c2a..d38c54986e9a 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,8 @@
+2011-04-05  Steven Bosscher  <steven@gcc.gnu.org>
+
+	PR middle-end/48441
+	* cprop.c (one_cprop_pass): Do not mark_oprs_set of deleted insns.
+
 2011-04-05  Nathan Froyd  <froydnj@codesourcery.com>
 
 	* combine.c: Include obstack.h.
diff --git a/gcc/cprop.c b/gcc/cprop.c
index b9235f176c37..74520e38f41b 100644
--- a/gcc/cprop.c
+++ b/gcc/cprop.c
@@ -1797,8 +1797,8 @@ one_cprop_pass (void)
 		/* Keep track of everything modified by this insn.  */
 		/* ??? Need to be careful w.r.t. mods done to INSN.
 		       Don't call mark_oprs_set if we turned the
-		       insn into a NOTE.  */
-		if (! NOTE_P (insn))
+		       insn into a NOTE, or deleted the insn.  */
+		if (! NOTE_P (insn) && ! INSN_DELETED_P (insn))
 		  mark_oprs_set (insn);
 	      }
 	}
-- 
GitLab