On Thu, 21 Dec 2023, James Almer wrote:
Signed-off-by: James Almer <jamr...@gmail.com> --- tests/checkasm/takdsp.c | 36 +++++++++++++++++++++++++++++++++--- 1 file changed, 33 insertions(+), 3 deletions(-)
@@ -113,6 +113,35 @@ static void test_decorrelate_sm(TAKDSPContext *s) { report("decorrelate_sm"); } +static void test_decorrelate_sf(TAKDSPContext *s) { + declare_func(void, int32_t *, int32_t *, int, int, int); + + if (check_func(s->decorrelate_sf, "decorrelate_sf")) { + 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]); + int dshift, dfactor; + + randomize(p1, BUF_SIZE); + memcpy(p1, p1_2, BUF_SIZE);
The source/destination of the memcpy is flipped here. And it needs a *sizeof(*p1).
+ randomize(p2, BUF_SIZE); + memcpy(p2_2, p2, BUF_SIZE); + dshift = (rnd() & 0xF) + 1; + dfactor = sign_extend(rnd(), 10); + call_ref(p1, p2, BUF_SIZE, dshift, dfactor); + call_new(p1_2, p2_2, BUF_SIZE, dshift, dfactor);
This function only mutates p1, not p2, so the copy of p2_2 is not entirely necessary.
+ + if (memcmp(p2, p2_2, BUF_SIZE) != 0){
As we're mutating p1, that one is the one that should be checked. Also *sizeof(*p1) in the memcmp. And space between ) and {.
// Martin _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-devel To unsubscribe, visit link above, or email ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".