Commit 8ebc1e0f by Jakub Jelinek Committed by Jakub Jelinek

re PR fortran/77516 (ICE in is_gimple_min_invariant, at gimple-expr.c:706)

	PR fortran/77516
	* omp-low.c (lower_rec_simd_input_clauses): Use max_vf for non-positive
	OMP_CLAUSE_SAFELEN_EXPR.

	* gfortran.dg/gomp/pr77516.f90: New test.

From-SVN: r240037
parent e124cd64
2016-09-08 Jakub Jelinek <jakub@redhat.com>
PR fortran/77516
* omp-low.c (lower_rec_simd_input_clauses): Use max_vf for non-positive
OMP_CLAUSE_SAFELEN_EXPR.
2016-09-07 David Malcolm <dmalcolm@redhat.com>
* Makefile.in (OBJS): Add substring-locations.o.
......
......@@ -4302,7 +4302,9 @@ lower_rec_simd_input_clauses (tree new_var, omp_context *ctx, int &max_vf,
{
tree c = find_omp_clause (gimple_omp_for_clauses (ctx->stmt),
OMP_CLAUSE_SAFELEN);
if (c && TREE_CODE (OMP_CLAUSE_SAFELEN_EXPR (c)) != INTEGER_CST)
if (c
&& (TREE_CODE (OMP_CLAUSE_SAFELEN_EXPR (c)) != INTEGER_CST
|| tree_int_cst_sgn (OMP_CLAUSE_SAFELEN_EXPR (c)) != 1))
max_vf = 1;
else if (c && compare_tree_int (OMP_CLAUSE_SAFELEN_EXPR (c),
max_vf) == -1)
......
2016-09-08 Jakub Jelinek <jakub@redhat.com>
PR fortran/77516
* gfortran.dg/gomp/pr77516.f90: New test.
2016-09-07 Jakub Jelinek <jakub@redhat.com>
PR middle-end/77475
......
! PR fortran/77516
! { dg-do compile }
program pr77516
integer :: i, x
x = 0
!$omp simd safelen(0) reduction(+:x)
do i = 1, 8
x = x + 1
end do
print *, x
end
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment