summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorcltang <cltang@138bc75d-0d04-0410-961f-82ee72b054a4>2012-03-10 14:57:30 +0000
committercltang <cltang@138bc75d-0d04-0410-961f-82ee72b054a4>2012-03-10 14:57:30 +0000
commitbd279947031bbfda2a8ff1b0f0cdb74b6840a4a4 (patch)
tree69336bab4f85cb0fcbbc444fc2c6c1c57de424ff
parent5f2f65e659c1d4bdb5c7b15701eceeaa6a3d1f8f (diff)
downloadppe42-gcc-bd279947031bbfda2a8ff1b0f0cdb74b6840a4a4.tar.gz
ppe42-gcc-bd279947031bbfda2a8ff1b0f0cdb74b6840a4a4.zip
2012-03-10 Chung-Lin Tang <cltang@codesourcery.com>
PR rtl-optimization/52528 * combine.c (can_combine_p): Add setting of subst_low_luid before call to expand_field_assignment(). git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@185175 138bc75d-0d04-0410-961f-82ee72b054a4
-rw-r--r--gcc/ChangeLog6
-rw-r--r--gcc/combine.c4
2 files changed, 10 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 06d562bff02..b5e3b36ce76 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,9 @@
+2012-03-10 Chung-Lin Tang <cltang@codesourcery.com>
+
+ PR rtl-optimization/52528
+ * combine.c (can_combine_p): Add setting of subst_low_luid
+ before call to expand_field_assignment().
+
2012-03-09 Sandra Loosemore <sandra@codesourcery.com>
* doc/invoke.texi: Use correct names/markup for "GCC", "GDB", "ld",
diff --git a/gcc/combine.c b/gcc/combine.c
index d06de04041e..ab825e4ee98 100644
--- a/gcc/combine.c
+++ b/gcc/combine.c
@@ -1822,6 +1822,10 @@ can_combine_p (rtx insn, rtx i3, rtx pred ATTRIBUTE_UNUSED,
if (set == 0)
return 0;
+ /* The simplification in expand_field_assignment may call back to
+ get_last_value, so set safe guard here. */
+ subst_low_luid = DF_INSN_LUID (insn);
+
set = expand_field_assignment (set);
src = SET_SRC (set), dest = SET_DEST (set);
OpenPOWER on IntegriCloud