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) ...@@ -886,19 +886,25 @@ expand_fixup (tree_label, rtl_label, last_insn)
code which we might later insert at this point in the 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 stream. Also, the BLOCK node will be the parent (i.e. the
`SUPERBLOCK') of any other BLOCK nodes which we might create `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 register rtx original_before_jump
= last_insn ? last_insn : get_last_insn (); = last_insn ? last_insn : get_last_insn ();
rtx start;
start_sequence (); start_sequence ();
pushlevel (0); 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); last_block_end_note = emit_note (NULL_PTR, NOTE_INSN_BLOCK_END);
fixup->context = poplevel (1, 0, 0); /* Create the BLOCK node now! */ fixup->context = poplevel (1, 0, 0); /* Create the BLOCK node now! */
end_sequence (); 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; 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