Commit Graph

157518 Commits

Author SHA1 Message Date
Richard Biener
55518e0f5d tree-cfgcleanup.c (cleanup_control_expr_graph): Remove first_p paramter and handling.
2017-11-14  Richard Biener  <rguenther@suse.de>

	* tree-cfgcleanup.c (cleanup_control_expr_graph): Remove first_p
	paramter and handling.
	(cleanup_control_flow_bb): Likewise.
	(cleanup_control_flow_pre): New helper performing a DFS walk
	to call cleanup_control_flow_bb in PRE order.
	(cleanup_tree_cfg_1): Do the first phase of cleanup_control_flow_bb
	via cleanup_control_flow_pre.

From-SVN: r254730
2017-11-14 14:43:43 +00:00
Ian Lance Taylor
082fc7e884 libgo: adapt Solaris 12 references
With the change in the Solaris release model (no more major releases
    like Solaris 12 but only minor ones like 11.4), the Solaris 12
    references in GCC need to be adapted.
    
    Patch by Rainer Orth.
    
    Reviewed-on: https://go-review.googlesource.com/77490

From-SVN: r254729
2017-11-14 14:26:04 +00:00
James Greenhalgh
aea4b54ac5 [Patch AArch64] Stop generating BSL for simple integer code
Turn aarch64_simd_bsldi_internal in to an insn_and_split that
knows to split back to integer operations if the register allocation
falls that way. Do this to avoid having to move between integer and
Advanced SIMD register files just for a single BSL.

---
gcc/

	* config/aarch64/aarch64-simd.md
	(aarch64_simd_bsl<mode>_internal): Remove DImode.
	(*aarch64_simd_bsl<mode>_alt): Likewise.
	(aarch64_simd_bsldi_internal): New.
	(aarch64_simd_bsldi_alt): Likewise.

gcc/testsuite/

	* gcc.target/aarch64/bsl-idiom.c: New.
	* gcc.target/aarch64/copysign-bsl.c: New.

From-SVN: r254727
2017-11-14 14:09:57 +00:00
Jan Hubicka
fee234f10f tracer.c (better_p): Do not compare frequencies.
* tracer.c (better_p): Do not compare frequencies.
	* reg-stack.c (better_edge): Likewise.
	* shrink-wrap.c (try_shrink_wrapping): Do not convert to gcov counts
	and back.

From-SVN: r254726
2017-11-14 09:22:49 +00:00
Jan Hubicka
fc06ae0d19 auto-profile.c (afdo_annotate_cfg): Use update_max_bb_count.
* auto-profile.c (afdo_annotate_cfg): Use update_max_bb_count.
	* cgraphunit.c (cgraph_node::expand_thunk): Use update_max_bb_count.
	* ipa-utils.c (ipa_merge_profiles): Use update_max_bb_count.
	* lto-streamer-in.c (input_function): Use update_max_bb_count.
	* omp-expand.c (expand_omp_taskreg): Use update_max_bb_count.
	* predict.c (maybe_hot_frequency_p): Inline to ...
	(maybe_hot_count_p): ... here; rewrite to counts.
	(counts_to_freqs): Rename to ...
	(update_max_bb_count): ... this one.
	(expensive_function_p): Use counts.
	(estimate_bb_frequencies): Update.
	(rebuild_frequencies): Update.
	* predict.h (counts_to_freqs): Rename to ...
	(update_max_bb_count): ... this one.
	* profile.c (compute_branch_probabilities): Add debug info
	* tree-inline.c (expand_call_inline): Update debug info.
	(optimize_inline_calls): Use update_max_bb_count..
	(tree_function_versioning): Use update_max_bb_count..
	* value-prof.c (gimple_value_profile_transformations):
	Do not use update_max_bb_count.

From-SVN: r254725
2017-11-14 09:18:35 +00:00
Jan Hubicka
0cea1d34f7 ipa-inline.c (compute_uninlined_call_time, [...]): always use frequencies.
* ipa-inline.c (compute_uninlined_call_time, compute_inlined_call_time):
	always use frequencies.

From-SVN: r254724
2017-11-14 09:12:46 +00:00
Tom de Vries
dde76623dd Allow asyncwait-1.c to run for non-nvidia devices
2017-11-14  Tom de Vries  <tom@codesourcery.com>

	* testsuite/libgomp.oacc-c-c++-common/asyncwait-1.c: Allow to run for
	non-nvidia devices.

From-SVN: r254723
2017-11-14 09:12:14 +00:00
Tom de Vries
3d8d3012c4 Require alloca for c-c++-common/Wstringop-truncation.c
2017-11-14  Tom de Vries  <tom@codesourcery.com>

	* c-c++-common/Wstringop-truncation.c: Require effective target alloca.

From-SVN: r254722
2017-11-14 09:12:05 +00:00
Jan Hubicka
79a6b3def9 bb-reorder.c: Remove frequencies from comments.
* 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
2017-11-14 09:09:20 +00:00
Jan Hubicka
ed10d09bcc ipa-split.c (struct split_point): Add count.
* 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
2017-11-14 09:06:12 +00:00
Fritz Reese
9b24c104ae re PR fortran/78240 (ICE in match_clist_expr, at fortran/decl.c:728)
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
2017-11-14 01:25:26 +00:00
GCC Administrator
728649ebf0 Daily bump.
From-SVN: r254717
2017-11-14 00:16:17 +00:00
Carl Love
24cd339b9b altivec.md (altivec_vsumsws_be): Add define_expand.
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
2017-11-13 22:40:18 +00:00
Jason Merrill
c1051bf7d8 Capture adjustments for P0588R1.
* 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
2017-11-13 17:34:38 -05:00
Jason Merrill
04757a2a49 Defer folding of *&.
* 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
2017-11-13 17:12:55 -05:00
Jason Merrill
cd920e1348 Fix cp-ubsan typo.
* cp-ubsan.c (cp_ubsan_check_member_access_r): Fix handling of
	INDIRECT_REF of ADDR_EXPR.

From-SVN: r254711
2017-11-13 17:12:49 -05:00
Jason Merrill
c360a66817 PR c++/82360 - ICE with static_cast in template.
* call.c (perform_direct_initialization_if_possible): Check
	processing_template_decl.
	* typeck.c (build_static_cast_1): Likewise.

From-SVN: r254710
2017-11-13 16:49:16 -05:00
Tom Tromey
fb771b9dad Implement __VA_OPT__
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
2017-11-13 20:17:42 +00:00
Carl Love
4d85d48027 rs6000-c.c (altivec_overloaded_builtins): Add support for builtins...
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
2017-11-13 19:26:54 +00:00
David Malcolm
846b84fba7 libcpp: move line typedef and column-numbering comment to top of file
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
2017-11-13 19:07:26 +00:00
Michael Meissner
4119b2eb44 match.pd: Convert fminf<N>...
[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
2017-11-13 19:06:49 +00:00
Eric Botcazou
2a28a7523f re PR lto/81351 (Many LTO testcases FAIL)
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
2017-11-13 17:29:37 +00:00
Jan Hubicka
c0264f6762 * tree-ssa-coalesce.c (coalesce_cost): Fix formating.
From-SVN: r254699
2017-11-13 17:28:01 +00:00
Jan Hubicka
d4017fd365 * tree-ssa-sink.c (select_best_block): Do not use frequencies.
From-SVN: r254698
2017-11-13 17:27:13 +00:00
Eric Botcazou
2f02b2c291 re PR lto/81351 (Many LTO testcases FAIL)
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
2017-11-13 17:26:41 +00:00
Jan Hubicka
41f0e8194d cgraph.c (cgraph_edge::sreal_frequency): New function.
* 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
2017-11-13 17:23:25 +00:00
Ville Voutilainen
8f2b097ed5 Remove the null check from placement new in all modes
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
2017-11-13 19:02:06 +02:00
Christophe Lyon
81766d13a8 [ARM] Fix more -Wreturn-type fallout (gcc.target/arm/pr67989.C).
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
2017-11-13 17:36:10 +01:00
Nathan Sidwell
101e910b3a [Diagnostic Patch] don't print column zero
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
2017-11-13 15:32:34 +00:00
Charles Baylis
7ccdf51f87 ieee_8.f90: xfail for aarch64*-*-gnu*
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
2017-11-13 13:38:16 +00:00
Luis Machado
793e17f93b [Documentation] Fix latency in pipeline description example
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
2017-11-13 10:29:33 +00:00
Jakub Jelinek
a6fbd15424 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
2017-11-13 11:26:13 +01:00
Martin Liska
a1b5dd18ae GCOV: remove typedef of coverage_t.
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
2017-11-13 09:06:54 +00:00
Martin Liska
bea002e923 GCOV: remove typedef for block_t
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
2017-11-13 09:06:43 +00:00
Martin Liska
232c80f2d1 GCOV: remove typedef for arc_t
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
2017-11-13 09:06:26 +00:00
Martin Liska
cb8758b202 GCOV: remove typedef for function_t
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
2017-11-13 09:06:13 +00:00
Martin Liska
4464b9772d GCOV: introduce vector for function_info::counts.
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
2017-11-13 09:05:55 +00:00
Martin Liska
1e81a283a2 GCOV: simplify usage of function_info::artificial.
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
2017-11-13 09:05:38 +00:00
Martin Liska
211bea6b40 GCOV: introduce global vector of functions
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
2017-11-13 09:05:20 +00:00
Jakub Jelinek
5bfd2f9bc6 re PR tree-optimization/82954 (ICE in fold_binary_loc, at fold-const.c:9061)
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
2017-11-13 10:01:24 +01:00
Richard Sandiford
441b4d0fa2 [AArch64] More aarch64_endian_lane_rtx
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
2017-11-13 08:21:16 +00:00
GCC Administrator
41a0d8d4c0 Daily bump.
From-SVN: r254669
2017-11-13 00:16:19 +00:00
Tom de Vries
2041a23a2e [riscv] Wrap ASM_OUTPUT_LABELREF in do {} while (0)
2017-11-12  Tom de Vries  <tom@codesourcery.com>

	* config/riscv/riscv.h (ASM_OUTPUT_LABELREF): Wrap in do {} while (0).

From-SVN: r254666
2017-11-12 16:07:30 +00:00
Tom de Vries
180b558034 Remove semicolon after ASM_OUTPUT_ASCII
2017-11-12  Tom de Vries  <tom@codesourcery.com>

	* config/elfos.h (ASM_OUTPUT_ASCII): Remove semicolon after macro body.

From-SVN: r254665
2017-11-12 16:07:19 +00:00
Tom de Vries
b59b0914e4 [cr16, powerpcspe, rs6000] Remove semicolon after ASM_OUTPUT_LABELREF macro body
2017-11-12  Tom de Vries  <tom@codesourcery.com>

	* config/cr16/cr16.h (ASM_OUTPUT_LABELREF): Remove semicolon after macro
	body.
	* config/powerpcspe/xcoff.h (ASM_OUTPUT_LABELREF): Same.
	* config/rs6000/xcoff.h (ASM_OUTPUT_LABELREF): Same.
	* defaults.h (ASM_OUTPUT_LABELREF): Same.

From-SVN: r254664
2017-11-12 16:07:08 +00:00
GCC Administrator
5b88308195 Daily bump.
From-SVN: r254663
2017-11-12 00:16:16 +00:00
Janus Weil
859e3093a4 re PR fortran/82932 ([OOP] ICE in update_compcall_arglist, at fortran/resolve.c:5837)
2017-11-11  Janus Weil  <janus@gcc.gnu.org>

	PR fortran/82932
	* resolve.c (update_compcall_arglist): Improve error recovery,
	remove a gcc_assert.

2017-11-11  Janus Weil  <janus@gcc.gnu.org>

	PR fortran/82932
	* gfortran.dg/typebound_call_29.f90: New test.

From-SVN: r254660
2017-11-11 22:54:41 +01:00
Martin Sebor
6aab06c745 re PR c/81117 (Improve buffer overflow checking in strncpy)
gcc/ChangeLog:

	PR c/81117
	* doc/extend.texi (attribute nonstring): Remove spurious argument.

From-SVN: r254659
2017-11-11 11:04:21 -07:00
Martin Sebor
42c544b035 PR bootstrap/82948 - prefix.c:202:15: error: 'char* strncpy(char*, const char*,
size_t)' destination unchanged after copying no bytes 

gcc/ChangeLog:

	PR bootstrap/82948
	* prefic.c (translate_name): Replace strncpy with memcpy to
	avoid -Wstringop-truncation.

From-SVN: r254658
2017-11-11 10:43:48 -07:00
Kirill Yukhin
aead609fc1 Add forgotten tests.
From-SVN: r254657
2017-11-11 17:09:25 +00:00