aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlexandre Oliva <aoliva@redhat.com>2012-04-13 15:56:07 +0000
committerAlexandre Oliva <aoliva@gcc.gnu.org>2012-04-13 15:56:07 +0000
commit6ae1d471b16228d47bbcfbe3b2b90c323a0af1ba (patch)
treed3949134aebcc92ca9e21117f3a25469df69cb96
parent6a184afa5830e6caccbcc3ef9e4f39d52a095901 (diff)
downloadgcc-6ae1d471b16228d47bbcfbe3b2b90c323a0af1ba.zip
gcc-6ae1d471b16228d47bbcfbe3b2b90c323a0af1ba.tar.gz
gcc-6ae1d471b16228d47bbcfbe3b2b90c323a0af1ba.tar.bz2
df-problems.c (df_note_bb_compute): Do not take note of debug uses for whose REGs we won't emit DEAD or UNUSED notes.
* df-problems.c (df_note_bb_compute): Do not take note of debug uses for whose REGs we won't emit DEAD or UNUSED notes. From-SVN: r186421
-rw-r--r--gcc/ChangeLog5
-rw-r--r--gcc/df-problems.c7
2 files changed, 11 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 1559b9a..c099a2c 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,5 +1,10 @@
2012-04-13 Alexandre Oliva <aoliva@redhat.com>
+ * df-problems.c (df_note_bb_compute): Do not take note of
+ debug uses for whose REGs we won't emit DEAD or UNUSED notes.
+
+2012-04-13 Alexandre Oliva <aoliva@redhat.com>
+
PR debug/51570
* var-tracking.c (expand_depth): New type.
(onepart_aux, expand_loc_callback_data): Change depth type to it.
diff --git a/gcc/df-problems.c b/gcc/df-problems.c
index c9fc91b..6912e11 100644
--- a/gcc/df-problems.c
+++ b/gcc/df-problems.c
@@ -3453,7 +3453,12 @@ df_note_bb_compute (unsigned int bb_index,
{
if (debug_insn > 0)
{
- dead_debug_add (&debug, use, uregno);
+ /* We won't add REG_UNUSED or REG_DEAD notes for
+ these, so we don't have to mess with them in
+ debug insns either. */
+ if (!bitmap_bit_p (artificial_uses, uregno)
+ && !df_ignore_stack_reg (uregno))
+ dead_debug_add (&debug, use, uregno);
continue;
}
break;