mirror of
https://github.com/intel/isa-l.git
synced 2025-01-20 20:50:26 +01:00
erasure_code: check for size alignment on powerpc gf_vect_mul_vsx implementation
Follows the rest of the gf_vect_mul implementations for other architectures, and checks for size alignment, stated in the documentation. Signed-off-by: Pablo de Lara <pablo.de.lara.guarch@intel.com>
This commit is contained in:
parent
91e7906f3f
commit
b8d5633e51
@ -171,7 +171,6 @@ int main(int argc, char *argv[])
|
|||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
#if !defined(ppc64le)
|
|
||||||
// Test all unsupported sizes up to TEST_SIZE
|
// Test all unsupported sizes up to TEST_SIZE
|
||||||
for (size = 0; size < TEST_SIZE; size++) {
|
for (size = 0; size < TEST_SIZE; size++) {
|
||||||
if (size % align != 0 && gf_vect_mul(size, gf_const_tbl, buff1, buff2) == 0) {
|
if (size % align != 0 && gf_vect_mul(size, gf_const_tbl, buff1, buff2) == 0) {
|
||||||
@ -181,10 +180,7 @@ int main(int argc, char *argv[])
|
|||||||
goto exit;
|
goto exit;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
#else
|
|
||||||
printf
|
|
||||||
("WARNING: Test disabled on PPC due to known issue https://github.com/intel/isa-l/issues/263\n");
|
|
||||||
#endif
|
|
||||||
printf(" done: Pass\n");
|
printf(" done: Pass\n");
|
||||||
fflush(0);
|
fflush(0);
|
||||||
|
|
||||||
|
@ -92,6 +92,10 @@ void ec_encode_data_update(int len, int k, int rows, int vec_i, unsigned char *v
|
|||||||
|
|
||||||
int gf_vect_mul(int len, unsigned char *a, void *src, void *dest)
|
int gf_vect_mul(int len, unsigned char *a, void *src, void *dest)
|
||||||
{
|
{
|
||||||
|
/* Size must be aligned to 32 bytes */
|
||||||
|
if ((len % 32) != 0)
|
||||||
|
return -1;
|
||||||
|
|
||||||
gf_vect_mul_vsx(len, a, (unsigned char *)src, (unsigned char *)dest);
|
gf_vect_mul_vsx(len, a, (unsigned char *)src, (unsigned char *)dest);
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user