2012-09-20 Martin Jambor <mjambor@suse.cz>
commit9078126c66389d40d28da2ada75f205978652847
authorjamborm <jamborm@138bc75d-0d04-0410-961f-82ee72b054a4>
Thu, 20 Sep 2012 16:35:40 +0000 (20 16:35 +0000)
committerjamborm <jamborm@138bc75d-0d04-0410-961f-82ee72b054a4>
Thu, 20 Sep 2012 16:35:40 +0000 (20 16:35 +0000)
treebd0847507cf2cc8fc2505732d6abf2f60dd73989
parent0c2533785f9f4969f067e36a865a55ca7a6fa828
2012-09-20  Martin Jambor  <mjambor@suse.cz>

* function.c (push_cfun): Check old current_function_decl matches
old cfun, set new current_function_decl to the decl of the new
cfun.
(push_struct_function): Likewise.
(pop_cfun): Likewise.
(allocate_struct_function): Move call to
invoke_set_current_function_hook to the end of the function.
* cfgexpand.c (estimated_stack_frame_size): Do not set and restore
current_function_decl.
* cgraph.c (cgraph_release_function_body): Likewise.
* cgraphunit.c (cgraph_process_new_functions): Likewise.
(cgraph_add_new_function): Likewise.
(cgraph_analyze_function): Likewise.
(assemble_thunk): Set cfun to NULL at the end.
(expand_function): Move call to set_cfun downwards.
* gimple-low.c (record_vars_into): Only check current_function_decl
before possibly doing push_cfun.
* gimplify.c (gimplify_function_tree): Do not set and restore
current_function_decl.
* ipa-inline-analysis.c (compute_inline_parameters): Likewise.
(inline_analyze_function): Likewise.
* ipa-prop.c (ipa_analyze_node): Likewise.
* ipa-pure-const.c (analyze_function): Likewise.
* lto-streamer-in.c (lto_input_function_body): Do not set
current_function_decl.
* lto-streamer-out.c (output_function): Do not set and restore
current_function_decl.
* omp-low.c (finalize_task_copyfn): Likewise.
(expand_omp_taskreg): Likewise.
(create_task_copyfn): Likewise, move push_cfun up quite a bit.
* passes.c (dump_passes): Do not set and restore current_function_decl.
(do_per_function): Likewise.
(do_per_function_toporder): Likewise.
* trans-mem.c (ipa_tm_scan_irr_function): Likewise.
(ipa_tm_transform_transaction): Likewise.
(ipa_tm_transform_clone): Likewise.
(ipa_tm_execute): Likewise.
* tree-emutls.c (lower_emutls_function_body): Likewise.
* tree-inline.c (initialize_cfun): Do not call pop_cfun.
(tree_function_versioning): Do not call push_cfun, do not set and
restore current_function_decl.  Remove assert checking consistency of
cfun and current_function_decl.
* tree-profile.c (tree_profiling): Do not set and restore
current_function_decl.
* tree-sra.c (convert_callers_for_node): Do not set
current_function_decl.
(convert_callers): Do not restore current_function_decl.
(modify_function): Do not set current_function_decl.
* tree-ssa-structalias.c (ipa_pta_execute): Do not set and restore
current_function_decl.

fortran/
* trans-decl.c (gfc_get_extern_function_decl): Push NULL cfun.  Do not
set and restore current_function_decl.
(gfc_init_coarray_decl): Do not set and restore current_function_decl.

lto/
* lto.c (lto_materialize_function): Call push_struct_function and
pop_cfun.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191577 138bc75d-0d04-0410-961f-82ee72b054a4
24 files changed:
gcc/ChangeLog
gcc/cfgexpand.c
gcc/cgraph.c
gcc/cgraphunit.c
gcc/fortran/ChangeLog
gcc/fortran/trans-decl.c
gcc/function.c
gcc/gimple-low.c
gcc/gimplify.c
gcc/ipa-inline-analysis.c
gcc/ipa-prop.c
gcc/ipa-pure-const.c
gcc/lto-streamer-in.c
gcc/lto-streamer-out.c
gcc/lto/ChangeLog
gcc/lto/lto.c
gcc/omp-low.c
gcc/passes.c
gcc/trans-mem.c
gcc/tree-emutls.c
gcc/tree-inline.c
gcc/tree-profile.c
gcc/tree-sra.c
gcc/tree-ssa-structalias.c