diff options
author | Jakub Jelinek <jakub@redhat.com> | 2019-05-31 23:37:10 +0200 |
---|---|---|
committer | Jakub Jelinek <jakub@gcc.gnu.org> | 2019-05-31 23:37:10 +0200 |
commit | 1ce8fc63a4132b66ced527afd2c88b840ecbb0b9 (patch) | |
tree | 58257ee78b302386388450db4354bb8aabf2718c /gcc | |
parent | 2099d4465862a0a004b1617ff1c9ab5ee6bb8a67 (diff) | |
download | gcc-1ce8fc63a4132b66ced527afd2c88b840ecbb0b9.zip gcc-1ce8fc63a4132b66ced527afd2c88b840ecbb0b9.tar.gz gcc-1ce8fc63a4132b66ced527afd2c88b840ecbb0b9.tar.bz2 |
omp-low.c (lower_rec_simd_input_clauses): Set TREE_THIS_NOTRAP on ivar and lvar.
* omp-low.c (lower_rec_simd_input_clauses): Set TREE_THIS_NOTRAP on
ivar and lvar.
* gcc.dg/vect/vect-simd-5.c: New test.
From-SVN: r271824
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/omp-low.c | 2 | ||||
-rw-r--r-- | gcc/testsuite/ChangeLog | 4 | ||||
-rw-r--r-- | gcc/testsuite/gcc.dg/vect/vect-simd-5.c | 14 |
4 files changed, 25 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 29c8ecc..3693ae6 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2019-05-31 Jakub Jelinek <jakub@redhat.com> + + * omp-low.c (lower_rec_simd_input_clauses): Set TREE_THIS_NOTRAP on + ivar and lvar. + 2019-05-31 Xiong Hu Luo <luoxhu@linux.ibm.com> PR c/43673 diff --git a/gcc/omp-low.c b/gcc/omp-low.c index d200005d..1e47a36 100644 --- a/gcc/omp-low.c +++ b/gcc/omp-low.c @@ -3728,6 +3728,8 @@ lower_rec_simd_input_clauses (tree new_var, omp_context *ctx, NULL_TREE, NULL_TREE); lvar = build4 (ARRAY_REF, TREE_TYPE (new_var), avar, sctx->lane, NULL_TREE, NULL_TREE); + TREE_THIS_NOTRAP (ivar) = 1; + TREE_THIS_NOTRAP (lvar) = 1; } if (DECL_P (new_var)) { diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 9dc9cbc..fac9f2e 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,7 @@ +2019-05-31 Jakub Jelinek <jakub@redhat.com> + + * gcc.dg/vect/vect-simd-5.c: New test. + 2019-05-31 Xiong Hu Luo <luoxhu@linux.ibm.com> PR c/43673 diff --git a/gcc/testsuite/gcc.dg/vect/vect-simd-5.c b/gcc/testsuite/gcc.dg/vect/vect-simd-5.c new file mode 100644 index 0000000..bacb247 --- /dev/null +++ b/gcc/testsuite/gcc.dg/vect/vect-simd-5.c @@ -0,0 +1,14 @@ +/* { dg-do compile } */ +/* { dg-additional-options "-fopenmp-simd" } */ +/* { dg-final { scan-tree-dump-times "vectorized 1 loops" 1 "vect" { target vect_condition } } } */ + +int x; + +void +foo (int *a) +{ + #pragma omp simd lastprivate (x) + for (int i = 0; i < 1024; ++i) + if (a[i]) + x = i; +} |