1. 09 May, 2011 19 commits
  2. 08 May, 2011 8 commits
  3. 07 May, 2011 11 commits
    • invoke.texi (-fuse-linker-plugin): Improve grammar. · 7c74e556
      2011-05-08  Jonathan Wakely  <jwakely.gcc@gmail.com>
      
      	* doc/invoke.texi (-fuse-linker-plugin): Improve grammar.
      
      From-SVN: r173538
      Jonathan Wakely committed
    • ipa-inline-transform.c (inline_call): Account when program size decreases. · b4c0a884
      
      	* ipa-inline-transform.c (inline_call): Account when program size decreases.
      	* ipa-inline.c (relative_time_benefit): New function.
      	(edge_badness): Reorganize to be power 2 based; fix
      	thinko when computing badness for negative growth; update
      	comments to match reality; better dumps.
      
      From-SVN: r173537
      Jan Hubicka committed
    • langhooks.h (lang_hooks_for_types): Change global_bindings_p's return type to… · c99c0026
      langhooks.h (lang_hooks_for_types): Change global_bindings_p's return type to bool and adjust comment.
      
      2011-05-07  Eric Botcazou  <ebotcazou@adacore.com>
      
      	* langhooks.h (lang_hooks_for_types): Change global_bindings_p's return
      	type to bool and adjust comment.
      	* fold-const.c (fold_range_test): Adjust call to global_bindings_p.
      	(fold_mathfn_compare): Remove calls to global_bindings_p.
      	(fold_inf_compare): Likewise.
      	* stor-layout.c (variable_size): Adjust call to global_bindings_p.
      	* c-tree.h (global_bindings_p): Adjust prototype.
      	* c-decl.c (global_bindings_p): Return bool and simplify.
      ada/
      	* gcc-interface/gigi.h (global_bindings_p): Adjust prototype.
      	* gcc-interface/utils.c (global_bindings_p): Return bool and simplify.
      cp/
      	* name-lookup.h (global_bindings_p): Adjust prototype.
      	* name-lookup.c (global_bindings_p): Return bool.
      fortran/
      	* f95-lang.c (global_bindings_p): Return bool and simplify.
      go/
      	* go-lang.c (global_bindings_p): Return bool and simplify.
      java/
      	* java-tree.h (global_bindings_p): Adjust prototype.
      	* decl.c (global_bindings_p): Return bool.
      lto/
      	* lto-lang.c (global_bindings_p): Return bool.
      
      From-SVN: r173535
      Eric Botcazou committed
    • re PR tree-optimization/48837 (Wrong optimization of recursive function calls) · 1400c8e5
      	PR tree-optimization/48837
      	* tree-tailcall.c (tree_optimize_tail_calls_1): Do not mark tailcalls
      	when accumulator transformation is performed.
      
      	* gcc.dg/pr48837.c: New testcase.
      
      From-SVN: r173534
      Zdenek Dvorak committed
    • i386.h (ix86_tune_indices): Add X86_TUNE_SOFTWARE_PREFETCHING_BENEFICIAL. · 5d0878e7
      
      	* i386.h (ix86_tune_indices): Add X86_TUNE_SOFTWARE_PREFETCHING_BENEFICIAL.
      	(TARGET_SOFTWARE_PREFETCHING_BENEFICIAL): New macor.
      	* i386.c (initial_ix86_tune_features): Add X86_SOFTARE_PREFETCHING_BENEFICIAL.
      	(software_prefetching_beneficial_p): Remove predicate.
      	(ix86_option_override_internal): Use new macro.
      
      From-SVN: r173533
      Jan Hubicka committed
    • macro.h (_GLIBCXX_DEBUG_VERIFY_AT): New. · f5886803
      2011-05-07  François Dumont  <francois.cppdevs@free.fr>
      
      	* include/debug/macro.h (_GLIBCXX_DEBUG_VERIFY_AT): New.
      	(_GLICXX_DEBUG_VERIFY): Use latter.
      	* include/ext/pb_ds/detail/resize_policy/
      	hash_load_check_resize_trigger_imp.hpp: Emit assertion on the line
      	containing the original assert call.
      	* include/ext/pb_ds/detail/binomial_heap_base_/erase_fn_imps.hpp,
      	find_fn_imps.hpp, insert_fn_imps.hpp, binomial_heap_base_.hpp,
      	constructors_destructor_fn_imps.hpp, debug_fn_imps.hpp,
      	split_join_fn_imps.hpp: Likewise.
      	* include/ext/pb_ds/detail/cc_hash_table_map_/
      	erase_store_hash_fn_imps.hpp, insert_no_store_hash_fn_imps.hpp,
      	find_fn_imps.hpp, insert_store_hash_fn_imps.hpp, debug_fn_imps.hpp,
      	debug_no_store_hash_fn_imps.hpp, cc_ht_map_.hpp, resize_fn_imps.hpp,
      	constructor_destructor_fn_imps.hpp, debug_store_hash_fn_imps.hpp,
      	erase_no_store_hash_fn_imps.hpp: Likewise.
      	* include/ext/pb_ds/detail/pat_trie_/find_fn_imps.hpp,
      	insert_join_fn_imps.hpp, pat_trie_/head.hpp, debug_fn_imps.hpp,
      	constructors_destructor_fn_imps.hpp, pat_trie_.hpp, split_fn_imps.hpp,
      	leaf.hpp, erase_fn_imps.hpp, node_base.hpp, internal_node.hpp:
      	Likewise.
      	* include/ext/pb_ds/detail/bin_search_tree_/find_fn_imps.hpp,
      	r_erase_fn_imps.hpp, constructors_destructor_fn_imps.hpp,
      	debug_fn_imps.hpp, rotate_fn_imps.hpp, erase_fn_imps.hpp,
      	bin_search_tree_.hpp, insert_fn_imps.hpp, split_join_fn_imps.hpp:
      	Likewise.
      	* include/ext/pb_ds/detail/gp_hash_table_map_/
      	erase_store_hash_fn_imps.hpp, insert_no_store_hash_fn_imps.hpp,
      	find_fn_imps.hpp, gp_ht_map_.hpp, insert_store_hash_fn_imps.hpp,
      	debug_fn_imps.hpp, erase_fn_imps.hpp, debug_no_store_hash_fn_imps.hpp,
      	resize_fn_imps.hpp, constructor_destructor_fn_imps.hpp,
      	debug_store_hash_fn_imps.hpp, erase_no_store_hash_fn_imps.hpp:
      	Likewise.
      	* include/ext/pb_ds/detail/binary_heap_/find_fn_imps.hpp,
      	constructors_destructor_fn_imps.hpp, debug_fn_imps.hpp,
      	erase_fn_imps.hpp, insert_fn_imps.hpp, binary_heap_.hpp,
      	resize_policy.hpp, split_join_fn_imps.hpp: Likewise.
      	* include/ext/pb_ds/detail/pairing_heap_/erase_fn_imps.hpp,
      	find_fn_imps.hpp, insert_fn_imps.hpp,
      	constructors_destructor_fn_imps.hpp, debug_fn_imps.hpp,
      	pairing_heap_.hpp, split_join_fn_imps.hpp: Likewise.
      	* include/ext/pb_ds/detail/binomial_heap_/
      	constructors_destructor_fn_imps.hpp, debug_fn_imps.hpp,
      	binomial_heap_.hpp: Likewise.
      	* include/ext/pb_ds/detail/left_child_next_sibling_heap_/
      	erase_fn_imps.hpp, left_child_next_sibling_heap_.hpp,
      	constructors_destructor_fn_imps.hpp, debug_fn_imps.hpp: Likewise.
      	* include/ext/pb_ds/detail/thin_heap_/erase_fn_imps.hpp,
      	find_fn_imps.hpp, thin_heap_.hpp, insert_fn_imps.hpp,
      	constructors_destructor_fn_imps.hpp, debug_fn_imps.hpp,
      	split_join_fn_imps.hpp: Likewise.
      	* include/ext/pb_ds/detail/ov_tree_map_/erase_fn_imps.hpp,
      	ov_tree_map_.hpp, constructors_destructor_fn_imps.hpp,
      	debug_fn_imps.hpp, split_join_fn_imps.hpp, info_fn_imps.hpp: Likewise.
      	* include/ext/pb_ds/detail/debug_map_base.hpp: Likewise.
      	* include/ext/pb_ds/detail/splay_tree_/erase_fn_imps.hpp,
      	find_fn_imps.hpp, insert_fn_imps.hpp,
      	constructors_destructor_fn_imps.hpp, debug_fn_imps.hpp,
      	splay_fn_imps.hpp, split_join_fn_imps.hpp, splay_tree_.hpp: Likewise.
      	* include/ext/pb_ds/detail/list_update_map_/erase_fn_imps.hpp,
      	find_fn_imps.hpp, lu_map_.hpp, constructor_destructor_fn_imps.hpp,
      	insert_fn_imps.hpp, debug_fn_imps.hpp: Likewise.
      	* include/ext/pb_ds/detail/rc_binomial_heap_/erase_fn_imps.hpp,
      	rc_binomial_heap_.hpp, insert_fn_imps.hpp,
      	constructors_destructor_fn_imps.hpp, debug_fn_imps.hpp, rc.hpp,
      	split_join_fn_imps.hpp: Likewise.
      	* include/ext/pb_ds/detail/rb_tree_map_/erase_fn_imps.hpp,
      	insert_fn_imps.hpp, constructors_destructor_fn_imps.hpp,
      	debug_fn_imps.hpp, rb_tree_.hpp, split_join_fn_imps.hpp: Likewise.
      	* include/ext/pb_ds/hash_policy.hpp: Likewise.
      
      From-SVN: r173529
      François Dumont committed
    • re PR fortran/18918 (Eventually support Fortran 2008's coarrays [co-arrays]) · 6f4d39bb
      2011-05-07  Tobias Burnus  <burnus@net-b.de>
      
              PR fortran/18918
              PR fortran/48919
              * trans.h: Move gfc_init_coarray_decl prototype ...
              * gfortran.h: ... to here.
              * parse.c (translate_all_program_units): Call
              * gfc_init_coarray_decl.
              (gfc_parse_file): Update translate_all_program_units call.
              * trans-decl.c (gfc_init_coarray_decl): Fix variable
              * declaration,
              new argument whether DECL_EXTERNAL should be used.
              (create_main_function): Update gfc_init_coarray_decl call.
              * trans-intrinsic.c (trans_this_image, trans_image_index,
              conv_intrinsic_cobound): Ditto.
      
      From-SVN: r173528
      Tobias Burnus committed
    • Daily bump. · 9142588a
      From-SVN: r173525
      GCC Administrator committed
    • Use backend types for all type conversions. · 5b735706
      From-SVN: r173520
      Ian Lance Taylor committed
  4. 06 May, 2011 2 commits
    • cgraph.c (cgraph_add_thunk): Create real function node instead of alias node... · c47d0034
      
      	* cgraph.c (cgraph_add_thunk): Create real function node instead
      	of alias node; finalize it and mark needed/reachale; arrange visibility
      	to be right and add it into the corresponding same comdat group list.
      	(dump_cgraph_node): Dump thunks.
      	* cgraph.h (cgraph_first_defined_function, cgraph_next_defined_function,
      	cgraph_function_with_gimple_body_p, cgraph_first_function_with_gimple_body,
      	cgraph_next_function_with_gimple_body): New functions.
      	(FOR_EACH_FUNCTION_WITH_GIMPLE_BODY, FOR_EACH_DEFINED_FUNCTION):
      	New macros.
      	* ipa-cp.c (ipcp_need_redirect_p): Thunks can't be redirected.
      	(ipcp_generate_summary): Use FOR_EACH_FUNCTION_WITH_GIMPLE_BODY.
      	* cgraphunit.c (cgraph_finalize_function): Only look into possible
      	devirtualization when optimizing.
      	(verify_cgraph_node): Verify thunks.
      	(cgraph_analyze_function): Analyze thunks.
      	(cgraph_mark_functions_to_output): Output thunks only in combination
      	with function they are assigned to.
      	(assemble_thunk): Turn thunk into non-thunk; don't try to turn
      	alias into normal node.
      	(assemble_thunks): New functoin.
      	(cgraph_expand_function): Use it.
      	* lto-cgraph.c (lto_output_node): Stream thunks.
      	(input_overwrite_node): Stream in thunks.
      	* ipa-pure-const.c (analyze_function): Thunks do nothing interesting.
      	* lto-streamer-out.c (lto_output): Do not try to output thunk's body.
      	* ipa-inline.c (inline_small_functions): Use FOR_EACH_DEFINED_FUNCTION.
      	* ipa-inline-analysis.c (compute_inline_parameters): "Analyze" thunks.
      	(inline_analyze_function): Do not care about thunk jump functions.
      	(inline_generate_summary):Use FOR_EACH_DEFINED_FUNCTION.
      	* ipa-prop.c (ipa_prop_write_jump_functions): Use cgraph_function_with_gimple_body_p.
      	* passes.c (do_per_function_toporder): Use cgraph_function_with_gimple_body_p.
      	(execute_one_pass);Use FOR_EACH_FUNCTION_WITH_GIMPLE_BODY.
      	(ipa_write_summaries): Use cgraph_function_with_gimple_body_p.
      	(function_called_by_processed_nodes_p): Likewise.
      	* lto.c (lto_materialize_function): Use cgraph_function_with_gimple_body_p.
      	(add_cgraph_node_to_partition): Do not re-add items to partition; handle thunks.
      	(add_varpool_node_to_partition): Do not re-add items to partition.
      
      From-SVN: r173517
      Jan Hubicka committed
    • decl.c (stabilize_save_expr_r): Set *walk_subtrees as appropriate. · e68dde1f
      	* decl.c (stabilize_save_expr_r): Set *walk_subtrees as
      	appropriate.
      
      From-SVN: r173512
      Jason Merrill committed