Commit Graph

26690 Commits

Author SHA1 Message Date
Aditya Kumar 1e050c9081 fix PR68343: disable fuse-*.c tests for isl 0.14 or earlier
The patch disables all fuse-*.c tests when configuring gcc with isl 0.14 or earlier.

ChangeLog:

	* Makefile.in: Regenerate.
	* Makefile.tpl: Export ISLVER.
	* configure: Regenerate.
	* config/isl.m4: Detect isl-0.15.

gcc/

	* Makefile.in: Set ISLVER in site.exp.

gcc/testsuite/

	* gcc.dg/graphite/graphite.exp: Only run the fuse-*.c tests with isl-0.15.

Co-Authored-By: Sebastian Pop <s.pop@samsung.com>

From-SVN: r232811
2016-01-26 00:19:11 +00:00
Aditya Kumar c8ee4bf593 add missing testcase
Co-Authored-By: Sebastian Pop <s.pop@samsung.com>

From-SVN: r232810
2016-01-26 00:18:56 +00:00
Jakub Jelinek d902b330dc omp-low.c (lower_omp_target): Set DECL_VALUE_EXPR of new_var even for the non-array case.
* omp-low.c (lower_omp_target) <case USE_DEVICE_PTR>: Set
	DECL_VALUE_EXPR of new_var even for the non-array case.  Look
	through DECL_VALUE_EXPR for expansion.

	* c-c++-common/goacc/use_device-1.c: New test.

From-SVN: r232804
2016-01-25 22:34:06 +01:00
Jeff Law 2c89b952c7 re PR tree-optimization/69196 (code size regression with jump threading at -O2)
PR tree-optimization/69196
	PR tree-optimization/68398
	* tree-ssa-threadupdate.h (enum bb_dom_status): Moved here from
	tree-ssa-threadupdate.c.
	(determine_bb_domination_status): Prototype
	* tree-ssa-threadupdate.c (enum bb_dom_status): Remove
	(determine_bb_domination_status): No longer static.
	(valid_jump_thread_path): Remove code to detect characteristics
	of the jump thread path not associated with correctness.
	* tree-ssa-threadbackward.c (fsm_find_control_statment_thread_paths):
	Correct test for thread path length.  Count PHIs for real operands as
	statements that need to be copied.  Do not count ASSERT_EXPRs.
	Look at all the blocks in the thread path.  Compute and selectively
	filter thread paths based on threading through the latch, threading
	a multiway branch or crossing a multiway branch.

	PR tree-optimization/69196
	PR tree-optimization/68398
	* gcc.dg/tree-ssa/pr66752-3.c: Update expected output
	* gcc.dg/tree-ssa/pr68198.c: Likewise.

From-SVN: r232802
2016-01-25 12:19:09 -07:00
David Edelsohn 685c8785fd re PR target/69469 (test case gcc.target/powerpc/vsx-vector-2.c fails on power starting with r232632)
PR target/69469
        * gcc.target/powerpc/vsx-vector-2.c: Adjust for Goldschmidt's
        Algorithm.

From-SVN: r232796
2016-01-25 11:16:21 -05:00
Richard Biener 95cef0c13e re PR testsuite/69380 (FAIL: g++.dg/tree-ssa/pr69336.C scan-tree-dump-not optimized "cmap")
2016-01-25  Richard Biener  <rguenther@suse.de>

	PR testsuite/69380
	* g++.dg/tree-ssa/pr69336.C: Restrict to x86_64 and i?86.

From-SVN: r232795
2016-01-25 14:42:39 +00:00
Ilya Enkovich 2947d3b29c re PR target/69421 (ICE in maybe_legitimize_operand, at optabs.c:6888 with -O3)
gcc/

	PR target/69421
	* tree-vect-stmts.c (vectorizable_condition): Check vectype
	of operands is compatible with a statement vectype.

gcc/testsuite/

	PR target/69421
	* gcc.dg/pr69421.c: New test.

From-SVN: r232792
2016-01-25 12:48:54 +00:00
Bilyan Borisov ae19075a5d [AARCH64][ACLE][NEON] Implement vcvt*_s64_f64 and vcvt*_u64_f64 NEON intrinsics.
gcc/

	* config/aarch64/arm_neon.h (vcvt_s64_f64): New intrinsic.
	(vcvt_u64_f64): Likewise.
	(vcvta_s64_f64): Likewise.
	(vcvta_u64_f64): Likewise.
	(vcvtm_s64_f64): Likewise.
	(vcvtm_u64_f64): Likewise.
	(vcvtn_s64_f64): Likewise.
	(vcvtn_u64_f64): Likewise.
	(vcvtp_s64_f64): Likewise.
	(vcvtp_u64_f64): Likewise.

gcc/testsuite/

	* gcc.target/aarch64/simd/vcvt_s64_f64_1.c: New.
	* gcc.target/aarch64/simd/vcvt_u64_f64_1.c: Likewise.
	* gcc.target/aarch64/simd/vcvta_s64_f64_1.c: Likewise.
	* gcc.target/aarch64/simd/vcvta_u64_f64_1.c: Likewise.
	* gcc.target/aarch64/simd/vcvtm_s64_f64_1.c: Likewise.
	* gcc.target/aarch64/simd/vcvtm_u64_f64_1.c: Likewise.
	* gcc.target/aarch64/simd/vcvtn_s64_f64_1.c: Likewise.
	* gcc.target/aarch64/simd/vcvtn_u64_f64_1.c: Likewise.
	* gcc.target/aarch64/simd/vcvtp_s64_f64_1.c: Likewise.
	* gcc.target/aarch64/simd/vcvtp_u64_f64_1.c: Likewise.

From-SVN: r232789
2016-01-25 11:32:07 +00:00
Richard Biener fa4511c2f4 re PR tree-optimization/69376 (wrong code at -Os and above on x86_64-linux-gnu)
2016-01-25  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/69376
	* tree-ssa-sccvn.h (struct vn_ssa_aux): Add range_info_anti_range_p
	flag.
	(VN_INFO_ANTI_RANGE_P): New inline.
	(VN_INFO_RANGE_TYPE): Likewise.
	* tree-ssa-sccvn.c (set_ssa_val_to): Also record and copy
	SSA_NAME_ANTI_RANGE_P.
	(free_scc_vn): Restore SSA_NAME_ANTI_RANGE_P.
	* tree-ssa-pre.c (eliminate_dom_walker::before_dom_children):
	Properly query VN_INFO_RANGE_TYPE.

	* gcc.dg/torture/pr69376.c: New testcase.

From-SVN: r232786
2016-01-25 09:05:47 +00:00
Jerry DeLisle 1d10121630 [multiple changes]
2016-01-23  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

	PR fortran/69397
	PR fortran/68442
	* interface.c (gfc_arglist_matches_symbol): Replace assert with
	a return false if not a procedure.
	* resolve.c (resolve_generic_f): Test if we are resolving an
	initialization expression and adjust error message accordingly.

2016-01-24  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

	PR fortran/69397
	PR fortran/68442
	* gfortran.dg/interface_38.f90: New test.
	* gfortran.dg/interface_39.f90: New test.

From-SVN: r232780
2016-01-24 22:18:20 +00:00
Patrick Palka a59b92b0c7 Revert "Fix the remaining PR c++/24666 blockers"
gcc/cp/ChangeLog:

	Revert:
	2016-01-18  Patrick Palka  <ppalka@gcc.gnu.org>

	PR c++/11858
	PR c++/24663
	PR c++/24664
	* decl.c (grokdeclarator): Don't decay array parameter type to
	a pointer type if it's dependent.
	(grokparms): Invoke strip_top_quals instead of directly invoking
	cp_build_qualified_type.
	* pt.c (decay_dependent_array_parm_type): New static function.
	(type_unification_real): Call decay_dependent_array_parm_type
	to decay a dependent array parameter type to its corresponding
	pointer type before unification.
	(more_specialized_fn): Likewise.
	(get_bindings): Likewise.
	* tree.c (cp_build_qualified_type): Trivial typofix in
	documentation.

gcc/testsuite/ChangeLog:

	Revert:
	2016-01-18  Patrick Palka  <ppalka@gcc.gnu.org>

	PR c++/11858
	PR c++/24663
	PR c++/24664
	* g++.dg/template/pr11858.C: New test.
	* g++.dg/template/pr24663.C: New test.
	* g++.dg/template/unify12.C: New test.
	* g++.dg/template/unify13.C: New test.
	* g++.dg/template/unify14.C: New test.
	* g++.dg/template/unify15.C: New test.
	* g++.dg/template/unify16.C: New test.
	* g++.dg/template/unify17.C: New test.

From-SVN: r232778
2016-01-24 17:45:21 +00:00
Dominique d'Humieres 16acb1a8c7 [multiple changes]
2016-01-24  Dominique d'Humieres <dominiq@lps.ens.fr>

	PR fortran/68283
	* primary.c (gfc_variable_attr): revert revision r221955,
	call gfc_internal_error only if there is no error.

2016-01-24  Dominique d'Humieres  <dominiq@lps.ens.fr>

	PR fortran/68283
	gfortran.dg/pr68283.f90: New test.

From-SVN: r232775
2016-01-24 14:12:44 +01:00
Thomas Koenig 094773e8cb re PR fortran/66094 (Handle transpose(A) in inline matmul)
2016-01-24  Thomas Koenig  <tkoenig@gcc.gnu.org>

	PR fortran/66094
	* frontend-passes.c (enum matrix_case):  Add case A2B2T for
	MATMUL(A,TRANSPoSE(B)) where A and B are rank 2.
	(inline_limit_check):  Also add A2B2T.
	(matmul_lhs_realloc):  Handle A2B2T.
	(check_conjg_variable):  Rename to
	(check_conjg_transpose_variable):  and also count TRANSPOSE.
	(inline_matmul_assign):  Handle A2B2T.

2016-01-24  Thomas Koenig  <tkoenig@gcc.gnu.org>

	PR fortran/66094
	* gfortran.dg/inline_matmul_13.f90:  New test.
	* gfortran.dg/matmul_bounds_8.f90:  New test.
	* gfortran.dg/matmul_bounds_9.f90:  New test.
	* gfortran.dg/matmul_bounds_10.f90:  New test.

From-SVN: r232774
2016-01-24 09:11:50 +00:00
Tom de Vries 42fb90d7a5 Fix clobber removal in parloops
2016-01-23  Tom de Vries  <tom@codesourcery.com>

	PR tree-optimization/69426
	* tree-parloops.c (eliminate_local_variables_stmt): Handle vdef of
	removed clobber.

	* gcc.dg/autopar/pr69426.c: New test.

From-SVN: r232767
2016-01-23 20:28:17 +00:00
Martin Sebor 69da78025e PR c++/58109 - alignas() fails to compile with constant expression
PR c++/58109 - alignas() fails to compile with constant expression
PR c++/69022 - attribute vector_size ignored with dependent bytes
    
gcc/testsuite/ChangeLog:
2016-01-23  Martin Sebor  <msebor@redhat.com>
    
	PR c++/58109
	PR c++/69022
	* g++.dg/cpp0x/alignas5.C: New test.
	* g++.dg/ext/vector29.C: Same.
    
gcc/cp/ChangeLog:
2016-01-23  Martin Sebor  <msebor@redhat.com>
    
	PR c++/58109
	PR c++/69022
	* decl2.c (is_late_template_attribute): Handle dependent argument
 	to attribute align and attribute vector_size.

From-SVN: r232766
2016-01-23 09:01:47 -07:00
Uros Bizjak da17300a84 chkp-strlen-2.c: Define _GNU_SOURCE.
* gcc.target/i386/chkp-strlen-2.c: Define _GNU_SOURCE.
	* gcc.target/i386/chkp-strlen-4.c: Move the definition of
	_GNU_SOURCE from compile flags to the source.
	* gcc.target/i386/chkp-stropt-12.c: Ditto.
	* gcc.target/i386/chkp-stropt-16.c: Ditto.
	* gcc.target/i386/chkp-stropt-4.c: Ditto.
	* gcc.target/i386/chkp-stropt-8.c: Ditto.

From-SVN: r232762
2016-01-23 10:29:12 +01:00
Jakub Jelinek 62041cfc09 re PR other/69432 (ICE in connect_traces, at dwarf2cfi.c with -O3 -m32 -minline-stringops-dynamically)
PR target/69432
	* config/i386/i386.c: Include dojump.h.
	(expand_small_movmem_or_setmem,
	expand_set_or_movmem_prologue_epilogue_by_misaligned_moves): Spelling
	fixes.
	(ix86_expand_set_or_movmem): Call do_pending_stack_adjust () early
	if dynamic_check != -1.

	* g++.dg/opt/pr69432.C: New test.

From-SVN: r232754
2016-01-23 00:14:27 +01:00
William Schmidt d403fc9a7b Fix ChangeLog entry in wrong file
From-SVN: r232750
2016-01-22 22:06:06 +00:00
Bill Schmidt f7d2ad6f3c pr63354c: Adjust target selector to include 32-bit targets testing an -m64 multilib.
2016-01-22  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>

	* gcc.target/powerpc/pr63354c: Adjust target selector to include
	32-bit targets testing an -m64 multilib.

From-SVN: r232744
2016-01-22 19:59:23 +00:00
James Greenhalgh 4aa16f8ddb [Patch Obvious] gcc.dg/vect/bb-slp-pr68892.c requires vectorization of doubles
gcc/testsuite/

	* gcc.dg/vect/bb-slp-pr68892.c: Require vect_double.

From-SVN: r232731
2016-01-22 15:00:43 +00:00
Christian Bruel 7c816d0f46 [multiple changes]
2016-01-22  Christian Bruel  <christian.bruel@st.com>

	PR target/68674
	* expr.c (expand_expr_real_1): Reset DECL_MODE if VECTOR_TYPE_P changed.

// testsuite
2016-01-21  Christian Bruel  <christian.bruel@st.com>

	PR target/68674
	* gcc.target/i386/pr68674.c
	* gcc.target/aarch64/pr68674.c
	* gcc.target/arm/pr68674.c

From-SVN: r232728
2016-01-22 15:16:47 +01:00
Kyrylo Tkachov fce661e8d5 [ARM] Fix PR target/69403: Bug in thumb2_ior_scc_strict_it pattern
PR target/69403
	* config/arm/thumb2.md (*thumb2_ior_scc_strict_it): Convert to
	define_insn_and_split.  Ensure operands[1] and operands[0] do not
	get assigned the same register.

	* gcc.c-torture/execute/pr69403.c: New test.

From-SVN: r232727
2016-01-22 13:58:11 +00:00
Paolo Carlini 4696899f42 re PR c++/55843 (ICE after exceeding template instantiation depth)
2016-01-22  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/55843
	* g++.dg/template/pr55843.C: New.

From-SVN: r232721
2016-01-22 11:03:54 +00:00
Alan Lawrence bac69366a5 [Testsuite] Fix PR66877
* gcc.dg/vect/vect-over-widen-3-big-array.c: Only look for 1
	vect_recog_over_widening_pattern in dump if we have vect_widen_shift.

From-SVN: r232720
2016-01-22 10:56:43 +00:00
Bill Schmidt b57d3a5c29 re PR testsuite/67489 (FAIL: gcc.target/powerpc/p8vector-builtin-8.c (test for excess errors))
2016-01-21  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>

	PR testsuite/67489
	* gcc.target/powerpc/p8vector-builtin-8.c: Remove { target int128
	} from dg-do compile directive, and instead add {
	dg-require-effective-target int128 }.

From-SVN: r232717
2016-01-22 03:01:27 +00:00
Martin Sebor 9f04a53e1d PR c/69405 - [6 Regression] ICE in c_tree_printer on an invalid
PR c/69405 - [6 Regression] ICE in c_tree_printer on an invalid
    __atomic_fetch_add

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

        PR c/69405
        * gcc.dg/sync-fetch.c: New test.

gcc/c-family/ChangeLog:
2016-01-20  Martin Sebor  <msebor@redhat.com>

        PR c/69405
        * c-common.c (sync_resolve_size): Avoid printing diagnostic about
        an incompatible argument when the argument isn't a valid tree node.

From-SVN: r232713
2016-01-21 16:19:05 -07:00
Jeff Law 38a516638d re PR target/69252 (gcc.dg/vect/vect-iv-9.c FAILs with -Os -fmodulo-sched -fmodulo-sched-allow-regmoves -fsched-pressure)
PR target/69252
	* modulo-sched.c (optimize_sc):	Allow branch-scheduling to add a new
	first stage.

	PR target/69252
	* gcc.target/powerpc/pr69252.c: New test.

From-SVN: r232712
2016-01-21 15:58:29 -07:00
Jerry DeLisle 2423a75aed re PR fortran/65996 (gfortran ICE with -dH)
2016-01-21  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

	PR fortran/65996
	* error.c (gfc_error): Save the state of abort_on_error and set
	it to false for buffered errors to allow normal processing.
	Restore the state before leaving.

2016-01-21  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

	PR fortran/65996
	gfortran.dg/pr65996.f90: New test.

From-SVN: r232707
2016-01-21 21:08:00 +00:00
Dominik Vogt 0a76463f6e re PR c++/68810 (FAIL: g++.dg/cpp0x/constexpr-reinterpret1.C -- test for errors -- -m32)
PR c++/68810
	* g++.dg/cpp0x/constexpr-reinterpret1.C: Fix line number that is                                                                           
	expected to generate an error.

From-SVN: r232705
2016-01-21 21:29:33 +01:00
Bernd Schmidt 9776e6920d Fix PR66178, ICE due to misexpansion of constant expressions involving labels.
PR middle-end/66178
	* expr.c (expand_expr_real_2) [PLUS_EXPR, MINUS_EXPR]: Don't
	drop EXPAND_INITIALIZER.
	* rtl.h (contains_symbolic_reference_p): Declare.
	* rtlanal.c (contains_symbolic_reference_p): New function.
	* simplify-rtx.c (simplify_binary_operation_1): Don't turn
	a subtraction into a NOT if symbolic constants are involved.

testsuite/
	PR middle-end/66178
	gcc.dg/torture/pr66178.c: New test.

From-SVN: r232689
2016-01-21 18:10:03 +00:00
Anton Blanchard c8d3e08887 re PR target/63354 (gcc -pg -mprofile-kernel creates unused stack frames on leaf functions on ppc64le)
[gcc]

2016-01-21  Anton Blanchard  <anton@samba.org>
	    Bill Schmidt  <wschmidt@linux.vnet.ibm.com>

	PR target/63354
	* config/rs6000/linux64.h (TARGET_KEEP_LEAF_WHEN_PROFILED): New
	#define.
	* config/rs6000/rs6000.c (rs6000_keep_leaf_when_profiled): New
	function.

[gcc/testsuite]

2016-01-21  Anton Blanchard  <anton@samba.org>
	    Bill Schmidt  <wschmidt@linux.vnet.ibm.com>

	PR target/63354
	* gcc.target/powerpc/pr63354.c:  New test.


Co-Authored-By: Bill Schmidt <wschmidt@linux.vnet.ibm.com>

From-SVN: r232684
2016-01-21 17:32:28 +00:00
Vladimir Makarov 35b707ff99 re PR rtl-optimization/68990 (wrong code at -O3 on x86_64-pc-linux-gnu in 32-bit mode.)
2016-01-21  Vladimir Makarov  <vmakarov@redhat.com>

	PR rtl-optimization/68990
	* lra-coalesce.c (lra_coalesce): Invalidate value for the result
	pseudo instead of inheritance ones.

2016-01-21  Vladimir Makarov  <vmakarov@redhat.com>

	PR rtl-optimization/68990
	* gcc.target/i386/pr68990: New.

From-SVN: r232679
2016-01-21 16:01:22 +00:00
Nick Clifton 157b0829d7 re PR target/69129 (ICE in get_attr_got, at config/mips/mips.md:694 on mips-linux-gnu)
PR target/69129
	PR target/69012
	* config/mips/mips.c (mips_compute_frame_info): Initialise
	args_size and hard_frame_pointer_offset fields of the frame
	structure before calling mips_global_pointer.

	PR target/69129
	* gcc.target/mips/pr69129.c: New.

From-SVN: r232674
2016-01-21 14:07:01 +00:00
Paolo Carlini aede6748d0 re PR c++/58046 (template operator= in SFINAE class)
2016-01-21  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/58046
	* g++.dg/cpp0x/pr58046.C: New.

From-SVN: r232671
2016-01-21 10:55:30 +00:00
Stefan Sørensen 6d31cc758b re PR target/69187 (ICE: Aborted when native compiling neon code with __builtin_neon_vmlals_lanev4hi)
PR target/69187
	PR target/65624
	* config/arm/arm-builtins.c (arm_expand_neon_builtin): Increase
	args array size by one to avoid buffer overflow.

	* gcc.target/arm/pr69187.c: New test.

From-SVN: r232668
2016-01-21 10:52:46 +01:00
Jakub Jelinek 5463c2c893 re PR tree-optimization/69355 (Wrong results with -O1 optimization)
PR c++/69355
	* tree-dfa.c (get_ref_base_and_extent): Use GET_MODE_BITSIZE (mode)
	for bitsize instead of GET_MODE_PRECISION (mode).

	* g++.dg/torture/pr69355.C: New test.

From-SVN: r232663
2016-01-21 08:59:32 +01:00
Aditya Kumar fa28f32bbc fix codegen error exposed by compute isl flow patch
we used to fail using an iv from a different loop.

	* graphite-isl-ast-to-gimple.c (enum phi_node_kind): New.
	(class translate_isl_ast_to_gimple): Use phi_node_kind instead of bool.
	(is_valid_rename): Same.
	(translate_isl_ast_to_gimple::get_rename): Same.
	(translate_isl_ast_to_gimple::rename_all_uses): Same.
	(translate_isl_ast_to_gimple::rename_uses): Same.
	(get_new_name): Check for close_phi nodes.
	(copy_loop_phi_args): Use phi_node_kind.
	(translate_isl_ast_to_gimple::copy_loop_close_phi_args): Same.
	(translate_isl_ast_to_gimple::copy_cond_phi_args): Same.

gcc/testsuite

	* gfortran.dg/graphite/interchange-3.f90: Adjust pattern.

Co-Authored-By: Sebastian Pop <s.pop@samsung.com>

From-SVN: r232660
2016-01-21 02:14:12 +00:00
Aditya Kumar b920a04763 fix PR68976: only add loop close phi for names defined in loop
* graphite-isl-ast-to-gimple.c: Fix comment.
        * graphite-scop-detection.c (defined_in_loop_p): New.
        (canonicalize_loop_closed_ssa): Do not add close phi nodes for SSA
        names defined in loop.

gcc/testsuite

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

Co-Authored-By: Sebastian Pop <s.pop@samsung.com>

From-SVN: r232658
2016-01-21 02:13:52 +00:00
Jakub Jelinek bdd3aea68b re PR middle-end/67653 (ICE on valid code on x86_64-linux-gnu: verify_gimple failed)
PR middle-end/67653
	* gimplify.c (gimplify_asm_expr): Warn if it is too late to
	attempt to mark memory input operand addressable and
	call prepare_gimple_addressable in that case.  Don't adjust
	input_location for diagnostics, use error_at instead.

	* c-c++-common/pr67653.c: New test.
	* gcc.dg/torture/pr29119.c: Add dg-warning.

From-SVN: r232640
2016-01-21 00:43:58 +01:00
Peter Bergner 26a2e6aed4 ppc-auxv.h: New file.
gcc/
	* config/rs6000/ppc-auxv.h: New file.
	* config/rs6000/rs6000-builtin.def (cpu_init): Add new builtin.
	(cpu_is): Likewise.
	(cpu_supports): Likewise.
	* config/rs6000/rs6000.c: include "ppc-auxv.h".
	(cpu_is_info): New variable.
	(cpu_supports_info): Likewise.
	(tcb_verification_symbol): Likewise.
	(cpu_builtin_p): Likewise.
	(cpu_expand_builtin): New function.
	(rs6000_expand_ternop_builtin): Add support for CPU builtin functions.
	(rs6000_init_builtins): Likewise.
	(rs6000_elf_file_end): Emit HWCAP in TCB verification symbol.
	* config/rs6000/rs6000.h (TLS_REGNUM): New define.
	* configure.ac (gcc_cv_libc_provides_hwcap_in_tcb): New test.
	* configure: Regenerate.
	* config.in: Likewise.
	* doc/extend.texi (PowerPC Built-in Functions): Document
	__builtin_cpu_init, __builtin_cpu_is and __builtin_cpu_supports.

gcc/testsuite/
	* gcc.target/powerpc/cpu-builtin-1.c: New test.

From-SVN: r232634
2016-01-20 14:30:24 -06:00
Prathamesh Kulkarni d25c769062 re PR c/24293 (Undefined behaviour not diagnosed with -fsyntax-only)
2016-01-15  Prathamesh Kulkarni  <prathamesh.kulkarni@linaro.org>

        PR c/24293
        * c-tree.h (incomplete_record_decls): Declare.
        * c-parser.c (incomplete_record_decls): Define.
        (c_parser_translation_unit): Iterate through incomplete_record_decls and
        report error if any decl has zero size.
        * c-decl.c (finish_decl): Append static decl with incomplete struct/union
        or enum type to incomplete_record_decls.

testsuite/
        * gcc.dg/pr24293.c: New test.
        * gcc.dg/Wcxx-compat-8.c: Adjust to accept error due to
        incomplete struct type.
        * gcc.dg/declspec-1.c: Likewise.
        * gcc.dg/pr63549.c: Likewise.

From-SVN: r232622
2016-01-20 16:25:23 +00:00
Jakub Jelinek 889d569816 re PR tree-optimization/66612 (FAIL: gcc.target/powerpc/20050830-1.c scan-assembler bdn)
PR tree-optimization/66612
	* gcc.target/powerpc/20050830-1.c: Xfail the scan-assembler test
	for bdn instruction.

From-SVN: r232618
2016-01-20 15:40:02 +01:00
Christophe Lyon d7cf3dc7d0 [ARM target attributes] Fix effective_target tests
2016-01-20  Christophe Lyon  <christophe.lyon@linaro.org>

	gcc/
	* doc/sourcebuild.texi (arm_crypto_pragma_ok): Document new entry.
	(arm_fp_ok): Likewise.
	(arm_fp): Likewise.
	(arm_crypto): Likewise.

	gcc/testsuite/
	* lib/target-supports.exp
	(check_effective_target_arm_fp_ok_nocache): New.
	(check_effective_target_arm_fp_ok): New.
	(add_options_for_arm_fp): New.
	(check_effective_target_arm_crypto_ok_nocache): Require
	target_arm_v8_neon_ok instead of arm32.
	(check_effective_target_arm_crypto_pragma_ok_nocache): New.
	(check_effective_target_arm_crypto_pragma_ok): New.
	(add_options_for_arm_vfp): New.
	* gcc.target/arm/attr-crypto.c: Use arm_crypto_pragma_ok effective
	target. Do not force -mfloat-abi=softfp, use arm_fp_ok effective
	target instead. Force initial fpu to vfp.
	* gcc.target/arm/attr-neon-builtin-fail.c: Do not force
	-mfloat-abi=softfp, use arm_fp_ok effective target instead.
	* gcc.target/arm/attr-neon-fp16.c: Likewise. Remove arm_neon_ok
	dependency.
	* gcc.target/arm/attr-neon2.c: Do not force -mfloat-abi=softfp,
	use arm_vfp effective target instead. Force initial fpu to vfp.
	* gcc.target/arm/attr-neon3.c: Likewise.
	* gcc.target/arm/cmp-2.c: Use arm_fp_ok effective target instead of
	arm_vfp_ok.
	* gcc.target/arm/unsigned-float.c: Likewise.
	* gcc.target/arm/vfp-1.c: Likewise.
	* gcc.target/arm/vfp-ldmdbd.c: Likewise.
	* gcc.target/arm/vfp-ldmdbs.c: Likewise.
	* gcc.target/arm/vfp-ldmiad.c: Likewise.
	* gcc.target/arm/vfp-ldmias.c: Likewise.
	* gcc.target/arm/vfp-stmdbd.c: Likewise.
	* gcc.target/arm/vfp-stmdbs.c: Likewise.
	* gcc.target/arm/vfp-stmiad.c: Likewise.
	* gcc.target/arm/vfp-stmias.c: Likewise.
	* gcc.target/arm/vnmul-1.c: Likewise.
	* gcc.target/arm/vnmul-2.c: Likewise.
	* gcc.target/arm/vnmul-3.c: Likewise.
	* gcc.target/arm/vnmul-4.c: Likewise.

From-SVN: r232616
2016-01-20 15:19:41 +01:00
H.J. Lu b03c990f38 Fix testsuite/ChangeLog entry
From-SVN: r232615
2016-01-20 06:13:30 -08:00
Christophe Lyon 01ac970459 Fix ChangeLog entry.
From-SVN: r232614
2016-01-20 15:12:13 +01:00
H.J. Lu e84b00dadd Require non-x32 target for compile-time MPX tests
Compile-time MPX tests don't need the MPX run-time library.  They
should pass for non-x32 target.

	PR testsuite/69366
	* g++.dg/pr63995-1.C: Require non-x32 target, instead of,
	the MPX run-time library, for compile-time MPX test.
	* gcc.target/i386/chkp-always_inline.c: Likewise.
	* gcc.target/i386/chkp-bndret.c: Likewise.
	* gcc.target/i386/chkp-builtins-1.c: Likewise.
	* gcc.target/i386/chkp-builtins-2.c: Likewise.
	* gcc.target/i386/chkp-builtins-3.c: Likewise.
	* gcc.target/i386/chkp-builtins-4.c: Likewise.
	* gcc.target/i386/chkp-const-check-1.c: Likewise.
	* gcc.target/i386/chkp-const-check-2.c: Likewise.
	* gcc.target/i386/chkp-hidden-def.c: Likewise.
	* gcc.target/i386/chkp-label-address.c: Likewise.
	* gcc.target/i386/chkp-lifetime-1.c: Likewise.
	* gcc.target/i386/chkp-narrow-bounds.c: Likewise.
	* gcc.target/i386/chkp-pr69044.c: Likewise.
	* gcc.target/i386/chkp-remove-bndint-1.c: Likewise.
	* gcc.target/i386/chkp-remove-bndint-2.c: Likewise.
	* gcc.target/i386/chkp-strchr.c: Likewise.
	* gcc.target/i386/chkp-strlen-1.c: Likewise.
	* gcc.target/i386/chkp-strlen-2.c: Likewise.
	* gcc.target/i386/chkp-strlen-3.c: Likewise.
	* gcc.target/i386/chkp-strlen-4.c: Likewise.
	* gcc.target/i386/chkp-strlen-5.c: Likewise.
	* gcc.target/i386/chkp-stropt-1.c: Likewise.
	* gcc.target/i386/chkp-stropt-10.c: Likewise.
	* gcc.target/i386/chkp-stropt-11.c: Likewise.
	* gcc.target/i386/chkp-stropt-12.c: Likewise.
	* gcc.target/i386/chkp-stropt-13.c: Likewise.
	* gcc.target/i386/chkp-stropt-14.c: Likewise.
	* gcc.target/i386/chkp-stropt-15.c: Likewise.
	* gcc.target/i386/chkp-stropt-16.c: Likewise.
	* gcc.target/i386/chkp-stropt-2.c: Likewise.
	* gcc.target/i386/chkp-stropt-3.c: Likewise.
	* gcc.target/i386/chkp-stropt-4.c: Likewise.
	* gcc.target/i386/chkp-stropt-5.c: Likewise.
	* gcc.target/i386/chkp-stropt-6.c: Likewise.
	* gcc.target/i386/chkp-stropt-7.c: Likewise.
	* gcc.target/i386/chkp-stropt-8.c: Likewise.
	* gcc.target/i386/chkp-stropt-9.c: Likewise.
	* gcc.target/i386/pr63995-2.c: Likewise.
	* gcc.target/i386/pr64805.c: Likewise.
	* gcc.target/i386/pr65044.c: Likewise.
	* gcc.target/i386/pr65167.c: Likewise.
	* gcc.target/i386/pr65183.c: Likewise.
	* gcc.target/i386/pr65184.c: Likewise.
	* gcc.target/i386/thunk-retbnd.c: Likewise.

From-SVN: r232613
2016-01-20 05:51:42 -08:00
Ilya Enkovich 28b3301653 re PR tree-optimization/69328 (ice in vect_get_vec_def_for_operand, at tree-vect-stmts.c:1379 with -O3)
gcc/

	PR tree-optimization/69328
	* tree-vect-stmts.c (vect_is_simple_cond): Check compared
	vectors have same number of elements.
	(vectorizable_condition): Fix masked version recognition.

gcc/testsuite/

	PR tree-optimization/69328
	* gcc.dg/pr69328.c: New test.

Co-Authored-By: Richard Biener <rguenther@suse.de>

From-SVN: r232608
2016-01-20 12:37:01 +00:00
Jeff Law bf0bb9703a Add BZ markers
From-SVN: r232602
2016-01-20 00:55:43 -07:00
Jeff Law bcff091388 [PATCH] [target/25114] Improve comparisons against some small integers for m68k
* config/m68k/predicates.md (pow2_m1_operand): New predicate
	extracted from ...
	(reg_or_pow2_m1_operand): Call pow2_m1_operand.
	(pc_or_label_operand): New predicate.
	* config/m68k/m68k.md: Add new peephole2 patterns for GTU/LEU
	tests for small integers that are 2^n - 1.

	* gcc.target/m68k/pr25114.c: New test.

From-SVN: r232601
2016-01-20 00:54:26 -07:00
Andre Vieira a3f69631af memset-inline-10.c: Added dg-require-effective-target arm_thumb2_ok.
2016-01-20  Andre Vieira  <andre.simoesdiasvieira@arm.com>

    gcc/testsuite/
    * gcc.target/arm/memset-inline-10.c: Added
    dg-require-effective-target arm_thumb2_ok.

From-SVN: r232600
2016-01-20 01:56:39 +00:00