From a97901e608d0e3233e28a6d8e39d3124d661a650 Mon Sep 17 00:00:00 2001 From: Mark Mitchell Date: Thu, 16 Dec 1999 17:50:29 +0000 Subject: Makefile.in (INTREGRATE_H): Rename to INTEGRATE_H. * Makefile.in (INTREGRATE_H): Rename to INTEGRATE_H. * function.c (insert_block_after_note): Remove. (retrofit_block): Likewise. (identify_blocks): Fix indentation. (reorder_blocks): Don't NULL out NOTE_SOURCE_FILE for a NOTE_INSN_BLOCK_BEG or NOTE_INSN_BLOCK_END. * function.h (insert_block_after_note): Remove prototype. (retrofit_block): Likewise. * integrate.c (expand_inline_function): Don't call find_loop_tree_blocks. Use expand_start_bindings_and_block, not just expand_start_bindings. Use the block_map to remap old NOTE_BLOCKs to new ones. (integrate_decl_tree): Keep track of remapped blocks. * integrate.h (struct inline_remap): Add block_map. * stmt.c (expand_fixup): Don't try to retrofit_blocks. Just set NOTE_BLOCK on the notes. (expand_start_bindings): Rename to ... (expand_start_bindings_and_block): Add parameter. Set NOTE_BLOCK. (expand_end_bindings): Set NOTE_BLOCK. * toplev.c (rest_of_compilation): In function-at-a-time-mode, reconstruct the BLOCK tree. * tree.h (expand_start_bindings): Macroize. Call ... (expand_start_bindings_and_block): New function. * optimize.c (struct inline_data): Remove scope_stmt. (remap_block): Don't use insert_block_after_note. Don't update scope_stmt. (expand_call_inline): Don't update scope_stmt. (optimize_function): Don't initialize scope_stmt. * semantics.c (expand_stmt): Set NOTE_BLOCK for newly emitted NOTE_INSN_BLOCK_BEG/NOTE_INSN_BLOCK_END notes. From-SVN: r30982 --- gcc/toplev.c | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'gcc/toplev.c') diff --git a/gcc/toplev.c b/gcc/toplev.c index a880812..892149f 100644 --- a/gcc/toplev.c +++ b/gcc/toplev.c @@ -3605,6 +3605,14 @@ rest_of_compilation (decl) collector to reclaim the memory used by the notes. */ remove_unncessary_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. */ + if (current_function->x_whole_function_mode_p) + { + find_loop_tree_blocks (); + unroll_block_trees (); + } + /* If we are reconsidering an inline function at the end of compilation, skip the stuff for making it inline. */ -- cgit v1.1