146374 Commits

Author SHA1 Message Date
Martin Liska
4efae2d63f Make analyze_brprob.py executable.
From-SVN: r236911
2016-05-31 08:52:31 +00:00
Kirill Yukhin
5b8c120584 AVX-512. Limit constraint for scalar operand in split to AVX-512VL.
PR target/71346
gcc/
	* config/i386/sse.md (define_insn_and_split "*vec_extractv4sf_0"): Use
	`Yv' for scalar operand.
testsuite/
	* gcc.target/i386/pr71346.c: New test.

From-SVN: r236909
2016-05-31 08:05:24 +00:00
Tom de Vries
7a88cc8467 Handle 3-arg phi in copy_bb_and_scalar_dependences
2016-05-31  Tom de Vries  <tom@codesourcery.com>

	PR tree-optimization/69068
	* graphite-isl-ast-to-gimple.c (copy_bb_and_scalar_dependences): Handle
	phis with more than two args.

	* gcc.dg/graphite/pr69068.c: New test.

From-SVN: r236907
2016-05-31 07:07:26 +00:00
GCC Administrator
cc10916fe1 Daily bump.
From-SVN: r236906
2016-05-31 00:16:26 +00:00
Martin Sebor
265149a6ae PR c++/71306 - bogus -Wplacement-new with an array element
gcc/cp/ChangeLog:
2016-05-27  Martin Sebor  <msebor@redhat.com>

	PR c++/71306
	* init.c (warn_placement_new_too_small): Handle placement new arguments
	that are elements of arrays more carefully.  Remove a pointless loop.

gcc/testsuite/ChangeLog:
2016-05-27  Martin Sebor  <msebor@redhat.com>

	PR c++/71306
	* g++.dg/warn/Wplacement-new-size-3.C: New test.

From-SVN: r236902
2016-05-30 16:56:43 -06:00
Jakub Jelinek
00631022d8 re PR c++/71349 (Combined async target clause parsing issues)
PR c++/71349
	* c-parser.c (c_parser_omp_for): Don't disallow nowait clause
	when combined with target construct.

	* parser.c (cp_parser_omp_for): Don't disallow nowait clause
	when combined with target construct.
	(cp_parser_omp_parallel): Pass cclauses == NULL as last argument
	to cp_parser_omp_all_clauses.

	* c-omp.c (c_omp_split_clauses): Put OMP_CLAUSE_DEPEND to
	C_OMP_CLAUSE_SPLIT_TARGET.  Put OMP_CLAUSE_NOWAIT to
	C_OMP_CLAUSE_SPLIT_TARGET if combined with target construct,
	instead of C_OMP_CLAUSE_SPLIT_FOR.

	* c-c++-common/gomp/clauses-1.c (bar): Add dd argument.  Add
	nowait depend(inout: dd[0]) clauses where permitted.

From-SVN: r236900
2016-05-30 23:36:24 +02:00
Andreas Tobler
c8743fc5e5 config.gcc: Move hard float support for arm*hf*-*-freebsd* into armv6*-*-freebsd* for...
2016-05-30  Andreas Tobler  <andreast@gcc.gnu.org>

    * config.gcc: Move hard float support for arm*hf*-*-freebsd* into
    armv6*-*-freebsd* for FreeBSD 11. Eliminate the arm*hf*-*-freebsd*
    target.

From-SVN: r236898
2016-05-30 22:03:57 +02:00
Jose E. Marchesi
31177ef252 config.gcc (sparc*-*-*): Support cpu_32, cpu_64, tune_32 and tune_64.
2016-05-30  Jose E. Marchesi  <jose.marchesi@oracle.com>

	* config.gcc (sparc*-*-*): Support cpu_32, cpu_64, tune_32 and
	tune_64.
	* doc/install.texi (--with-cpu-32, --with-cpu-64): Document
	support on SPARC.
	* config/sparc/linux64.h (OPTION_DEFAULT_SPECS): Add entries for
	cpu_32, cpu_64, tune_32 and tune_64.
	* config/sparc/sol2.h (OPTION_DEFAULT_SPECS): Likewise.

From-SVN: r236897
2016-05-30 19:33:34 +00:00
Paolo Carlini
b2f6675b74 re PR c++/71238 (Undeclared function message imprecisely points to error column)
/cp
2016-05-30  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/71238
	* lex.c (unqualified_name_lookup_error): Take a location too.
	(unqualified_fn_lookup_error): Take a cp_expr.
	* cp-tree.h (unqualified_name_lookup_error,
	unqualified_fn_lookup_error): Adjust declarations.
	* semantics.c (perform_koenig_lookup): Adjust
	unqualified_fn_lookup_error call, pass the location of
	the identifier too as part of a cp_expr.

/testsuite
2016-05-30  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/71238
	* g++.dg/parse/pr71238.C: New.
	* g++.dg/concepts/friend1.C: Test column numbers too.
	* g++.dg/cpp0x/initlist31.C: Likewise.
	* g++.dg/cpp0x/pr51420.C: Likewise.
	* g++.dg/cpp0x/udlit-declare-neg.C: Likewise.
	* g++.dg/cpp0x/udlit-member-neg.C: Likewise.
	* g++.dg/ext/builtin3.C: Likewise.
	* g++.dg/lookup/friend12.C: Likewise.
	* g++.dg/lookup/friend7.C: Likewise.
	* g++.dg/lookup/koenig1.C: Likewise.
	* g++.dg/lookup/koenig5.C: Likewise.
	* g++.dg/lookup/used-before-declaration.C: Likewise.
	* g++.dg/overload/koenig1.C: Likewise.
	* g++.dg/template/crash65.C: Likewise.
	* g++.dg/template/friend57.C: Likewise.
	* g++.dg/warn/Wshadow-5.C: Likewise.
	* g++.dg/warn/Wunused-8.C: Likewise.
	* g++.old-deja/g++.bugs/900211_01.C: Likewise.
	* g++.old-deja/g++.jason/lineno5.C: Likewise.
	* g++.old-deja/g++.jason/member.C: Likewise.
	* g++.old-deja/g++.jason/report.C: Likewise.
	* g++.old-deja/g++.jason/scoping12.C: Likewise.
	* g++.old-deja/g++.law/visibility20.C: Likewise.
	* g++.old-deja/g++.ns/koenig5.C: Likewise.
	* g++.old-deja/g++.other/static5.C: Likewise.
	* g++.old-deja/g++.pt/overload2.C: Likewise.

From-SVN: r236896
2016-05-30 19:18:13 +00:00
Uros Bizjak
9ce542ba4a sync.md (mfence_nosse): Use "lock orl $0, -4(%esp)".
* config/i386/sync.md (mfence_nosse): Use "lock orl $0, -4(%esp)".

From-SVN: r236895
2016-05-30 21:06:38 +02:00
Andi Kleen
1bba63a77e Don't cause ICEs when auto profile file is not found with checking
Currently, on a checking enabled compiler when -fauto-profile does
not find the profile feedback file it errors out with assertation
failures. Add proper errors for this case.

gcc/:

2016-05-30  Andi Kleen  <ak@linux.intel.com>

	* auto-profile.c (read_profile): Replace asserts with errors
	when file does not exist.
	* gcov-io.c (gcov_read_words): Dito.

From-SVN: r236894
2016-05-30 18:13:12 +00:00
Jan Hubicka
53803093d0 tree-cfg.c (print_loop): Print likely upper bounds.
* tree-cfg.c (print_loop): Print likely upper bounds.

From-SVN: r236893
2016-05-30 17:59:24 +00:00
Jan Hubicka
a448ff403b invoke.texi (-fpeel-loops,-O3): Update documentation.
* doc/invoke.texi (-fpeel-loops,-O3): Update documentation.
	* opts.c (default_options): Enable peel loops at -O3.
	* tree-ssa-loop-ivcanon.c (peeled_loops): New static var.
	(try_peel_loop): Do not re-peel already peeled loops;
	use likely upper bounds; fix profile updating.
	(pass_complete_unroll::execute): Initialize peeled_loops.

	* gcc.dg/tree-ssa/peel1.c: New testcase.
	* gcc.dg/tree-ssa/pr61743-1.c: Disable loop peeling.
	* gcc.dg/tree-ssa/pr61743-2.c: Disable loop peeling.

From-SVN: r236892
2016-05-30 17:58:19 +00:00
Martin Liska
83e0b73912 Add profiling support for IVOPTS
* tree-ssa-loop-ivopts.c (get_computation_cost_at): Scale
	computed costs by frequency of BB they belong to.
	(get_scaled_computation_cost_at): New function.

From-SVN: r236888
2016-05-30 16:04:50 +00:00
Tom de Vries
69be8c9124 Fix pr69067.c testcase
2016-05-30  Tom de Vries  <tom@codesourcery.com>

	* gcc.dg/graphite/pr69067.c (main): Remove superfluous argument in call
	to ce.

From-SVN: r236886
2016-05-30 15:50:55 +00:00
Paolo Carlini
a59775a17c re PR c++/71099 (Misleading diagnostic message with 'virtual' used in out-of-line definitions of class template member functions)
/cp
2016-05-30  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/71099
	* parser.c (cp_parser_function_specifier_opt): Use current_class_type
	to improve the diagnostic about wrong uses of 'virtual'.

/testsuite
2016-05-30  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/71099
	* g++.dg/parse/virtual1.C: New.

From-SVN: r236885
2016-05-30 15:10:51 +00:00
Uros Bizjak
53d6d95560 args.h (clear_non_sret_int_hardware_registers): Use correct register when clearing %edx.
* gcc.target/i386/iamcu/args.h (clear_non_sret_int_hardware_registers):
	Use correct register when clearing %edx.

From-SVN: r236883
2016-05-30 16:50:44 +02:00
Alexander Monakov
0557293fc2 match.pd: optimize unsigned mul overflow check
gcc/
2016-05-28  Alexander Monakov  <amonakov@ispras.ru>
            Marc Glisse  <marc.glisse@inria.fr>

	PR tree-optimization/71289
	* match.pd (-1 / B < A, A > -1 / B): New transformations.

gcc/testsuite/
2016-05-28  Alexander Monakov  <amonakov@ispras.ru>

	PR tree-optimization/71289
	* gcc.dg/pr71289.c: New test.


Co-Authored-By: Marc Glisse <marc.glisse@inria.fr>

From-SVN: r236882
2016-05-30 17:37:02 +03:00
Jan Hubicka
e5b1fae41b * tree-vect-loop.c (vect_transform_loop): Update likely bounds.
From-SVN: r236880
2016-05-30 14:12:46 +00:00
Jan Hubicka
eb897cfcf5 tree-ssa-loop-ivcanon.c (try_peel_loop): Correctly set wont_exit for peeled copies...
* tree-ssa-loop-ivcanon.c (try_peel_loop): Correctly set wont_exit
	for peeled copies; avoid underflow when updating estimates; correctly
	scale loop profile.

From-SVN: r236878
2016-05-30 13:25:02 +00:00
Kugan Vivekanandarajah
5750980942 tree-ssa-reassoc.c (swap_ops_for_binary_stmt): Fix typo from commit r236875.
gcc/ChangeLog:

2016-05-30  Kugan Vivekanandarajah  <kuganv@linaro.org>

	* tree-ssa-reassoc.c (swap_ops_for_binary_stmt): Fix typo from commit
	r236875. Corrected oe3 to oe2 as obvious.

From-SVN: r236877
2016-05-30 11:01:06 +00:00
Kugan Vivekanandarajah
5d476e35f0 re PR middle-end/71269 (segfault while compiling sqlite)
gcc/testsuite/ChangeLog:

2016-05-30  Kugan Vivekanandarajah  <kuganv@linaro.org>

	PR middle-end/71269
	PR middle-end/71292
	* gcc.dg/tree-ssa/pr71269.c: New test.
	* gcc.dg/tree-ssa/pr71292.c: New test.

gcc/ChangeLog:

2016-05-30  Kugan Vivekanandarajah  <kuganv@linaro.org>

	PR middle-end/71269
	PR middle-end/71252
	* tree-ssa-reassoc.c (insert_stmt_before_use): Use find_insert_point so
	that inserted stmt will not dominate stmts that defines its operand.
	(rewrite_expr_tree): Add stmt_to_insert before adding the use stmt.
	(rewrite_expr_tree_parallel): Likewise.

From-SVN: r236876
2016-05-30 10:47:57 +00:00
Kugan Vivekanandarajah
db5447cad8 re PR tree-optimization/71252 (ICE: verify_ssa failed : definition in block 7 does not dominate use in block 6)
gcc/ChangeLog:

2016-05-30  Kugan Vivekanandarajah  <kuganv@linaro.org>

	PR middle-end/71252
	* tree-ssa-reassoc.c (swap_ops_for_binary_stmt): Fix swap such that
	all fields including stmt_to_insert are swapped.


gcc/testsuite/ChangeLog:

2016-05-30  Kugan Vivekanandarajah  <kuganv@linaro.org>

	PR middle-end/71252
	* gcc.dg/tree-ssa/pr71252-2.c: New test.

From-SVN: r236875
2016-05-30 10:45:19 +00:00
Jan Hubicka
98bdbb39a6 predict.h (force_edge_cold): Declare.
* predict.h (force_edge_cold): Declare.
	* predict.c (force_edge_cold): New function.
	* tree-ssa-loop-ivcanon.c (try_unroll_loop_completely): Fix profile
	updating.
	(canonicalize_loop_induction_variables): Fix formating.

	* gcc.dg/tree-ssa/cunroll-12.c: New testcase.
	* gcc.dg/tree-ssa/cunroll-13.c: New testcase.
	* gcc.dg/tree-ssa/cunroll-14.c: New testcase.

From-SVN: r236874
2016-05-30 10:40:33 +00:00
Eric Botcazou
d5cf3d8da6 visium.c (visium_split_double_add): Minor tweaks.
* config/visium/visium.c (visium_split_double_add): Minor tweaks.
	(visium_expand_copysign): Use gen_int_mode directly.
	(visium_compute_frame_size): Minor tweaks.

From-SVN: r236871
2016-05-30 08:48:17 +00:00
Jan Hubicka
6f2c0820ae tree-vect-loop.c (vect_analyze_loop_2): Use likely_max_stmt_executions_int.
* tree-vect-loop.c (vect_analyze_loop_2): Use
	likely_max_stmt_executions_int.

From-SVN: r236870
2016-05-30 08:19:24 +00:00
Tom de Vries
7e01285587 Remove assert in get_def_bb_for_const
2016-05-30  Tom de Vries  <tom@codesourcery.com>

	PR tree-optimization/69067
	* graphite-isl-ast-to-gimple.c (get_def_bb_for_const): Remove assert.

	* gcc.dg/graphite/pr69067.c: New test.

From-SVN: r236868
2016-05-30 07:49:42 +00:00
GCC Administrator
89bd6e5d19 Daily bump.
From-SVN: r236867
2016-05-30 00:16:26 +00:00
Uros Bizjak
beed3701c7 re PR target/71245 (std::atomic<double> load/store bounces the data to the stack using fild/fistp)
PR target/71245
	* config/i386/sync.md (define_peephole2 atomic_storedi_fpu):
	New peepholes to remove unneeded fild/fistp pairs.
	(define_peephole2 atomic_loaddi_fpu): Ditto.

testsuite/ChangeLog:

	PR target/71245
	* gcc.target/i386/pr71245-1.c: New test.
	* gcc.target/i386/pr71245-2.c: Ditto.

From-SVN: r236863
2016-05-29 22:50:32 +02:00
Jan Hubicka
f0b03e9423 * predict.c (maybe_hot_frequency_p): Avoid division.
From-SVN: r236862
2016-05-29 17:29:42 +00:00
Paolo Carlini
036dc0a057 re PR c++/71105 (lambdas with default captures improperly have function pointer conversions)
/cp
2016-05-29  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/71105
	* lambda.c (maybe_add_lambda_conv_op): Early return also when
	LAMBDA_EXPR_DEFAULT_CAPTURE_MODE != CPLD_NONE.

/testsuite
2016-05-29  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/71105
	* g++.dg/cpp0x/lambda/lambda-conv11.C: New.
	* g++.dg/cpp1y/lambda-conv1.C: Likewise.
	* g++.dg/cpp1y/lambda-conv2.C: Likewise.

From-SVN: r236861
2016-05-29 08:29:46 +00:00
Paolo Carlini
b6d4f8e854 re PR c++/71105 (lambdas with default captures improperly have function pointer conversions)
/cp
2016-05-29  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/71105
	* lambda.c (maybe_add_lambda_conv_op): Early return also when
	LAMBDA_EXPR_DEFAULT_CAPTURE_MODE != CPLD_NONE.

/testsuite
2016-05-29  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/71105
	* g++.dg/cpp0x/lambda/lambda-conv11.C: New.
	* g++.dg/cpp1y/lambda-conv1.C: Likewise.
	* g++.dg/cpp1y/lambda-conv2.C: Likewise.

From-SVN: r236859
2016-05-29 08:05:30 +00:00
Gerald Pfeifer
4acc363412 backwards_compatibility.xml: Adjust lists.debian.org link to https.
* doc/xml/manual/backwards_compatibility.xml: Adjust
	lists.debian.org link to https.
	* doc/html/manual/backwards.html: Regenerate.

From-SVN: r236858
2016-05-29 08:03:35 +00:00
GCC Administrator
6766aac22a Daily bump.
From-SVN: r236857
2016-05-29 00:16:19 +00:00
Gerald Pfeifer
545808ee66 * doc/install.texi: Use https for shop.fsf.org.
From-SVN: r236853
2016-05-28 19:44:13 +00:00
Jan Hubicka
c8cf746afb tree-ssa-loop-ivopts.c (estimated_stmt_executions_int): Use likely_max_stmt_executions_int.
* tree-ssa-loop-ivopts.c (estimated_stmt_executions_int): Use
	likely_max_stmt_executions_int.

From-SVN: r236852
2016-05-28 16:36:29 +00:00
Jan Hubicka
000220585d prefetch-5.c: Remove xfail.
* gcc.dg/tree-ssa/prefetch-5.c: Remove xfail.
	* tree-ssa-loop-prefetch.c (loop_prefetch_arrays): Use
	likely_max_stmt_executions_int.

From-SVN: r236851
2016-05-28 16:23:33 +00:00
Ville Voutilainen
c8419aca08 Update changelogs for revert of c++/69855.
From-SVN: r236850
2016-05-28 19:21:05 +03:00
Jan Hubicka
1428d9e013 profile.c (compute_branch_probabilities): Do not report hitrates here.
* profile.c (compute_branch_probabilities): Do not report hitrates
	here.
	(branch_prob): Report hitrates here.
	* predict.c (gimple_predict_edge): Do not assert profile status;
	fix formatting issues.

From-SVN: r236849
2016-05-28 16:20:06 +00:00
Jan Hubicka
5aabc487d3 predict.c (edge_predicted_by_p): New function.
* predict.c (edge_predicted_by_p): New function.
	(predict_paths_for_bb): Do not put multiple predictions of the same type
	on one edge.

From-SVN: r236848
2016-05-28 14:52:46 +00:00
Jan Hubicka
018b22f331 tree-ssa-loop-niter.c (number_of_iterations_exit): Revert accidental commit.
* tree-ssa-loop-niter.c (number_of_iterations_exit): Revert accidental
	commit.

From-SVN: r236847
2016-05-28 13:22:49 +00:00
Alan Modra
350216e367 Add dependencies to configure rule
* Makefile.tpl (configure): Depend on m4 files included.
	* Makefile.in: Regenerate.

From-SVN: r236846
2016-05-28 22:38:47 +09:30
Alan Modra
bcfbf25770 Fix segfault on verify_dominators error path
* dominance.c (verify_dominators): Don't segfault on NULL imm_bb.

From-SVN: r236845
2016-05-28 18:46:00 +09:30
Ville Voutilainen
cdfa2b24d2 Revert the attempted fix for c++/69855, it breaks bootstrap.
From-SVN: r236844
2016-05-28 11:22:15 +03:00
Alan Modra
f3c82ff9a9 ira.c bb_loop_depth again
Follow the same practice as other places in ira.c, where
free_dominance_info is called along with loop_optimizer_finalize.  Not
doing so causes an ICE on gcc-5-branch, so avoid that possibility on
trunk.

	PR rtl-optimization/71275
	* ira.c (ira): Free dominance info.

From-SVN: r236843
2016-05-28 09:52:56 +09:30
GCC Administrator
a9ef1353bd Daily bump.
From-SVN: r236842
2016-05-28 00:16:17 +00:00
Jonathan Wakely
9020909ef1 Adjust URL in libstdc++ manual to use https
* doc/xml/manual/abi.xml: Adjust URL to use https.
	* doc/html/manual/*: Regenerate.

From-SVN: r236837
2016-05-27 22:23:42 +01:00
Gerald Pfeifer
a1ece5c000 * doc/sourcebuild.texi: New address for upstream Go repository.
From-SVN: r236836
2016-05-27 20:25:05 +00:00
Paolo Carlini
8008c4d2be re PR c++/60385 (confused by earlier errors, bailing out)
/cp
2016-05-27  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/60385
	* name-lookup.c (push_namespace): Return bool, false when pushdecl
	fails.
	* name-lookup.h (push_namespace): Adjust declaration.
	* parser.c (cp_parser_namespace_definition): Check push_namespace
	return value.

/testsuite
2016-05-27  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/60385
	* g++.dg/parse/namespace13.C: New.

From-SVN: r236835
2016-05-27 19:19:23 +00:00
Thomas Preud'homme
9a01befbca arm.h (TARGET_ARM_V6M): Remove.
2016-05-27  Thomas Preud'homme  <thomas.preudhomme@arm.com>

    gcc/
    * config/arm/arm.h (TARGET_ARM_V6M): Remove.
    (TARGET_ARM_V7M): Likewise.

From-SVN: r236832
2016-05-27 16:36:42 +00:00