Commit 0679e3fc by Jason Merrill Committed by Jeff Law

stmt.c (expand_fixup): Set fixup->before_jump to a NOTE_INSN_DELETED instead of…

stmt.c (expand_fixup): Set fixup->before_jump to a NOTE_INSN_DELETED instead of a NOTE_INSN_BLOCK_BEG.

8
	* stmt.c (expand_fixup): Set fixup->before_jump to a
	NOTE_INSN_DELETED instead of a NOTE_INSN_BLOCK_BEG.

From-SVN: r23330
parent e17f9bc0
......@@ -886,19 +886,25 @@ expand_fixup (tree_label, rtl_label, last_insn)
code which we might later insert at this point in the insn
stream. Also, the BLOCK node will be the parent (i.e. the
`SUPERBLOCK') of any other BLOCK nodes which we might create
later on when we are expanding the fixup code. */
later on when we are expanding the fixup code.
Note that optimization passes (including expand_end_loop)
might move the *_BLOCK notes away, so we use a NOTE_INSN_DELETED
as a placeholder. */
{
register rtx original_before_jump
= last_insn ? last_insn : get_last_insn ();
rtx start;
start_sequence ();
pushlevel (0);
fixup->before_jump = emit_note (NULL_PTR, NOTE_INSN_BLOCK_BEG);
start = emit_note (NULL_PTR, NOTE_INSN_BLOCK_BEG);
fixup->before_jump = emit_note (NULL_PTR, NOTE_INSN_DELETED);
last_block_end_note = emit_note (NULL_PTR, NOTE_INSN_BLOCK_END);
fixup->context = poplevel (1, 0, 0); /* Create the BLOCK node now! */
end_sequence ();
emit_insns_after (fixup->before_jump, original_before_jump);
emit_insns_after (start, original_before_jump);
}
fixup->block_start_count = block_start_count;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment