From 30823ba60cafe3c1236e5ee89621f17e6dbae181 Mon Sep 17 00:00:00 2001 From: Chung-Lin Tang Date: Sat, 10 Mar 2012 14:57:30 +0000 Subject: [PATCH] re PR rtl-optimization/52528 (combine bug (powerpc testcase)) 2012-03-10 Chung-Lin Tang PR rtl-optimization/52528 * combine.c (can_combine_p): Add setting of subst_low_luid before call to expand_field_assignment(). From-SVN: r185175 --- gcc/ChangeLog | 6 ++++++ gcc/combine.c | 4 ++++ 2 files changed, 10 insertions(+) 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 + + 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 * 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); -- 2.30.2