|  | 
| pure subroutine | wrap_sgemv (amat, xvec, yvec, alpha, beta, trans) | 
|  | 
| pure subroutine | wrap_dgemv (amat, xvec, yvec, alpha, beta, trans) | 
|  | 
| subroutine | wrap_sgemv312 (amat, xvec, yvec, alpha, beta, trans) | 
|  | 
| subroutine | wrap_sgemv321 (amat, xvec, yvec, alpha, beta, trans) | 
|  | 
| subroutine | wrap_sgemv422 (amat, xvec, yvec, alpha, beta, trans) | 
|  | 
| subroutine | wrap_dgemv312 (amat, xvec, yvec, alpha, beta, trans) | 
|  | 
| subroutine | wrap_dgemv321 (amat, xvec, yvec, alpha, beta, trans) | 
|  | 
| subroutine | wrap_dgemv422 (amat, xvec, yvec, alpha, beta, trans) | 
|  | 
Performs one of the matrix-vector operations. 
y := alpha*A*x + beta*y, or y := alpha*A**T*x + beta*y,
where alpha and beta are scalars, x and y are vectors and A is an m by n matrix.