[FFmpeg-devel] [PATCH] some SIMD write-combining for h264
Loren Merritt
lorenm
Sun Jan 24 10:16:12 CET 2010
On Sun, 24 Jan 2010, Alexander Strange wrote:
> I ended up lifting some address calculation out of loops - the asm statements make every compiler I tried recalculate the whole address every time. This added some warnings about pointer casts, although the pointer math works out:
>
> libavcodec/h264.h:1316:37: warning: incompatible pointer types initializing 'int16_t [2]', expected 'int16_t (*)[2]'
> int16_t (*mvd_dst)[2] = h->mvd_table[list][b_xy];
> ^~~~~~~~~~~~~~~~~~~~~~~~
> libavcodec/h264.h:1317:37: warning: incompatible pointer types initializing 'int16_t [2]', expected 'int16_t (*)[2]'
> int16_t (*mvd_src)[2] = h->mvd_cache[list][scan8[0]];
> ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
>
> Did I get it wrong or should I just add type casts?
int16_t (*mvd_dst)[2] = &h->mvd_table[list][b_xy];
--Loren Merritt
More information about the ffmpeg-devel
mailing list