diff options
author | Jan Hubicka <jh@suse.cz> | 2023-07-01 13:44:46 +0200 |
---|---|---|
committer | Jan Hubicka <jh@suse.cz> | 2023-07-01 13:44:46 +0200 |
commit | ee4d85b3a8b76328df6bccc1026d62dff5f827ce (patch) | |
tree | d09bd9ba4bce7f219bf2d818815abf481a3c8978 | |
parent | 7e904d6c7f252ee947c237ed32dd43b2c248384d (diff) | |
download | gcc-ee4d85b3a8b76328df6bccc1026d62dff5f827ce.zip gcc-ee4d85b3a8b76328df6bccc1026d62dff5f827ce.tar.gz gcc-ee4d85b3a8b76328df6bccc1026d62dff5f827ce.tar.bz2 |
Add testcase from PR25623
gcc/testsuite/ChangeLog:
PR tree-optimization/25623
* gfortran.dg/pr25623.f90: New test.
-rw-r--r-- | gcc/testsuite/gfortran.dg/pr25623.f90 | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/gcc/testsuite/gfortran.dg/pr25623.f90 b/gcc/testsuite/gfortran.dg/pr25623.f90 new file mode 100644 index 0000000..30905e4 --- /dev/null +++ b/gcc/testsuite/gfortran.dg/pr25623.f90 @@ -0,0 +1,19 @@ +! { dg-do compile } +! { dg-options "-fdump-tree-optimized-blocks -O2" } + +SUBROUTINE S42(a,b,c,N) + IMPLICIT NONE + integer :: N + real*8 :: a(N),b(N),c(N),tmp,tmp2,tmp4 + real*8, parameter :: p=1.0D0/3.0D0 + integer :: i + c=0.0D0 + DO i=1,N + tmp=a(i)**p ! could even be done with a cube root + tmp2=tmp*tmp + tmp4=tmp2*tmp2 + b(i)=b(i)+tmp4 + c(i)=c(i)+tmp2 + ENDDO +END SUBROUTINE +! { dg-final { scan-tree-dump-not "Invalid sum" "optimized" } } |