aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog8
-rw-r--r--gcc/valtrack.c8
2 files changed, 13 insertions, 3 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 12b1504..4896022 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,11 @@
+2012-10-30 Alexandre Oliva <aoliva@redhat.com>
+
+ PR debug/54551
+ PR debug/54693
+ * valtrack.c (dead_debug_promote_uses): Assert-check that
+ global used bit was clear and initialize entry
+ unconditionally.
+
2012-10-30 Eric Botcazou <ebotcazou@adacore.com>
* cse.c (hash_rtx_cb): Replace RTX_UNCHANGING_P with MEM_READONLY_P in
diff --git a/gcc/valtrack.c b/gcc/valtrack.c
index c1de41c..5eefabd 100644
--- a/gcc/valtrack.c
+++ b/gcc/valtrack.c
@@ -380,9 +380,11 @@ dead_debug_promote_uses (struct dead_debug_local *debug)
if (!debug->global->used)
debug->global->used = BITMAP_ALLOC (NULL);
- if (bitmap_set_bit (debug->global->used, REGNO (reg)))
- entry = dead_debug_global_insert (debug->global, reg,
- make_debug_expr_from_rtl (reg));
+ bool added = bitmap_set_bit (debug->global->used, REGNO (reg));
+ gcc_checking_assert (added);
+
+ entry = dead_debug_global_insert (debug->global, reg,
+ make_debug_expr_from_rtl (reg));
gcc_checking_assert (entry->dtemp);