r271355 - in /branches/gcc-9-branch/gcc: Change...

jakub@gcc.gnu.org jakub@gcc.gnu.org
Fri May 17 19:53:00 GMT 2019


Author: jakub
Date: Fri May 17 19:53:48 2019
New Revision: 271355

URL: https://gcc.gnu.org/viewcvs?rev=271355&root=gcc&view=rev
Log:
	Backported from mainline
	2019-05-16  Jakub Jelinek  <jakub@redhat.com>

	* omp-low.c (lower_rec_input_clauses): If OMP_CLAUSE_IF
	has non-constant expression, force sctx.lane and use two
	argument IFN_GOMP_SIMD_LANE instead of single argument.
	* tree-ssa-dce.c (eliminate_unnecessary_stmts): Don't DCE
	two argument IFN_GOMP_SIMD_LANE without lhs.
	* tree-vectorizer.h (struct _loop_vec_info): Add simd_if_cond
	member.
	(LOOP_VINFO_SIMD_IF_COND, LOOP_REQUIRES_VERSIONING_FOR_SIMD_IF_COND):
	Define.
	(LOOP_REQUIRES_VERSIONING): Or in
	LOOP_REQUIRES_VERSIONING_FOR_SIMD_IF_COND.
	* tree-vect-loop.c (_loop_vec_info::_loop_vec_info): Initialize
	simd_if_cond.
	(vect_analyze_loop_2): Punt if LOOP_VINFO_SIMD_IF_COND is constant 0.
	* tree-vect-loop-manip.c (vect_loop_versioning): Add runtime check
	from simd if clause if needed.

	* gcc.dg/vect/vect-simd-1.c: New test.
	* gcc.dg/vect/vect-simd-2.c: New test.
	* gcc.dg/vect/vect-simd-3.c: New test.
	* gcc.dg/vect/vect-simd-4.c: New test.

Added:
    branches/gcc-9-branch/gcc/testsuite/gcc.dg/vect/vect-simd-1.c
    branches/gcc-9-branch/gcc/testsuite/gcc.dg/vect/vect-simd-2.c
    branches/gcc-9-branch/gcc/testsuite/gcc.dg/vect/vect-simd-3.c
    branches/gcc-9-branch/gcc/testsuite/gcc.dg/vect/vect-simd-4.c
Modified:
    branches/gcc-9-branch/gcc/ChangeLog
    branches/gcc-9-branch/gcc/omp-low.c
    branches/gcc-9-branch/gcc/testsuite/ChangeLog
    branches/gcc-9-branch/gcc/tree-ssa-dce.c
    branches/gcc-9-branch/gcc/tree-vect-loop-manip.c
    branches/gcc-9-branch/gcc/tree-vect-loop.c
    branches/gcc-9-branch/gcc/tree-vectorizer.h



More information about the Gcc-cvs mailing list