1. 16 Apr, 2012 12 commits
    • cgraph.h (symtab_node_base): Add next and previous pointers. · 2aae7680
      
      	* cgraph.h (symtab_node_base): Add next and previous pointers.
      	(cgraph_node): Remove next and preivous pointers.
      	(varpool_node): Likewise; remove next/previous GTY marker;
      	it is not type safe.
      	(symtab_node_def): Update GTY marker
      	(x_cgraph_nodes, cgraph_nodes): Remove.
      	(symtab_nodes): New function.
      	(cgraph_order): Rename to ...
      	(symtab_order): ... this one.
      	(symtab_register_node, symtab_unregister_node, symtab_remove_node):
      	Declare.
      	(x_varpool_nodes, varpool_nodes): Remove.
      	(FOR_EACH_STATIC_VARIABLE): Update.
      	(symtab_function_p, symtab_variable_p): New function.
      	(FOR_EACH_VARIABLE): Update.
      	(varpool_first_variable, varpool_next_variable): New functions.
      	(FOR_EACH_VARIABLE): Update.
      	(cgraph_first_defined_function): Update.
      	(cgraph_next_defined_function, cgraph_next_defined_function): Update.
      	(FOR_EACH_DEFINED_FUNCTION, FOR_EACH_FUNCTION): Update.
      	(cgraph_first_function, cgraph_next_function): New.
      	(FOR_EACH_FUNCTION): Update.
      	(cgraph_first_function_with_gimple_body,
      	cgraph_next_function_with_gimple_body): Update.
      	* symtab.c: New file.
      	* cgraph.c: Update copyright dates.
      	(x_cgraph_nodes, cgraph_order): Remove.
      	(NEXT_FREE_NODE): Update.
      	(SET_NEXT_FREE_NODE): New.
      	(cgraph_create_node_1): Remove common code.
      	(cgraph_create_node); Remove common code; call symtab_register_node.
      	(cgraph_remove_node): Remove common code; call symtab_unregister-node.
      	(cgraph_add_asm_node); update.
      	(cgraph_clone_node): Register new node.
      	* cgraphunit.c (process_function_and_variable_attributes): Update.
      	(cgraph_analyze_functions): Update.
      	(cgraph_analyze_functions): Update.
      	(cgraph_output_in_order): Update.
      	* lto-cgraph.c (input_node, input_varpool_node, input_cgraph_1): Update.
      	* ipa-inline.c (recursive_inlining); update.
      	* lto-streamer-in.c (lto_input_toplevel_asms); Update.
      	* ipa.c (cgraph_remove_unreachable_nodes): Update.
      	* Makefile.in: Add symtab.o
      	* varpool.c (x_varpool_nodes): Remove
      	(varpool_node): Remove common code; call symtab_register_node.
      	(varpool_remove_node); Remove common code; call symtab_unregister_node.
      
      From-SVN: r186496
      Jan Hubicka committed
    • re PR c++/51148 ([C++0x] Unexpanded template param packs wrongly accepted in… · 1c4010c6
      re PR c++/51148 ([C++0x] Unexpanded template param packs wrongly accepted in friend class declarations)
      
      	PR c++/51148
      	* friend.c (make_friend_class): Call check_for_bare_parameter_packs.
      
      From-SVN: r186495
      Jason Merrill committed
    • re PR c/52977 (internal compiler error: Segmentation fault with `-x c-header' or… · ac9a074c
      re PR c/52977 (internal compiler error: Segmentation fault with `-x c-header' or `-x cxx-header' option)
      
      2012-04-16  Richard Guenther  <rguenther@suse.de>
      
      	PR middle-end/52977
      	* tree.h (VECTOR_CST_NELTS): Adjust.
      	(struct tree_vector): Add explicit length field.
      	(make_vector_stat): Declare.
      	(make_vector): Define.
      	* tree.c (make_vector_stat): New function.
      	(build_vector_stat): Use it.
      	* tree-streamer-in.c (streamer_alloc_tree): Likewise.
      
      From-SVN: r186494
      Richard Guenther committed
    • re PR tree-optimization/52976 (Revision 186384 breaks the polyhedron tests… · fba62120
      re PR tree-optimization/52976 (Revision 186384 breaks the polyhedron tests aermod.f90 and doduc.f90 at -O3 -ffast-math)
      
      2012-04-16  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>
      
      	PR tree-optimization/52976
      	* tree-ssa-reassoc.c (add_to_ops_vec_max_rank): New function.
      	(undistribute_ops_list): Ops with repeat counts aren't eligible for
      	undistribution.
      	(attempt_builtin_powi): Call add_to_ops_vec_max_rank.
      
      From-SVN: r186493
      Bill Schmidt committed
    • cgraph.h (FOR_EACH_VARIABLE, [...]): New macros. · 65c70e6b
      	* cgraph.h (FOR_EACH_VARIABLE, FOR_EACH_VARIABLE, FOR_EACH_FUNCTION):
      	New macros.
      	* lto-symtab.c (lto_symtab_merge_cgraph_nodes): Use FOR_EACH
      	walkers to walk cgraph and varpool.
      	* cgraph.c (cgraph_node_for_asm): Likewise.
      	(dump_cgraph): Likewise.
      	* value-prof.c (init_node_map): Likewise.
      	* tree.c (free_lang_data_in_cgraph): Likewise.
      	* tree-emutls.c: (ipa_lower_emutls): Likewise.
      	* ipa-reference.c (generate_summary, propagate): Likewise.
      	* cgraphunit.c (verify_cgraph, cgraph_process_same_body_aliases,
      	cgraph_mark_functions_to_output, cgraph_output_in_order,
      	output_weakrefs, cgraph_materialize_all_clones,
      	cgraph_optimize): Likewise.
      	* lto-cgraph.c (merge_profile_summaries): Likewise.
      	(input_cgraph): Likewise.
      	* ipa-pure-const.c (generate_summary): Likewise.
      	(propagate): Likwise.
      	* ipa-utils.c (ipa_reduced_postorder): Likewise.
      	(ipa_free_postorder_info): Likewise.
      	(ipa_reverse_postorder): Likewise.
      	* ipa-inline.c (ipa_inline): Likewise.
      	* matrix-reorg.c (find_matrices_decl): Likewise.
      	(matrix_reorg): Likewise.
      	* tree-vectorizer.c (increase_alignment): Likewise.
      	* ipa.c (cgraph_remove_unreachable_nodes): Likewise.
      	(function_and_variable_visibility): Likewise.
      	(whole_program_function_and_variable_visibility): Likewise.
      	(ipa_cdtor_merge): Likewise.
      	* trans-mem.c (ipa_tm_execute): Likewise.
      	* ipa-inline-analysis.c (dump_inline_summaries): Likewise.
      	* ipa-prop.c (ipa_print_all_jump_functions): Likewise.
      	(ipa_print_all_params): Likewise.
      	(ipa_update_after_lto_read): Likewise.
      	* tree-profie.c (tree_profiling): Likewise.
      	* tree-ssa-structalias.c (ipa_pta_execute): Likewise.
      	* passes.c (dump_passes): Likewise.
      	(do_per_function): Likewise.
      	(ipa_write_summaries): Likewise.
      	* varpool.c (dump_varpool): Likewise.
      	(varpool_node_for_asm): Likewise.
      	(varpool_assemble_pending_decls): Likewise.
      
      
      	* decl2.c (collect_candidates_for_java_method_alias): Use FOR_EACH
              walkers to walk cgraph and varpool.
      
      	* lto.c (read_cgraph_and_symbols): Use FOR_EACH
              walkers to walk cgraph and varpool.
      	(materialize_cgraph): Likewise.
      	* lto-partition.c (lto_1_to_1_map): Likewise.
      	(lto_balanced_map): Likewise.
      	(lto_promote_cross_file_statics): Likewise.
      
      From-SVN: r186492
      Jan Hubicka committed
    • re PR tree-optimization/52975 (Ofast produces not optimized code for vectorized "converted if") · 8b7db259
      2012-04-16  Richard Guenther  <rguenther@suse.de>
      
      	PR tree-optimization/52975
      	* tree-if-conv.c (predicate_bbs): Do not simplify inverted
      	condition but always mark it with TRUTH_NOT_EXPR.
      
      From-SVN: r186491
      Richard Guenther committed
    • Fix plugin testsuite, remove uses of TODO_dump_func (PR testsuite/52948) · 3be74079
      	* lib/plugin-support.exp (plugin-test-execute): Properly determine
      	testcase name.
      	Use fail, pass instead of unresolved.
      	Don't log $optstr.
      
      	PR testsuite/52948
      	* g++.dg/plugin/dumb_plugin.c (pass_dumb_plugin_example): Remove
      	TODO_dump_func.
      	* g++.dg/plugin/selfassign.c (pass_warn_self_assign): Likewise.
      	* gcc.dg/plugin/one_time_plugin.c (one_pass): Likewise.
      	* gcc.dg/plugin/selfassign.c (pass_warn_self_assign): Likewise.
      
      From-SVN: r186490
      Rainer Orth committed
    • re PR tree-optimization/52975 (Ofast produces not optimized code for vectorized "converted if") · 2515d916
      2012-04-16  Richard Guenther  <rguenther@suse.de>
      
      	PR tree-optimization/52975
      	* tree-ssa-forwprop.c (combine_cond_exprs): New function.
      	(ssa_forward_propagate_and_combine): Call it for COND_EXPRs
      	and VEC_COND_EXPRs.  Also combine into VEC_COND_EXPRs condition.
      	* fold-const.c (operand_equal_p): Handle TARGET_MEM_REF.
      
      From-SVN: r186488
      Richard Guenther committed
    • re PR fortran/52968 ([OOP] Call to type-bound procedure wrongly rejected) · 42ff605a
      2012-04-16  Janus Weil  <janus@gcc.gnu.org>
      
      	PR fortran/52968
      	* class.c (gfc_build_class_symbol): Make sure the 'f2k_derived'
      	namespace is present.
      
      
      2012-04-16  Janus Weil  <janus@gcc.gnu.org>
      
      	PR fortran/52968
      	* gfortran.dg/typebound_call_23.f03: New test case.
      
      From-SVN: r186486
      Janus Weil committed
    • re PR c++/47220 ([C++0x] no error on unterminated template argument list for variadic parameter) · 56992a78
      	PR c++/47220
      	* pt.c (coerce_template_parameter_pack): Check for error_mark_node.
      
      From-SVN: r186480
      Jason Merrill committed
    • re PR c++/52292 ([C++11] Variadic template expansion into fixed template causes… · f9057514
      re PR c++/52292 ([C++11] Variadic template expansion into fixed template causes constructor to not match)
      
      	PR c++/52292
      	PR c++/52380
      	* pt.c (coerce_template_parms): Even if we aren't converting we
      	want to expand argument packs.
      
      From-SVN: r186479
      Jason Merrill committed
    • Daily bump. · 51c8ebb3
      From-SVN: r186478
      GCC Administrator committed
  2. 15 Apr, 2012 7 commits
  3. 14 Apr, 2012 11 commits
    • re PR libstdc++/52699 (infinite loop generated with -O0) · f84ca6e7
      2012-04-14  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	PR libstdc++/52699
      	* include/bits/random.tcc (independent_bits_engine<>::operator()())
      	Avoid various overflows; use common_type on result_type and
      	_RandomNumberEngine::result_type; avoid floating point computations;
      	other smaller tweaks.
      
      	* include/bits/random.tcc (uniform_int_distribution<>::operator())
      	Use common_type; assume _UniformRandomNumberGenerator::result_type
      	unsigned; tidy.
      
      	* include/bits/stl_algobase.h (__lg(unsigned), __lg(unsigned long),
      	__lg(unsigned long long)): Add.
      
      From-SVN: r186456
      Paolo Carlini committed
    • * config/i386/sse.md: Fix whitespace and formatting. · 608dccd7
      From-SVN: r186455
      Uros Bizjak committed
    • sse.md (ssse3_plusminus): New code iterator. · 8861ba4d
      2012-04-14  Uros Bizjak  <ubizjak@gmail.com>
      
      	* config/i386/sse.md (ssse3_plusminus): New code iterator.
      	(avx2_ph<plusminus_mnemonic>wv16hi3): Macroize insn from
      	avx2_ph{add,adds,sub,subs}wv16hi3 using ssse3_plusminus code iterator.
      	(ssse3_ph<plusminus_mnemonic>wv8hi3): Macroize insn from
      	ssse3_ph{add,adds,sub,subs}wv8hi3 using ssse3_plusminus code iterator.
      	(ssse3_ph<plusminus_mnemonic>wv4hi3): Macroize insn from
      	ssse3_ph{add,adds,sub,subs}wv4hi3 using ssse3_plusminus code iterator.
      
      	(avx2_ph<plusminus_mnemonic>dv8si3): Macroize insn from
      	avx2_ph{add,adds,sub,subs}dv8si3 using plusminus code iterator.
      	(ssse3_ph<plusminus_mnemonic>dv4si3): Macroize insn from
      	ssse3_ph{add,adds,sub,subs}dv4si3 using plusminus code iterator.
      	(ssse3_ph<plusminus_mnemonic>dv2si3): Macroize insn from
      	ssse3_ph{add,adds,sub,subs}dv2si3 using plusminus code iterator.
      
      	(xop_plus): New code iterator.
      	(macs): New code attribute.
      	(macds): Ditto.
      	(xop_p<macs><ssemodesuffix><ssemodesuffix>): Macroize insn from
      	xop_pmacs{,s}{ww,dd} using xop_plus code iterator and VI24_128 mode
      	iterator.
      	(xop_p<macs>dql): Macroize insn from xop_pmacs{,s}dql using
      	xop_plus code iterator.
      	(xop_p<macs>dqh): Macroize insn from xop_pmacs{,s}dqh using
      	xop_plus code iterator.
      	(xop_p<macs>wd): Macroize insn from xop_pmacs{,s}wd using
      	xop_plus code iterator.
      	(xop_p<madcs>wd): Macroize insn from xop_pmadcs{,s}wd using
      	xop_plus code iterator.
      
      	(xop_phadd<u>bw): Macroize insn from xop_phadd{,u}bw usign
      	any_extend code iterator.
      	(xop_phadd<u>bd): Macroize insn from xop_phadd{,u}bd usign
      	any_extend code iterator.
      	(xop_phadd<u>bq): Macroize insn from xop_phadd{,u}bq usign
      	any_extend code iterator.
      	(xop_phadd<u>wd): Macroize insn from xop_phadd{,u}wd usign
      	any_extend code iterator.
      	(xop_phadd<u>wq): Macroize insn from xop_phadd{,u}wq usign
      	any_extend code iterator.
      	(xop_phadd<u>dq): Macroize insn from xop_phadd{,u}dq usign
      	any_extend code iterator.
      
      From-SVN: r186454
      Uros Bizjak committed
    • re PR libstdc++/52839 (double free or corruption running tr1/.../default_weaktoshared.exe) · 531b2c7b
      	PR libstdc++/52839
      	* acinclude.m4 (_GLIBCXX_ATOMIC_BUILTINS): Do not depend on
      	glibcxx_cv_atomic_long_long.
      	* configure: Regenerate.
      
      From-SVN: r186453
      Alan Modra committed
    • superblock.c: New test. · 01e3d28c
      2012-04-14  Tom de Vries  <tom@codesourcery.com>
      
      	* gcc.dg/superblock.c: New test.
      
      From-SVN: r186452
      Tom de Vries committed
    • cfgcleanup.c (try_optimize_cfg): Replace call to delete_insn_chain by call to delete_insn. · 03fbe718
      2012-04-14  Tom de Vries  <tom@codesourcery.com>
      
      	* cfgcleanup.c (try_optimize_cfg): Replace call to delete_insn_chain by
      	call to delete_insn.  Remove code to reorder BASIC_BLOCK note and
      	DELETED_LABEL note, and move it to ...
      	* cfgrtl.c (delete_insn): ... here.  Change return type to void.
      	(delete_insn_and_edges): Likewise.
      	(delete_insn_chain): Handle new return type of delete_insn.  Delete
      	chain backwards rather than forwards.
      	* rtl.h (delete_insn, delete_insn_and_edges): Change return type to
      	void.
      	* cfglayout.c (fixup_reorder_chain): Delete unused label.
      
      From-SVN: r186451
      Tom de Vries committed
    • cgraph.h: Update copyrights; · 960bfb69
      
      	* cgraph.h: Update copyrights;
      	(symtab_node): Turn to union typedef.
      	(symtab_node_base): New structure.
      	(symtab_type): Add SYMTAB_SYMBOL tag.
      	* cgraph.c: Update references to fields
      	(cgraph_hash, assembler_name_hash): Turn into symtab_node.
      	(cgraph_local_info): Remove lto_file_data
      	and externally_visible.
      	(cgraph_node): Remove decl; same_comdat_group list;
      	aux; ref_list; order; address_taken; reachable_from_other_parittion,
      	in_other_partition; resolution.
      	(varpool_node): Remove decl; same_comdat_group;
      	ref_list; lto_file_data; aux; order; resolution; externally_visible;
      	used_from_other_partition; in_other_partition.
      	(symtab_node_def); New union.
      	(cgraph, varpool): Update.
      	(varpool_first_static_initializer, varpool_next_static_initializer,
      	cgraph_only_called_directly_or_aliased_p,
      	varpool_can_remove_if_no_refs, varpool_can_remove_if_no_refs,
      	varpool_all_refs_explicit_p, cgraph_alias_aliased_node,
      	varpool_alias_aliased_node, cgraph_edge_recursive_p): Update
      	field references.
      	* cgraph.c: Likewise.
      	* cgraphbuild.c: Likewise.
      	* lto-symtab.c: Likewise.
      	* c-gimplify.c: Likewise.
      	* value-prof.c: Likewise.
      	* tree.c: Likewise.
      	* ipa-cp.c: Likewise.
      	* tree-emutls.c: Likewise.
      	* ipa-inline-transform.c: Likwise.
      	* ipa-reference.c: Likewise.
      	* cgraphunit.c: Likewise.
      	* ipa-ref.c: Likewise.
      	* lto-cgraph.c: Likewise.
      	* ipa-ref-inline.h: Likewise.
      	* ipa-pure-const.c: Likewise.
      	* lto-streamer-out.c: Likewise.
      	* ipa-utils.c: Likewise.
      	* ipa-inline.c: Likewise.
      	* matrix-reorg.c: Likewise.
      	* tree-eh.c: Likewise.
      	* tree-vectorizer.c: Likewise.
      	* ipa-split.c: Likewise.
      	* ipa.c: Likewise.
      	* trans-mem.c: Likewise.
      	* ipa-inline-analysis.c: Likewise.
      	* gimplify.c: Likewise.
      	* cfgexpand.c: Likewise.
      	* tree-sra.c: Likewise.
      	* ipa-prop.c: Likewise.
      	* varasm.c: Likewise.
      	* tree-nested.c: Likewise.
      	* tree-inline.c: Likewise.
      	* tree-profile.c: Likewise.
      	* tree-ssa-structalias.c: Likewise.
      	* passes.c: Likewise.
      	* varpool.c: Likewise.
      
      	* tree.c: Update field referenced for new cgraph/varpool layout.
      	* decl2.c: Likewise.
      
      	* gcc-interface/trans.c (finalize_nrv): Update field referenced for new
      	cgraph/varpool layout.
      
      	* lto.c: Update field referenced for new cgraph/varpool layout.
      	* lto-partition.c: Likewise.
      
      From-SVN: r186450
      Jan Hubicka committed
    • pr51879-12.c: New test. · 30d1ab75
      2012-04-14  Tom de Vries  <tom@codesourcery.com>
      
      	* gcc.dg/pr51879-12.c: New test.
      
      From-SVN: r186448
      Tom de Vries committed
    • tree-ssa-tail-merge.c (stmt_local_def): New function, factored out of… · b2b2f160
      tree-ssa-tail-merge.c (stmt_local_def): New function, factored out of same_succ_hash, with local_def inlined.
      
      2012-04-14  Tom de Vries  <tom@codesourcery.com>
      
      	* tree-ssa-tail-merge.c (stmt_local_def): New function, factored out of
      	same_succ_hash, with local_def inlined.  Use SINGLE_SSA_DEF_OPERAND.
      	Use FOR_EACH_IMM_USE_FAST instead of FOR_EACH_IMM_USE_STMT.  Remove use
      	of find_edge.
      	(gsi_advance_fw_nondebug_nonlocal): New function.
      	(local_def): Removed function.
      	(same_succ_hash): Use stmt_local_def.
      	(same_succ_equal): Use gsi_advance_fw_nondebug_nonlocal.
      	(gsi_advance_bw_nondebug_nonlocal): Use stmt_local_def.
      
      From-SVN: r186447
      Tom de Vries committed
    • 51083.cc: Move... · 6a9218cc
      2012-04-13  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	* testsuite/26_numerics/cmath/51083.cc: Move...
      	* testsuite/26_numerics/headers/cmath/51083.cc: ... here.
      
      From-SVN: r186445
      Paolo Carlini committed
    • Daily bump. · 939fdefd
      From-SVN: r186444
      GCC Administrator committed
  4. 13 Apr, 2012 10 commits