module sp3mm_mod use iso_c_binding use psb_const_mod use psb_error_mod interface spmm_row_by_row subroutine dspmm_row_by_row_ub(a,b,c,info) use psb_d_mat_mod, only : psb_dspmat_type import :: psb_ipk_ implicit none type(psb_dspmat_type), intent(in) :: a,b type(psb_dspmat_type), intent(out) :: c integer(psb_ipk_), intent(out) :: info end subroutine dspmm_row_by_row_ub subroutine dspmm_row_by_row_symb_num(a,b,c,info) use psb_d_mat_mod, only : psb_dspmat_type import :: psb_ipk_ implicit none type(psb_dspmat_type), intent(in) :: a,b type(psb_dspmat_type), intent(out) :: c integer(psb_ipk_), intent(out) :: info end subroutine dspmm_row_by_row_symb_num subroutine dspmm_row_by_row_1d_blocks_symb_num(a,b,c,info) use psb_d_mat_mod, only : psb_dspmat_type import :: psb_ipk_ implicit none type(psb_dspmat_type), intent(in) :: a,b type(psb_dspmat_type), intent(out) :: c integer(psb_ipk_), intent(out) :: info end subroutine dspmm_row_by_row_1d_blocks_symb_num subroutine dspmm_row_by_row_2d_blocks_symb_num(a,b,c,info) use psb_d_mat_mod, only : psb_dspmat_type import :: psb_ipk_ implicit none type(psb_dspmat_type), intent(in) :: a,b type(psb_dspmat_type), intent(out) :: c integer(psb_ipk_), intent(out) :: info end subroutine dspmm_row_by_row_2d_blocks_symb_num end interface spmm_row_by_row end module sp3mm_mod