1. 01 Jul, 2017 5 commits
  2. 30 Jun, 2017 26 commits
    • re PR ipa/81261 (ICE with -fno-guess-branch-probability) · 77616c7e
      
      	PR ipa/81261
      	* tree-inline.c (expand_call_inline): Combine profile statuses.
      
      From-SVN: r249856
      Jan Hubicka committed
    • PR c++/81257 - ICE with invalid ::template. · 3d4de231
      	PR c++/54769 - wrong lookup of dependent template-name.
      	* parser.c (cp_parser_template_name): Revert part of last change.
      
      From-SVN: r249855
      Jason Merrill committed
    • tree-if-conv.c (predicate_scalar_phi): Update new_stmt if fold_stmt returned true. · fb6a764d
      2017-06-30  Andrew Pinski  <apinski@cavium.com>
      
              * tree-if-conv.c (predicate_scalar_phi): Update new_stmt if
              fold_stmt returned true.
      2017-06-30  Andrew Pinski  <apinski@cavium.com>
      
              * gcc.dg/torture/pr81245.c: New testcase.
      
      From-SVN: r249854
      Andrew Pinski committed
    • config-lang.in (gtfiles): Add cp/lex.c. · 08fb1316
      	* config-lang.in (gtfiles): Add cp/lex.c.
      	* cp-tree.h (mangle_convop_name_for_type): Rename ...
      	(make_conv_op_name): ... here.  Move to lex.
      	* lambda.c (maybe_add_lambda_conv_op): Update.
      	* parser.c (cp_parser_conversion_function_id): Update.
      	* pt.c (tsubst_decl, tsubst_baselink, tsubst_copy,
      	tsubst_copy_and_build): Update.
      	* semantics.c (apply_deduced_return_type): Update.
      	* mangle.c (conv_type_hasher, conv_type_names,
      	mangle_conv_op_name_for_type): Move to ...
      	* lex.c (conv_type_hasher, conv_type_names, make_convop_name):
      	... here.  Rename.
      
      	* libcp1plugin.cc (plugin_build_decl): Use make_conv_op_name.
      	(plugin_build_dependent_expr): Likewise.
      
      From-SVN: r249852
      Nathan Sidwell committed
    • ggc.h (empty_string): Delete. · 618400bc
      	* ggc.h (empty_string): Delete.
      	* cfgexpand.c (expand_asm_stmt): Use plain "".
      	* optabs.c (expand_asm_memory_barrier): Likewise.
      	* stringpool.c (empty_string): Delete.
      	(digit_vector, digit_string): Delete.
      	(ggc_alloc_string): Use plain "", don't optimize single digit
      	strings.  Use ggc_alloc_atomic.
      
      From-SVN: r249851
      Nathan Sidwell committed
    • [rtlanal] Do a better job of costing parallel sets containing flag-setting operations. · 84682fd2
          
      Many parallel set insns are of the form of a single set that also sets
      the condition code flags.  In this case the cost of such an insn is
      normally the cost of the part that doesn't set the flags, since
      updating the condition flags is simply a side effect.
      
      At present all such insns are treated as having unknown cost (ie 0)
      and combine assumes that such insns are infinitely more expensive than
      any other insn sequence with a non-zero cost.
      
      This patch addresses this problem by allowing insn_rtx_cost to ignore
      the condition setting part of a PARALLEL iff there is exactly one
      comparison set and one non-comparison set.  If the only set operation
      is a comparison we still use that as the basis of the insn cost.
      
      	* rtlanal.c (insn_rtx_cost): If a parallel contains exactly one
      	comparison set and one other set, use the cost of the non-comparison
      	set.
      
      Bootstrapped on aarch64-none-linuxgnu
      
      From-SVN: r249850
      Richard Earnshaw committed
    • ggc.h: Replace all 'static inline' with plain 'inline'. · e886224b
      	* ggc.h: Replace all 'static inline' with plain 'inline'.  Fix
      	some formatting.
      
      From-SVN: r249848
      Nathan Sidwell committed
    • tree-cfg.c (group_case_labels_stmt): Merge scanning and compressing loops. · 39426ab7
      	* tree-cfg.c (group_case_labels_stmt): Merge scanning and compressing
      	loops.  Remove now unneeded calls to gimple_switch_set_label() that
      	just set removed labels to NULL_TREE.
      
      From-SVN: r249847
      Peter Bergner committed
    • tree-ssanames.c (set_range_info_raw): Abstract from ... · 059ab149
      	* tree-ssanames.c (set_range_info_raw): Abstract from ...
      	(set_range_info): ...here.  Only call set_range_info_raw if domain
      	is useful.
      	(set_nonzero_bits): Call set_range_info_raw.
      	* tree-ssanames.h (set_range_info_raw): New.
      testsuite/
      	* gcc.dg/Walloca-14.c: Adapt test to recognize new complaint of
      	unbounded use.
      
      From-SVN: r249846
      Aldy Hernandez committed
    • Fix location of typeid() (PR c++/80014) · e59e8b5a
      gcc/cp/ChangeLog:
      	PR c++/80014
      	* parser.c (cp_parser_postfix_expression): Construct a location
      	for typeid expressions.
      
      gcc/testsuite/ChangeLog:
      	PR c++/80014
      	* g++.dg/plugin/diagnostic-test-expressions-1.C (std::type_info):
      	Add declaration.
      	(test_typeid): New test function.
      
      From-SVN: r249845
      David Malcolm committed
    • re PR target/81225 (ICE with -mavx512ifma -O3 -ffloat-store) · e855bdc0
      	PR target/81225
      	* config/i386/sse.md (vec_extract_lo_<mode><mask_name>): For
      	V8FI, V16FI and VI8F_256 iterators, use <store_mask_predicate> instead
      	of nonimmediate_operand and <store_mask_constraint> instead of m for
      	the input operand.  For V8FI iterator, always split if input is a MEM.
      	For V16FI and V8SF_256 iterators, don't test if both operands are MEM
      	if <mask_applied>.  For VI4F_256 iterator, use <store_mask_predicate>
      	instead of register_operand and <store_mask_constraint> instead of v for
              the input operand.  Make sure both operands aren't MEMs for if not
      	<mask_applied>.
      
      	* gcc.target/i386/pr81225.c: New test.
      
      From-SVN: r249844
      Jakub Jelinek committed
    • cp-tree.h (lookup_fnfields_1, [...]): Don't declare. · fe32bb1b
      
      	* cp-tree.h (lookup_fnfields_1, class_method_index_for_fn): Don't
      	declare.
      	(lookup_all_conversions): Declare.
      	* class.c (get_basefndecls): Use lookup_fnfields_slot.
      	* decl.c (register_dtor_fn): Use lookup_fnfields_slot.
      	* decl2.c (check_class_fn): Use lookup_fnfields_slot.  Rework
      	diagnostics.
      	* pt.c (retrieve_specialization): Use lookup_fnfields_slot.
      	(check_explicit_specialization): Use lookup_fnfields_slot_nolazy,
      	lookup_all_conversions.
      	* search.c (lookup_fnfields_1): Make static.
      	(lookup_all_conversions): New.
      	(class_method_index_for_fn): Delete.
      	* semantics.c (classtype_has_nothrow_assign_or_copy_p): Use
      	lookup_fnfields_slot.
      
      	* g++.dg/concepts/memfun-err.C: Adjust diagnostics.
      	* g++.dg/cpp0x/decltype9.C: Likewise.
      	* g++.dg/cpp0x/forw_enum9.C: Likewise.
      	* g++.dg/lookup/decl1.C: Likewise.
      	* g++.dg/lookup/extern-c-redecl.C: Likewise.
      	* g++.dg/other/pr28432.C: Likewise.
      	* g++.dg/parse/crash12.C: Likewise.
      	* g++.dg/parse/enum3.C: Likewise.
      	* g++.dg/parse/operator6.C: Likewise.
      	* g++.dg/template/crash69.C: Likewise.
      	* g++.dg/template/error27.C: Likewise.
      	* g++.dg/template/error28.C: Likewise.
      	* g++.dg/template/memfriend6.C: Likewise.
      	* g++.old-deja/g++.mike/err1.C: Likewise.
      	* g++.old-deja/g++.mike/p811.C: Likewise.
      	* g++.old-deja/g++.other/crash25.C: Likewise.
      	* g++.old-deja/g++.other/dtor4.C: Likewise.
      	* g++.old-deja/g++.pt/t37.C: Likewise.
      
      From-SVN: r249843
      Nathan Sidwell committed
    • * lto-wrapper.c (copy_file) Close both file descriptors before · 367e91e1
      	exiting normally.
      
      From-SVN: r249841
      Sylvestre Ledru committed
    • Fix removal of ifunc (PR ipa/81214). · aaa587d4
      2017-06-30  Martin Liska  <mliska@suse.cz>
      
      	PR ipa/81214
      	* gcc.target/i386/pr81214.c: New test.
      2017-06-30  Martin Liska  <mliska@suse.cz>
      
      	PR ipa/81214
      	* multiple_target.c (create_dispatcher_calls): Make ifunc
      	also for function that don't have calls or are not referenced.
      
      From-SVN: r249840
      Martin Liska committed
    • tree-vect-slp.c (vect_slp_analyze_node_operations): Only analyze the first scalar stmt. · bd2f172f
      2017-06-30  Richard Biener  <rguenther@suse.de>
      
      	* tree-vect-slp.c (vect_slp_analyze_node_operations): Only
      	analyze the first scalar stmt.  Move vector type computation
      	for the BB case here from ...
      	* tree-vect-stmts.c (vect_analyze_stmt): ... here.  Guard
      	live operation processing in the SLP case properly.
      
      From-SVN: r249839
      Richard Biener committed
    • call.c (build_new_method_call_1): Use constructo_name to get ctor name. · 3b5c768c
      	* call.c (build_new_method_call_1): Use constructo_name to get
      	ctor name.  Move argument processing earlier to merge cdtor
      	handling blocks.
      	* decl.c (grokfndecl): Cdtors have special names.
      	* method.c (implicitly_declare_fn): Likewise. Simplify flag setting.
      	* pt.c (check_explicit_specialization): Cdtor name is already
      	special.
      	* search.c (class_method_index_for_fn): Likewise.
      
      	* g++.dg/plugin/decl-plugin-test.C: Expect special ctor name.
      
      From-SVN: r249838
      Nathan Sidwell committed
    • re PR c++/81229 (ICE in c_tree_chain_next on aarch64) · 274c1516
      	PR c++/81229
      	* name-lookup.c (do_pushdecl): Reset IDENTIFIER_TYPE when finding
      	a matching TYPE_DECL.
      
      	* g++.dg/lookup/pr81229.C: New.
      
      From-SVN: r249835
      Nathan Sidwell committed
    • graph.c (draw_cfg_node_succ_edges): Fix broken dot syntax. · 273a94e0
      2017-06-30  Richard Biener  <rguenther@suse.de>
      
      	* graph.c (draw_cfg_node_succ_edges): Fix broken dot syntax.
      
      From-SVN: r249834
      Richard Biener committed
    • Call BUILT_IN_ASAN_HANDLE_NO_RETURN before BUILT_IN_UNWIND_RESUME (PR sanitizer/81021). · c497284c
      2017-06-30  Martin Liska  <mliska@suse.cz>
      
      	PR sanitizer/81021
      	* g++.dg/asan/pr81021.C: New test.
      2017-06-30  Martin Liska  <mliska@suse.cz>
      
      	PR sanitizer/81021
      	* tree-eh.c (lower_resx): Call BUILT_IN_ASAN_HANDLE_NO_RETURN
      	before BUILT_IN_UNWIND_RESUME when ASAN is used.
      
      From-SVN: r249833
      Martin Liska committed
    • Documentation: Clean up AArch64 options. · 516fa894
      	gcc/
      	2017-06-30  Yvan Roux  <yvan.roux@linaro.org>
      
      	* doc/invoke.texi (AArch64): Add missing options and remove redundant
      	ones.
      
      From-SVN: r249832
      Yvan Roux committed
    • re PR tree-optimization/81249 (ICE: error: incompatible types in PHI argument 0) · 4812f0b7
      2017-06-30  Richard Biener  <rguenther@suse.de>
      
      	PR tree-optimization/81249
      	* tree-vect-loop.c (vect_create_epilog_for_reduction): Convert
      	condition reduction result to original scalar type.
      
      	* g++.dg/torture/pr81249.C: New testcase.
      
      From-SVN: r249831
      Richard Biener committed
    • profile-count.h: Fix typos and whitespace issues. · 5ef4d61d
      gcc/ChangeLog:
      
      2017-06-30  Andreas Krebbel  <krebbel@linux.vnet.ibm.com>
      
      	* profile-count.h (enum profile_quality): Fix typos and whitespace
      	issues.
      
      From-SVN: r249830
      Andreas Krebbel committed
    • S/390: Adjust to the recent branch probability changes. · 8f746f8c
      This fixes the bootstrap failure triggered by the recent changes wrt
      branch probabilities aka emit_cmp_and_jump_insns does not accept
      integers as branch probability anymore.
      
      gcc/ChangeLog:
      
      2017-06-30  Andreas Krebbel  <krebbel@linux.vnet.ibm.com>
      
      	* config/s390/s390.c (s390_expand_setmem): Adjust to the new data
      	type for branch probabilities.
      
      From-SVN: r249829
      Andreas Krebbel committed
    • aarch64-fusion-pairs.def: Add ALU_BRANCH entry. · 00c7c57f
      2017-06-29  Julian Brown  <julian@codesourcery.com>
      	    Naveen H.S  <Naveen.Hurugalawadi@cavium.com>
      
      	* config/aarch64/aarch64-fusion-pairs.def: Add ALU_BRANCH entry.
      	* config/aarch64/aarch64.c (AARCH64_FUSE_ALU_BRANCH): New fusion type.
      	(thunderx2t99_tunings): Set AARCH64_FUSE_ALU_BRANCH flag.
      	(aarch_macro_fusion_pair_p): Add support for AARCH64_FUSE_ALU_BRANCH.
      
      
      Co-Authored-By: Naveen H.S <Naveen.Hurugalawadi@cavium.com>
      
      From-SVN: r249828
      Julian Brown committed
    • aarch64.c (aarch_macro_fusion_pair_p): Push the check for CC usage into AARCH64_FUSE_CMP_BRANCH. · 509f819a
      2017-06-29  Naveen H.S  <Naveen.Hurugalawadi@cavium.com>
      
      	* config/aarch64/aarch64.c (aarch_macro_fusion_pair_p): Push the
      	check for CC usage into AARCH64_FUSE_CMP_BRANCH.
      	* config/i386/i386.c (ix86_macro_fusion_pair_p): Push the check for
      	CC usage from generic code to here.
      	* sched-deps.c (sched_macro_fuse_insns): Move the condition for
      	CC usage into the target macros.
      
      From-SVN: r249827
      Naveen H.S committed
    • Daily bump. · 44b222ce
      From-SVN: r249826
      GCC Administrator committed
  3. 29 Jun, 2017 9 commits