summaryrefslogtreecommitdiff
path: root/gcc/tree-inline.c
diff options
context:
space:
mode:
authorJakub Jelinek <jakub@gcc.gnu.org>2019-01-24 20:14:51 +0100
committerJakub Jelinek <jakub@gcc.gnu.org>2019-01-24 20:14:51 +0100
commitacac773aaa0434993650c079685a41b78121a619 (patch)
tree978a2c4430ecdc5524c15d260e1aa5d9f8df98a0 /gcc/tree-inline.c
parent21f657a48fe0d110f3d35646657090cd77d0f76a (diff)
re PR tree-optimization/89027 (ICE: verify_gimple failed (Error: non-trivial conversion at assignment))
PR tree-optimization/89027 * tree-inline.c (add_clobbers_to_eh_landing_pad): Don't add clobbers for "omp simd array" variables. * gfortran.dg/gomp/pr89027.f90: New test. From-SVN: r268243
Diffstat (limited to 'gcc/tree-inline.c')
-rw-r--r--gcc/tree-inline.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/gcc/tree-inline.c b/gcc/tree-inline.c
index 29f119ade77..eb5073c5f61 100644
--- a/gcc/tree-inline.c
+++ b/gcc/tree-inline.c
@@ -2204,7 +2204,8 @@ add_clobbers_to_eh_landing_pad (basic_block bb, copy_body_data *id)
&& !TREE_THIS_VOLATILE (var)
&& !DECL_HAS_VALUE_EXPR_P (var)
&& !is_gimple_reg (var)
- && auto_var_in_fn_p (var, id->src_fn))
+ && auto_var_in_fn_p (var, id->src_fn)
+ && !lookup_attribute ("omp simd array", DECL_ATTRIBUTES (var)))
{
tree *t = id->decl_map->get (var);
if (!t)