1. 30 Jun, 2017 6 commits
  2. 29 Jun, 2017 34 commits
    • netbsd.h (NETBSD_LIB_SPEC): Add -lc when creating shared objects. · 9b260ce0
      2017-06-29  Maya Rashish  <coypu@sdf.org>
      
      	* config/netbsd.h (NETBSD_LIB_SPEC): Add -lc when creating shared
      	objects.
      
      From-SVN: r249822
      Maya Rashish committed
    • arm-builtins.c: Include profile-count.h · 84a1b7fe
      
      	* arm/arm-builtins.c: Include profile-count.h
      	* except.c (sjlj_emit_function_enter): Use
      	profile_probability::unlikely.
      
      From-SVN: r249821
      Jan Hubicka committed
    • class.c (add_method): Change pair of errors to error + inform. · 8e09cb8b
      /cp
      2017-06-29  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	* class.c (add_method): Change pair of errors to error + inform.
      	(handle_using_decl): Likewise.
      
      /testsuite
      2017-06-29  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	* g++.dg/cpp0x/inh-ctor3.C: Adjust for dg-message vs dg-error.
      	* g++.dg/diagnostic/variadic1.C: Likewise.
      	* g++.dg/gomp/udr-3.C: Likewise.
      	* g++.dg/overload/error1.C: Likewise.
      	* g++.dg/overload/error2.C: Likewise.
      	* g++.dg/template/duplicate1.C: Likewise.
      	* g++.old-deja/g++.benjamin/warn02.C: Likewise.
      	* g++.old-deja/g++.brendan/arm2.C: Likewise.
      	* g++.old-deja/g++.other/redecl2.C: Likewise.
      	* g++.old-deja/g++.other/redecl4.C: Likewise.
      	* g++.old-deja/g++.pt/memtemp78.C: Likewise.
      
      From-SVN: r249820
      Paolo Carlini committed
    • PR c++/81180 - ICE with C++17 deduction of member class template. · 47304c6a
      	* pt.c (build_deduction_guide): Correct member template handling.
      
      From-SVN: r249816
      Jason Merrill committed
    • rs6000.c (toc_relative_expr_p): Make tocrel_base and tocrel_offset be pointer… · f990f3a3
      rs6000.c (toc_relative_expr_p): Make tocrel_base and tocrel_offset be pointer args rather than implicitly using...
      
      2017-06-29  Aaron Sawdey  <acsawdey@linux.vnet.ibm.com>
      
              * config/rs6000/rs6000.c (toc_relative_expr_p): Make tocrel_base
              and tocrel_offset be pointer args rather than implicitly using
              static versions.
              (legitimate_constant_pool_address_p, rs6000_emit_move,
              const_load_sequence_p, adjust_vperm): Add local tocrel_base and
              tocrel_offset and use in toc_relative_expr_p call.
              (print_operand, print_operand_address): Use static tocrel_base_oac
              and tocrel_offset_oac.
              (rs6000_output_addr_const_extra): Use static tocrel_base_oac and
              tocrel_offset_oac.
      
      From-SVN: r249815
      Aaron Sawdey committed
    • PR c++/81188 - matching decltype of member function call. · 5497bd2b
      	* tree.c (cp_tree_equal): Remove COMPONENT_REF special case.
      
      From-SVN: r249813
      Jason Merrill committed
    • builtins.md (ffssi2_internal): Correct constraint. · becb93d0
      2017-06-29  Maya Rashish  <coypu@sdf.org>
      
      	* config/vax/builtins.md (ffssi2_internal): Correct constraint.
      
      From-SVN: r249812
      Maya Rashish committed
    • expr.c (expand_expr): When testing for unaligned objects... · 3ba358bf
      	* expr.c (expand_expr) <normal_inner_ref>: When testing for unaligned
      	objects, take into account only the alignment of 'op0' and 'mode1' if
      	'op0' is a MEM.
      
      From-SVN: r249811
      Eric Botcazou committed
    • re PR fortran/77765 (ICE in gfc_match_oacc_routine, at fortran/openmp.c:1781) · 74582a3e
      	PR fortran/77765
      
      	gcc/fortran/
      	* openmp.c (gfc_match_oacc_routine): Check if proc_name exist before
      	comparing the routine name against it.
      
      	gcc/testsuite/
      	* gfortran.dg/goacc/pr77765.f90: New test.
      
      From-SVN: r249809
      Cesar Philippidis committed
    • ccmp_2.c: New test. · 6da4066f
      2017-06-29  Steve Ellcey  <sellcey@cavium.com>
      
      	* gcc.target/aarch64/ccmp_2.c: New test.
      
      From-SVN: r249806
      Steve Ellcey committed
    • ccmp.c (ccmp_tree_comparison_p): New function. · f580a969
      2017-06-29  Steve Ellcey  <sellcey@cavium.com>
      
      	* ccmp.c (ccmp_tree_comparison_p): New function.
      	(ccmp_candidate_p): Update to use above function.
      	(get_compare_parts): New function.
      	(expand_ccmp_next): Update to use new functions.
      	(expand_ccmp_expr_1): Take tree arg instead of gimple, update to use
      	new functions.
      	(expand_ccmp_expr): Pass tree instead of gimple to expand_ccmp_expr_1,
      	take mode as argument.
      	* ccmp.h (expand_ccmp_expr): Add mode as argument.
      	* expr.c (expand_expr_real_1): Pass mode as argument.
      
      From-SVN: r249805
      Steve Ellcey committed
    • re PR c++/81247 (ICE on invalid C++ code with malformed namespace declaration:… · be3b7dcf
      re PR c++/81247 (ICE on invalid C++ code with malformed namespace declaration: in do_push_nested_namespace, at cp/name-lookup.c:6002)
      
      	PR c++/81247
      	* parser.c (cp_parser_namespace_definition): Immediately close the
      	namespace if there's no open-brace.
      	* name-lookup.c (do_pushdecl): Reset OLD when pushing into new
      	namespace.
      
      From-SVN: r249804
      Nathan Sidwell committed
    • bid2dpd_dpd2bid.c (_bid_to_dpd32): Fix whitespace. · 6044f5e3
      	* bid/bid2dpd_dpd2bid.c (_bid_to_dpd32): Fix whitespace.
      	(_dpd_to_bid32): Simplify identical code on multiple branches.
      	Fix whitespace.
      	(_bid_to_dpd64, _dpd_to_bid64): Likewise.
      	(_bid_to_dpd128, _dpd_to_bid128): Likewise.
      
      From-SVN: r249803
      Sylvestre Ledru committed
    • combine: Print insns with the cost dump · e9d22c8a
      In the combine dump file, at the start there is a list of the RTL cost
      of every insn.  The only thing listed about the insns is the UID though.
      To make it more useful, this patch prints the insn itself as well (in
      slim format).
      
      
      	* combine.c (combine_instructions): Print insns to dump_file, together
      	with their costs.
      
      From-SVN: r249802
      Segher Boessenkool committed
    • asan.c (asan_emit_stack_protection): Update. · 357067f2
      
      	* asan.c (asan_emit_stack_protection): Update.
      	(create_cond_insert_point): Update.
      	* auto-profile.c (afdo_propagate_circuit): Update.
      	* basic-block.h (struct edge_def): Turn probability to
      	profile_probability.
      	(EDGE_FREQUENCY): Update.
      	* bb-reorder.c (find_traces_1_round): Update.
      	(better_edge_p): Update.
      	(sanitize_hot_paths): Update.
      	* cfg.c (unchecked_make_edge): Initialize probability to uninitialized.
      	(make_single_succ_edge): Update.
      	(check_bb_profile): Update.
      	(dump_edge_info): Update.
      	(update_bb_profile_for_threading): Update.
      	* cfganal.c (connect_infinite_loops_to_exit): Initialize new edge
      	probabilitycount to 0.
      	* cfgbuild.c (compute_outgoing_frequencies): Update.
      	* cfgcleanup.c (try_forward_edges): Update.
      	(outgoing_edges_match): Update.
      	(try_crossjump_to_edge): Update.
      	* cfgexpand.c (expand_gimple_cond): Update make_single_succ_edge.
      	(expand_gimple_tailcall): Update.
      	(construct_init_block): Use make_single_succ_edge.
      	(construct_exit_block): Use make_single_succ_edge.
      	* cfghooks.c (verify_flow_info): Update.
      	(redirect_edge_succ_nodup): Update.
      	(split_edge): Update.
      	(account_profile_record): Update.
      	* cfgloopanal.c (single_likely_exit): Update.
      	* cfgloopmanip.c (scale_loop_profile): Update.
      	(set_zero_probability): Remove.
      	(duplicate_loop_to_header_edge): Update.
      	* cfgloopmanip.h (loop_version): Update prototype.
      	* cfgrtl.c (try_redirect_by_replacing_jump): Update.
      	(force_nonfallthru_and_redirect): Update.
      	(update_br_prob_note): Update.
      	(rtl_verify_edges): Update.
      	(purge_dead_edges): Update.
      	(rtl_lv_add_condition_to_bb): Update.
      	* cgraph.c: (cgraph_edge::redirect_call_stmt_to_calle): Update.
      	* cgraphunit.c (init_lowered_empty_function): Update.
      	(cgraph_node::expand_thunk): Update.
      	* cilk-common.c: Include profile-count.h
      	* dojump.c (inv): Remove.
      	(jumpifnot): Update.
      	(jumpifnot_1): Update.
      	(do_jump_1): Update.
      	(do_jump): Update.
      	(do_jump_by_parts_greater_rtx): Update.
      	(do_compare_rtx_and_jump): Update.
      	* dojump.h (jumpifnot, jumpifnot_1, jumpif_1, jumpif, do_jump,
      	do_jump_1. do_compare_rtx_and_jump): Update prototype.
      	* dwarf2cfi.c: Include profile-count.h
      	* except.c (dw2_build_landing_pads): Use make_single_succ_edge.
      	(sjlj_emit_dispatch_table): Likewise.
      	* explow.c: Include profile-count.h
      	* expmed.c (emit_store_flag_force): Update.
      	(do_cmp_and_jump): Update.
      	* expr.c (compare_by_pieces_d::generate): Update.
      	(compare_by_pieces_d::finish_mode): Update.
      	(emit_block_move_via_loop): Update.
      	(store_expr_with_bounds): Update.
      	(store_constructor): Update.
      	(expand_expr_real_2): Update.
      	(expand_expr_real_1): Update.
      	* expr.h (try_casesi, try_tablejump): Update prototypes.
      	* gimple-pretty-print.c (dump_probability): Update.
      	(dump_profile): New.
      	(dump_gimple_label): Update.
      	(dump_gimple_bb_header): Update.
      	* graph.c (draw_cfg_node_succ_edges): Update.
      	* hsa-gen.c (convert_switch_statements): Update.
      	* ifcvt.c (cheap_bb_rtx_cost_p): Update.
      	(find_if_case_1): Update.
      	(find_if_case_2): Update.
      	* internal-fn.c (expand_arith_overflow_result_store): Update.
      	(expand_addsub_overflow): Update.
      	(expand_neg_overflow): Update.
      	(expand_mul_overflow): Update.
      	(expand_vector_ubsan_overflow): Update.
      	* ipa-cp.c (good_cloning_opportunity_p): Update.
      	* ipa-split.c (split_function): Use make_single_succ_edge.
      	* ipa-utils.c (ipa_merge_profiles): Update.
      	* loop-doloop.c (add_test): Update.
      	(doloop_modify): Update.
      	* loop-unroll.c (compare_and_jump_seq): Update.
      	(unroll_loop_runtime_iterations): Update.
      	* lra-constraints.c (lra_inheritance): Update.
      	* lto-streamer-in.c (input_cfg): Update.
      	* lto-streamer-out.c (output_cfg): Update.
      	* mcf.c (adjust_cfg_counts): Update.
      	* modulo-sched.c (sms_schedule): Update.
      	* omp-expand.c (expand_omp_for_init_counts): Update.
      	(extract_omp_for_update_vars): Update.
      	(expand_omp_ordered_sink): Update.
      	(expand_omp_for_ordered_loops): Update.
      	(expand_omp_for_generic): Update.
      	(expand_omp_for_static_nochunk): Update.
      	(expand_omp_for_static_chunk): Update.
      	(expand_cilk_for): Update.
      	(expand_omp_simd): Update.
      	(expand_omp_taskloop_for_outer): Update.
      	(expand_omp_taskloop_for_inner): Update.
      	* omp-simd-clone.c (simd_clone_adjust): Update.
      	* optabs.c (expand_doubleword_shift): Update.
      	(expand_abs): Update.
      	(emit_cmp_and_jump_insn_1): Update.
      	(expand_compare_and_swap_loop): Update.
      	* optabs.h (emit_cmp_and_jump_insns): Update prototype.
      	* predict.c (predictable_edge_p): Update.
      	(edge_probability_reliable_p): Update.
      	(set_even_probabilities): Update.
      	(combine_predictions_for_insn): Update.
      	(combine_predictions_for_bb): Update.
      	(propagate_freq): Update.
      	(estimate_bb_frequencies): Update.
      	(force_edge_cold): Update.
      	* profile-count.c (profile_count::dump): Add missing space into dump.
      	(profile_count::debug): Add newline.
      	(profile_count::differs_from_p): Explicitly convert to unsigned.
      	(profile_count::stream_in): Update.
      	(profile_probability::dump): New member function.
      	(profile_probability::debug): New member function.
      	(profile_probability::differs_from_p): New member function.
      	(profile_probability::differs_lot_from_p): New member function.
      	(profile_probability::stream_in): New member function.
      	(profile_probability::stream_out): New member function.
      	* profile-count.h (profile_count_quality): Rename to ...
      	(profile_quality): ... this one.
      	(profile_probability): New.
      	(profile_count): Update.
      	* profile.c (compute_branch_probabilities): Update.
      	* recog.c (peep2_attempt): Update.
      	* sched-ebb.c (schedule_ebbs): Update.
      	* sched-rgn.c (find_single_block_region): Update.
      	(compute_dom_prob_ps): Update.
      	(schedule_region): Update.
      	* sel-sched-ir.c (compute_succs_info): Update.
      	* stmt.c (struct case_node): Update.
      	(do_jump_if_equal): Update.
      	(get_outgoing_edge_probs): Update.
      	(conditional_probability): Update.
      	(emit_case_dispatch_table): Update.
      	(expand_case): Update.
      	(expand_sjlj_dispatch_table): Update.
      	(emit_case_nodes): Update.
      	* targhooks.c: Update.
      	* tracer.c (better_p): Update.
      	(find_best_successor): Update.
      	* trans-mem.c (expand_transaction): Update.
      	* tree-call-cdce.c: Update.
      	* tree-cfg.c (gimple_split_edge): Upate.
      	(move_sese_region_to_fn): Upate.
      	* tree-cfgcleanup.c (cleanup_control_expr_graph): Upate.
      	* tree-eh.c (lower_resx): Upate.
      	(cleanup_empty_eh_move_lp): Upate.
      	* tree-if-conv.c (version_loop_for_if_conversion): Update.
      	* tree-inline.c (copy_edges_for_bb): Update.
      	(copy_cfg_body): Update.
      	* tree-parloops.c (gen_parallel_loop): Update.
      	* tree-profile.c (gimple_gen_ic_func_profiler): Update.
      	(gimple_gen_time_profiler): Update.
      	* tree-ssa-dce.c (remove_dead_stmt): Update.
      	* tree-ssa-ifcombine.c (update_profile_after_ifcombine): Update.
      	* tree-ssa-loop-im.c (execute_sm_if_changed): Update.
      	* tree-ssa-loop-ivcanon.c (remove_exits_and_undefined_stmts): Update.
      	(unloop_loops): Update.
      	(try_peel_loop): Update.
      	* tree-ssa-loop-manip.c (tree_transform_and_unroll_loop): Update.
      	* tree-ssa-loop-split.c (connect_loops): Update.
      	(split_loop): Update.
      	* tree-ssa-loop-unswitch.c (tree_unswitch_loop): Update.
      	(hoist_guard): Update.
      	* tree-ssa-phionlycprop.c (propagate_rhs_into_lhs): Update.
      	* tree-ssa-phiopt.c (replace_phi_edge_with_variable): Update.
      	(value_replacement): Update.
      	* tree-ssa-reassoc.c (branch_fixup): Update.
      	* tree-ssa-tail-merge.c (replace_block_by): Update.
      	* tree-ssa-threadupdate.c (remove_ctrl_stmt_and_useless_edges): Update.
      	(create_edge_and_update_destination_phis): Update.
      	(compute_path_counts): Update.
      	(recompute_probabilities): Update.
      	(update_joiner_offpath_counts): Update.
      	(freqs_to_counts_path): Update.
      	(duplicate_thread_path): Update.
      	* tree-switch-conversion.c (hoist_edge_and_branch_if_true): Update.
      	(struct switch_conv_info): Update.
      	(gen_inbound_check): Update.
      	* tree-vect-loop-manip.c (slpeel_add_loop_guard): Update.
      	(vect_do_peeling): Update.
      	(vect_loop_versioning): Update.
      	* tree-vect-loop.c (scale_profile_for_vect_loop): Update.
      	(optimize_mask_stores): Update.
      	* ubsan.c (ubsan_expand_null_ifn): Update.
      	* value-prof.c (gimple_divmod_fixed_value): Update.
      	(gimple_divmod_fixed_value_transform): Update.
      	(gimple_mod_pow2): Update.
      	(gimple_mod_pow2_value_transform): Update.
      	(gimple_mod_subtract): Update.
      	(gimple_mod_subtract_transform): Update.
      	(gimple_ic): Update.
      	(gimple_stringop_fixed_value): Update.
      	(gimple_stringops_transform): Update.
      	* value-prof.h: Update.
      
      From-SVN: r249800
      Jan Hubicka committed
    • Makefile.am (MOSTLYCLEANFILES): Remove testing files and logs. · fac877a1
      	* Makefile.am (MOSTLYCLEANFILES): Remove testing files and logs.
      	(mostlyclean-local): Remove check-runtime-dir, cgo-test-dir,
      	carchive-test-dir.
      	(ECHO_ENV): Define.
      	(check-go-tool): Depend on cgo.  Write command to testlog.
      	(check-runtime): New target.
      	(check-cgo-test): New target.
      	(check-carchive-test): New target.
      	(check): Depend on check-runtime, check-cgo-test,
      	check-carchive-test.  Add @ to prettify output.
      	(.PHONY): Add check-runtime, check-cgo-test, check-carchive-test.
      	* Makefile.in: Rebuild.
      
      From-SVN: r249799
      Ian Lance Taylor committed
    • rs6000-c.c: Add support for built-in functions vector signed int vec_signed (vector float)... · e5898daf
      gcc/ChangeLog:
      
      2017-06-29  Carl Love  <cel@us.ibm.com>
      
      	* config/rs6000/rs6000-c.c: Add support for built-in functions
      	vector signed int vec_signed (vector float);
      	vector signed long long vec_signed (vector double);
      	vector signed int vec_signed2 (vector double, vector double);
      	vector signed int vec_signede (vector double);
      	vector signed int vec_signedo (vector double);
      	* config/rs6000/rs6000.c (rs6000_generate_vsigned2_code): Add
      	instruction generator.
      	* config/rs6000/vsx.md (UNSPEC_VSX_XVCVSPSXWS, UNSPEC_VSX_XVCVSPSXDS,
      	UNSPEC_VSX_VSIGNED2): Add UNSPECS.
      	(vsx_xvcvspsxws, vsx_xvcvdpuxds_scale, vsx_xvcvspuxws, vsigned2_v2df):
      	Add define_insn.
      	(vsignedo_v2df, vsignede_v2df, vunsigned2_v2df, vunsignedo_v2df,
      	vunsignede_v2df): Add define_expands.
      	* config/rs6000/rs6000-builtin.def (VEC_SIGNED, VEC_UNSIGNED,
      	VEC_SIGNED2, VEC_UNSIGNED2, VEC_SIGNEDE, VEC_UNSIGNEDE, VEC_SIGNEDO,
      	VEC_UNSIGNEDO): Add definitions.
      	* config/vsx.md (UNSPEC_VSX_XVCVSPSXWS, UNSPEC_VSX_XVCVSPSXDS,
      	UNSPEC_VSX_VSIGNED2): Add UNSPECs.
      	(vsx_xvcvspsxws, vsx_xvcvspuxws): Add define_insn.
      	(vsigned2_v2df, vsigendo_v2df, vsignede_v2df,
      	vunsigned2_v2df, vunsignedo_v2df, vunsignede_v2df): Add define_expands.
      	* config/rs6000/altivec.h (vec_signed, vec_signed2,
      	vec_signede and vec_signedo, vec_unsigned, vec_unsigned2,
      	vec_unsignede, vec_unsignedo): Add builtin defines.
      	* config/rs6000-protos.h (rs6000_generate_vsigned2_code): Add extern
      	declaration.
      	* doc/extend.texi: Update the built-in documentation file for the
      	new built-in functions.
      
      gcc/testsuite/ChangeLog:
      
      2017-06-29  Carl Love  <cel@us.ibm.com>
      
      	* gcc.target/powerpc/builtins-3-runnable.c (test_int_result,
      	test_unsigned_int_result, test_ll_int_result,
      	test_ll_unsigned_int_result): Add result checking functions, add
      	debug support.
      	(main): Add builtin function tests.
      
      From-SVN: r249798
      Carl Love committed
    • PR c++/81164 - ICE with invalid inherited constructor. · 84eb0f1a
      	* search.c (binfo_direct_p): New.
      	* name-lookup.c (do_class_using_decl): Use it.
      
      From-SVN: r249797
      Jason Merrill committed
    • misc/cgo/testcarchive: fix test to work for gccgo · 8ff22ea5
          
          This test is not yet run, but it will be soon.
          
          Reviewed-on: https://go-review.googlesource.com/47038
      
      From-SVN: r249795
      Ian Lance Taylor committed
    • cmd/go: fix -buildmode={c-archive,c-shared,pie} for gccgo · 1a7ad6ad
          
          The tests are misc/cgo tests that are not currently run but will be
          run soon.
          
          Reviewed-on: https://go-review.googlesource.com/47037
      
      From-SVN: r249794
      Ian Lance Taylor committed
    • builtins-3-vec_reve-runnable.c (dg-options, dg-skip-if): Add -mvsx -mcpu=power7. · 14836f38
      gcc/testsuite/ChangeLog:
      
      2017-06-29  Carl Love  <cel@us.ibm.com>
      
      	* gcc.target/powerpc/builtins-3-vec_reve-runnable.c (dg-options,
      	dg-skip-if): Add -mvsx -mcpu=power7.
      
      From-SVN: r249792
      Carl Love committed
    • cp-tree.h (THIS_NAME, [...]): Delete. · e3e6cc26
      	* cp-tree.h (THIS_NAME, IN_CHARGE_NAME, VTBL_PTR_TYPE,
      	VTABLE_DELTA_NAME, VTABLE_PFN_NAME): Delete.
      	* decl.c (initialize_predefined_identifiers): Name cdtor special
      	names consistently.  Use literals for above deleted defines.
      	(cxx_init_decl_processing): Use literal for vtbl_ptr_type name,
      
      From-SVN: r249791
      Nathan Sidwell committed
    • lex.c (maybe_add_lang_type_raw): Exit early, rather than use a flag. · 2de0ccc8
      	* lex.c (maybe_add_lang_type_raw): Exit early, rather than use a
      	flag.
      
      From-SVN: r249790
      Nathan Sidwell committed
    • call.c (check_dtor_name): Use constructor_name for enums too. · 56b2a94b
      	* call.c (check_dtor_name): Use constructor_name for enums too.
      	(build_new_method_call_1): Use constructor_name for cdtors and
      	show ~ for dtor.
      	* class.c (build_self_reference): Use TYPE_NAME to get name of
      	self reference.
      	* name-lookup (constructor_name): Use DECL_NAME directly.
      	(constructor_name_p): Reimplement.
      	(push_class_level_binding_1): Use TYPE_NAME directly.
      
      From-SVN: r249789
      Nathan Sidwell committed
    • class.c (finish_struct): Use OVL_P. · 79a2e690
      	* class.c (finish_struct): Use OVL_P.
      	(get_vfield_name): Measure constructor_name length.
      	* cp-tree.h (SET_CLASS_TYPE_P): Add RECORD_OR_UNION_CHECK.
      	(NON_UNION_CLASS_TYPE_P): Check RECORD_TYPE up front.
      	* cxx-pretty-print.c (is_destructor_name): Delete.
      	(pp_cxx_unqualified_id): Remove bogus destructor name checking.
      	* decl.c (grokfndecl): Move cheap checks first when looking for
      	implicit extern cness.
      
      From-SVN: r249788
      Nathan Sidwell committed
    • parser.c (cp_parser_direct_declarator): Reorder if to avoid indentation. · 9a82bd05
      	* parser.c (cp_parser_direct_declarator): Reorder if to avoid
      	indentation. Remove unnecessary assignment of constructor name.
      
      From-SVN: r249787
      Nathan Sidwell committed
    • Whitespace cleanups. · e9888922
      	* call.c (name_as_c_string): Move CONST_CAST to return.
      	(build_new_method_call_1): Remove unneeded bracing.
      	* class.c (include_empty_classes): Unbreak line.
      	* constraint.cc (tsubst_check_constraint): Add space.
      	* cp-tree.h (lang_decl_ns): Add comment.
      	(PTRMEM_CST_MEMBER): Break line.
      	* decl.c (grokfndecl): Add blank lines. Unbreak some others.
      	(grokdeclarator): Remove lines, move declaration to first use.
      	* decl2.c (decl_needed_p): Fix indentation.
      	(c_parse_final_cleanups): Remove blank line.
      	* method.c (implicitly_declare_fn): Move declaration to first use.
      	* search.c (current_scope): Add blank lines.
      
      From-SVN: r249786
      Nathan Sidwell committed
    • tree-vect-loop.c (vect_analyze_scalar_cycles_1): Do not add reduction chains to… · 0630a4ec
      tree-vect-loop.c (vect_analyze_scalar_cycles_1): Do not add reduction chains to LOOP_VINFO_REDUCTIONS.
      
      2017-06-29  Richard Biener  <rguenther@suse.de>
      
      	* tree-vect-loop.c (vect_analyze_scalar_cycles_1): Do not add
      	reduction chains to LOOP_VINFO_REDUCTIONS.
      	* tree-vect-slp.c (vect_analyze_slp): Continue looking for
      	SLP reductions after processing reduction chains.
      
      	* gcc.dg/vect/slp-reduc-8.c: New testcase.
      
      From-SVN: r249785
      Richard Biener committed
    • builtins.c (fold_builtin_FUNCTION): Use lang_hooks.decl_printable_name. · f76b4224
      	gcc/
      	* builtins.c (fold_builtin_FUNCTION): Use
      	lang_hooks.decl_printable_name.
      
      	gcc/cp/
      	* g++.dg/cpp1y/builtin_FUNCTION.C: New.
      
      From-SVN: r249784
      Nathan Sidwell committed
    • re PR middle-end/81194 (ICE during RTL pass: expand) · f66459c1
      gcc/
      	PR middle-end/81194
      	* cfgexpand.c (expand_gimple_stmt_1): Handle switch statements
      	with only one label.
      	* stmt.c (expand_case): Assert NCASES is greater than one.
      
      gcc/testsuite/
      	PR middle-end/81194
      	* g++.dg/pr81194.C: New test.
      
      From-SVN: r249783
      Peter Bergner committed
    • Add a testcase for PR ipa/80565 · 3c7bb489
      The testcase in
      
      https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80565
      
      is passing now.  Check in the testcase and resolve it as fixed.
      
      	PR ipa/80565
      	* gcc.dg/torture/pr80565.c: New file.
      
      From-SVN: r249782
      H.J. Lu committed
    • tree-cfg.c (group_case_labels_stmt): Return whether we changed anything. · 4e3e8a5f
      2017-06-29  Richard Biener  <rguenther@suse.de>
      
      	* tree-cfg.c (group_case_labels_stmt): Return whether we changed
      	anything.
      	(group_case_labels): Likewise.
      	(find_taken_edge): Push sanity checking on val to workers...
      	(find_taken_edge_cond_expr): ... here
      	(find_taken_edge_switch_expr): ... and here, handle cases
      	with just a default label.
      	* tree-cfg.h (group_case_labels_stmt): Adjust prototype.
      	(group_case_labels): Likewise.
      	* tree-cfgcleanup.c (execute_cleanup_cfg_post_optimizing): When
      	group_case_labels does anything cleanup the CFG again.
      
      From-SVN: r249780
      Richard Biener committed
    • re PR tree-optimization/81196 (Number of iterations found for p!=q but not for p<q) · 6cd83bec
      	PR tree-optimization/81196
      	* tree-ssa-loop-niter.c (number_of_iterations_cond): Handle loop
      	exit condition comparing two IVs.
      
      	gcc/testsuite
      	* gcc.dg/vect/pr81196.c: New.
      
      From-SVN: r249778
      Bin Cheng committed