185 SUBROUTINE ssbmv(UPLO,N,K,ALPHA,A,LDA,X,INCX,BETA,Y,INCY)
194 INTEGER INCX,INCY,K,LDA,N
198 REAL A(lda,*),X(*),Y(*)
205 parameter(one=1.0e+0,zero=0.0e+0)
209 INTEGER I,INFO,IX,IY,J,JX,JY,KPLUS1,KX,KY,L
225 IF (.NOT.lsame(uplo,
'U') .AND. .NOT.lsame(uplo,
'L'))
THEN 227 ELSE IF (n.LT.0)
THEN 229 ELSE IF (k.LT.0)
THEN 231 ELSE IF (lda.LT. (k+1))
THEN 233 ELSE IF (incx.EQ.0)
THEN 235 ELSE IF (incy.EQ.0)
THEN 239 CALL xerbla(
'SSBMV ',info)
245 IF ((n.EQ.0) .OR. ((alpha.EQ.zero).AND. (beta.EQ.one)))
RETURN 265 IF (beta.NE.one)
THEN 267 IF (beta.EQ.zero)
THEN 278 IF (beta.EQ.zero)
THEN 291 IF (alpha.EQ.zero)
RETURN 292 IF (lsame(uplo,
'U'))
THEN 297 IF ((incx.EQ.1) .AND. (incy.EQ.1))
THEN 302 DO 50 i = max(1,j-k),j - 1
303 y(i) = y(i) + temp1*a(l+i,j)
304 temp2 = temp2 + a(l+i,j)*x(i)
306 y(j) = y(j) + temp1*a(kplus1,j) + alpha*temp2
317 DO 70 i = max(1,j-k),j - 1
318 y(iy) = y(iy) + temp1*a(l+i,j)
319 temp2 = temp2 + a(l+i,j)*x(ix)
323 y(jy) = y(jy) + temp1*a(kplus1,j) + alpha*temp2
336 IF ((incx.EQ.1) .AND. (incy.EQ.1))
THEN 340 y(j) = y(j) + temp1*a(1,j)
342 DO 90 i = j + 1,min(n,j+k)
343 y(i) = y(i) + temp1*a(l+i,j)
344 temp2 = temp2 + a(l+i,j)*x(i)
346 y(j) = y(j) + alpha*temp2
354 y(jy) = y(jy) + temp1*a(1,j)
358 DO 110 i = j + 1,min(n,j+k)
361 y(iy) = y(iy) + temp1*a(l+i,j)
362 temp2 = temp2 + a(l+i,j)*x(ix)
364 y(jy) = y(jy) + alpha*temp2
subroutine ssbmv(UPLO, N, K, ALPHA, A, LDA, X, INCX, BETA, Y, INCY)
SSBMV
subroutine xerbla(SRNAME, INFO)
XERBLA