summaryrefslogtreecommitdiff
path: root/gcc/valtrack.c
diff options
context:
space:
mode:
authoraoliva <aoliva@138bc75d-0d04-0410-961f-82ee72b054a4>2012-10-29 19:37:25 +0000
committeraoliva <aoliva@138bc75d-0d04-0410-961f-82ee72b054a4>2012-10-29 19:37:25 +0000
commit9ee27052cc24e1f93b22db6b30edfecc410add75 (patch)
tree61c42a2207ad84c2050e304acaab60dea05d4f7d /gcc/valtrack.c
parent246d67df8bf4a050ccd801f2e55599a032c7599a (diff)
downloadgcc-9ee27052cc24e1f93b22db6b30edfecc410add75.tar.gz
PR debug/54693
* gcc/valtrack.c (dead_debug_insert_temp): Defer rescan of newly-emitted debug insn. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@192962 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/valtrack.c')
-rw-r--r--gcc/valtrack.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/gcc/valtrack.c b/gcc/valtrack.c
index f6c0db473bb..8cc326900ed 100644
--- a/gcc/valtrack.c
+++ b/gcc/valtrack.c
@@ -688,7 +688,9 @@ dead_debug_insert_temp (struct dead_debug_local *debug, unsigned int uregno,
bind = emit_debug_insn_after (bind, insn);
else
bind = emit_debug_insn_before (bind, insn);
- df_insn_rescan (bind);
+ if (debug->to_rescan == NULL)
+ debug->to_rescan = BITMAP_ALLOC (NULL);
+ bitmap_set_bit (debug->to_rescan, INSN_UID (bind));
/* Adjust all uses. */
while ((cur = uses))
@@ -699,8 +701,6 @@ dead_debug_insert_temp (struct dead_debug_local *debug, unsigned int uregno,
*DF_REF_REAL_LOC (cur->use)
= gen_lowpart_SUBREG (GET_MODE (*DF_REF_REAL_LOC (cur->use)), dval);
/* ??? Should we simplify subreg of subreg? */
- if (debug->to_rescan == NULL)
- debug->to_rescan = BITMAP_ALLOC (NULL);
bitmap_set_bit (debug->to_rescan, INSN_UID (DF_REF_INSN (cur->use)));
uses = cur->next;
XDELETE (cur);