1. 18 May, 2017 29 commits
    • cp-tree.h (OVL_ARG_DEPENDENT): Delete. · 1bf07cc3
      	* cp-tree.h (OVL_ARG_DEPENDENT): Delete.
      	(OVL_USED_P): New.
      	(lookup_keep): Declare.
      	* name-lookup.c (add_function): Don't set OVL_ARG_DEPENDENT.
      	* pt.c (tsubst_copy): Assert lookup is persistent.
      	* semantics.c (finish_call_expr): Use lkp_iterator, call
      	lookup_keep.
      	* tree.c (ovl_copy): New.
      	(ovl_insert, ovl_iterator::remove_node): Copy immutable nodes.
      	(lookup_keep): New.
      
      From-SVN: r248250
      Nathan Sidwell committed
    • compiler: ignore struct field tags for type conversion · 7d2f2a6b
          
          Go 1.8 includes a language change (https://golang.org/doc/go1.8#language):
          in an explicit conversion from one struct type to another, any field
          tags are ignored.
          
          This CL implements this language change in the gofrontend.  The tests
          for this are in the gc testsuite, which will be copied into the gccgo
          repository in due course.
          
          Updates golang/go#16085.
          
          Reviewed-on: https://go-review.googlesource.com/43614
      
      From-SVN: r248248
      Ian Lance Taylor committed
    • re PR target/80799 (x86-32 bits generates MMX without EMMS) · e4171e10
      	PR target/80799
      	* config/i386/mmx.md (*mov<mode>_internal): Enable
      	alternatives 11, 12, 13 and 14 also for 32bit targets.
      	Remove alternatives 15, 16, 17 and 18.
      	* config/i386/sse.md (vec_concatv2di): Change
      	alternative (!x, *y) to (x, ?!*Yn).
      
      testsuite/ChangeLog:
      
      	PR target/80799
      	* g++.dg/other/i386-11.C: New test.
      
      From-SVN: r248246
      Uros Bizjak committed
    • PR libstdc++/80478 make std::mem_fn work with noexcept functions · 747217d1
      	PR libstdc++/80478
      	* include/std/functional (_Mem_fn_traits_base): Add specializations
      	for noexcept member function types.
      	* testsuite/20_util/function_objects/mem_fn/80478.cc: New test.
      
      From-SVN: r248245
      Jonathan Wakely committed
    • dumpfile.h (enum dump_kind): Remove stray comma. · 286c97f3
      2017-05-18  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	* dumpfile.h (enum dump_kind): Remove stray comma.
      
      From-SVN: r248244
      Paolo Carlini committed
    • Makefile.in: Add ipa-predicate.o and ipa-predicate.h · 2f30407b
      
      	* Makefile.in: Add ipa-predicate.o and ipa-predicate.h
      	* ipa-inline-analysis.c (NUM_CONDITIONS): turn into
      	predicate::num_conditions
      	(IS_NOT_CONSTANT): turn into predicate::is_not_constant.
      	(CHANGED): turn into predicate::changed.
      	(agg_position_info): Move to ipa-predicate.h
      	(add_condition, predicate::add_clause, predicate::operator &=,
      	predicate::or_with, predicate::evaluate, predicate::probability,
      	dump_condition, dump_clause, predicate::dump,
      	predicate::remap_after_duplication, predicate::remap_after_inlining,
      	predicate::stream_in, predicate::stream_out): Move to ipa-predicate.c
      	(evaluate_conditions_for_known_args): Update.
      	(set_cond_stmt_execution_predicate): Update.
      	* ipa-inline.h: Include ipa-predicate.h
      	(condition, inline_param_summary, conditions, agg_position_info,
      	predicate): Move to ipa-predicate.h
      	* ipa-predicate.c: New file.
      	* ipa-predicate.h: New file.
      
      From-SVN: r248243
      Jan Hubicka committed
    • c-format.c (local_tree_type_node): Add GTY attribute. · 6ecd2339
      gcc/c-family:
      2017-05-18  Bernd Edlinger  <bernd.edlinger@hotmail.de>
      
              * c-format.c (local_tree_type_node): Add GTY attribute.
      
      gcc/c:
      2017-05-18  Bernd Edlinger  <bernd.edlinger@hotmail.de>
      
              * config-lang.in (gtfiles): Add c-family/c-format.c.
      
      From-SVN: r248242
      Bernd Edlinger committed
    • Makefile.in: Add ipa-predicate.o and ipa-predicate.h · b679b55b
      	* Makefile.in: Add ipa-predicate.o and ipa-predicate.h
      	* ipa-inline-analysis.c (NUM_CONDITIONS): turn into
      	predicate::num_conditions
      	(IS_NOT_CONSTANT): turn into predicate::is_not_constant.
      	(CHANGED): turn into predicate::changed.
      	(agg_position_info): Move to ipa-predicate.h
      	(add_condition, predicate::add_clause, predicate::operator &=,
      	predicate::or_with, predicate::evaluate, predicate::probability,
      	dump_condition, dump_clause, predicate::dump,
      	predicate::remap_after_duplication, predicate::remap_after_inlining,
      	predicate::stream_in, predicate::stream_out): Move to ipa-predicate.c
      	(evaluate_conditions_for_known_args): Update.
      	(set_cond_stmt_execution_predicate): Update.
      	* ipa-inline.h: Include ipa-predicate.h
      	(condition, inline_param_summary, conditions, agg_position_info,
      	predicate): Move to ipa-predicate.h
      	* ipa-predicate.c: New file.
      	* ipa-predicate.h: New file.
      
      From-SVN: r248241
      Jan Hubicka committed
    • Add an assert to leaf_function_p to ensure it is not called from a prolog or... · 00d60013
      Add an assert to leaf_function_p to ensure it is not called from a
      prolog or epilog sequence (which would incorrectly return true in a
      non-leaf function).  There are several targets which still call
      leaf_function_p, and while most appear safe or appear aware of the
      issue, it is likely not all such calls are safe.  This check enables
      any such latent bugs to be found.
      
          gcc/
      	* final.c (leaf_function_p): Check we are not in a sequence.
      
      From-SVN: r248240
      Wilco Dijkstra committed
    • cp-tree.h (OVL_USED): Replace with ... · 2063b07f
      	* cp-tree.h (OVL_USED): Replace with ...
      	(OVL_USING_P): ... this.
      	(ovl_iterator::using_p): Adjust.
      	* name-lookup.c (push_overloaded_decl_1)
      	do_nonmember_using_decl): Adjust.
      	* search.c (lookup_field_r): Adjust.
      	* tree.c (ovl_insert, ovl_scope): Adjust.
      (--This line, and those below, will be ignored--
      
      M    cp/tree.c
      M    cp/cp-tree.h
      M    cp/name-lookup.c
      M    cp/search.c
      M    cp/ChangeLog
      
      From-SVN: r248229
      Nathan Sidwell committed
    • Transform TDF_{lang,tree,ipa,rtl} to dump_kind enum. · 8264c84d
      2017-05-18  Martin Liska  <mliska@suse.cz>
      
      	* cfgrtl.c (rtl_verify_edges): Remove usage of TDF_RTL.
      	* dumpfile.c (dump_register): Use new enum dump_kind.
      	(get_dump_file_name): Likewise.
      	(dump_enable_all): Likewise.
      	(dump_switch_p_1): Likewise.
      	(enable_rtl_dump_file): Remove usage of TDF_RTL.
      	* dumpfile.h (enum dump_kind): New enum type.
      	(struct dump_file_info): Create constructor and
      	format fields and comments.
      	* passes.c (pass_manager::register_one_dump_file):
      	Use num dump_kind.
      	* statistics.c (statistics_early_init): Likewise.
      	* tree-ssa-loop-prefetch.c (dump_mem_details): Replace
      	TDF_TREE with TDF_SLIM.
      	(gather_memory_references_ref): Likewise.
      
      From-SVN: r248206
      Martin Liska committed
    • Define CONSTEXPR macro and use it in vec.h. · 671d5bcb
      2017-05-18  Martin Liska  <mliska@suse.cz>
      
      	* ansidecl.h: Define CONSTEXPR macro.
      2017-05-18  Martin Liska  <mliska@suse.cz>
      
      	* vec.h (struct vnull): Use it.
      
      From-SVN: r248205
      Martin Liska committed
    • ipa-inline-analysis.c (predicate_conditions): Move to ipa-inline.h (true_predicate... · dbcb3c74
      
      	* ipa-inline-analysis.c (predicate_conditions): Move to ipa-inline.h
      	(true_predicate, false_predicate, true_predicate_p,
      	false_predicate_p): Remove.
      	(single_cond_predicate, not_inlined_predicate): Turn to member function
      	in ipa-inline.h
      	(add_condition): Update.
      	(add_clause): Turn to...
      	(predicate::add_clause): ... this one; update; allow passing NULL
      	as parameter.
      	(and_predicates): Turn to ...
      	(predicate::operator &=): ... this one.
      	(predicates_equal_p): Move to predicate::operator == in ipa-inline.h
      	(or_predicates): Turn to ...
      	(predicate::or_with): ... this one.
      	(evaluate_predicate): Turn to ...
      	(predicate::evaluate): ... this one.
      	(predicate_probability): Turn to ...
      	(predicate::probability): ... this one.
      	(dump_condition): Update.
      	(dump_predicate): Turn to ...
      	(predicate::dump): ... this one.
      	(account_size_time): Update.
      	(edge_set_predicate): Update.
      	(set_hint_predicate): UPdate.
      	(evaluate_conditions_for_known_args): Update.
      	(evaluate_properties_for_edge): Update.
      	(remap_predicate_after_duplication): Turn to...
      	(predicate::remap_after_duplication): ... this one.
      	(remap_hint_predicate_after_duplication): Update.
      	(inline_summary_t::duplicate): UPdate.
      	(dump_inline_edge_summary): Update.
      	(dump_inline_summary): Update.
      	(set_cond_stmt_execution_predicate): Update.
      	(set_switch_stmt_execution_predicate): Update.
      	(compute_bb_predicates): Update.
      	(will_be_nonconstant_expr_predicate): Update.
      	(will_be_nonconstant_predicate): Update.
      	(phi_result_unknown_predicate): Update.
      	(predicate_for_phi_result): Update.
      	(array_index_predicate): Update.
      	(estimate_function_body_sizes): Update.
      	(estimate_node_size_and_time): Update.
      	(estimate_ipcp_clone_size_and_time): Update.
      	(remap_predicate): Rename to ...
      	(predicate::remap_after_inlining): ... this one.
      	(remap_hint_predicate): Update.
      	(inline_merge_summary): Update.
      	(inline_update_overall_summary): Update.
      	(estimate_size_after_inlining): Update.
      	(read_predicate): Rename to ...
      	(predicate::stream_in): ... this one.
      	(read_inline_edge_summary): Update.
      	(write_predicate): Rename to ...
      	(predicate::stream_out): ... this one.
      	(write_inline_edge_summary): Update.
      	* ipa-inline.h (MAX_CLAUSES): Turn to predicate::max_clauses.
      	(clause_t): Turn to uint32_t
      	(predicate): Turn to class; implement constructor and operators
      	==, !=, &
      	(size_time_entry): Update.
      	(inline_summary): Update.
      	(inline_edge_summary): Update.
      
      From-SVN: r248204
      Jan Hubicka committed
    • fold-vec-div-float.c: Update dg-requires and dg-options statements. · cdefeea2
      2017-05-18  Will Schmidt  <will_schmidt@vnet.ibm.com>
      
      [gcc/testsuite]
      
      	* fold-vec-div-float.c: Update dg-requires and dg-options statements.
      	* fold-vec-div-floatdouble.c: Likewise.
      	* fold-vec-logical-ands-char.c: Likewise.
      	* fold-vec-logical-ands-int.c: Likewise.
      	* fold-vec-logical-ands-short.c: Likewise.
      	* fold-vec-logical-ors-char.c: Likewise.
      	* fold-vec-logical-ors-int.c: Likewise.
      	* fold-vec-logical-ors-short.c: Likewise.
      	* fold-vec-logical-other-char.c: Likewise.
      	* fold-vec-mule-misc.c: Likewise.
      	* fold-vec-mult-float.c: Likewise.
      	* fold-vec-mult-floatdouble.c: Likewise.
      	* fold-vec-mult-int.c: Likewise.
      	* fold-vec-mult-int128-p9.c: Likewise.
      	* fold-vec-sub-floatdouble.c: Likewise.
      	* fold-vec-div-longlong.c: Update dg-requires and dg-options statements.
      	Add lp64 requirement.
      	* fold-vec-mult-int128-p8.c: Likewise.
      	* fold-vec-logical-ors-longlong.c: Fix comment typo.
      
      From-SVN: r248202
      Will Schmidt committed
    • Fix up dg-option to resolve problems reported by David Edelshon for AIX. · 62ee030a
      2017-05-17  Steven Munroe  <munroesj@gcc.gnu.org>
      
      	* gcc.target/powerpc/bmi-andn-1.c: Fix-up dg-options.
      	* gcc.target/powerpc/bmi-andn-2.c: Fix-up dg-options.
      	* gcc.target/powerpc/bmi-bextr-1.c: Fix-up dg-options.
      	* gcc.target/powerpc/bmi-bextr-2.c: Fix-up dg-options.
      	* gcc.target/powerpc/bmi-bextr-4.c: Fix-up dg-options.
      	* gcc.target/powerpc/bmi-bextr-5.c: Fix-up dg-options.
      	* gcc.target/powerpc/bmi-blsi-1.c: Fix-up dg-options.
      	* gcc.target/powerpc/bmi-blsi-2.c: Fix-up dg-options.
      	* gcc.target/powerpc/bmi-blsmsk-1.c: Fix-up dg-options.
      	* gcc.target/powerpc/bmi-blsmsk-2.c: Fix-up dg-options.
      	* gcc.target/powerpc/bmi-blsr-1.c: Fix-up dg-options.
      	* gcc.target/powerpc/bmi-blsr-2.c: Fix-up dg-options.
      	* gcc.target/powerpc/bmi-tzcnt-1.c: Fix-up dg-options.
      	* gcc.target/powerpc/bmi-tzcnt-2.c: Fix-up dg-options.
      	* gcc.target/powerpc/bmi2-bzhi32-1.c: Fix-up dg-options.
      	* gcc.target/powerpc/bmi2-bzhi64-1.c: Fix-up dg-options.
      	* gcc.target/powerpc/bmi2-bzhi64-1a.c: Fix-up dg-options.
      	* gcc.target/powerpc/bmi2-mulx32-1.c: Fix-up dg-options.
      	* gcc.target/powerpc/bmi2-mulx32-2.c: Fix-up dg-options.
      	* gcc.target/powerpc/bmi2-mulx64-1.c: Fix-up dg-options.
      	* gcc.target/powerpc/bmi2-mulx64-2.c: Fix-up dg-options.
      	* gcc.target/powerpc/bmi2-pdep32-1.c: Fix-up dg-options.
      	* gcc.target/powerpc/bmi2-pdep64-1.c: Fix-up dg-options.
      	* gcc.target/powerpc/bmi2-pext32-1.c: Fix-up dg-options.
      	* gcc.target/powerpc/bmi2-pext64-1.c: Fix-up dg-options.
      	* gcc.target/powerpc/bmi2-pext64-1a.c: Fix-up dg-options.
      
      From-SVN: r248201
      Steven Munroe committed
    • More dump_flags_t conversion · c7ddc044
      	gcc/brig/
      	* brigfrontend/brig-to-generic.h (class brig_to_generic): Use
      	"dump_flags_t" for "m_dump_flags" member.
      
      From-SVN: r248200
      Thomas Schwinge committed
    • * c-decl.c (pushdecl_top_level): Delete unused function. · 8a57ecff
      From-SVN: r248199
      Nathan Sidwell committed
    • cp-tree.h (lookup_add): Swap args. · 31ab89c1
      	* cp-tree.h (lookup_add): Swap args.
      	(ovl_cons, build_overload): Delete.
      	* name-lookup.c (add_function, push_overloaded_decl_1)
      	do_nonmember_using_decl, merge_functions, remove_hidden_names):
      	Use lookup_add, ovl_insert.
      	* pt.c (check_explicit_specialization): Use lookup_add.
      	(do_class_deduction): Likewise. Refactor if.
      	* tree.c (lookup_add): Swap args.
      	(ovl_cons, build_overload): Delete.
      (--This line, and those below, will be ignored--
      
      M    cp/cp-tree.h
      M    cp/name-lookup.c
      M    cp/pt.c
      M    cp/ChangeLog
      M    cp/tree.c
      
      From-SVN: r248198
      Nathan Sidwell committed
    • c-common.c (c_common_type_for_size): Use NULL_TREE instead of 0. · 6574d78e
      	* c-common.c (c_common_type_for_size): Use NULL_TREE instead of 0.
      	(c_common_fixed_point_type_for_size): Likewise.
      	(c_common_type_for_mode): Likewise.
      	(shorten_compare): Likewise.
      	(c_promoting_integer_type_p): Use false/true instead of 0/1.
      	* c-pragma.c (maybe_apply_renaming_pragma): Use NULL_TREE instead of 0.
      
      	* c-decl.c (match_builtin_function_types): Use NULL_TREE instead of 0.
      	(check_earlier_gotos): Likewise.
      	(define_label): Likewise.
      	(pending_xref_error): Likewise.
      	(smallest_type_quals_location): Likewise.
      	(grokdeclarator): Likewise.
      	(grokparms): Likewise.
      	(identifier_global_value): Likewise.
      	* c-typeck.c (set_nonincremental_init_from_string): Likewise.
      	(find_init_member): Likewise.
      
      From-SVN: r248195
      Marek Polacek committed
    • Move X==15-X to match.pd · 8b656ca7
      2017-05-18  Marc Glisse  <marc.glisse@inria.fr>
      
      	* fold-const.c (fold_binary_loc): Move transformation...
      	* match.pd (C - X CMP X): ... here.
      
      From-SVN: r248193
      Marc Glisse committed
    • c-common.c (self_promoting_args_p): Change the return type to bool. · e3455240
      	* c-common.c (self_promoting_args_p): Change the return type to bool.
      	Use false/true instead of 0/1.
      	* c-common.h (self_promoting_args_p): Update.
      
      	* c-decl.c (start_decl): Use false/true instead of 0/1.
      	(grokdeclarator): Likewise.
      	(finish_struct): Likewise.
      	(start_function): Change the return type to bool.  Use false/true
      	instead of 0/1.
      	(declspecs_add_qual): Use UNKNOWN_LOCATION instead of 0.
      	* c-tree.h (start_function): Update.
      	* c-typeck.c (same_translation_unit_p): Change the return type to bool.
      	(set_designator): Change the return type to bool.  Use false/true
      	instead of 0/1.
      
      From-SVN: r248192
      Marek Polacek committed
    • name-lookup.c (find_local_binding): New, broken out of ... · 59a4ede9
      	* name-lookup.c (find_local_binding): New, broken out of ...
      	(lookup_name_innermost_nonclass_level_1): ... here.  Call it.
      	(set_namespace_binding): Swap scope & name args.
      	(namespace_binding_1): Likewise.
      	(pushdecl_maybe_friend_1): Adjust set_namespace_binding call.
      	(push_overloaded_decl_1): Likewise.
      	(set_global_binding): Likewise.
      	(get_namespace_binding): Adjust namespace_binding_1 call.
      
      From-SVN: r248191
      Nathan Sidwell committed
    • Fix typos in libstdc++ manual · 8985968c
      	* doc/xml/manual/policy_data_structures.xml: Fix typo.
      	* doc/xml/manual/test_policy_data_structures.xml: Likewise.
      	* doc/html/*: Regenerate.
      
      From-SVN: r248189
      Jonathan Wakely committed
    • re PR fortran/79968 (diagnostics: merge similar diagnostics containing -fdec-structure) · cf004230
      2017-05-18  Fritz Reese <fritzoreese@gmail.com>
      
          PR fortran/79968
      
          gcc/fortran/ChangeLog:
      
      	PR fortran/79968
      	* decl.c (match_attr_spec, gfc_match_automatic,
      	gfc_match_static, gfc_match_structure_decl): Unify diagnostic
      	errors regarding -fdec options.
      	* io.c (match_dec_etag, match_dec_vtag, match_dec_ftag): Ditto.
      
      From-SVN: r248188
      Fritz Reese committed
    • Update libstdc++ version info in manual · 8268fc60
      	* doc/xml/manual/abi.xml: Document latest library versions.
      	* doc/xml/manual/build_hacking.xml: Document requirement to update
      	abi.xml when bumping library versions.
      	* doc/html/*: Regenerate.
      
      From-SVN: r248186
      Jonathan Wakely committed
    • MAINTAINERS: Add self to Write After Approval · 7880c1a5
      
      	* MAINTAINERS: Add self to Write After Approval
      
      From-SVN: r248185
      Sheldon Lobo committed
    • Minor SPARC T4 and M7 fixes and additions. · 00a84d0e
      	* config/sparc/sparc.c (sparc_option_override): Set function
      	alignment for -mcpu=niagara7 to 64 to match the I$ line.
      	* config/sparc/sparc.h (BRANCH_COST): Set the SPARC M7 branch
      	latency to 1.
      	* config/sparc/sparc.h (BRANCH_COST): Set the SPARC T4 branch
      	latency to 2.
      	* config/sparc/sol2.h: Fix a ASM_CPU32_DEFAULT_SPEC typo.
      	* gcc.target/sparc/niagara7-align.c: New test.
      
      From-SVN: r248184
      Sheldon Lobo committed
    • re PR sanitizer/80797 (-fsanitize=null doesn't instrument &s->x) · 243c2883
      	PR sanitizer/80797
      	* ubsan.c (instrument_null): Unwrap ADDR_EXPRs.
      	(pass_ubsan::execute): Call gimple_assign_single_p instead of
      	gimple_assign_load_p.
      
      	* c-c++-common/ubsan/null-12.c: New test.
      
      From-SVN: r248179
      Marek Polacek committed
    • Daily bump. · a7ab6638
      From-SVN: r248178
      GCC Administrator committed
  2. 17 May, 2017 11 commits