vec.h (FOR_EACH_VEC_ELT_REVERSE): New macro.
authorNathan Froyd <froydnj@codesourcery.com>
Tue, 6 Jul 2010 02:26:33 +0000 (02:26 +0000)
committerNathan Froyd <froydnj@gcc.gnu.org>
Tue, 6 Jul 2010 02:26:33 +0000 (02:26 +0000)
commitc021f10b188584445b45ec9649cff4d39e640c3e
treed191bb056818e7ad987268cffaf32a266a191f4c
parent979cc399477378ad45eb030ef5029e35c6be4371
vec.h (FOR_EACH_VEC_ELT_REVERSE): New macro.

gcc/
* vec.h (FOR_EACH_VEC_ELT_REVERSE): New macro.
* function.h (struct_function): Change type of local_decls field
to a VEC.
(add_local_decl): New function.
(FOR_EACH_LOCAL_DECL): New macro.
* cfgexpand.c (init_vars_expansion): Adjust for new type of
cfun->local_decls.
(estimated_stack_frame_size): Likewise.
(expand_used_vars): Likewise.
* cgraphbuild.c (build_cgraph_edges): Likewise.
* function.c (instantiate_decls_1): Likewise.
* ipa-struct-reorg.c (build_data_structure): Likewise.
* ipa-type-escape.c (analyze_function): Likewise.
* lto-streamer-in.c (input_function): Likewise.
* lto-streamer-out.c (output_function): Likewise.
* tree-ssa-live.c (remove_unused_locals): Likewise.
* tree.c (free_lang_data_in_decl): Likewise.
(find_decls_types_in_node): Likewise.
* omp-low.c (remove_exit_barrier): Likewise.
(expand_omp_taskreg): Likewise.
(list2chain): Rename to...
(vec2chain): ...this.  Adjust.
* cgraphunit.c (assemble_thunk): Call add_local_decl.
* tree-cfg.c (replace_by_duplicate_decl): Likewise.
* gimple-low.c (record_vars_into): Likewise.
* tree-inline.c (remap_decls): Likewise.
(declare_return_variable): Likewise.
(declare_inline_vars): Likewise.
(copy_forbidden): Adjust for new type of cfun->local_decls.
(add_local_variables): New function.
(expand_call_inline): Call it.
(tree_function_versioning): Likewise.

gcc/cp/
* decl.c (cp_finish_decl): Call add_local_decl.
* optimize.c (clone_body): Adjust for new type of cfun->local_decls.

From-SVN: r161862
20 files changed:
gcc/ChangeLog
gcc/cfgexpand.c
gcc/cgraphbuild.c
gcc/cgraphunit.c
gcc/cp/ChangeLog
gcc/cp/decl.c
gcc/cp/optimize.c
gcc/function.c
gcc/function.h
gcc/gimple-low.c
gcc/ipa-struct-reorg.c
gcc/ipa-type-escape.c
gcc/lto-streamer-in.c
gcc/lto-streamer-out.c
gcc/omp-low.c
gcc/tree-cfg.c
gcc/tree-inline.c
gcc/tree-ssa-live.c
gcc/tree.c
gcc/vec.h