From: Steven G. Kargl Date: Sun, 22 Nov 2015 19:41:20 +0000 (+0000) Subject: re PR fortran/68486 (187.facerec in SPEC CPU 2000 failed to build) X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=9b22c1b69ad455177317dd945a5f0d0c5e43d58c;p=gcc.git re PR fortran/68486 (187.facerec in SPEC CPU 2000 failed to build) 2015-11-22 Steven G. Kargl PR fortran/68486 * simplify.c (gfc_simplify_cshift): Add EXPR_OP to mix. 2015-11-22 Steven G. Kargl PR fortran/68486 * gfortran.dg/simplify_cshift_2.f90: New test. From-SVN: r230726 --- diff --git a/gcc/fortran/ChangeLog b/gcc/fortran/ChangeLog index b61e7c04b2c..0c812017b7d 100644 --- a/gcc/fortran/ChangeLog +++ b/gcc/fortran/ChangeLog @@ -1,3 +1,8 @@ +2015-11-22 Steven G. Kargl + + PR fortran/68486 + * simplify.c (gfc_simplify_cshift): Add EXPR_OP to mix. + 2015-11-22 James Norris Steven G. Kargl diff --git a/gcc/fortran/simplify.c b/gcc/fortran/simplify.c index 665ea82ee23..b9c40391895 100644 --- a/gcc/fortran/simplify.c +++ b/gcc/fortran/simplify.c @@ -1811,6 +1811,7 @@ gfc_simplify_cshift (gfc_expr *array, gfc_expr *shift, gfc_expr *dim) { case EXPR_VARIABLE: case EXPR_ARRAY: + case EXPR_OP: a = gfc_copy_expr (array); gfc_simplify_expr (a, 0); if (!is_constant_array_expr (a)) diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index f3e96187957..0e0b74f6c30 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,8 @@ +2015-11-22 Steven G. Kargl + + PR fortran/68486 + * gfortran.dg/simplify_cshift_2.f90: New test. + 2015-11-22 James Norris Cesar Philippidis diff --git a/gcc/testsuite/gfortran.dg/simplify_cshift_2.f90 b/gcc/testsuite/gfortran.dg/simplify_cshift_2.f90 new file mode 100644 index 00000000000..04a61557afe --- /dev/null +++ b/gcc/testsuite/gfortran.dg/simplify_cshift_2.f90 @@ -0,0 +1,10 @@ +! { dg-do compile } +subroutine foo(u, n, fl) + implicit none + integer n + real u(5, n), fl(5,n), wl(5,n) + real c + c = 1 + wl = u + fl = cshift(c * wl, 1, 2) +end subroutine foo