diff options
author | rguenth <rguenth@138bc75d-0d04-0410-961f-82ee72b054a4> | 2010-01-13 10:07:47 +0000 |
---|---|---|
committer | rguenth <rguenth@138bc75d-0d04-0410-961f-82ee72b054a4> | 2010-01-13 10:07:47 +0000 |
commit | 7b76dcb9d8a0a1542d23bde7d2b241983f928c6e (patch) | |
tree | 76a66b356728d78d55e273dfdd2f9ffb112f4a4b /gcc/lto-streamer-in.c | |
parent | 15ecedf927115065978320471d1232ca1805808b (diff) | |
download | gcc-7b76dcb9d8a0a1542d23bde7d2b241983f928c6e.tar.gz |
2010-01-13 Richard Guenther <rguenther@suse.de>
PR lto/42678
* tree-pass.h (PROP_gimple_lcx): New.
* cfgexpand.c (pass_expand): Require PROP_gimple_lcx.
* passes.c (init_optimization_passes): Move pass_lower_complex_O0
before the final cleanup_eh.
(dump_properties): Dump PROP_gimple_lcx.
* tree-complex.c (pass_lower_complex): Provide PROP_gimple_lcx.
(tree_lower_complex_O0): Remove.
(gate_no_optimization): Run if PROP_gimple_lcx is not set.
(pass_lower_complex_O0): Provide PROP_gimple_lcx. Run
tree_lower_complex, schedule TODO_update_ssa.
* lto-streamer-out.c (output_function): Stream the functions
properties.
* lto-streamer-in.c (input_function): Likewise.
(lto_read_body): Do not override them here.
* gfortran.dg/lto/20100110-1_0.f90: New testcase.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@155853 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/lto-streamer-in.c')
-rw-r--r-- | gcc/lto-streamer-in.c | 11 |
1 files changed, 3 insertions, 8 deletions
diff --git a/gcc/lto-streamer-in.c b/gcc/lto-streamer-in.c index c390f272b08..f316459e083 100644 --- a/gcc/lto-streamer-in.c +++ b/gcc/lto-streamer-in.c @@ -1291,6 +1291,9 @@ input_function (tree fn_decl, struct data_in *data_in, fn->va_list_gpr_size = bp_unpack_value (bp, 8); bitpack_delete (bp); + /* Input the current IL state of the function. */ + fn->curr_properties = lto_input_uleb128 (ib); + /* Read the static chain and non-local goto save area. */ fn->static_chain_decl = lto_input_tree (ib, data_in); fn->nonlocal_goto_save_area = lto_input_tree (ib, data_in); @@ -1466,14 +1469,6 @@ lto_read_body (struct lto_file_decl_data *file_data, tree fn_decl, /* We should now be in SSA. */ cfun->gimple_df->in_ssa_p = true; - /* Fill in properties we know hold for the rebuilt CFG. */ - cfun->curr_properties = PROP_ssa - | PROP_cfg - | PROP_gimple_any - | PROP_gimple_lcf - | PROP_gimple_leh - | PROP_referenced_vars; - /* Restore decl state */ file_data->current_decl_state = file_data->global_decl_state; |