Commit 1ea463a2 by Richard Henderson Committed by Richard Henderson

function.h (struct function): Remove dont_emit_block_notes.

        * function.h (struct function): Remove dont_emit_block_notes.
        * gimple-low.c (lower_function_body): Don't set it.
        * cfgexpand.c (expand_block): Don't check it.
        * cfglayout.c (insn_locators_initialize): Likewise.
        * expr.c (expand_expr_real, expand_expr_real_1): Likewise.
        * passes.c (rest_of_compilation): Likewise.
        * stmt.c (expand_start_bindings_and_block): Likewise.
        (expand_end_bindings): Likewise.

From-SVN: r83959
parent c9b9aa64
2004-07-01 Richard Henderson <rth@redhat.com> 2004-07-01 Richard Henderson <rth@redhat.com>
* function.h (struct function): Remove dont_emit_block_notes.
* gimple-low.c (lower_function_body): Don't set it.
* cfgexpand.c (expand_block): Don't check it.
* cfglayout.c (insn_locators_initialize): Likewise.
* expr.c (expand_expr_real, expand_expr_real_1): Likewise.
* passes.c (rest_of_compilation): Likewise.
* stmt.c (expand_start_bindings_and_block): Likewise.
(expand_end_bindings): Likewise.
2004-07-01 Richard Henderson <rth@redhat.com>
* cgraph.h (cgraph_build_static_cdtor): Declare. * cgraph.h (cgraph_build_static_cdtor): Declare.
* cgraphunit.c (cgraph_build_static_cdtor): New. * cgraphunit.c (cgraph_build_static_cdtor): New.
* c-objc-common.c (build_cdtor): Use it. * c-objc-common.c (build_cdtor): Use it.
......
...@@ -119,7 +119,6 @@ expand_block (basic_block bb, FILE * dump_file) ...@@ -119,7 +119,6 @@ expand_block (basic_block bb, FILE * dump_file)
if (EXPR_LOCUS (stmt)) if (EXPR_LOCUS (stmt))
{ {
emit_line_note (*(EXPR_LOCUS (stmt))); emit_line_note (*(EXPR_LOCUS (stmt)));
if (cfun->dont_emit_block_notes)
record_block_change (TREE_BLOCK (stmt)); record_block_change (TREE_BLOCK (stmt));
} }
......
...@@ -308,19 +308,9 @@ insn_locators_initialize (void) ...@@ -308,19 +308,9 @@ insn_locators_initialize (void)
switch (NOTE_LINE_NUMBER (insn)) switch (NOTE_LINE_NUMBER (insn))
{ {
case NOTE_INSN_BLOCK_BEG: case NOTE_INSN_BLOCK_BEG:
if (cfun->dont_emit_block_notes)
abort ();
block = NOTE_BLOCK (insn);
delete_insn (insn);
break;
case NOTE_INSN_BLOCK_END: case NOTE_INSN_BLOCK_END:
if (cfun->dont_emit_block_notes)
abort (); abort ();
block = BLOCK_SUPERCONTEXT (block);
if (block && TREE_CODE (block) == FUNCTION_DECL)
block = 0;
delete_insn (insn);
break;
default: default:
if (NOTE_LINE_NUMBER (insn) > 0) if (NOTE_LINE_NUMBER (insn) > 0)
{ {
...@@ -333,7 +323,6 @@ insn_locators_initialize (void) ...@@ -333,7 +323,6 @@ insn_locators_initialize (void)
} }
} }
if (cfun->dont_emit_block_notes)
check_block_change (insn, &block); check_block_change (insn, &block);
} }
...@@ -341,7 +330,6 @@ insn_locators_initialize (void) ...@@ -341,7 +330,6 @@ insn_locators_initialize (void)
the common parent easily. */ the common parent easily. */
set_block_levels (DECL_INITIAL (cfun->decl), 0); set_block_levels (DECL_INITIAL (cfun->decl), 0);
if (cfun->dont_emit_block_notes)
free_block_changes (); free_block_changes ();
} }
......
...@@ -6490,7 +6490,6 @@ expand_expr_real (tree exp, rtx target, enum machine_mode tmode, ...@@ -6490,7 +6490,6 @@ expand_expr_real (tree exp, rtx target, enum machine_mode tmode,
emit_line_note (input_location); emit_line_note (input_location);
/* Record where the insns produced belong. */ /* Record where the insns produced belong. */
if (cfun->dont_emit_block_notes)
record_block_change (TREE_BLOCK (exp)); record_block_change (TREE_BLOCK (exp));
ret = expand_expr_real_1 (exp, target, tmode, modifier, alt_rtl); ret = expand_expr_real_1 (exp, target, tmode, modifier, alt_rtl);
...@@ -8534,7 +8533,6 @@ expand_expr_real_1 (tree exp, rtx target, enum machine_mode tmode, ...@@ -8534,7 +8533,6 @@ expand_expr_real_1 (tree exp, rtx target, enum machine_mode tmode,
if (EXPR_HAS_LOCATION (exp)) if (EXPR_HAS_LOCATION (exp))
{ {
emit_line_note (EXPR_LOCATION (exp)); emit_line_note (EXPR_LOCATION (exp));
if (cfun->dont_emit_block_notes)
record_block_change (TREE_BLOCK (exp)); record_block_change (TREE_BLOCK (exp));
} }
expand_elseif (TREE_OPERAND (exp, 0)); expand_elseif (TREE_OPERAND (exp, 0));
......
...@@ -361,10 +361,6 @@ struct function GTY(()) ...@@ -361,10 +361,6 @@ struct function GTY(())
delay list for them is recorded here. */ delay list for them is recorded here. */
rtx epilogue_delay_list; rtx epilogue_delay_list;
/* Nonzero if NOTE_INSN_BLOCK_BEG / NOTE_INSN_BLOCK_END notes should not
be emitted. */
unsigned int dont_emit_block_notes : 1;
/* How commonly executed the function is. Initialized during branch /* How commonly executed the function is. Initialized during branch
probabilities pass. */ probabilities pass. */
enum function_frequency { enum function_frequency {
......
...@@ -124,8 +124,6 @@ lower_function_body (void) ...@@ -124,8 +124,6 @@ lower_function_body (void)
clear_block_marks (data.block); clear_block_marks (data.block);
/* Avoid producing notes for blocks. */
cfun->dont_emit_block_notes = 1;
reset_block_changes (); reset_block_changes ();
} }
......
...@@ -1374,13 +1374,6 @@ rest_of_compilation (void) ...@@ -1374,13 +1374,6 @@ rest_of_compilation (void)
have been run to re-initialize it. */ have been run to re-initialize it. */
cse_not_expected = ! optimize; cse_not_expected = ! optimize;
if (!cfun->dont_emit_block_notes)
{
/* In function-at-a-time mode, we do not attempt to keep the BLOCK
tree in sensible shape. So, we just recalculate it here. */
reorder_blocks ();
}
else
finalize_block_changes (); finalize_block_changes ();
/* Dump the rtl code if we are dumping rtl. */ /* Dump the rtl code if we are dumping rtl. */
...@@ -1413,8 +1406,6 @@ rest_of_compilation (void) ...@@ -1413,8 +1406,6 @@ rest_of_compilation (void)
over the instruction sequence faster, and allow the garbage over the instruction sequence faster, and allow the garbage
collector to reclaim the memory used by the notes. */ collector to reclaim the memory used by the notes. */
remove_unnecessary_notes (); remove_unnecessary_notes ();
if (!cfun->dont_emit_block_notes)
reorder_blocks ();
ggc_collect (); ggc_collect ();
......
...@@ -2840,12 +2840,6 @@ expand_start_bindings_and_block (int flags, tree block) ...@@ -2840,12 +2840,6 @@ expand_start_bindings_and_block (int flags, tree block)
abort (); abort ();
/* Create a note to mark the beginning of the block. */ /* Create a note to mark the beginning of the block. */
if (block_flag && !cfun->dont_emit_block_notes)
{
note = emit_note (NOTE_INSN_BLOCK_BEG);
NOTE_BLOCK (note) = block;
}
else
note = emit_note (NOTE_INSN_DELETED); note = emit_note (NOTE_INSN_DELETED);
/* Make an entry on block_stack for the block we are entering. */ /* Make an entry on block_stack for the block we are entering. */
...@@ -3073,7 +3067,8 @@ warn_about_unused_variables (tree vars) ...@@ -3073,7 +3067,8 @@ warn_about_unused_variables (tree vars)
labels (because the front end does that). */ labels (because the front end does that). */
void void
expand_end_bindings (tree vars, int mark_ends, int dont_jump_in) expand_end_bindings (tree vars, int mark_ends ATTRIBUTE_UNUSED,
int dont_jump_in)
{ {
struct nesting *thisblock = block_stack; struct nesting *thisblock = block_stack;
...@@ -3165,12 +3160,6 @@ expand_end_bindings (tree vars, int mark_ends, int dont_jump_in) ...@@ -3165,12 +3160,6 @@ expand_end_bindings (tree vars, int mark_ends, int dont_jump_in)
We do this now, after running cleanups on the variables We do this now, after running cleanups on the variables
just going out of scope, so they are in scope for their cleanups. */ just going out of scope, so they are in scope for their cleanups. */
if (mark_ends && !cfun->dont_emit_block_notes)
{
rtx note = emit_note (NOTE_INSN_BLOCK_END);
NOTE_BLOCK (note) = NOTE_BLOCK (thisblock->data.block.first_insn);
}
else
/* Get rid of the beginning-mark if we don't make an end-mark. */ /* 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; NOTE_LINE_NUMBER (thisblock->data.block.first_insn) = NOTE_INSN_DELETED;
......
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