On Sun, Jun 26, 2016 at 01:59:05PM +0200, Hendrik Leppkes wrote: > On Sun, Jun 26, 2016 at 11:16 AM, Michael Niedermayer > <mich...@niedermayer.cc> wrote: > > They are documented as requiring 8 byte aligned source > > > > Signed-off-by: Michael Niedermayer <mich...@niedermayer.cc> > > --- > > tests/checkasm/pixblockdsp.c | 4 ++-- > > 1 file changed, 2 insertions(+), 2 deletions(-) > > > > diff --git a/tests/checkasm/pixblockdsp.c b/tests/checkasm/pixblockdsp.c > > index 66bfdb7..28ee500 100644 > > --- a/tests/checkasm/pixblockdsp.c > > +++ b/tests/checkasm/pixblockdsp.c > > @@ -49,7 +49,7 @@ > > int i; > > \ > > 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+=8) { > > \ > > int src_offset = i * 64 * sizeof(type) + i; /* Test various > > alignments */ \ > > int dst_offset = i * 64; /* dst must be aligned */ > > \ > > randomize_buffers(); > > \ > > @@ -66,7 +66,7 @@ > > int i; > > \ > > 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+=8) { > > \ > > int src_offset = i * 64 * sizeof(type) + i; /* Test various > > alignments */ \ > > int dst_offset = i * 64; /* dst must be aligned */ > > \ > > randomize_buffers(); > > \ > > -- > > 1.7.9.5 > > > > BUF_UNITS is 8, so that change would entirely eliminate the loop. > Maybe src_offset should just be changed to be aligned properly, > keeping the loop? Or is the only purpose of the loop to test > alignment?
you mean something like this? : commit e3ff4df1c0a83a178d0aaf102486d7fbc97994d1 Author: Michael Niedermayer <mich...@niedermayer.cc> Date: Mon Jun 27 22:03:14 2016 +0200 tests/checkasm/pixblockdsp: Test 8 byte aligned positions The code is documented as to require 8byte alignment Signed-off-by: Michael Niedermayer <mich...@niedermayer.cc> diff --git a/tests/checkasm/pixblockdsp.c b/tests/checkasm/pixblockdsp.c index 66bfdb7..2b88e7d 100644 --- a/tests/checkasm/pixblockdsp.c +++ b/tests/checkasm/pixblockdsp.c @@ -26,7 +26,7 @@ #include "libavutil/intreadwrite.h" #define BUF_UNITS 8 -#define BUF_SIZE (BUF_UNITS * 128 + BUF_UNITS) +#define BUF_SIZE (BUF_UNITS * 128 + 8 * BUF_UNITS) #define randomize_buffers() \ do { \ @@ -50,7 +50,7 @@ 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++) { \ - 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 */ \ randomize_buffers(); \ 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); \ \ 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 */ \ randomize_buffers(); \ call_ref(dst0 + dst_offset, src10 + src_offset, src20 + src_offset, 8); \ [...] -- Michael GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB What does censorship reveal? It reveals fear. -- Julian Assange
signature.asc
Description: Digital signature
_______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-devel