INTERFACE LA_GESV
SUBROUTINE SGESV( N, NRHS, A, LDA, IPIV, B, LDB, INFO )
USE LA_PRECISION, ONLY: WP SP
INTEGER, INTENT( IN ) :: LDA, LDB, NRHS, N
INTEGER, INTENT( OUT ) :: INFO
INTEGER, INTENT( OUT ) :: IPIV( * )
REAL(WP), INTENT( INOUT ) :: A( LDA, * ), B( LDB, * )
END SUBROUTINE SGESV
SUBROUTINE DGESV( N, NRHS, A, LDA, IPIV, B, LDB, INFO )
USE LA_PRECISION, ONLY: WP DP
INTEGER, INTENT( IN ) :: LDA, LDB, NRHS, N
INTEGER, INTENT( OUT ) :: INFO
INTEGER, INTENT( OUT ) :: IPIV( * )
REAL(WP), INTENT( INOUT ) :: A( LDA, * ), B( LDB, * )
END SUBROUTINE DGESV
SUBROUTINE CGESV( N, NRHS, A, LDA, IPIV, B, LDB, INFO )
USE LA_PRECISION, ONLY: WP SP
INTEGER, INTENT( IN ) :: LDA, LDB, NRHS, N
INTEGER, INTENT( OUT ) :: INFO
INTEGER, INTENT( OUT ) :: IPIV( * )
COMPLEX(WP), INTENT( INOUT ) :: A( LDA, * ), B( LDB, * )
END SUBROUTINE CGESV
SUBROUTINE ZGESV( N, NRHS, A, LDA, IPIV, B, LDB, INFO )
USE LA_PRECISION, ONLY: WP DP
INTEGER, INTENT( IN ) :: LDA, LDB, NRHS, N
INTEGER, INTENT( OUT ) :: INFO
INTEGER, INTENT( OUT ) :: IPIV( * )
COMPLEX( WP ), INTENT( INOUT ) :: A( LDA, * ), B( LDB, * )
END SUBROUTINE ZGESV
MODULE PROCEDURE SGESV1, DGESV1, DGESV1, CGESV1, ZGESV1
END INTERFACE