re PR rtl-optimization/88308 (ICE in maybe_record_trace_start, at dwarf2cfi.c:2309)

2019-02-15  Aaron Sawdey  <acsawdey@linux.ibm.com>

	PR rtl-optimization/88308
	* shrink-wrap.c (move_insn_for_shrink_wrap): Fix LABEL_NUSES counts
	on copied instruction.

From-SVN: r268942
This commit is contained in:
Aaron Sawdey 2019-02-15 15:41:25 +00:00 committed by Aaron Sawdey
parent a72128258b
commit 0a3d52ddee
2 changed files with 12 additions and 1 deletions

View File

@ -1,3 +1,9 @@
2019-02-15 Aaron Sawdey <acsawdey@linux.ibm.com>
PR rtl-optimization/88308
* shrink-wrap.c (move_insn_for_shrink_wrap): Fix LABEL_NUSES counts
on copied instruction.
2019-02-15 Eric Botcazou <ebotcazou@adacore.com>
* final.c (insn_current_reference_address): Replace test on JUMP_P

View File

@ -414,7 +414,12 @@ move_insn_for_shrink_wrap (basic_block bb, rtx_insn *insn,
dead_debug_insert_temp (debug, DF_REF_REGNO (def), insn,
DEBUG_TEMP_BEFORE_WITH_VALUE);
emit_insn_after (PATTERN (insn), bb_note (bb));
rtx_insn *insn_copy = emit_insn_after (PATTERN (insn), bb_note (bb));
/* Update the LABEL_NUSES count on any referenced labels. The ideal
solution here would be to actually move the instruction instead
of copying/deleting it as this loses some notations on the
insn. */
mark_jump_label (PATTERN (insn), insn_copy, 0);
delete_insn (insn);
return true;
}