* ira-emit.c (emit_moves): Skip DEBUG_INSNs when setting the location.
From-SVN: r273297
This commit is contained in:
parent
4c12dc0556
commit
495079550e
2 changed files with 15 additions and 8 deletions
|
@ -1,3 +1,7 @@
|
|||
2019-07-09 Eric Botcazou <ebotcazou@adacore.com>
|
||||
|
||||
* ira-emit.c (emit_moves): Skip DEBUG_INSNs when setting the location.
|
||||
|
||||
2019-07-09 Sylvia Taylor <sylvia.taylor@arm.com>
|
||||
|
||||
* config/arm/crypto.md:
|
||||
|
|
|
@ -997,27 +997,30 @@ emit_moves (void)
|
|||
basic_block bb;
|
||||
edge_iterator ei;
|
||||
edge e;
|
||||
rtx_insn *insns, *tmp;
|
||||
rtx_insn *insns, *tmp, *next;
|
||||
|
||||
FOR_EACH_BB_FN (bb, cfun)
|
||||
{
|
||||
if (at_bb_start[bb->index] != NULL)
|
||||
{
|
||||
at_bb_start[bb->index] = modify_move_list (at_bb_start[bb->index]);
|
||||
insns = emit_move_list (at_bb_start[bb->index],
|
||||
REG_FREQ_FROM_BB (bb));
|
||||
insns
|
||||
= emit_move_list (at_bb_start[bb->index], REG_FREQ_FROM_BB (bb));
|
||||
tmp = BB_HEAD (bb);
|
||||
if (LABEL_P (tmp))
|
||||
tmp = NEXT_INSN (tmp);
|
||||
if (NOTE_INSN_BASIC_BLOCK_P (tmp))
|
||||
tmp = NEXT_INSN (tmp);
|
||||
/* Propagate the location of the current first instruction to the
|
||||
moves so that they don't inherit a random location. */
|
||||
if (tmp != NULL_RTX && INSN_P (tmp))
|
||||
set_insn_locations (insns, INSN_LOCATION (tmp));
|
||||
/* Make sure to put the location of TMP or a subsequent instruction
|
||||
to avoid inheriting the location of the previous instruction. */
|
||||
next = tmp;
|
||||
while (next && !NONDEBUG_INSN_P (next))
|
||||
next = NEXT_INSN (next);
|
||||
if (next)
|
||||
set_insn_locations (insns, INSN_LOCATION (next));
|
||||
if (tmp == BB_HEAD (bb))
|
||||
emit_insn_before (insns, tmp);
|
||||
else if (tmp != NULL_RTX)
|
||||
else if (tmp)
|
||||
emit_insn_after (insns, PREV_INSN (tmp));
|
||||
else
|
||||
emit_insn_after (insns, get_last_insn ());
|
||||
|
|
Loading…
Add table
Reference in a new issue