tests/checkasm/pixblockdsp: Test 8 byte aligned positions
The code is documented as to require 8byte alignment Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
This commit is contained in:
parent
07f5e75a47
commit
fb6b6b5166
@ -26,7 +26,7 @@
|
|||||||
#include "libavutil/intreadwrite.h"
|
#include "libavutil/intreadwrite.h"
|
||||||
|
|
||||||
#define BUF_UNITS 8
|
#define BUF_UNITS 8
|
||||||
#define BUF_SIZE (BUF_UNITS * 128 + BUF_UNITS)
|
#define BUF_SIZE (BUF_UNITS * 128 + 8 * BUF_UNITS)
|
||||||
|
|
||||||
#define randomize_buffers() \
|
#define randomize_buffers() \
|
||||||
do { \
|
do { \
|
||||||
@ -50,7 +50,7 @@
|
|||||||
declare_func_emms(AV_CPU_FLAG_MMX, void, int16_t *block, const uint8_t *pixels, ptrdiff_t line_size); \
|
declare_func_emms(AV_CPU_FLAG_MMX, void, int16_t *block, const uint8_t *pixels, ptrdiff_t line_size); \
|
||||||
\
|
\
|
||||||
for (i = 0; i < BUF_UNITS; i++) { \
|
for (i = 0; i < BUF_UNITS; i++) { \
|
||||||
int src_offset = i * 64 * sizeof(type) + i; /* Test various alignments */ \
|
int src_offset = i * 64 * sizeof(type) + 8 * i; /* Test various alignments */ \
|
||||||
int dst_offset = i * 64; /* dst must be aligned */ \
|
int dst_offset = i * 64; /* dst must be aligned */ \
|
||||||
randomize_buffers(); \
|
randomize_buffers(); \
|
||||||
call_ref(dst0 + dst_offset, src10 + src_offset, 8); \
|
call_ref(dst0 + dst_offset, src10 + src_offset, 8); \
|
||||||
@ -67,7 +67,7 @@
|
|||||||
declare_func_emms(AV_CPU_FLAG_MMX, void, int16_t *av_restrict block, const uint8_t *s1, const uint8_t *s2, int stride); \
|
declare_func_emms(AV_CPU_FLAG_MMX, void, int16_t *av_restrict block, const uint8_t *s1, const uint8_t *s2, int stride); \
|
||||||
\
|
\
|
||||||
for (i = 0; i < BUF_UNITS; i++) { \
|
for (i = 0; i < BUF_UNITS; i++) { \
|
||||||
int src_offset = i * 64 * sizeof(type) + i; /* Test various alignments */ \
|
int src_offset = i * 64 * sizeof(type) + 8 * i; /* Test various alignments */ \
|
||||||
int dst_offset = i * 64; /* dst must be aligned */ \
|
int dst_offset = i * 64; /* dst must be aligned */ \
|
||||||
randomize_buffers(); \
|
randomize_buffers(); \
|
||||||
call_ref(dst0 + dst_offset, src10 + src_offset, src20 + src_offset, 8); \
|
call_ref(dst0 + dst_offset, src10 + src_offset, src20 + src_offset, 8); \
|
||||||
|
Loading…
Reference in New Issue
Block a user