Remove meaningless const qualifier for scalar arguments in sparse function signatures.
PiperOrigin-RevId: 679568516 Change-Id: I910626cd9555966c3b0a9ffba4064d263b2c16e1
This commit is contained in:
committed by
Copybara-Service
parent
6a6e10d779
commit
176345b4e1
@@ -29,8 +29,8 @@
|
|||||||
|
|
||||||
// dot-product, first vector is sparse
|
// dot-product, first vector is sparse
|
||||||
// flg_unc1: is vec1 memory layout uncompressed
|
// flg_unc1: is vec1 memory layout uncompressed
|
||||||
mjtNum mju_dotSparse(const mjtNum* vec1, const mjtNum* vec2,
|
mjtNum mju_dotSparse(const mjtNum* vec1, const mjtNum* vec2, int nnz1, const int* ind1,
|
||||||
const int nnz1, const int* ind1, int flg_unc1) {
|
int flg_unc1) {
|
||||||
#ifdef mjUSEAVX
|
#ifdef mjUSEAVX
|
||||||
return mju_dotSparse_avx(vec1, vec2, nnz1, ind1, flg_unc1);
|
return mju_dotSparse_avx(vec1, vec2, nnz1, ind1, flg_unc1);
|
||||||
#else
|
#else
|
||||||
@@ -80,7 +80,7 @@ mjtNum mju_dotSparse(const mjtNum* vec1, const mjtNum* vec2,
|
|||||||
// dot-productX3, first vector is sparse; supernode of size 3
|
// dot-productX3, first vector is sparse; supernode of size 3
|
||||||
void mju_dotSparseX3(mjtNum* res0, mjtNum* res1, mjtNum* res2,
|
void mju_dotSparseX3(mjtNum* res0, mjtNum* res1, mjtNum* res2,
|
||||||
const mjtNum* vec10, const mjtNum* vec11, const mjtNum* vec12,
|
const mjtNum* vec10, const mjtNum* vec11, const mjtNum* vec12,
|
||||||
const mjtNum* vec2, const int nnz1, const int* ind1) {
|
const mjtNum* vec2, int nnz1, const int* ind1) {
|
||||||
#ifdef mjUSEAVX
|
#ifdef mjUSEAVX
|
||||||
mju_dotSparseX3_avx(res0, res1, res2, vec10, vec11, vec12, vec2, nnz1, ind1);
|
mju_dotSparseX3_avx(res0, res1, res2, vec10, vec11, vec12, vec2, nnz1, ind1);
|
||||||
#else
|
#else
|
||||||
@@ -110,9 +110,8 @@ void mju_dotSparseX3(mjtNum* res0, mjtNum* res1, mjtNum* res2,
|
|||||||
|
|
||||||
// dot-product, both vectors are sparse
|
// dot-product, both vectors are sparse
|
||||||
// flg_unc2: is vec2 memory layout uncompressed
|
// flg_unc2: is vec2 memory layout uncompressed
|
||||||
mjtNum mju_dotSparse2(const mjtNum* vec1, const mjtNum* vec2,
|
mjtNum mju_dotSparse2(const mjtNum* vec1, const mjtNum* vec2, int nnz1, const int* ind1, int nnz2,
|
||||||
const int nnz1, const int* ind1,
|
const int* ind2, int flg_unc2) {
|
||||||
const int nnz2, const int* ind2, int flg_unc2) {
|
|
||||||
int i1 = 0, i2 = 0;
|
int i1 = 0, i2 = 0;
|
||||||
mjtNum res = 0;
|
mjtNum res = 0;
|
||||||
|
|
||||||
|
|||||||
@@ -26,13 +26,12 @@ extern "C" {
|
|||||||
//------------------------------ sparse operations -------------------------------------------------
|
//------------------------------ sparse operations -------------------------------------------------
|
||||||
|
|
||||||
// dot-product, vec1 is sparse, can be uncompressed
|
// dot-product, vec1 is sparse, can be uncompressed
|
||||||
MJAPI mjtNum mju_dotSparse(const mjtNum* vec1, const mjtNum* vec2,
|
MJAPI mjtNum mju_dotSparse(const mjtNum* vec1, const mjtNum* vec2, int nnz1, const int* ind1,
|
||||||
const int nnz1, const int* ind1, int flg_unc1);
|
int flg_unc1);
|
||||||
|
|
||||||
// dot-product, both vectors are sparse, vec2 can be uncompressed
|
// dot-product, both vectors are sparse, vec2 can be uncompressed
|
||||||
MJAPI mjtNum mju_dotSparse2(const mjtNum* vec1, const mjtNum* vec2,
|
MJAPI mjtNum mju_dotSparse2(const mjtNum* vec1, const mjtNum* vec2, int nnz1, const int* ind1,
|
||||||
const int nnz1, const int* ind1,
|
int nnz2, const int* ind2, int flg_unc2);
|
||||||
const int nnz2, const int* ind2, int flg_unc2);
|
|
||||||
|
|
||||||
// convert matrix from dense to sparse
|
// convert matrix from dense to sparse
|
||||||
MJAPI void mju_dense2sparse(mjtNum* res, const mjtNum* mat, int nr, int nc,
|
MJAPI void mju_dense2sparse(mjtNum* res, const mjtNum* mat, int nr, int nc,
|
||||||
|
|||||||
@@ -32,8 +32,8 @@
|
|||||||
// dot-product, first vector is sparse
|
// dot-product, first vector is sparse
|
||||||
// flg_unc1: is vec1 memory layout uncompressed
|
// flg_unc1: is vec1 memory layout uncompressed
|
||||||
static inline
|
static inline
|
||||||
mjtNum mju_dotSparse_avx(const mjtNum* vec1, const mjtNum* vec2,
|
mjtNum mju_dotSparse_avx(const mjtNum* vec1, const mjtNum* vec2, int nnz1, const int* ind1,
|
||||||
const int nnz1, const int* ind1, int flg_unc1) {
|
int flg_unc1) {
|
||||||
int i = 0;
|
int i = 0;
|
||||||
mjtNum res = 0;
|
mjtNum res = 0;
|
||||||
int nnz1_4 = nnz1 - 4;
|
int nnz1_4 = nnz1 - 4;
|
||||||
@@ -115,7 +115,7 @@ mjtNum mju_dotSparse_avx(const mjtNum* vec1, const mjtNum* vec2,
|
|||||||
static inline
|
static inline
|
||||||
void mju_dotSparseX3_avx(mjtNum* res0, mjtNum* res1, mjtNum* res2, const mjtNum* vec10,
|
void mju_dotSparseX3_avx(mjtNum* res0, mjtNum* res1, mjtNum* res2, const mjtNum* vec10,
|
||||||
const mjtNum* vec11, const mjtNum* vec12, const mjtNum* vec2,
|
const mjtNum* vec11, const mjtNum* vec12, const mjtNum* vec2,
|
||||||
const int nnz1, const int* ind1) {
|
int nnz1, const int* ind1) {
|
||||||
int i = 0;
|
int i = 0;
|
||||||
|
|
||||||
// clear result
|
// clear result
|
||||||
@@ -209,7 +209,7 @@ void mju_mulMatVecSparse_avx(mjtNum* res, const mjtNum* mat, const mjtNum* vec,
|
|||||||
if (!rowsuper) {
|
if (!rowsuper) {
|
||||||
// regular sparse dot-product
|
// regular sparse dot-product
|
||||||
for (int r=0; r<nr; r++) {
|
for (int r=0; r<nr; r++) {
|
||||||
res[r] = mju_dotSparse_avx(mat+rowadr[r], vec, rownnz[r], colind+rowadr[r], /*flg_unc2=*/0);
|
res[r] = mju_dotSparse_avx(mat+rowadr[r], vec, rownnz[r], colind+rowadr[r], /*flg_unc1=*/0);
|
||||||
}
|
}
|
||||||
|
|
||||||
return;
|
return;
|
||||||
@@ -232,7 +232,7 @@ void mju_mulMatVecSparse_avx(mjtNum* res, const mjtNum* mat, const mjtNum* vec,
|
|||||||
|
|
||||||
// handle remaining rows
|
// handle remaining rows
|
||||||
while (rs>0) {
|
while (rs>0) {
|
||||||
res[r] = mju_dotSparse_avx(mat+rowadr[r], vec, rownnz[r], colind+rowadr[r], /*flg_unc2=*/0);
|
res[r] = mju_dotSparse_avx(mat+rowadr[r], vec, rownnz[r], colind+rowadr[r], /*flg_unc1=*/0);
|
||||||
|
|
||||||
r++;
|
r++;
|
||||||
rs--;
|
rs--;
|
||||||
@@ -243,7 +243,7 @@ void mju_mulMatVecSparse_avx(mjtNum* res, const mjtNum* mat, const mjtNum* vec,
|
|||||||
}
|
}
|
||||||
|
|
||||||
else {
|
else {
|
||||||
res[r] = mju_dotSparse_avx(mat+rowadr[r], vec, rownnz[r], colind+rowadr[r], /*flg_unc2=*/0);
|
res[r] = mju_dotSparse_avx(mat+rowadr[r], vec, rownnz[r], colind+rowadr[r], /*flg_unc1=*/0);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user