diff --git a/src/spm.c b/src/spm.c index e49114d7a29f30247a062a49415506811bd70255..aa1b5f75dea0980612864be0f0ad6ae678b0f652 100644 --- a/src/spm.c +++ b/src/spm.c @@ -1015,7 +1015,7 @@ spmMatVec( spm_trans_t trans, spmatrix_t *espm = (spmatrix_t*)spm; int rc = SPM_SUCCESS; - if ( spm->fmttype != SpmCSC && spm->fmttype != SpmCSR && spm->fmttype != SpmIJV ) { + if ( (spm->fmttype != SpmCSC) && (spm->fmttype != SpmCSR) && (spm->fmttype != SpmIJV) ) { return SPM_ERR_BADPARAMETER; } diff --git a/src/z_spm_matrixvector.c b/src/z_spm_matrixvector.c index dd2a9776bc0b7a8336dd10a63b798fee2ef18140..a7f78559f734938cddfede301a7a1857a9814394 100644 --- a/src/z_spm_matrixvector.c +++ b/src/z_spm_matrixvector.c @@ -294,7 +294,9 @@ z_spmv(const spm_trans_t trans, } #endif else + { return SPM_ERR_BADPARAMETER; + } /* first, y = beta*y */ if( beta == 0. ) { @@ -312,7 +314,7 @@ z_spmv(const spm_trans_t trans, /** * Select the appropriate matrix looper */ - if( fmt == SpmCSC) + if( fmt == SpmCSC ) { return z_loopMatCSC(baseval, alpha, spm, x, yptr, updateVect); } @@ -324,6 +326,10 @@ z_spmv(const spm_trans_t trans, { return z_loopMatIJV(baseval, alpha, spm, x, yptr, updateVect); } + else + { + return SPM_ERR_BADPARAMETER; + } } return SPM_ERR_BADPARAMETER; } diff --git a/tests/spm_dof_matvec_tests.c b/tests/spm_dof_matvec_tests.c index 8f52e2467fc438491bfd42a2686d1257db0b6b9b..8d5e1a9891211ea35bc3d4af9668b4fb5778daf6 100644 --- a/tests/spm_dof_matvec_tests.c +++ b/tests/spm_dof_matvec_tests.c @@ -96,7 +96,6 @@ int main (int argc, char **argv) printf(" Matrix type : %s\n", mtxnames[mtxtype - SpmGeneral] ); - /* For now only CSC is working */ for( fmttype=SpmCSC; fmttype<=SpmIJV; fmttype++ ) { printf(" Matrix format : %s\n", fmtnames[fmttype - SpmCSC] ); diff --git a/tests/spm_matvec_tests.c b/tests/spm_matvec_tests.c index dfb8fcc54be1d83bdc064d36b401a47531bda1bb..1a7c5e40fb6b72717cd41b2d02d4edd68a6b331a 100644 --- a/tests/spm_matvec_tests.c +++ b/tests/spm_matvec_tests.c @@ -65,10 +65,6 @@ int main (int argc, char **argv) spmGenFakeValues( &spm ); } - /** - * Only CSC is supported for now - */ - spmtype = spm.mtxtype; printf(" -- SPM Matrix-Vector Test --\n");