aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorJakub Jelinek <jakub@redhat.com>2010-07-22 22:48:42 +0200
committerJakub Jelinek <jakub@gcc.gnu.org>2010-07-22 22:48:42 +0200
commit828f2c8b2e0b7f6c0177480f5fe6628d1ba5b000 (patch)
tree1f624eee97e7e897b7d4c70054deba7a310f0187 /gcc
parent7be7d292fb618db4c772ee4020dcb62077af819f (diff)
downloadgcc-828f2c8b2e0b7f6c0177480f5fe6628d1ba5b000.zip
gcc-828f2c8b2e0b7f6c0177480f5fe6628d1ba5b000.tar.gz
gcc-828f2c8b2e0b7f6c0177480f5fe6628d1ba5b000.tar.bz2
re PR bootstrap/45028 (ICE building 64-bit libjava on Solaris 2/SPARC: output_operand: invalid expression as operand)
PR bootstrap/45028 * recgprop.c (copyprop_hardreg_forward_1): If changed is true, call cprop_find_used_regs again via note_uses. From-SVN: r162427
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog6
-rw-r--r--gcc/regcprop.c9
2 files changed, 14 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 321b27c..ac003a3 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,9 @@
+2010-07-22 Jakub Jelinek <jakub@redhat.com>
+
+ PR bootstrap/45028
+ * recgprop.c (copyprop_hardreg_forward_1): If changed is true,
+ call cprop_find_used_regs again via note_uses.
+
2010-07-22 Eric Botcazou <ebotcazou@adacore.com>
* alias.c (get_alias_set): Fix formatting issues.
diff --git a/gcc/regcprop.c b/gcc/regcprop.c
index c4a22be..0e11f97 100644
--- a/gcc/regcprop.c
+++ b/gcc/regcprop.c
@@ -947,7 +947,14 @@ copyprop_hardreg_forward_1 (basic_block bb, struct value_data *vd)
did_replacement:
if (changed)
- anything_changed = true;
+ {
+ anything_changed = true;
+
+ /* If something changed, perhaps further changes to earlier
+ DEBUG_INSNs can be applied. */
+ if (vd->n_debug_insn_changes)
+ note_uses (&PATTERN (insn), cprop_find_used_regs, vd);
+ }
/* Clobber call-clobbered registers. */
if (CALL_P (insn))