2014-02-06 Janne Grunau <[email protected]>:
> On 2014-02-06 00:40:51 +0000, Christophe Gisquet wrote:
>> For the callable function (as opposed to the inline one):
>>          C  SSE  SSE2  SSE4
>> Win32:  47   42   29    26
>> Win64:  30   33   25    23
>> The SSE version is neither compiled nor set for 64bits.
>
> That are cpu cycles?

Yes. They are only valid when compared to each other. The actual value
may depend on the CPU model/frequency/economy mode.

In particular, these were measured on another PC I don't have anymore.

>> +# include "libavutil/x86/asm.h"
>> +# include "libavutil/mem.h"
>> +
>> +#undef  int8x8_fmul_int32
>
> this still looks backwards to me

Yes, as long as this header is included before dcadsp.h.

This will be rewritten anyway, following your proposal.

> just because HAVE_SSE4_INLINE is set, doesn't mean the target processor

I greped config.h and stumbled on this. I wrongly assumed this was the
consequence of detecting whether e.g. -msse42 was passed to gcc via
cflags.

But otherwise, if I understand correctly, this macro is only useful if
someone writes inline asm.

Then indeed, the only assumption is ARCH_X86_64 => SSE2

>> +    if (EXTERNAL_SSE(mm_flags)) {
>> +#if ARCH_X86_32
>
> if (ARCH_X86_32 && EXTERNAL_SSE(mm_flags))
>
> is simpler

Will do, thanks.

-- 
Christophe
_______________________________________________
libav-devel mailing list
[email protected]
https://lists.libav.org/mailman/listinfo/libav-devel

Reply via email to