aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJakub Jelinek <jakub@redhat.com>2010-03-26 21:55:34 +0100
committerJakub Jelinek <jakub@gcc.gnu.org>2010-03-26 21:55:34 +0100
commit2155f963b3a8465593767a7fc189171e47350532 (patch)
tree610e6662c2b8f3fc1795ddd94c16f8924eee878d
parente80691a0d79f8245f4bf08c4173b0f127404f2d0 (diff)
downloadgcc-2155f963b3a8465593767a7fc189171e47350532.zip
gcc-2155f963b3a8465593767a7fc189171e47350532.tar.gz
gcc-2155f963b3a8465593767a7fc189171e47350532.tar.bz2
var-tracking.c (vt_expand_loc_callback): Don't run cselib_expand_value_rtx_cb in dummy mode if...
* var-tracking.c (vt_expand_loc_callback): Don't run cselib_expand_value_rtx_cb in dummy mode if cselib_dummy_expand_value_rtx_cb returned false. From-SVN: r157764
-rw-r--r--gcc/ChangeLog4
-rw-r--r--gcc/var-tracking.c15
2 files changed, 11 insertions, 8 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 85cd6c7..513c090 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,5 +1,9 @@
2010-03-26 Jakub Jelinek <jakub@redhat.com>
+ * var-tracking.c (vt_expand_loc_callback): Don't run
+ cselib_expand_value_rtx_cb in dummy mode if
+ cselib_dummy_expand_value_rtx_cb returned false.
+
* var-tracking.c (emit_note_insn_var_location): For one part
notes with offset 0, don't add EXPR_LIST around the location.
* dwarf2out.c (loc_descriptor, dw_loc_list_1,
diff --git a/gcc/var-tracking.c b/gcc/var-tracking.c
index d1ecc86..bff7d11 100644
--- a/gcc/var-tracking.c
+++ b/gcc/var-tracking.c
@@ -6860,14 +6860,13 @@ vt_expand_loc_callback (rtx x, bitmap regs, int max_depth, void *data)
result = pc_rtx;
break;
}
- else
- {
- result = cselib_expand_value_rtx_cb (loc->loc, regs, max_depth,
- vt_expand_loc_callback,
- data);
- if (result)
- break;
- }
+ }
+ else
+ {
+ result = cselib_expand_value_rtx_cb (loc->loc, regs, max_depth,
+ vt_expand_loc_callback, data);
+ if (result)
+ break;
}
if (dummy && (result || var->var_part[0].cur_loc))
var->cur_loc_changed = true;