[FFmpeg-devel] [PATCH] hpeldsp: fix build without inline asm

Hendrik Leppkes h.leppkes at gmail.com
Wed May 21 12:43:51 CEST 2014


On Wed, May 21, 2014 at 11:45 AM, Christophe Gisquet
<christophe.gisquet at gmail.com> wrote:
> Hi,
>
> 2014-05-21 11:19 GMT+02:00 Hendrik Leppkes <h.leppkes at gmail.com>:
>> Also, it would be super great if people messing with inline-asm could run a
>> --disable-inline-asm build once to make sure it doesn't break.
>
> I tested with --disable-yasm. Does this mean 4 configs
> (HAVE_MMX_EXTERNAL*HAVE_MMX_INLINE) should be tested then?

Well, I know of MSVC which never has inline asm, while a build without
yasm is rather special and not very usual.
Not sure you need to test all 4 combinations, but personally I would
appreciate a disable-inline-asm test ;)

>
>> +#if HAVE_MMX_INLINE
>>  #define SET_HPEL_FUNCS(PFX, IDX, SIZE, CPU)                                     \
>>      do {                                                                        \
>> -        if (HAVE_MMX_EXTERNAL)                                                  \
>> -        c->PFX ## _pixels_tab IDX [0] = PFX ## _pixels ## SIZE ## _     ## CPU; \
>> +        SET_HPEL_FUNCS_EXT(PFX, IDX, SIZE, CPU)                                 \
>>          if (HAVE_MMX_INLINE) {                                                  \
>>          c->PFX ## _pixels_tab IDX [1] = PFX ## _pixels ## SIZE ## _x2_  ## CPU; \
>
> I don't get what is happening. Is it a problem of the MMX inline
> functions not being defined (seems so, the 16w-ide variants are
> defined only through CALL_2X_PIXELS)?

Yes, the functions are not defined, because the block that would do
that above is excluded by #if HAVE_INLINE_ASSEMBLY

- Hendrik


More information about the ffmpeg-devel mailing list