diff options
author | H.J. Lu <hongjiu.lu@intel.com> | 2014-11-10 18:08:00 +0000 |
---|---|---|
committer | H.J. Lu <hjl@gcc.gnu.org> | 2014-11-10 10:08:00 -0800 |
commit | b488ccab7973bd29e4cd37f59df82dacd77c0f7e (patch) | |
tree | bfe95d420c48720add8efceb94fb5d58cd6a30dd | |
parent | 202d59415f19e3bb8a85abca3f79d952f8a4d54c (diff) | |
download | gcc-b488ccab7973bd29e4cd37f59df82dacd77c0f7e.zip gcc-b488ccab7973bd29e4cd37f59df82dacd77c0f7e.tar.gz gcc-b488ccab7973bd29e4cd37f59df82dacd77c0f7e.tar.bz2 |
Add a testcase for PR tree-optimization/63778
PR tree-optimization/63778
* gfortran.dg/pr63778.f: New test.
From-SVN: r217304
-rw-r--r-- | gcc/testsuite/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/testsuite/gfortran.dg/pr63778.f | 46 |
2 files changed, 51 insertions, 0 deletions
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index ece3d52..4c14669 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,8 @@ +2014-11-10 H.J. Lu <hongjiu.lu@intel.com> + + PR tree-optimization/63778 + * gfortran.dg/pr63778.f: New test. + 2014-11-10 Renlin Li <renlin.li@arm.com> PR middle-end/61529 diff --git a/gcc/testsuite/gfortran.dg/pr63778.f b/gcc/testsuite/gfortran.dg/pr63778.f new file mode 100644 index 0000000..11ce151 --- /dev/null +++ b/gcc/testsuite/gfortran.dg/pr63778.f @@ -0,0 +1,46 @@ +! { dg-do compile } +! { dg-options "-O3 -ffast-math" } + + SUBROUTINE ZUNG2L( M, N, K, A, LDA, TAU, WORK, INFO ) + COMPLEX*16 A( LDA, * ), TAU( * ), WORK( * ) + IF( M.LT.0 ) THEN + END IF + CALL ZLARF( 'LEFT', M-N+II, II-1, A( 1, II ), 1, TAU( I ), A, + $ LDA, WORK ) + CALL ZSCAL( M-N+II-1, -TAU( I ), A( 1, II ), 1 ) + A( M-N+II, II ) = ONE - TAU( I ) + END + SUBROUTINE ZLARF( SIDE, M, N, V, INCV, TAU, C, LDC, WORK ) + CHARACTER SIDE(*) + LOGICAL LSAME + COMPLEX*16 C( LDC, * ), V(*), WORK(*), TAU + IF( LSAME( SIDE, 'L' ) ) THEN + IF( TAU.NE.ZERO ) THEN + CALL ZGEMV( 'CONJUGATE TRANSPOSE', M, N, ONE, C, LDC, V, + $ INCV, ZERO, WORK, 1 ) + END IF + END IF + END + LOGICAL FUNCTION LSAME( CA, CB ) + CHARACTER CA(*), CB(*) + END + SUBROUTINE ZGEMV ( TRANS, M, N, ALPHA, A, LDA, X, INCX, + $ BETA, Y, INCY ) + COMPLEX*16 A( LDA, * ), X( * ), Y( * ) + CHARACTER TRANS(*) + LOGICAL LSAME + IF( LSAME( TRANS, 'N' ) )THEN + IF( INCY.EQ.1 )THEN + IF( X( JX ).NE.ZERO )THEN + Y( I ) = Y( I ) + TEMP*A( I, J ) + END IF + END IF + END IF + END + SUBROUTINE ZSCAL(N,ZA,ZX,INCX) + COMPLEX*16 ZA,ZX(1) + IF( N.LE.0 .OR. INCX.LE.0 )RETURN + 20 DO 30 I = 1,N + ZX(I) = ZA*ZX(I) + 30 CONTINUE + END |