--- rpl/lapack/lapack/zhetrd_hb2st.F 2018/05/29 07:18:20 1.3 +++ rpl/lapack/lapack/zhetrd_hb2st.F 2023/08/07 08:39:24 1.5 @@ -7,11 +7,11 @@ * *> \htmlonly *> Download ZHETRD_HB2ST + dependencies -*> +*> *> [TGZ] -*> +*> *> [ZIP] -*> +*> *> [TXT] *> \endhtmlonly * @@ -50,9 +50,9 @@ * Arguments: * ========== * -*> \param[in] STAGE +*> \param[in] STAGE1 *> \verbatim -*> STAGE is CHARACTER*1 +*> STAGE1 is CHARACTER*1 *> = 'N': "No": to mention that the stage 1 of the reduction *> from dense to band using the zhetrd_he2hb routine *> was not called before this routine to reproduce AB. @@ -188,8 +188,6 @@ *> \author Univ. of Colorado Denver *> \author NAG Ltd. * -*> \date December 2016 -* *> \ingroup complex16OTHERcomputational * *> \par Further Details: @@ -237,10 +235,9 @@ * IMPLICIT NONE * -* -- LAPACK computational routine (version 3.7.0) -- +* -- LAPACK computational routine -- * -- LAPACK is a software package provided by Univ. of Tennessee, -- * -- Univ. of California Berkeley, Univ. of Colorado Denver and NAG Ltd..-- -* December 2016 * * .. Scalar Arguments .. CHARACTER STAGE1, UPLO, VECT @@ -273,15 +270,15 @@ COMPLEX*16 TMP * .. * .. External Subroutines .. - EXTERNAL ZHB2ST_KERNELS, ZLACPY, ZLASET + EXTERNAL ZHB2ST_KERNELS, ZLACPY, ZLASET, XERBLA * .. * .. Intrinsic Functions .. INTRINSIC MIN, MAX, CEILING, DBLE, REAL * .. * .. External Functions .. LOGICAL LSAME - INTEGER ILAENV - EXTERNAL LSAME, ILAENV + INTEGER ILAENV2STAGE + EXTERNAL LSAME, ILAENV2STAGE * .. * .. Executable Statements .. * @@ -297,9 +294,9 @@ * * Determine the block size, the workspace size and the hous size. * - IB = ILAENV( 18, 'ZHETRD_HB2ST', VECT, N, KD, -1, -1 ) - LHMIN = ILAENV( 19, 'ZHETRD_HB2ST', VECT, N, KD, IB, -1 ) - LWMIN = ILAENV( 20, 'ZHETRD_HB2ST', VECT, N, KD, IB, -1 ) + IB = ILAENV2STAGE( 2, 'ZHETRD_HB2ST', VECT, N, KD, -1, -1 ) + LHMIN = ILAENV2STAGE( 3, 'ZHETRD_HB2ST', VECT, N, KD, IB, -1 ) + LWMIN = ILAENV2STAGE( 4, 'ZHETRD_HB2ST', VECT, N, KD, IB, -1 ) * IF( .NOT.AFTERS1 .AND. .NOT.LSAME( STAGE1, 'N' ) ) THEN INFO = -1 @@ -395,7 +392,7 @@ * For that, for real precision just copy the diag and offdiag * to D and E while for the COMPLEX case the bulge chasing is * performed to convert the hermetian tridiagonal to symmetric -* tridiagonal. A simpler coversion formula might be used, but then +* tridiagonal. A simpler conversion formula might be used, but then * updating the Q matrix will be required and based if Q is generated * or not this might complicate the story. * @@ -512,7 +509,8 @@ C END IF * * Call the kernel * -#if defined(_OPENMP) +#if defined(_OPENMP) && _OPENMP >= 201307 + IF( TTYPE.NE.1 ) THEN !$OMP TASK DEPEND(in:WORK(MYID+SHIFT-1)) !$OMP$ DEPEND(in:WORK(MYID-1))