Fix some unused or not initialized related warnings.

This commit is contained in:
Gael Guennebaud 2013-02-15 14:05:37 +01:00
parent 19f699ded0
commit a1091caa43
3 changed files with 14 additions and 3 deletions

View File

@ -93,8 +93,16 @@ void sparselu_gemm(int m, int n, int d, const Scalar* A, int lda, const Scalar*
a0 = pload<Packet>(A0); a0 = pload<Packet>(A0);
a1 = pload<Packet>(A1); a1 = pload<Packet>(A1);
if(RK==4) a2 = pload<Packet>(A2); if(RK==4)
if(RK==4) a3 = pload<Packet>(A3); {
a2 = pload<Packet>(A2);
a3 = pload<Packet>(A3);
}
else
{
// workaround "may be used uninitialized in this function" warning
a2 = a3 = a0;
}
#define KMADD(c, a, b, tmp) tmp = b; tmp = pmul(a,tmp); c = padd(c,tmp); #define KMADD(c, a, b, tmp) tmp = b; tmp = pmul(a,tmp); c = padd(c,tmp);
#define WORK(I) \ #define WORK(I) \
@ -137,6 +145,7 @@ void sparselu_gemm(int m, int n, int d, const Scalar* A, int lda, const Scalar*
{ {
WORK(0); WORK(0);
} }
#undef WORK
// process the remaining rows without vectorization // process the remaining rows without vectorization
for(int i=actual_b_end2; i<actual_b; ++i) for(int i=actual_b_end2; i<actual_b; ++i)
{ {
@ -154,7 +163,6 @@ void sparselu_gemm(int m, int n, int d, const Scalar* A, int lda, const Scalar*
Bc0 += RK; Bc0 += RK;
Bc1 += RK; Bc1 += RK;
#undef WORK
} // peeled loop on k } // peeled loop on k
} // peeled loop on the columns j } // peeled loop on the columns j
// process the last column (we now perform a matrux-vector product) // process the last column (we now perform a matrux-vector product)

View File

@ -449,6 +449,7 @@ void test_sparse_basic()
{ {
for(int i = 0; i < g_repeat; i++) { for(int i = 0; i < g_repeat; i++) {
int s = Eigen::internal::random<int>(1,50); int s = Eigen::internal::random<int>(1,50);
EIGEN_UNUSED_VARIABLE(s);
CALL_SUBTEST_1(( sparse_basic(SparseMatrix<double>(8, 8)) )); CALL_SUBTEST_1(( sparse_basic(SparseMatrix<double>(8, 8)) ));
CALL_SUBTEST_2(( sparse_basic(SparseMatrix<std::complex<double>, ColMajor>(s, s)) )); CALL_SUBTEST_2(( sparse_basic(SparseMatrix<std::complex<double>, ColMajor>(s, s)) ));
CALL_SUBTEST_2(( sparse_basic(SparseMatrix<std::complex<double>, RowMajor>(s, s)) )); CALL_SUBTEST_2(( sparse_basic(SparseMatrix<std::complex<double>, RowMajor>(s, s)) ));

View File

@ -40,5 +40,7 @@ void test_unalignedcount()
#else #else
// The following line is to eliminate "variable not used" warnings // The following line is to eliminate "variable not used" warnings
nb_load = nb_loadu = nb_store = nb_storeu = 0; nb_load = nb_loadu = nb_store = nb_storeu = 0;
int a(0), b(0);
VERIFY(a==b);
#endif #endif
} }