1. 22 Oct, 2010 1 commit
    • gimple.h (gimple_register_canonical_type): Declare. · 4490cae6
      2010-10-22  Richard Guenther  <rguenther@suse.de>
      
      	* gimple.h (gimple_register_canonical_type): Declare.
      	* gimple.c (gimple_canonical_types): New global hashtable.
      	(struct gimple_type_leader_entry_s): New type.
      	(gimple_type_leader): New global cache.
      	(gimple_lookup_type_leader): New function.
      	(gtc_visit): Query the proper cache.
      	(gimple_types_compatible_p): Likewise.
      	(gimple_register_type): Use the new cache instead of TYPE_CANONICAL.
      	(gimple_canonical_type_eq): New function.
      	(gimple_register_canonical_type): Likewise.
      	(print_gimple_types_stats): Adjust for gimple_canonical_types.
      	(free_gimple_type_tables): Likewise.  Free gimple_type_leader.
      	* tree-ssa.c (useless_type_conversion_p): Do not dispatch to
      	gimple_types_compatible_p for LTO.
      
      	lto/
      	* lto.c (lto_fixup_type): Fixup TYPE_CANONICAL again, via
      	the new gimple_register_canonical_type.
      
      From-SVN: r165848
      Richard Guenther committed
  2. 20 Oct, 2010 1 commit
  3. 18 Oct, 2010 1 commit
  4. 14 Oct, 2010 1 commit
  5. 11 Oct, 2010 1 commit
    • vec.h (VEC_qsort): Define. · 5095da95
      gcc/
      	* vec.h (VEC_qsort): Define.
      	* dbxout.c (output_used_types): Use it.
      	* df-scan.c (df_sort_and_compress_refs): Likewise.
      	(df_sort_and_compress_mws): Likewise.
      	* genautomata.c (uniq_sort_alt_states): Likewise.
      	(evaluate_equiv_classes): Likewise.
      	(output_trans_table): Likewise.
      	(output_state): Likewise.
      	* gimplify.c (compare_case_labels): Likewise.
      	* graphite-sese-to-poly.c (graphite_sort_dominated_info): Likewise.
      	* ipa.c (build_cdtor_fns): Likewise.
      	* lto.c (lto_wpa_write_files): Likewise.
      	* sel-sched.c (fill_vec_av_set): Likewise.
      	* tree-predcom.c (determine_roots_comp): Likewise.
      	* tree-sra.c (sort_and_spliace_var_accesses): Likewise.
      	(splice_param_accesses): Likewise.
      	* tree-ssa-live.c (dump_enumerated_decls): Likewise.
      	* tree-ssa-reassoc.c (undistribute_ops_list): Likewise.
      	(reassociate_bb): Likewise.
      	* tree-ssa-sccvn.c (sort_scc): Likewise.
      	* tree-ssa-structalias.c (sort_fieldstack): Likewise.
      
      gcc/ada/
      	* gcc-interface/utils2.c (gnat_build_constructor): Use VEC_qsort.
      
      From-SVN: r165314
      Nathan Froyd committed
  6. 08 Oct, 2010 2 commits
    • Makefile.in (TM_H): Include $(FLAGS_H) instead of options.h. · a75bfaa6
      	* Makefile.in (TM_H): Include $(FLAGS_H) instead of options.h.
      	(TREE_H): Include $(FLAGS_H) instead of options.h.
      	(opts-common.o): Depend on $(FLAGS_H) instead of options.h.
      	* c-objc-common.h (LANG_HOOKS_INIT_OPTIONS_STRUCT): Define.
      	* common.opt (flag_complex_method, flag_evaluation_order,
      	flag_ira_algorithm, flag_ira_region, flag_warn_unused_result): New
      	Variable declarations.
      	* configure.ac (tm_include_list): Include flags.h instead of
      	options.h.
      	* configure: Regenerate.
      	* flags.h: Condition out contents for target libraries.  Include
      	options.h at end of file.
      	(flag_complex_method, flag_ira_algorithm, flag_ira_region,
      	flag_evaluation_order, flag_warn_unused_result): Remove.
      	* gcc.c (main): Intialize global_options with global_options_init.
      	* langhooks-def.h (lhd_init_options_struct): Declare.
      	(LANG_HOOKS_INIT_OPTIONS_STRUCT): Define.
      	(LANG_HOOKS_INITIALIZER): Include LANG_HOOKS_INIT_OPTIONS_STRUCT.
      	* langhooks.c (lhd_init_options_struct): New.
      	* langhooks.h (struct lang_hooks): Add init_options_struct.
      	Update comment on init_options.
      	* optc-gen.awk: Generate initializer for global_options_init, not
      	global_options.
      	* opth-gen.awk: Condition out structure declarations for target
      	libraries.  Declare global_options_init.
      	* opts-common.c: Include flags.h instead of options.h.
      	* opts.c (flag_warn_unused_result): Remove.
      	(read_cmdline_options): Take gcc_options parameters.  Pass them to
      	read_cmdline_option.
      	(initial_lang_mask, initial_min_crossjump_insns,
      	initial_max_fields_for_field_sensitive,
      	initial_loop_invariant_max_bbs_in_loop): Define at file scope.
      	(init_options_once): New.  Split out of decode_options.
      	(init_options_struct): New.  Split out of decode_options.
      	(decode_cmdline_options_to_array_default_mask): New.
      	(default_options_optimization): New.  Split out of decode_options.
      	(decode_options): Move most code to other functions.  Update call
      	to read_cmdline_options.
      	(finish_options): New.  Split out of decode_options.
      	* opts.h (decode_options): Add gcc_options parameters.
      	(init_options_once, init_options_struct,
      	decode_cmdline_options_to_array_default_mask): New.
      	* toplev.c (flag_complex_method, flag_ira_algorithm,
      	flag_ira_region, flag_evaluation_order): Remove.
      	(general_init): Use global_options_init for initial flag values
      	for global_dc.
      	(toplev_main): Call init_options_once, init_options_struct,
      	lang_hooks.init_options_struct,
      	decode_cmdline_options_to_array_default_mask and
      	lang_hooks.init_option before decode_options.  Update arguments to
      	decode_options.
      	* tree.h: Include flags.h instead of options.h.
      
      ada:
      	* gcc-interface/misc.c (gnat_init_options_struct): New.  Split out
      	from gnat_init_options.
      	(LANG_HOOKS_INIT_OPTIONS_STRUCT): Define.
      
      c-family:
      	* c-common.c (parse_optimize_options): Call
      	decode_cmdline_options_to_array_default_mask before
      	decode_options.  Update arguments to decode_options.
      	* c-common.h (c_common_init_options_struct): Declare.
      	* c-opts.c (c_common_init_options_struct): New.  Split out from
      	c_common_init_options.
      
      cp:
      	* cp-objcp-common.h (LANG_HOOKS_INIT_OPTIONS_STRUCT): Define.
      
      fortran:
      	* f95-lang.c (LANG_HOOKS_INIT_OPTIONS_STRUCT): Define.
      	* gfortran.h (gfc_init_options_struct): Declare.
      	* options.c (gfc_init_options_struct): New.  Split out from
      	gfc_init_options.
      
      java:
      	* lang.c (java_init_options_struct): New.  Split out from
      	java_init_options.
      	(LANG_HOOKS_INIT_OPTIONS_STRUCT): Define.
      
      lto:
      	* lto-lang.c (lto_init_options): Change to
      	lto_init_options_struct.  Update parameters.
      	(LANG_HOOKS_INIT_OPTIONS): Don't define.
      	(LANG_HOOKS_INIT_OPTIONS_STRUCT): Define.
      
      From-SVN: r165189
      Joseph Myers committed
  7. 07 Oct, 2010 1 commit
  8. 06 Oct, 2010 2 commits
    • [PATCH] Report LTO phase in lto1 process name v2 · 6e9bd0f8
      On larger parallel WHOPR builds I find it useful to see in top which
      phase a given lto1 is in.
      
      Set the process name to lto1-wpa, lto1-ltrans, lto1-lto depending
      on the current mode.
      
      This is currently only implemented for Linux and only
      using the "comm" process name, which is reported in top.
      
      v2: Moved function to libiberty, renamed setproctitle to match
      BSD. In theory it should pick up BSD's libc function for this
      on a BSD system, but I haven't tested this.
      
      gcc/lto/
      
      2010-10-06  Andi Kleen <ak@linux.intel.com>
      
      	* lto.c (lto_process_name): Add.
      	(lto_main): Call lto_process_name.
      
      include/
      
      2010-10-06  Andi Kleen <ak@linux.intel.com>
      
      	* libiberty.h (setproctitle): Add prototype.
      
      libiberty/
      
      2010-10-06  Andi Kleen <ak@linux.intel.com>
      
      	* Makefile.in (CFILES): Add setproctitle.
      	(CONFIGURED_OFILES): Add setproctitle.
      	(setproctitle): Add rule.
      	* config.in: Regenerate.
      	* configure: Regenerate.
      	* configure.ac: Add checks for prctl PR_SET_NAME and setproctitle.
      	* setproctitle.c: Add file.
      	* functions.texi: Regenerate.
      
      From-SVN: r165066
      Andi Kleen committed
    • lto.c (partition_cgraph_node_p, [...]): Handle COMDATs required by the linker. · 06ed016f
      	* lto.c (partition_cgraph_node_p, partition_varpool_node_p): Handle
      	COMDATs required by the linker.
      
      From-SVN: r165058
      Jan Hubicka committed
  9. 05 Oct, 2010 2 commits
    • invoke.texi (-flto-partition, [...]): Document. · 852e4bd2
      	* doc/invoke.texi (-flto-partition, lto-partitions, lto-minpartition):
      	Document.
      	* opts.c (decode_options): Handle lto partitions.
      	* common.opt (flto-partition=1to1, flto-partition=balanced): New.
      	* params.def (PARAM_LTO_PARTITIONS, MIN_PARTITION_SIZE): New.
      
      	* lto.c:  Include params.h.
      	(add_cgraph_node_to_partition, add_varpool_node_to_partition): Do
      	refcounting in aux field.
      	(undo_partition, partition_cgraph_node_p, partition_varpool_node_p):
      	New functions.
      	(lto_1_to_1_map): Simplify.
      	(lto_balanced_map): New function.
      	(do_whole_program_analysis): Chose proper partitioning alg.
      	* Make-lang.in (lto.o): Add dependency on params.h
      
      From-SVN: r164995
      Jan Hubicka committed
  10. 04 Oct, 2010 1 commit
    • Mark linker Makefile rules for job server build · a90163e9
      -fwhopr=jobserver requires telling GNU make that the linker (= lto)
      rules support job server, so that the necessary jobserver
      information is passed through.
      
      Add + to all the executable targets that run LTO for this purpose.
      
      This improves build performance with a -fwhopr=jobserver
      bootstrap (or BUILD_CONFIG=bootstrap-lto) significantly.
      
      I didn't change Ada because that apparently doesn't support LTO.
      
      Passes bootstrap and test suite. Ok to commit?
      
      gcc/
      
      2010-10-04  Andi Kleen <ak@linux.intel.com>
      
      	* Makefile.in (xgcc, cpp, cc1, collect2, lto-wrapper, gcov,
              gcov-dump, cc1-dummy, genprog, build/gcov-iov):
              Add + to build rule.
      
      gcc/cp/
      
      2010-10-04  Andi Kleen <ak@linux.intel.com>
      
      	* Make-lang.in (g++, cc1plus): Add + to build rule.
      
      gcc/fortran/
      
      2010-10-04  Andi Kleen <ak@linux.intel.com>
      
      	* Make-lang.in (gfortran, f951): Add + to build rule.
      
      gcc/java/
      
      2010-10-04  Andi Kleen <ak@linux.intel.com>
      
      	* Make-lang.in (xgcj, jc1, jcf-dump, jvgenmain):
              Add + to build rule.
      
      gcc/lto/
      
      2010-10-04  Andi Kleen <ak@linux.intel.com>
      
      	* Make-lang.in (lto1): Add + to build rule.
      
      gcc/objc/
      
      2010-10-04  Andi Kleen <ak@linux.intel.com>
      
      	* Make-lang.in (cc1obj-dummy, cc1obj): Add + to build rule.
      
      gcc/objcp/
      
      2010-10-04  Andi Kleen <ak@linux.intel.com>
      
      	* Make-lang.in (cc1objplus-dummy, cc1objplus): Add + to build rule.
      
      More plus fixes
      
      From-SVN: r164949
      Andi Kleen committed
  11. 03 Oct, 2010 1 commit
  12. 28 Sep, 2010 1 commit
    • builtin-attrs.def (ATTR_LEAF): New attribute. · 0d6e14fd
      	* builtin-attrs.def (ATTR_LEAF): New attribute.
      	(ATTR_NOVOPS_LEAF_LIST, ATTR_LEAF_LIST, ATTR_NOTHROW_LEAF_LIST,
      	ATTR_CONST_NOTHROW_LEAF_LIST, ATTR_PURE_NOTHROW_LEAF_LIST,
      	ATTR_PURE_NOTHROW_NOVOPS_LEAF_LIST, ATTR_NORETURN_NOTHROW_LEAF_LIST,
      	ATTR_MALLOC_NOTHROW_LEAF_LIST, ATTR_SENTINEL_NOTHROW_LEAF_LIST,
      	ATTR_NOTHROW_NONNULL_LEAF, ATTR_CONST_NOTHROW_NONNULL_LEAF,
      	ATTR_CONST_NOTHROW_TYPEGENERIC_LEAF, ATTR_PURE_NOTHROW_NONNULL_LEAF,
      	ATTR_MALLOC_NOTHROW_NONNULL_LEAF): New attribute lists.
      	* sync-builtins.def: Annotate all builtins by leaf.
      	* omp-builtins.def: Annotate all builtins by leaf.
      	* builtins.def: Annotate relevant builtins with leaf attribute.
      	(ATTR_MATHFN_ERRNO, ATTR_MATHFN_FPROUNDING,
      	ATTR_MATHFN_FPROUNDING_ERRNO, ATTR_MATHFN_FPROUNDING_STORE): Make
      	leaf.
              * gcc-interface/utils.c (handle_leaf_attribute): New function.
              (gnat_internal_attribute_tables): Add leaf.
      
              * lto-lang.c (handle_leaf_attribute): New function.
              (lto_attribute_tables): Add leaf.
      
              * f95-lang.c (gfc_define_builtin): Make leaf.
              (gfc_init_builtin_functions): Handle only ATTR_CONST_NOTHROW_LEAF_LIST
              and ATTR_NOTHROW_LEAF_LIST.
              (DEF_SYNC_BUILTIN): Check ATTR_CONST_NOTHROW_LEAF_LIST.
              (DEF_GOMP_BUILTIN): Likewise.
      
      From-SVN: r164689
      Jan Hubicka committed
  13. 25 Sep, 2010 1 commit
  14. 24 Sep, 2010 1 commit
    • lto-symtab.c (lto_symtab_entry_def): Add guessed field. · 051f8cc6
      	* lto-symtab.c (lto_symtab_entry_def): Add guessed field.
      	(lto_symtab_resolve_symbols): Set it.
      	(lto_symtab_merge_decls_1): Do not compute used_from_object_file;
      	store resolution field in cgraph/varpool.
      	* cgraph.c (cgraph_same_body_alias, cgraph_add_thunk): Return node.
      	(cgraph_get_node_or_alias, cgraph_get_node_or_alias): Constify.
      	(cgraph_dump_node): Drop used_from_object_file.
      	(cgraph_clone_node, cgraph_create_virtual_clone): Likewise.
      	(cgraph_function_body_availability): Use decl_replaceable_p.
      	(cgraph_make_node_local): Set resolution to LDPR_PREVAILING_DEF_IRONLY.
      	(cgraph_can_remove_if_no_direct_calls_and_refs): Use
      	cgraph_used_from_object_file_p.
      	(cgraph_will_be_removed_from_program_if_no_direct_calls): Use
      	cgraph_used_from_object_file_p.
      	(resolution_used_from_other_file_p): New functoin.
      	(cgraph_used_from_object_file_p): New predicate.
      	* cgraph.h: Include plugin-api.h
      	(struct cgraph_local_info): Remove used_from_object_file.
      	(struct cgraph_node): Add resolution field.
      	(struct varpool_node): Likewise; remove used_from_object_file;
      	reove const_value_known.
      	(cgraph_get_node, cgraph_get_node_or_alias, cgraph_node,
      	cgraph_same_body_alias, cgraph_add_thunk): Update prototypes.
      	(resolution_used_from_other_file_p, cgraph_used_from_object_file_p,
      	varpool_used_from_object_file_p): Declare.
      	(varpool_get_node, varpool_extra_name_alias): Update prototype.
      	* tree.h (DECL_REPLACEABLE_P): Remove.
      	(decl_replaceable_p, decl_binds_to_current_def_p): Declare.
      	* final.c (rest_of_clean_state): Use decl_binds_to_current_def_p.
      	* lto-cgraph.c (lto_output_node, lto_output_varpool_node,
      	input_overwrite_node, input_node, input_varpool_node): Stream
      	resolution.
      	* expr.c (expand_expr_real_1): Use const_value_known_p
      	* ipa.c (ipa_discover_readonly_nonaddressable_var): Do not set
      	const_value_known.
      	(cgraph_externally_visible_p): Use cgraph_used_from_object_file_p.
      	(function_and_variable_visibility): Set resolution for local vars
      	and functions.
      	use varpool_used_from_object_file_p.
      	* varasm.c (resolution_to_local_definition_p, resolution_local_p): New
      	static functions.
      	(default_binds_local_p_1): Use resolutoin info.
      	(decl_binds_to_current_def_p, decl_replaceable_p): New functions.
      	* varpool.c (varpool_get_node): Constify.
      	(const_value_known_p): Do not use vnode->const_value_known;
      	use decl_replaceable_p.
      	(varpool_finalize_decl): Do not set const_value_known.
      	(cgraph_variable_initializer_availability): Use decl_replaceable_p
      	(varpool_extra_name_alias): Return new node.
      	(varpool_used_from_object_file_p): New function.
      
      	* decl.c (finish_function): Use decl_replaceable_p
      	* method.c (make_alias_for_thunk): Update call of cgraph_same_body_alias.
      
      	* lto.c (lto_promote_cross_file_statics): Use const_value_known_p.
      
      From-SVN: r164610
      Jan Hubicka committed
  15. 20 Sep, 2010 1 commit
    • re PR tree-optimization/45605 (Missed devirtualization) · 64e0f5ff
      	PR tree-optimize/45605
      	* cgraph.h (const_value_known_p): Declare.
      	(varpool_decide_const_value_known): Remove.
      	* tree-ssa-ccp.c (get_base_constructor): Use it.
      	* lto-cgraph.c (compute_ltrans_boundary): Likewise.
      	* expr.c (string_constant): Likewise.
      	* tree-ssa-loop-ivcanon.c (constant_after_peeling): Likewise.
      	* ipa.c (ipa_discover_readonly_nonaddressable_var,
      	function_and_variable_visibility): Likewise.
      	* gimplify.c (gimplify_call_expr): Likewise.
      	* gimple-fold.c (get_symbol_constant_value): Likewise.
      	* varpool.c (varpool_decide_const_value_known): Replace by...
      	(const_value_known_p): ... this one; handle other kinds of DECLs
      	too and work for automatic vars.
      	(varpool_finalize_decl): Use const_value_known_p.
      
      	* lto.c (lto_promote_cross_file_statics): Use const_value_known_p.
      
      	* g++.dg/tree-ssa/pr45605.C: New testcase.
      
      From-SVN: r164438
      Jan Hubicka committed
  16. 18 Sep, 2010 1 commit
  17. 17 Sep, 2010 3 commits
    • lto-cgraph.c (compute_ltrans_boundary): Use const_value_known. · 4c588abf
      	* lto-cgraph.c (compute_ltrans_boundary): Use const_value_known.
      	* lto.c (lto_promote_cross_file_statics): Use const_value_known.
      
      From-SVN: r164366
      Jan Hubicka committed
    • common.opt (combine): Remove. · c3224d6f
      2010-09-17  Richard Guenther  <rguenther@suse.de>
      
      	* common.opt (combine): Remove.
      	* gcc.c (default_compilers): Remove specs testing combine.
      	The C compilers no longer can combine.
      	(option_map): Remove -combine.
      	(display_help): Remove -combine.
      	(driver_handle_option): Remove OPT_combine handling.
      	(compile_input_file_p): Remove.
      	(do_spec): Remove code concerning combine.
      	(main): Likewise.
      	* doc/invoke.texi: Remove traces of -combine.
      	* lto-wrapper.c (run_gcc): Do not pass -combine to the compiler
      	driver.
      
      	lto/
      	* lang.opt (flag_wpa): Also enable for the driver.
      
      	* gcc.dg/pr27898.c: Use -flto instead of -combine.
      	* gcc.dg/pr28706.c: Likewise.
      	* gcc.dg/pr28712.c: Likewise.
      	* gcc.dg/pr30762-1.c: Likewise.
      	* gcc.dg/pr30762-2.c: Likewise.
      	* gcc.dg/pr31529-1.c: Likewise.
      	* gcc.dg/pr31529-2.c: Likewise.
      	* gcc.dg/pr34457-1.c: Likewise.
      	* gcc.dg/pr34457-2.c: Likewise.
      	* gcc.dg/pr34668-1.c: Likewise.
      	* gcc.dg/pr34668-2.c: Likewise.
      	* gcc.dg/pr34989-1.c: Likewise.
      	* gcc.dg/pr34989-2.c: Likewise.
      	* gcc.dg/pr43557-1.c: Likewise.
      	* gcc.dg/pr43557-2.c: Likewise.
      	* gcc.dg/debug/pr41893-1.c: Likewise.
      	* gcc.dg/matrix/matrix.exp: Do not use -combine.
      	* gcc.dg/matrix/matrix-3.c: Drop dg-options.
      	* gcc.dg/matrix/matrix-4.c: Likewise.
      	* gcc.dg/struct/struct-reorg.exp: Do not use -combine.
      	* gcc.dg/struct/wo_prof_empty_str.c: Drop dg-options.
      	* gcc.dg/struct/wo_prof_escape_arg_to_local.c: Likewise.
      	* gcc.dg/struct/wo_prof_escape_return.c: Likewise.
      
      From-SVN: r164357
      Richard Guenther committed
    • lto-cgraph.c (input_overwrite_node): Do not set DECL_EXTERNAL when processing clone. · 52b3b3c7
      	* lto-cgraph.c (input_overwrite_node): Do not set DECL_EXTERNAL when
      	processing clone.
      	* lto.c (lto_materialize_function): Do not tamper with STATIC and
      	EXTERNAL flags.
      
      From-SVN: r164354
      Jan Hubicka committed
  18. 15 Sep, 2010 1 commit
  19. 09 Sep, 2010 1 commit
  20. 08 Sep, 2010 1 commit
    • gimple.c (gimple_types, [...]): Move to GC memory. · 0f443ad0
      2010-09-08  Richard Guenther  <rguenther@suse.de>
      
      	* gimple.c (gimple_types, type_hash_cache): Move to GC memory.
      	(visit): Adjust.
      	(iterative_hash_gimple_type): Likewise.
      	(gimple_type_hash): Likewise.
      	(gimple_register_type): Likewise.
      	(print_gimple_types_stats): Likewise.
      	(free_gimple_type_tables): Likewise.
      
      	lto/
      	* lto.c (read_cgraph_and_symbols): Collect again after each
      	file.
      
      From-SVN: r164001
      Richard Guenther committed
  21. 07 Sep, 2010 1 commit
  22. 03 Sep, 2010 1 commit
  23. 21 Aug, 2010 1 commit
  24. 20 Aug, 2010 3 commits
    • Replace has_analyzed_clone with has_analyzed_clone_p. · 2429bce3
      2010-08-20  H.J. Lu  <hongjiu.lu@intel.com>
      
      	PR bootstrap/45357
      	* lto.c (lto_materialize_function): Replace has_analyzed_clone
      	with has_analyzed_clone_p.
      
      From-SVN: r163405
      H.J. Lu committed
    • lto.c (has_analyzed_clone_p): New function · e0f967db
      	* lto.c (has_analyzed_clone_p): New function
      	(lto_materialize_function): Use callgraph to determine if
      	body is needed.
      	(materialize_cgraph): Remove DECL_IS_BUILTIN check.
      
      From-SVN: r163403
      Jan Hubicka committed
    • vec.h (FOR_EACH_VEC_ELT): Define. · ac47786e
      gcc/
      	* vec.h (FOR_EACH_VEC_ELT): Define.
      	* c-decl.c: Use it.
      	* cfgloop.c: Likewise.
      	* cfgloopmanip.c: Likewise.
      	* cgraph.c: Likewise.
      	* cgraphunit.c: Likewise.
      	* combine.c: Likewise.
      	* config/bfin/bfin.c: Likewise.
      	* config/mips/mips.c: Likewise.
      	* config/rs6000/rs6000.c: Likewise.
      	* dbxout.c: Likewise.
      	* df-scan.c: Likewise.
      	* dominance.c: Likewise.
      	* dse.c: Likewise.
      	* dwarf2out.c: Likewise.
      	* except.c: Likewise.
      	* expr.c: Likewise.
      	* function.c: Likewise.
      	* gcse.c: Likewise.
      	* genattr.c: Likewise.
      	* ggc-common.c: Likewise.
      	* gimplify.c: Likewise.
      	* graphite-blocking.c: Likewise.
      	* graphite-clast-to-gimple.c: Likewise.
      	* graphite-dependences.c: Likewise.
      	* graphite-interchange.c: Likewise.
      	* graphite-poly.c: Likewise.
      	* graphite-scop-detection.c: Likewise.
      	* graphite-sese-to-poly.c: Likewise.
      	* graphite.c: Likewise.
      	* haifa-sched.c: Likewise.
      	* ifcvt.c: Likewise.
      	* implicit-zee.c: Likewise.
      	* ipa-prop.c: Likewise.
      	* ipa-struct-reorg.c: Likewise.
      	* ipa.c: Likewise.
      	* ira-build.c: Likewise.
      	* ira-color.c: Likewise.
      	* ira-emit.c: Likewise.
      	* lambda-code.c: Likewise.
      	* loop-invariant.c: Likewise.
      	* loop-unroll.c: Likewise.
      	* lower-subreg.c: Likewise.
      	* lto-cgraph.c: Likewise.
      	* lto-opts.c: Likewise.
      	* lto-streamer-in.c: Likewise.
      	* lto-streamer-out.c: Likewise.
      	* lto-streamer.c: Likewise.
      	* lto-symtab.c: Likewise.
      	* matrix-reorg.c: Likewise.
      	* opts.c: Likewise.
      	* predict.c: Likewise.
      	* print-tree.c: Likewise.
      	* sdbout.c: Likewise.
      	* sel-sched-dump.c: Likewise.
      	* sel-sched-ir.c: Likewise.
      	* sel-sched.c: Likewise.
      	* sese.c: Likewise.
      	* stor-layout.c: Likewise.
      	* tree-cfg.c: Likewise.
      	* tree-cfgcleanup.c: Likewise.
      	* tree-chrec.c: Likewise.
      	* tree-data-ref.c: Likewise.
      	* tree-emutls.c: Likewise.
      	* tree-inline.c: Likewise.
      	* tree-into-ssa.c: Likewise.
      	* tree-loop-distribution.c: Likewise.
      	* tree-loop-linear.c: Likewise.
      	* tree-mudflap.c: Likewise.
      	* tree-outof-ssa.c: Likewise.
      	* tree-parloops.c: Likewise.
      	* tree-predcom.c: Likewise.
      	* tree-pretty-print.c: Likewise.
      	* tree-scalar-evolution.c: Likewise.
      	* tree-ssa-live.c: Likewise.
      	* tree-ssa-loop-im.c: Likewise.
      	* tree-ssa-loop-ivcanon.c: Likewise.
      	* tree-ssa-loop-ivopts.c: Likewise.
      	* tree-ssa-loop-manip.c: Likewise.
      	* tree-ssa-loop-niter.c: Likewise.
      	* tree-ssa-loop-prefetch.c: Likewise.
      	* tree-ssa-phiprop.c: Likewise.
      	* tree-ssa-pre.c: Likewise.
      	* tree-ssa-reassoc.c: Likewise.
      	* tree-ssa-sccvn.c: Likewise.
      	* tree-ssa-structalias.c: Likewise.
      	* tree-ssa.c: Likewise.
      	* tree-vect-data-refs.c: Likewise.
      	* tree-vect-loop-manip.c: Likewise.
      	* tree-vect-loop.c: Likewise.
      	* tree-vect-patterns.c: Likewise.
      	* tree-vect-slp.c: Likewise.
      	* tree-vect-stmts.c: Likewise.
      	* tree-vrp.c: Likewise.
      	* tree.c: Likewise.
      	* value-prof.c: Likewise.
      	* var-tracking.c: Likewise.
      	* varasm.c: Likewise.
      	* vmsdbgout.c: Likewise.
      
      gcc/ada/
      	* gcc-interface/decl.c: Use FOR_EACH_VEC_ELT.
      	* gcc-interface/trans.c: Likewise.
      	* gcc-interface/utils.c: Likewise.
      
      gcc/c-family/
      	* c-common.c: Use FOR_EACH_VEC_ELT.
      	* c-gimplify.c: Likewise.
      	* c-pragma.c: Likewise.
      
      gcc/cp/
      	* call.c: Use FOR_EACH_VEC_ELT.
      	* class.c: Likewise.
      	* decl.c: Likewise.
      	* decl2.c: Likewise.
      	* error.c: Likewise.
      	* except.c: Likewise.
      	* mangle.c: Likewise.
      	* method.c: Likewise.
      	* name-lookup.c: Likewise.
      	* parser.c: Likewise.
      	* pt.c: Likewise.
      	* repo.c: Likewise.
      	* semantics.c: Likewise.
      	* typeck2.c: Likewise.
      
      gcc/fortran/
      	* trans-openmp.c: Use FOR_EACH_VEC_ELT.
      
      gcc/java/
      	* class.c: Use FOR_EACH_VEC_ELT.
      	* expr.c: Likewise.
      	* jcf-parse.c: Likewise.
      	* resource.c: Likewise.
      
      gcc/lto/
      	* lto.c: Use FOR_EACH_VEC_ELT.
      
      From-SVN: r163401
      Nathan Froyd committed
  25. 28 Jul, 2010 1 commit
  26. 27 Jul, 2010 2 commits
    • coretypes.h (struct cl_option_handlers): Declare. · 5f20c657
      	* coretypes.h (struct cl_option_handlers): Declare.
      	* hooks.c (hook_int_size_t_constcharptr_int_0): Remove.
      	* hooks.h (hook_int_size_t_constcharptr_int_0): Remove.
      	* langhooks-def.h (lhd_handle_option): Declare.
      	(LANG_HOOKS_HANDLE_OPTION): Use lhd_handle_option.
      	* langhooks.c (lhd_handle_option): New.
      	* langhooks.h (struct lang_hooks): Update prototype and return
      	value type of handle_option hook.
      	* optc-gen.awk: Generate target_flags_explicit definition for the
      	driver.
      	* opts-common.c: Include diagnostic.h.
      	(handle_option): Move from opts.c.  Update prototype and return
      	value type.  Use handlers structure.
      	(read_cmdline_option): Move from opts.c.  Update prototype.  Use
      	handlers structure.
      	(set_option): Move from opts.c.
      	* opts.c (common_handle_option): Update prototype and return value
      	type.  Update calls to handle_option and enable_warning_as_error.
      	(unknown_option_callback, post_handling_callback,
      	lang_handle_option, target_handle_option): New.
      	(handle_option, read_cmdline_option): Move to opts-common.c.
      	(read_cmdline_options): Update prototype.  Update call to
      	read_cmdline_option.
      	(decode_options): Initialize and use handlers structure.
      	(set_option): Move to opts-common.c.
      	(enable_warning_as_error): Update prototype.  Update call to
      	handle_option.
      	* opts.h (struct cl_option_handler_func, struct
      	cl_option_handlers): New.
      	(handle_option, enable_warning_as_error): Update prototypes.
      	(read_cmdline_option): Declare.
      	* Makefile.in (opts-common.o): Update dependencies.
      
      ada:
      	* gcc-interface/misc.c (gnat_handle_option): Update prototype and
      	return value type.  Don't check for missing arguments here.
      
      c-family:
      	* c-common.h (c_common_handle_option): Update prototype and return
      	value type.
      	* c-opts.c (c_common_handle_option): Update prototype and return
      	value type.  Update calls to handle_option and
      	enable_warning_as_error.
      
      fortran:
      	* gfortran.h (gfc_handle_option): Update prototype and return
      	value type.
      	* options.c (gfc_handle_option): Update prototype and return value
      	type.
      
      java:
      	* lang.c (java_handle_option): Update prototype and return value
      	type.
      
      lto:
      	* lto-lang.c (lto_handle_option): Update prototype and return
      	value type.  Remove duplicate assignment to result.
      
      From-SVN: r162601
      Joseph Myers committed
    • langhooks-def.h (lhd_init_options, [...]): New. · 7a9bf9a4
      	* langhooks-def.h (lhd_init_options, LANG_HOOKS_OPTION_LANG_MASK,
      	LANG_HOOKS_COMPLAIN_WRONG_LANG_P): New.
      	(LANG_HOOKS_INIT_OPTIONS): Update default definition.
      	(LANG_HOOKS_INITIALIZER): Add new hooks.
      	* langhooks.c (lhd_init_options, lhd_complain_wrong_lang_p): New.
      	* langhooks.h (struct lang_hooks): Add new hooks option_lang_mask
      	and complain_wrong_lang_p.  Update init_options prototype.
      	* c-objc-common.c (c_initialize_diagnostics): First call
      	c_common_initialize_diagnostics.
      	* c-objc-common.h (LANG_HOOKS_OPTION_LANG_MASK,
      	LANG_HOOKS_COMPLAIN_WRONG_LANG_P): Define.
      	* coretypes.h (struct cl_option, struct cl_decoded_option):
      	Declare.
      	* hooks.c (hook_uint_uint_constcharptrptr_0): Remove.
      	(hook_uint_void_0): New.
      	* hooks.h (hook_uint_uint_constcharptrptr_0): Remove.
      	(hook_uint_void_0): New.
      	* opts-common.c (decode_cmdline_option,
      	decode_cmdline_options_to_array): Also fill in canonical_option
      	field.
      	* opts.c (complain_wrong_lang): Use langhook to determine whether
      	to complain instead of special-casing LTO.
      	(decode_options): Separate lang_mask determination with
      	option_lang_mask hook from call of init_options hook.
      	* opts.h (struct cl_decoded_option): Add canonical_option.
      
      ada:
      	* gcc-interface/misc.c (gnat_option_lang_mask): New.
      	(gnat_init_options): Update prototype.  Reconstruct argv array
      	from decoded options.
      
      c-family:
      	* c-common.h (c_common_option_lang_mask,
      	c_common_initialize_diagnostics, c_common_complain_wrong_lang_p):
      	New.
      	(c_common_init_options): Update prototype.
      	* c-opts.c (c_common_option_lang_mask): New.
      	(c_common_initialize_diagnostics): Split out of
      	c_common_init_options.
      	(accept_all_c_family_options, c_common_complain_wrong_lang_p):
      	New.
      	(c_common_init_options): Update prototype.  Use decoded options in
      	search for -lang-asm.
      
      cp:
      	* cp-objcp-common.c (cxx_initialize_diagnostics): First call
      	c_common_initialize_diagnostics.
      	* cp-objcp-common.h (LANG_HOOKS_OPTION_LANG_MASK,
      	LANG_HOOKS_COMPLAIN_WRONG_LANG_P): Define.
      
      fortran:
      	* cpp.c (gfc_cpp_init_options): Update prototype.  Use number of
      	decoded options in allocating deferred_opt.
      	* cpp.h (gfc_cpp_init_options): Update prototype.
      	* f95-lang.c (LANG_HOOKS_OPTION_LANG_MASK): Define.
      	* gfortran.h (gfc_option_lang_mask): New.
      	(gfc_init_options): Update prototype.
      	* options.c (gfc_option_lang_mask): New.
      	(gfc_init_options): Update prototype.  Pass new arguments to
      	gfc_cpp_init_options.
      
      java:
      	* lang.c (java_option_lang_mask): New.
      	(java_init_options): Update prototype.
      	(LANG_HOOKS_OPTION_LANG_MASK): Define.
      
      lto:
      	* lto-lang.c (lto_option_lang_mask, lto_complain_wrong_lang_p):
      	New.
      	(lto_init_options): Update prototype.
      	(LANG_HOOKS_OPTION_LANG_MASK, LANG_HOOKS_COMPLAIN_WRONG_LANG_P):
      	Define.
      
      From-SVN: r162560
      Joseph Myers committed
  27. 23 Jul, 2010 3 commits
    • Move changelogs to correct files · 2994ee14
      From-SVN: r162447
      Andi Kleen committed
    • re PR lto/44992 (ld -r breaks LTO) · 73ce4d1e
      gcc:
      
      2010-07-10   Andi Kleen <ak@linux.intel.com>
      
              PR lto/44992
              * lto-opts.c (lto_write_options): Add NULL file_data argument to 
      	lto_get_section_name.
      	* lto-section-out.c (lto_destroy_simple_output_block): Likewise.
      	* lto-streamer-out.c (produce_asm): Likewise.
      	(copy_function): Likewise.
      	(produce_symtab): Likewise.
      	(produce_asm_for_decls): Likewise.
      	* lto-streamer.c (lto_get_section_name): Add file_data argument.	
      	Rewrite to add random postfix to LTO sections.
      	* lto-streamer.h (lto_file_decl_data): Add next, id, resolutions.
      	(lto_get_section_name): Add file_data argument to prototype.
      	
      
      lto:
      
      2010-07-10   Andi Kleen <ak@linux.intel.com>
      
              PR lto/44992
              * lto.c: Include splay-tree.h
      	(lto_resolution_read): Change to walk file_ids tree and parse
      	extra file_id in resolution file.
      	(lto_section_with_id): Add.
      	(create_subid_section_table): Add.
      	(lwstate): Add.
      	(lto_create_files_from_ids): Add.
      	(lto_file_read): Change to handle sub file ids and create list
      	of file_datas. Add output argument for count.
      	(get_section_data): Pass file_data to lto_get_section_name.
      	(lto_flatten_file): Add.
      	(read_cgraph_and_symbols): Handle linked lists of file_datas.
      	
      lto-plugin:
      
      2010-07-10   Andi Kleen <ak@linux.intel.com>
      
              PR lto/44992
              * lto-plugin.c (sym_aux): Add.
      	(plugin_symtab): Remove slots. Add aux and id.
      	(parse_table_entry): Change to use aux instead of slots.
      	(LTO_SECTION_PREFIX): Add.
      	(translate): Improve buffer allocation. Change to append
      	symbols to existing out buffer.
      	(get_section): Remove.
      	(process_symtab): Add. 
      	(free_2): Free symtab->aux.
      	(write_resolution): Handle aux instead of slots.
      	Print sub id to resolution file.
      	(claim_file_handler): Clear lto_file. Replace get_symtab/translate
      	calls with call to process_symtab.
      
      From-SVN: r162443
      Andi Kleen committed
    • lto-coff.c (hash_name, eq_name): Move. · fbbc5704
      2010-07-10  Andi Kleen <ak@linux.intel.com>
      
      	* lto-coff.c (hash_name, eq_name): Move.
      	(lto_obj_build_section_table): Call lto_obj_create_section_hash_table.
      	* lto-elf.c: (hash_name, eq_name): Move.
      	(lto_obj_build_section_table): Call lto_obj_create_section_hash_table.
      	* lto-macho.c: (hash_name, eq_name): Move.
      	(lto_obj_build_section_table): Call lto_obj_create_section_hash_table.
      	* lto.c: (hash_name, eq_name): Move from lto-*.c
      	(lto_obj_create_section_hash_table): Add.
      	(free_with_string): Add.
      
      From-SVN: r162441
      Andi Kleen committed
  28. 08 Jul, 2010 1 commit
    • toplev.h: Do not include diagnostic-core.h. · 718f9c0f
      2010-07-08  Manuel López-Ibáñez  <manu@gcc.gnu.org>
      
      	* toplev.h: Do not include diagnostic-core.h.
      	Include diagnostic-core.h in every file that includes toplev.h.
      	* c-tree.h: Do not include toplev.h.
      	* pretty-print.h: Update comment.
      	* Makefile.in: Update dependencies.
      	* alias.c: Include diagnostic-core.h in every file that includes
      	toplev.h.
      	* attribs.c: Likewise.
      	* auto-inc-dec.c: Likewise.
      	* bb-reorder.c: Likewise.
      	* bt-load.c: Likewise.
      	* caller-save.c: Likewise.
      	* calls.c: Likewise.
      	* cfg.c: Likewise.
      	* cfganal.c: Likewise.
      	* cfgbuild.c: Likewise.
      	* cfgcleanup.c: Likewise.
      	* cfghooks.c: Likewise.
      	* cfgloop.c: Likewise.
      	* combine.c: Likewise.
      	* config/alpha/alpha.c: Likewise.
      	* config/arc/arc.c: Likewise.
      	* config/arm/arm.c: Likewise.
      	* config/arm/pe.c: Likewise.
      	* config/avr/avr.c: Likewise.
      	* config/bfin/bfin.c: Likewise.
      	* config/cris/cris.c: Likewise.
      	* config/crx/crx.c: Likewise.
      	* config/darwin-c.c: Likewise.
      	* config/darwin.c: Likewise.
      	* config/fr30/fr30.c: Likewise.
      	* config/frv/frv.c: Likewise.
      	* config/h8300/h8300.c: Likewise.
      	* config/host-darwin.c: Likewise.
      	* config/i386/i386.c: Likewise.
      	* config/i386/netware.c: Likewise.
      	* config/i386/nwld.c: Likewise.
      	* config/i386/winnt-cxx.c: Likewise.
      	* config/i386/winnt-stubs.c: Likewise.
      	* config/i386/winnt.c: Likewise.
      	* config/ia64/ia64-c.c: Likewise.
      	* config/ia64/ia64.c: Likewise.
      	* config/iq2000/iq2000.c: Likewise.
      	* config/lm32/lm32.c: Likewise.
      	* config/m32c/m32c-pragma.c: Likewise.
      	* config/m32c/m32c.c: Likewise.
      	* config/m32r/m32r.c: Likewise.
      	* config/m68hc11/m68hc11.c: Likewise.
      	* config/m68k/m68k.c: Likewise.
      	* config/mcore/mcore.c: Likewise.
      	* config/mep/mep-pragma.c: Likewise.
      	* config/mep/mep.c: Likewise.
      	* config/mmix/mmix.c: Likewise.
      	* config/mn10300/mn10300.c: Likewise.
      	* config/moxie/moxie.c: Likewise.
      	* config/pa/pa.c: Likewise.
      	* config/pdp11/pdp11.c: Likewise.
      	* config/picochip/picochip.c: Likewise.
      	* config/rs6000/rs6000-c.c: Likewise.
      	* config/rs6000/rs6000.c: Likewise.
      	* config/rx/rx.c: Likewise.
      	* config/s390/s390.c: Likewise.
      	* config/score/score.c: Likewise.
      	* config/score/score3.c: Likewise.
      	* config/score/score7.c: Likewise.
      	* config/sh/sh.c: Likewise.
      	* config/sh/symbian-base.c: Likewise.
      	* config/sh/symbian-c.c: Likewise.
      	* config/sh/symbian-cxx.c: Likewise.
      	* config/sol2-c.c: Likewise.
      	* config/sol2.c: Likewise.
      	* config/sparc/sparc.c: Likewise.
      	* config/spu/spu.c: Likewise.
      	* config/stormy16/stormy16.c: Likewise.
      	* config/v850/v850-c.c: Likewise.
      	* config/v850/v850.c: Likewise.
      	* config/vax/vax.c: Likewise.
      	* config/vxworks.c: Likewise.
      	* config/xtensa/xtensa.c: Likewise.
      	* convert.c: Likewise.
      	* cse.c: Likewise.
      	* cselib.c: Likewise.
      	* dbgcnt.c: Likewise.
      	* dbxout.c: Likewise.
      	* ddg.c: Likewise.
      	* dominance.c: Likewise.
      	* emit-rtl.c: Likewise.
      	* explow.c: Likewise.
      	* expmed.c: Likewise.
      	* fixed-value.c: Likewise.
      	* fold-const.c: Likewise.
      	* fwprop.c: Likewise.
      	* gcse.c: Likewise.
      	* ggc-common.c: Likewise.
      	* ggc-page.c: Likewise.
      	* ggc-zone.c: Likewise.
      	* gimple-low.c: Likewise.
      	* gimplify.c: Likewise.
      	* graph.c: Likewise.
      	* haifa-sched.c: Likewise.
      	* ifcvt.c: Likewise.
      	* implicit-zee.c: Likewise.
      	* integrate.c: Likewise.
      	* ira-build.c: Likewise.
      	* ira-color.c: Likewise.
      	* ira-conflicts.c: Likewise.
      	* ira-costs.c: Likewise.
      	* ira-lives.c: Likewise.
      	* ira.c: Likewise.
      	* lists.c: Likewise.
      	* loop-doloop.c: Likewise.
      	* loop-iv.c: Likewise.
      	* lto-opts.c: Likewise.
      	* lto-symtab.c: Likewise.
      	* main.c: Likewise.
      	* modulo-sched.c: Likewise.
      	* optabs.c: Likewise.
      	* params.c: Likewise.
      	* plugin.c: Likewise.
      	* postreload-gcse.c: Likewise.
      	* postreload.c: Likewise.
      	* predict.c: Likewise.
      	* profile.c: Likewise.
      	* real.c: Likewise.
      	* regcprop.c: Likewise.
      	* reginfo.c: Likewise.
      	* regmove.c: Likewise.
      	* reorg.c: Likewise.
      	* resource.c: Likewise.
      	* rtl.c: Likewise.
      	* rtlanal.c: Likewise.
      	* sched-deps.c: Likewise.
      	* sched-ebb.c: Likewise.
      	* sched-rgn.c: Likewise.
      	* sdbout.c: Likewise.
      	* sel-sched-dump.c: Likewise.
      	* sel-sched-ir.c: Likewise.
      	* simplify-rtx.c: Likewise.
      	* stmt.c: Likewise.
      	* stor-layout.c: Likewise.
      	* store-motion.c: Likewise.
      	* targhooks.c: Likewise.
      	* tree-cfg.c: Likewise.
      	* tree-cfgcleanup.c: Likewise.
      	* tree-dump.c: Likewise.
      	* tree-eh.c: Likewise.
      	* tree-inline.c: Likewise.
      	* tree-nomudflap.c: Likewise.
      	* tree-object-size.c: Likewise.
      	* tree-optimize.c: Likewise.
      	* tree-outof-ssa.c: Likewise.
      	* tree-phinodes.c: Likewise.
      	* tree-profile.c: Likewise.
      	* tree-ssa-ccp.c: Likewise.
      	* tree-ssa-coalesce.c: Likewise.
      	* tree-ssa-live.c: Likewise.
      	* tree-ssa-loop-niter.c: Likewise.
      	* tree-ssa-loop-prefetch.c: Likewise.
      	* tree-ssa-loop.c: Likewise.
      	* tree-ssa-structalias.c: Likewise.
      	* tree-ssa-uninit.c: Likewise.
      	* tree-ssa.c: Likewise.
      	* tree-vect-data-refs.c: Likewise.
      	* tree-vect-loop-manip.c: Likewise.
      	* tree-vect-loop.c: Likewise.
      	* tree-vect-patterns.c: Likewise.
      	* tree-vect-stmts.c: Likewise.
      	* tree-vrp.c: Likewise.
      	* varasm.c: Likewise.
      	* vec.c: Likewise.
      	* web.c: Likewise.
      	* xcoffout.c: Likewise.
      
      c-family/
      	* c-common.h: Include diagnostic-core.h. Error if already
      	included.
      	* c-semantics.c: Do not define GCC_DIAG_STYLE here.
      cp/
      	* cp-tree.h: Do not include toplev.h.
      	
      java/
      	* boehm.c: Include diagnostic-core.h in every file that includes
      	toplev.h.
      	* class.c: Likewise.
      	* constants.c: Likewise.
      	* decl.c: Likewise.
      	* except.c: Likewise.
      	* expr.c: Likewise.
      	* jcf-parse.c: Likewise.
      	* mangle.c: Likewise.
      	* mangle_name.c: Likewise.
      	* resource.c: Likewise.
      	* typeck.c: Likewise.
      	* verify-glue.c: Likewise.
      ada/
      	* gcc-interface/utils.c: Include diagnostic-core.h in every file
      	that includes toplev.h.
      lto/
      	* lto-coff.c: Include diagnostic-core.h in every file that
      	includes toplev.h.
      	* lto-elf.c: Likewise.
      	* lto-lang.c: Likewise.
      	* lto-macho.c: Likewise.
      
      From-SVN: r161943
      Manuel López-Ibáñez committed
  29. 07 Jul, 2010 1 commit
  30. 05 Jul, 2010 1 commit
    • cgraph.h (cgraph_node, [...]): Update docmentation of in_other_partition. · 92eb4438
      	* cgraph.h (cgraph_node, cgraph_varpool_node): Update docmentation of
      	in_other_partition.
      	* lto-cgraph.c (referenced_from_other_partition_p,
      	reachable_from_other_partition_p): Use in_other_partition flags.
      	(output_node, output_varpool_node): COMDAT nodes always have private
      	copies and thus are never used from other partition.
      
      	* lto.c (add_cgraph_node_to_partition): Forward declare; walk also
      	nodes from same comdat group as well as all comdat functions referenced
      	here.
      	(add_varpool_node_to_partition, add_references_to_partition): New function.
      	(lto_1_1_map): Skip COMDAT fnctions/variables; use add_varpool_node_to_partition;
      	clear aux flags when done.
      	(lto_promote_cross_file_statics): Do not promote stuff that gets duplicated to
      	each ltrans.
      
      From-SVN: r161846
      Jan Hubicka committed