checkasm/takdsp: add decorrelate_sm test

Signed-off-by: Rémi Denis-Courmont <remi@remlab.net>
This commit is contained in:
sunyuechi 2023-12-18 22:48:09 +08:00 committed by Rémi Denis-Courmont
parent c064823b95
commit 21e2b6b501

View File

@ -85,6 +85,34 @@ static void test_decorrelate_sr(TAKDSPContext *s) {
report("decorrelate_sr"); report("decorrelate_sr");
} }
static void test_decorrelate_sm(TAKDSPContext *s) {
#define BUF_SIZE 1024
declare_func(void, int32_t *, int32_t *, int);
if (check_func(s->decorrelate_sm, "decorrelate_sm")) {
LOCAL_ALIGNED_32(int32_t, p1, [BUF_SIZE]);
LOCAL_ALIGNED_32(int32_t, p1_2, [BUF_SIZE]);
LOCAL_ALIGNED_32(int32_t, p2, [BUF_SIZE]);
LOCAL_ALIGNED_32(int32_t, p2_2, [BUF_SIZE]);
randomize(p1, BUF_SIZE);
memcpy(p1, p1_2, BUF_SIZE);
randomize(p2, BUF_SIZE);
memcpy(p2_2, p2, BUF_SIZE);
call_ref(p1, p2, BUF_SIZE);
call_new(p1_2, p2_2, BUF_SIZE);
if (memcmp(p2, p2_2, BUF_SIZE) != 0){
fail();
}
bench_new(p1, p2, BUF_SIZE);
}
report("decorrelate_sm");
}
void checkasm_check_takdsp(void) void checkasm_check_takdsp(void)
{ {
TAKDSPContext s = { 0 }; TAKDSPContext s = { 0 };
@ -92,4 +120,5 @@ void checkasm_check_takdsp(void)
test_decorrelate_ls(&s); test_decorrelate_ls(&s);
test_decorrelate_sr(&s); test_decorrelate_sr(&s);
test_decorrelate_sm(&s);
} }