1. 14 Nov, 2017 4 commits
    • bb-reorder.c: Remove frequencies from comments. · 79a6b3de
      
      	* bb-reorder.c: Remove frequencies from comments.
      	(better_edge_p): Use profile counts.
      	(find_traces): Dump profile counts.
      	(rotate_loop): Use profile counts.
      	(find_traces_1_round): Likewise.
      	(connect_better_edge_p): Use counts instead of probabilities for
      	reverse walk.
      	(copy_bb_p): Drop early check for non-0 frequency.
      	(sanitize_hot_paths): Update comments.
      
      From-SVN: r254721
      Jan Hubicka committed
    • ipa-split.c (struct split_point): Add count. · ed10d09b
      	* ipa-split.c (struct split_point): Add count.
      	(consider_split): Do not compute incoming frequency; compute incoming
      	count and store it to split_point.
      	(split_function): Set count of the call to split part correctly.
      
      	* testsuite/gcc.dg/tree-ssa/fnsplit-2.c: New testcase.
      
      From-SVN: r254720
      Jan Hubicka committed
    • re PR fortran/78240 (ICE in match_clist_expr, at fortran/decl.c:728) · 9b24c104
      2017-11-13  Fritz Reese <fritzoreese@gmail.com>
      
          PR fortran/78240
      
          gcc/fortran/ChangeLog:
      
      	PR fortran/78240
      	* decl.c (match_clist_expr): Replace gcc_assert with proper
      	handling of bad result from spec_size().
      	* resolve.c (check_data_variable): Avoid NULL dereference when passing
      	locus to gfc_error.
      
          gcc/testsuite/ChangeLog:
      
      	PR fortran/78240
      	* gfortran.dg/dec_structure_23.f90: New.
      	* gfortran.dg/pr78240.f90: New.
      
      From-SVN: r254718
      Fritz Reese committed
    • Daily bump. · 728649eb
      From-SVN: r254717
      GCC Administrator committed
  2. 13 Nov, 2017 30 commits
    • altivec.md (altivec_vsumsws_be): Add define_expand. · 24cd339b
      gcc/ChangeLog:
      
      2017-11-13  Carl Love  <cel@us.ibm.com>
      
      	* config/rs6000/altivec.md (altivec_vsumsws_be): Add define_expand.
      
      gcc/testsuite/ChangeLog:
      
      2017-11-13 Carl Love  <cel@us.ibm.com>
      
      	* gcc.target/powerpc/builtin-vec-sums-be-int.c: New test file.
      
      From-SVN: r254714
      Carl Love committed
    • Capture adjustments for P0588R1. · c1051bf7
      	* semantics.c (process_outer_var_ref): Capture variables when
      	they are named; complain about non-capture uses when odr-used.
      	* expr.c (mark_use): Rvalue use looks through capture proxy.
      	* constexpr.c (potential_constant_expression_1): Improve error about
      	use of captured variable.
      	* lambda.c (need_generic_capture, dependent_capture_r)
      	(do_dependent_capture, processing_nonlambda_template): Remove.
      	* call.c (build_this): Remove uses of the above.
      	* decl.c (cp_finish_decl): Likewise.
      	* semantics.c (maybe_cleanup_point_expr)
      	(maybe_cleanup_point_expr_void, finish_goto_stmt)
      	(maybe_convert_cond): Likewise.
      	* typeck.c (check_return_expr): Likewise.
      
      From-SVN: r254713
      Jason Merrill committed
    • Defer folding of *&. · 04757a2a
      	* typeck.c (cp_build_fold_indirect_ref): New.
      	(cp_build_indirect_ref_1): Split out from cp_build_indirect_ref.
      	Add 'fold' parameter.
      	* cp-tree.h: Declare cp_build_fold_indirect_ref.
      	* call.c, class.c, cp-ubsan.c, decl.c, except.c, init.c, lambda.c,
      	parser.c, rtti.c, tree.c, typeck.c, typeck2.c: Use it.
      	* parser.c (do_range_for_auto_deduction): Use RO_UNARY_STAR.
      	(cp_convert_range_for): Likewise.
      	* typeck2.c (build_x_arrow): Use RO_ARROW.
      
      From-SVN: r254712
      Jason Merrill committed
    • Fix cp-ubsan typo. · cd920e13
      	* cp-ubsan.c (cp_ubsan_check_member_access_r): Fix handling of
      	INDIRECT_REF of ADDR_EXPR.
      
      From-SVN: r254711
      Jason Merrill committed
    • PR c++/82360 - ICE with static_cast in template. · c360a668
      	* call.c (perform_direct_initialization_if_possible): Check
      	processing_template_decl.
      	* typeck.c (build_static_cast_1): Likewise.
      
      From-SVN: r254710
      Jason Merrill committed
    • Implement __VA_OPT__ · fb771b9d
      This implements __VA_OPT__, a new preprocessor feature added in C++2A.
      The paper can be found here:
      
      http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2017/p0306r4.html
      
      gcc/ChangeLog
      
              * doc/cpp.texi (Variadic Macros): Document __VA_OPT__.
      
      gcc/testsuite/ChangeLog
      
              * c-c++-common/cpp/va-opt-pedantic.c: New file.
              * c-c++-common/cpp/va-opt.c: New file.
              * c-c++-common/cpp/va-opt-error.c: New file.
      
      libcpp/ChangeLog
      
              * pch.c (cpp_read_state): Set n__VA_OPT__.
              * macro.c (vaopt_state): New class.
              (_cpp_arguments_ok): Check va_opt flag.
              (replace_args, create_iso_definition): Use vaopt_state.
              * lex.c (lex_identifier_intern): Possibly issue errors for
              __VA_OPT__.
              (lex_identifier): Likewise.
              (maybe_va_opt_error): New function.
              * internal.h (struct lexer_state) <va_args_ok>: Update comment.
              (struct spec_nodes) <n__VA_OPT__>: New field.
              * init.c (struct lang_flags) <va_opt>: New field.
              (lang_defaults): Add entries for C++2A.  Update all entries for
              va_opt.
              (cpp_set_lang): Initialize va_opt.
              * include/cpplib.h (struct cpp_options) <va_opt>: New field.
              * identifiers.c (_cpp_init_hashtable): Initialize n__VA_OPT__.
      
      From-SVN: r254707
      Tom Tromey committed
    • rs6000-c.c (altivec_overloaded_builtins): Add support for builtins... · 4d85d480
      gcc/ChangeLog:
      
      2017-11-13  Carl Love  <cel@us.ibm.com>
      
      	* config/rs6000/rs6000-c.c (altivec_overloaded_builtins):
      	Add support for builtins:
      	unsigned int vec_first_{,miss}_match_{,or_eos}index,
      	vector {un,}signed {char,int,short},
      	vector {un,}signed {char,int,short}) arguments.
      	* config/rs6000/rs6000-builtin.def (VFIRSTMATCHINDEX,
      	VFIRSTMATCHOREOSINDEX, VFIRSTMISMATCHINDEX, VFIRSTMISMATCHOREOSINDEX):
      	Add BU_P9V_AV_2 expansions for the builtins.
      	* config/rs6000/altivec.h (vec_first_match_index,
      	vec_first_mismatch_index, vec_first_match_or_eos_index,
      	vec_first_mismatch_or_eos_index): Add #defines for the builtins.
      	* config/rs6000/rs6000-protos.h (bytes_in_mode): Add
      	new extern declaration.
      	* config/rs6000/rs6000.c (bytes_in_mode): Add new function.
      	* config/rs6000/vsx.md (first_match_index_<mode>,
      	first_match_or_eos_index_<mode>, first_mismatch_index_<mode>,
      	first_mismatch_or_eos_index_<mode>): Add define expand.
      	(vctzlsbb_<mode>): Add mode field to define_insn for vctzlsbb.
      	* doc/extend.texi: Update the built-in documenation file for the new
      	built-in functions.
      
      gcc/testsuite/ChangeLog:
      
      2017-11-13  Carl Love  <cel@us.ibm.com>
      
      	* gcc.target/powerpc/builtins-6-p9-runnable.c: Add new runnable test.
      	* gcc.target/powerpc/vsu/vec-cnttz-lsbb-2.c: Update expected error
      	message.
      
      From-SVN: r254704
      Carl Love committed
    • libcpp: move line typedef and column-numbering comment to top of file · 846b84fb
      The description of our 1-based column-numbering convention was in
      a non-obvious place withn line-map.h; this patch moves it to the top
      of that header.
      
      libcpp/ChangeLog:
      	* include/line-map.h (linenum_type): Move this typedef and the
      	comment describing column numbering to near the top of the file.
      
      From-SVN: r254703
      David Malcolm committed
    • match.pd: Convert fminf<N>... · 4119b2eb
      [gcc]
      2017-11-13  Michael Meissner  <meissner@linux.vnet.ibm.com>
      
      	* match.pd: Convert fminf<N>, fminf<N>x, fmax<N>, and fmax<N>x
      	into the min/max operations for _Float<N> and _Float<N>X types.
      
      [gcc/testsuite]
      2017-11-13  Michael Meissner  <meissner@linux.vnet.ibm.com>
      
      	* gcc.target/powerpc/float128-minmax.c: New test.
      
      From-SVN: r254702
      Michael Meissner committed
    • re PR lto/81351 (Many LTO testcases FAIL) · 2a28a752
      	PR lto/81351
      	* dwarf2out.c (do_eh_frame): New static variable.
      	(dwarf2out_begin_prologue): Set it.
      	(dwarf2out_frame_finish): Test it instead of dwarf2out_do_eh_frame.
      
      From-SVN: r254700
      Eric Botcazou committed
    • * tree-ssa-coalesce.c (coalesce_cost): Fix formating. · c0264f67
      From-SVN: r254699
      Jan Hubicka committed
    • * tree-ssa-sink.c (select_best_block): Do not use frequencies. · d4017fd3
      From-SVN: r254698
      Jan Hubicka committed
    • re PR lto/81351 (Many LTO testcases FAIL) · 2f02b2c2
      	PR lto/81351
      	* debug.h (dwarf2out_do_eh_frame): Declare.
      	* dwarf2cfi.c (dwarf2out_do_eh_frame): New predicate.
      	(dwarf2out_do_frame): Use it.
      	(dwarf2out_do_cfi_asm): Likewise.
      	* dwarf2out.c (dwarf2out_frame_finish): Likewise.
      	(dwarf2out_assembly_start): Likewise.
      	(dwarf2out_begin_prologue): Fix comment.
      	* toplev.c (compile_file): Always call dwarf2out_frame_finish
      	if the target needs either debug or unwind DWARF2 info.
      	* lto-opts.c (lto_write_options): Do not save -fexceptions,
      	-fnon-call-exceptions, -ffp-contract, -fmath-errno, -fsigned-zeros,
      	-ftrapping-math, -ftrapv and -fwrapv.
      
      From-SVN: r254697
      Eric Botcazou committed
    • cgraph.c (cgraph_edge::sreal_frequency): New function. · 41f0e819
      
      	* cgraph.c (cgraph_edge::sreal_frequency): New function.
      	* cgraph.h (cgraph_edge::sreal_frequency): Declare.
      	* ipa-fnsummary.c (dump_ipa_call_summary): Use sreal_frequency.
      	(estimate_edge_size_and_time): Likewise.
      	(ipa_merge_fn_summary_after_inlining): Likewise.
      	* ipa-inline.c (cgraph_freq_base_rec): Remove.
      	(compute_uninlined_call_time): Use sreal_frequency.
      	(compute_inlined_call_time): Likewise.
      	(ipa_inline): Do not initialize cgraph_freq_base_rec.
      	* profile-count.c: Include sreal.h.
      	(profile_count::to_sreal_scale): New.
      	* profile-count.h: Forward declare sreal.
      	(profile_count::to_sreal_scale): Declare.
      
      From-SVN: r254696
      Jan Hubicka committed
    • Remove the null check from placement new in all modes · 8f2b097e
      gcc/cp/
      
      Remove the null check from placement new in all modes
      * init.c (build_new_1): Don't do a null check for
      a namespace-scope non-replaceable placement new
      in any mode unless -fcheck-new is provided.
      
      testsuite/
      
      Remove the null check from placement new in all modes
      * g++.dg/init/pr35878_1.C: Adjust.
      * g++.dg/init/pr35878_4.C: New.
      * g++.dg/torture/pr48695.C: Adjust.
      * g++.dg/tree-ssa/pr31146-2.C: Likewise.
      * g++.dg/tree-ssa/pr41428.C: Adjust.
      
      From-SVN: r254694
      Ville Voutilainen committed
    • [ARM] Fix more -Wreturn-type fallout (gcc.target/arm/pr67989.C). · 81766d13
      2017-11-13  Christophe Lyon  <christophe.lyon@linaro.org>
      
      	* gcc.target/arm/pr67989.C: Add -Wno-return-type to
      	dg-additional-options.
      
      From-SVN: r254692
      Christophe Lyon committed
    • [Diagnostic Patch] don't print column zero · 101e910b
      https://gcc.gnu.org/ml/gcc-patches/2017-10/msg01911.html
      	* diagnostic.c (maybe_line_and_column): New.
      	(diagnostic_get_location_text): Use it.
      	(diagnostic_report_current_module): Likewise.
      	(test_diagnostic_get_location_text): Add tests.
      
      	* lib/gcc-dg.exp (process-message): Use -: for no column.
      	* c-c++-common/cilk-plus/CK/cilk_for_grain_errors.c: Mark elided
      	column messages.
      	* c-c++-common/cpp/pr58844-1.c: Likewise.
      	* c-c++-common/cpp/pr58844-2.c: Likewise.
      	* c-c++-common/cpp/warning-zero-location.c: Likewise.
      	* g++.dg/diagnostic/pr77949.C: Likewise.
      	* g++.dg/gomp/macro-4.C: Likewise.
      	* gcc.dg/Wunknownprag.c: Likewise.
      	* gcc.dg/builtin-redefine.c: Likewise.
      	* gcc.dg/cpp/Wunknown-pragmas-1.c: Likewise.
      	* gcc.dg/cpp/Wunused.c: Likewise.
      	* gcc.dg/cpp/misspelled-directive-1.c: Likewise.
      	* gcc.dg/cpp/redef2.c: Likewise.
      	* gcc.dg/cpp/redef3.c: Likewise.
      	* gcc.dg/cpp/redef4.c: Likewise.
      	* gcc.dg/cpp/trad/Wunused.c: Likewise.
      	* gcc.dg/cpp/trad/argcount.c: Likewise.
      	* gcc.dg/cpp/trad/comment-3.c: Likewise.
      	* gcc.dg/cpp/trad/comment.c: Likewise.
      	* gcc.dg/cpp/trad/defined.c: Likewise.
      	* gcc.dg/cpp/trad/directive.c: Likewise.
      	* gcc.dg/cpp/trad/funlike-3.c: Likewise.
      	* gcc.dg/cpp/trad/funlike.c: Likewise.
      	* gcc.dg/cpp/trad/literals-2.c: Likewise.
      	* gcc.dg/cpp/trad/macro.c: Likewise.
      	* gcc.dg/cpp/trad/pr65238-4.c: Likewise.
      	* gcc.dg/cpp/trad/recurse-1.c: Likewise.
      	* gcc.dg/cpp/trad/recurse-2.c: Likewise.
      	* gcc.dg/cpp/trad/redef2.c: Likewise.
      	* gcc.dg/cpp/ucnid-11.c: Likewise.
      	* gcc.dg/cpp/unc1.c: Likewise.
      	* gcc.dg/cpp/unc2.c: Likewise.
      	* gcc.dg/cpp/unc3.c: Likewise.
      	* gcc.dg/cpp/unc4.c: Likewise.
      	* gcc.dg/cpp/undef2.c: Likewise.
      	* gcc.dg/cpp/warn-redefined-2.c: Likewise.
      	* gcc.dg/cpp/warn-redefined.c: Likewise.
      	* gcc.dg/cpp/warn-unused-macros-2.c: Likewise.
      	* gcc.dg/cpp/warn-unused-macros.c: Likewise.
      	* gcc.dg/empty-source-2.c: Likewise.
      	* gcc.dg/empty-source-3.c: Likewise.
      	* gcc.dg/gomp/macro-4.c: Likewise.
      	* gcc.dg/noncompile/pr35447-1.c: Likewise.
      	* gcc.dg/plugin/location-overflow-test-1.c: Likewise.
      	* gcc.dg/pr20245-1.c: Likewise.
      	* gcc.dg/pr28419.c: Likewise.
      	* gcc.dg/rtl/truncated-rtl-file.c: Likewise.
      	* gcc.dg/unclosed-init.c: Likewise.
      
      From-SVN: r254691
      Nathan Sidwell committed
    • ieee_8.f90: xfail for aarch64*-*-gnu* · 7ccdf51f
      gcc/testsuite/ChangeLog:
      
      2017-11-13  Charles Baylis  <charles.baylis@linaro.org>
      
              * gfortran.dg/ieee/ieee_8.f90: xfail for aarch64*-*-gnu*
      
      From-SVN: r254689
      Charles Baylis committed
    • [Documentation] Fix latency in pipeline description example · 793e17f9
      	2017-11-09  Luis Machado  <luis.machado@linaro.org>
      
      	gcc/
      	* doc/md.texi (Specifying processor pipeline description): Fix
      	incorrect latency for the div instruction example.
      
      From-SVN: r254680
      Luis Machado committed
    • re PR tree-optimization/78821 (GCC7: Copying whole 32 bits structure field by… · a6fbd154
      re PR tree-optimization/78821 (GCC7: Copying whole 32 bits structure field by field not optimised into copying whole 32 bits at once)
      
      	PR tree-optimization/78821
      	* gimple-ssa-store-merging.c (compatible_load_p): Don't require
      	that bit_not_p is the same.
      	(imm_store_chain_info::coalesce_immediate_stores): Likewise.
      	(split_group): Count precisely bit_not_p bits in each statement.
      	(invert_op): New function.
      	(imm_store_chain_info::output_merged_store): Use invert_op to
      	emit BIT_XOR_EXPR with a xor_mask instead of BIT_NOT_EXPR if some
      	but not all orig_stores have BIT_NOT_EXPR in the corresponding spots.
      
      	* gcc.dg/store_merging_15.c: New test.
      
      From-SVN: r254679
      Jakub Jelinek committed
    • GCOV: remove typedef of coverage_t. · a1b5dd18
      2017-11-13  Martin Liska  <mliska@suse.cz>
      
      	* gcov.c (struct coverage_info): Remove typedef of coverage_t.
      	(struct source_info): Likewise.
      	(add_branch_counts): Likewise.
      	(add_line_counts): Likewise.
      	(function_summary): Likewise.
      	(output_intermediate_line): Likewise.
      	(generate_results): Likewise.
      
      From-SVN: r254678
      Martin Liska committed
    • GCOV: remove typedef for block_t · bea002e9
      2017-11-13  Martin Liska  <mliska@suse.cz>
      
      	* gcov.c (struct block_info): Remove typedef for block_t.
      	(struct line_info): Likewise.
      	(line_info::has_block): Likewise.
      	(EXIT_BLOCK): Likewise.
      	(unblock): Likewise.
      	(circuit): Likewise.
      	(get_cycles_count): Likewise.
      	(process_file): Likewise.
      	(read_graph_file): Likewise.
      	(solve_flow_graph): Likewise.
      	(find_exception_blocks): Likewise.
      	(add_line_counts): Likewise.
      	(accumulate_line_info): Likewise.
      	(output_line_details): Likewise.
      
      From-SVN: r254677
      Martin Liska committed
    • GCOV: remove typedef for arc_t · 232c80f2
      2017-11-13  Martin Liska  <mliska@suse.cz>
      
      	* gcov.c (struct arc_info): Remove typedef for arc_t.
      	(struct line_info): Likewise.
      	(add_branch_counts): Likewise.
      	(output_branch_count): Likewise.
      	(function_info::~function_info): Likewise.
      	(circuit): Likewise.
      	(output_intermediate_line): Likewise.
      	(read_graph_file): Likewise.
      	(solve_flow_graph): Likewise.
      	(find_exception_blocks): Likewise.
      	(add_line_counts): Likewise.
      	(accumulate_line_info): Likewise.
      	(output_line_details): Likewise.
      	(output_function_details): Likewise.
      
      From-SVN: r254676
      Martin Liska committed
    • GCOV: remove typedef for function_t · cb8758b2
      2017-11-13  Martin Liska  <mliska@suse.cz>
      
      	* gcov.c (struct function_info): Remove typedef for function_t.
      	(struct source_info): Likewise.
      	(source_info::get_functions_at_location): Likewise.
      	(solve_flow_graph): Likewise.
      	(find_exception_blocks): Likewise.
      	(add_line_counts): Likewise.
      	(output_intermediate_file): Likewise.
      	(process_file): Likewise.
      	(generate_results): Likewise.
      	(release_structures): Likewise.
      	(read_graph_file): Likewise.
      	(read_count_file): Likewise.
      	(accumulate_line_counts): Likewise.
      	(output_lines): Likewise.
      
      From-SVN: r254675
      Martin Liska committed
    • GCOV: introduce vector for function_info::counts. · 4464b977
      2017-11-13  Martin Liska  <mliska@suse.cz>
      
      	* gcov.c (function_info::function_info): Remove num_counts
      	and add vector<gcov_type>.
      	(function_info::~function_info): Use the vector.
      	(process_file): Likewise.
      	(read_graph_file): Likewise.
      	(read_count_file): Likewise.
      	(solve_flow_graph): Likewise.
      
      From-SVN: r254674
      Martin Liska committed
    • GCOV: simplify usage of function_info::artificial. · 1e81a283
      2017-11-13  Martin Liska  <mliska@suse.cz>
      
      	* gcov.c (function_info::is_artificial): New function.
      	(process_file): Erase all artificial early.
      	(generate_results): Skip as all artificial are already
      	removed.
      
      From-SVN: r254673
      Martin Liska committed
    • GCOV: introduce global vector of functions · 211bea6b
      2017-11-13  Martin Liska  <mliska@suse.cz>
      
      	* gcov.c (read_graph_file): Store to global vector of functions.
      	(read_count_file): Iterate the vector.
      	(process_file): Likewise.
      	(generate_results): Likewise.
      	(release_structures): Likewise.
      
      From-SVN: r254672
      Martin Liska committed
    • re PR tree-optimization/82954 (ICE in fold_binary_loc, at fold-const.c:9061) · 5bfd2f9b
      	PR tree-optimization/82954
      	* gimple-ssa-store-merging.c
      	(imm_store_chain_info::coalesce_immediate_stores): If
      	!infof->ops[N].base_addr, split group if info->ops[N].base_addr.
      
      	* gcc.c-torture/execute/pr82954.c: New test.
      
      From-SVN: r254671
      Jakub Jelinek committed
    • [AArch64] More aarch64_endian_lane_rtx · 441b4d0f
      r254466 failed to update some uses of ENDIAN_LANE_N that were added after
      the patch was initially written, which meant that we were treating the
      mode number as an element count.
      
      2017-11-13  Richard Sandiford  <richard.sandiford@linaro.org>
      
      gcc/
      	* config/aarch64/aarch64-simd.md (aarch64_store_lane0<mode>):
      	Upddate call to ENDIAN_LANE_N.
      	(aarch64_<sur>dot_lane<vsi2qi>): Use aarch64_endian_lane_rtx.
      	(aarch64_<sur>dot_laneq<vsi2qi>): Likewise.
      	(*aarch64_simd_vec_copy_lane<mode>): Update calls to ENDIAN_LANE_N
      	and use aarch64_endian_lane_rtx.
      	(*aarch64_simd_vec_copy_lane_<vswap_width_name><mode>): Likewise.
      
      From-SVN: r254670
      Richard Sandiford committed
    • Daily bump. · 41a0d8d4
      From-SVN: r254669
      GCC Administrator committed
  3. 12 Nov, 2017 4 commits
  4. 11 Nov, 2017 2 commits