146 SUBROUTINE ssyr2(UPLO,N,ALPHA,X,INCX,Y,INCY,A,LDA)
154 INTEGER INCX,INCY,LDA,N
158 REAL A(LDA,*),X(*),Y(*)
165 parameter(zero=0.0e+0)
169 INTEGER I,INFO,IX,IY,J,JX,JY,KX,KY
185 IF (.NOT.lsame(uplo,
'U') .AND. .NOT.lsame(uplo,
'L'))
THEN
187 ELSE IF (n.LT.0)
THEN
189 ELSE IF (incx.EQ.0)
THEN
191 ELSE IF (incy.EQ.0)
THEN
193 ELSE IF (lda.LT.max(1,n))
THEN
197 CALL xerbla(
'SSYR2 ',info)
203 IF ((n.EQ.0) .OR. (alpha.EQ.zero))
RETURN
208 IF ((incx.NE.1) .OR. (incy.NE.1))
THEN
227 IF (lsame(uplo,
'U'))
THEN
231 IF ((incx.EQ.1) .AND. (incy.EQ.1))
THEN
233 IF ((x(j).NE.zero) .OR. (y(j).NE.zero))
THEN
237 a(i,j) = a(i,j) + x(i)*temp1 + y(i)*temp2
243 IF ((x(jx).NE.zero) .OR. (y(jy).NE.zero))
THEN
249 a(i,j) = a(i,j) + x(ix)*temp1 + y(iy)*temp2
262 IF ((incx.EQ.1) .AND. (incy.EQ.1))
THEN
264 IF ((x(j).NE.zero) .OR. (y(j).NE.zero))
THEN
268 a(i,j) = a(i,j) + x(i)*temp1 + y(i)*temp2
274 IF ((x(jx).NE.zero) .OR. (y(jy).NE.zero))
THEN
280 a(i,j) = a(i,j) + x(ix)*temp1 + y(iy)*temp2
subroutine xerbla(srname, info)
subroutine ssyr2(uplo, n, alpha, x, incx, y, incy, a, lda)
SSYR2