diff options
author | Mark Mitchell <mark@codesourcery.com> | 1999-10-26 08:34:46 +0000 |
---|---|---|
committer | Mark Mitchell <mmitchel@gcc.gnu.org> | 1999-10-26 08:34:46 +0000 |
commit | 2af0ac2840b9c719483401c5c0c90d589d63b5c3 (patch) | |
tree | db6b933a6722ed9333f4f346ff709a8b93827c41 /gcc/stmt.c | |
parent | ce7cbc76392ccc554f93f96be61152ae0e5f8dea (diff) | |
download | gcc-2af0ac2840b9c719483401c5c0c90d589d63b5c3.zip gcc-2af0ac2840b9c719483401c5c0c90d589d63b5c3.tar.gz gcc-2af0ac2840b9c719483401c5c0c90d589d63b5c3.tar.bz2 |
tree.h (BLOCK_TYPE_TAGS): Remove.
* tree.h (BLOCK_TYPE_TAGS): Remove.
(BLOCK_END_NOTE): Likewise.
(BLOCK_LIVE_RANGE_FLAG): Likewise.
(BLOCK_LIVE_RANGE_START): Likewise.
(BLOCK_LIVE_RANGE_END): Likewise.
(tree_block): Remove live_range_flag, live_range_var_flag, and
type_tags. Remove end_note, live_range_start, and live_range_end.
(remember_end_note): Remove prototype.
* tree.c (build_block): Don't set BLOCK_TYPE_TAGS.
* c-decl.c (poplevel): Don't set BLOCK_TYPE_TAGS or call
remember_end_note.
* ggc-common.c (ggc_mark_tree_children): Don't mark
BLOCK_TYPE_TAGS or BLOCK_END_NOTE.
* integrate.c (adjust_copied_decl_tree): Remove.
* print-tree.c (print_node): Don't print BLOCK_TYPE_TAGS.
* stmt.c (last_block_end_note): Remove.
(init_stmt): Don't add a GC root for it.
(expand_fixup): Don't set it.
(remember_end_note): Remove.
(expand_end_bindings): Don't set last_block_end_note.
* ch-tree.h (remember_end_note): Remove prototype.
* decl.c (poplevel): Don't call remember_end_note.
* decl.c (poplevel): Don't set BLOCK_TYPE_TAGS. Don't call
remember_end_note.
* com.c (poplevel): Don't call remember_end_note.
* decl.c (poplevel): Don't set BLOCK_TYPE_TAGS or call
remember_end_note.
From-SVN: r30188
Diffstat (limited to 'gcc/stmt.c')
-rw-r--r-- | gcc/stmt.c | 23 |
1 files changed, 2 insertions, 21 deletions
@@ -64,12 +64,6 @@ struct obstack stmt_obstack; #define CASE_VECTOR_PC_RELATIVE 0 #endif -/* Each time we expand the end of a binding contour (in `expand_end_bindings') - and we emit a new NOTE_INSN_BLOCK_END note, we save a pointer to it here. - This is used by the `remember_end_note' function to record the endpoint - of each generated block in its associated BLOCK node. */ - -static rtx last_block_end_note; /* Functions and data structures for expanding case statements. */ @@ -598,7 +592,6 @@ init_stmt () int i; gcc_obstack_init (&stmt_obstack); - ggc_add_rtx_root (&last_block_end_note, 1); for (i = 0; i < 10; i++) { @@ -1046,7 +1039,7 @@ expand_fixup (tree_label, rtl_label, last_insn) start_sequence (); 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); + emit_note (NULL_PTR, NOTE_INSN_BLOCK_END); fixup->context = block; end_sequence (); emit_insns_after (start, original_before_jump); @@ -3345,18 +3338,6 @@ is_eh_region () && block_stack->data.block.exception_region); } -/* Given a pointer to a BLOCK node, save a pointer to the most recently - generated NOTE_INSN_BLOCK_END in the BLOCK_END_NOTE field of the given - BLOCK node. */ - -void -remember_end_note (block) - register tree block; -{ - BLOCK_END_NOTE (block) = last_block_end_note; - last_block_end_note = NULL_RTX; -} - /* Emit a handler label for a nonlocal goto handler. Also emit code to store the handler label in SLOT before BEFORE_INSN. */ @@ -3676,7 +3657,7 @@ expand_end_bindings (vars, mark_ends, dont_jump_in) just going out of scope, so they are in scope for their cleanups. */ if (mark_ends) - last_block_end_note = emit_note (NULL_PTR, NOTE_INSN_BLOCK_END); + emit_note (NULL_PTR, NOTE_INSN_BLOCK_END); else /* Get rid of the beginning-mark if we don't make an end-mark. */ NOTE_LINE_NUMBER (thisblock->data.block.first_insn) = NOTE_INSN_DELETED; |