diff options
author | Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz> | 2003-10-05 19:25:45 +0000 |
---|---|---|
committer | Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz> | 2003-10-05 19:25:45 +0000 |
commit | 5d257a9fb0630280c9641ba8d7483bd14abee86b (patch) | |
tree | ebc3b32c994e64c1e08654a14590a1c5f591767e /gcc/tree-optimize.c | |
parent | 0ba2d01f63f0cb3a15f5cc2e7e32b948ba3f8b2d (diff) |
* gimple-low.c: New.
* Makefile.in (gimple-low.o): Add.
* cfglayout.c (insn_locators_initialize): Use new scoping info.
* expr.c (expand_expr): Record scope changes.
* function.c (blocks_nreverse): Export.
(uninitialized_vars_warning): Use DECL_RTL_SET_P instead of DECL_RTL.
(reset_block_changes, record_block_change, record_block_change,
check_block_change, free_block_changes): New.
* function.h (struct function): New fields dont_emit_block_notes
and ib_boundaries_block.
(blocks_nreverse, reset_block_changes, record_block_change,
finalize_block_changes, check_block_change, free_block_changes):
Declare.
* sibcall.c (optimize_sibling_and_tail_recursive_call): Don't call
reorder_blocks if cfun->dont_emit_block_notes.
* stmt.c (expand_start_bindings_and_block, expand_end_bindings): Don't
emit block notes if cfun->dont_emit_block_notes.
* toplev.c (rest_of_compilation): Don't call reorder_blocks if
cfun->dont_emit_block_notes.
* tree-flow.h (lower_function_body): Declare.
* tree-optimize.c (optimize_function_tree): Call lower_function_body.
* tree.c (build1): Initialize TREE_BLOCK.
* tree.h (TREE_BLOCK): New macro.
(struct tree_exp): Add block field.
git-svn-id: https://gcc.gnu.org/svn/gcc/branches/tree-ssa-cfg-branch@72117 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/tree-optimize.c')
-rw-r--r-- | gcc/tree-optimize.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/gcc/tree-optimize.c b/gcc/tree-optimize.c index 65954234a5a..e0a49fc4319 100644 --- a/gcc/tree-optimize.c +++ b/gcc/tree-optimize.c @@ -61,8 +61,13 @@ optimize_function_tree (tree fndecl) if (errorcount || sorrycount) return; + lower_function_body (&DECL_SAVED_TREE (fndecl)); fnbody = DECL_SAVED_TREE (fndecl); + /* Avoid producing notes for blocks. */ + cfun->dont_emit_block_notes = 1; + reset_block_changes (); + /* Flatten the trees. */ head.prev = head.next = NULL; last = &head; |