From 23cdc1e9b73d2074624799a025d7030145979b92 Mon Sep 17 00:00:00 2001 From: Jakub Jelinek Date: Thu, 19 Dec 2019 11:08:06 +0100 Subject: [PATCH] re PR fortran/92977 (ICE in gfc_trans_omp_atomic, at fortran/trans-openmp.c:3526) PR fortran/92977 * frontend-passes.c (call_external_blas): Use || instead of |. From-SVN: r279567 --- gcc/fortran/ChangeLog | 5 +++++ gcc/fortran/frontend-passes.c | 2 +- 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/gcc/fortran/ChangeLog b/gcc/fortran/ChangeLog index 12465bf..b780450 100644 --- a/gcc/fortran/ChangeLog +++ b/gcc/fortran/ChangeLog @@ -1,6 +1,11 @@ 2019-12-19 Jakub Jelinek PR fortran/92977 + * frontend-passes.c (call_external_blas): Use || instead of |. + +2019-12-19 Jakub Jelinek + + PR fortran/92977 * frontend-passes.c (in_omp_atomic): New variable. (cfe_expr_0, matmul_to_var_expr, matmul_temp_args, inline_matmul_assign, call_external_blas): Don't optimize in diff --git a/gcc/fortran/frontend-passes.c b/gcc/fortran/frontend-passes.c index 5f83ad2..bd27a68 100644 --- a/gcc/fortran/frontend-passes.c +++ b/gcc/fortran/frontend-passes.c @@ -4390,7 +4390,7 @@ call_external_blas (gfc_code **c, int *walk_subtrees ATTRIBUTE_UNUSED, /* For now don't do anything in OpenMP workshare, it confuses its translation, which expects only the allowed statements in there. */ - if (in_omp_workshare | in_omp_atomic) + if (in_omp_workshare || in_omp_atomic) return 0; expr1 = co->expr1; -- 2.7.4