107 SUBROUTINE zlassq( N, X, INCX, SCALE, SUMSQ )
116 DOUBLE PRECISION scale, sumsq
125 DOUBLE PRECISION zero
126 parameter( zero = 0.0d+0 )
130 DOUBLE PRECISION temp1
137 INTRINSIC abs, dble, dimag
142 DO 10 ix = 1, 1 + ( n-1 )*incx, incx
143 temp1 = abs( dble( x( ix ) ) )
144 IF( temp1.GT.zero.OR.
disnan( temp1 ) )
THEN
145 IF( scale.LT.temp1 )
THEN
146 sumsq = 1 + sumsq*( scale / temp1 )**2
149 sumsq = sumsq + ( temp1 / scale )**2
152 temp1 = abs( dimag( x( ix ) ) )
153 IF( temp1.GT.zero.OR.
disnan( temp1 ) )
THEN
154 IF( scale.LT.temp1 )
THEN
155 sumsq = 1 + sumsq*( scale / temp1 )**2
158 sumsq = sumsq + ( temp1 / scale )**2