Hi,

On Sun, Apr 24, 2011 at 2:06 AM, Uoti Urpala <[email protected]> wrote:
> The current generic C implementation, which is always used when the
> public header is included from other programs (either directly or
> through intreadwrite.h) compiles to a mess like this (gcc-4.6 on AMD64):
>        movq    %rdi, %rdx
>        shrq    $32, %rdx
>        movl    %edx, %eax
>        sall    $8, %edx
>        shrl    $8, %eax
>        andl    $-16711936, %edx
>        andl    $16711935, %eax
>        orl     %edx, %eax
>        movl    %edi, %edx
>        sall    $8, %edi
>        shrl    $8, %edx
>        andl    $-16711936, %edi
>        roll    $16, %eax
>        andl    $16711935, %edx
>        orl     %edi, %edx
>        roll    $16, %edx
>        salq    $32, %rdx
>        orq     %rdx, %rax
>        ret
> The builtin function produces just a bswap.
>
> If the built-in functions behave particularly badly on some less common
> architecture then additional checks to exclude those could be
> beneficial; but in any case this should be enabled at least for
> amd64/x86.

Why not simply start distributing avconfig.h and also distribute
arch-specific installed headers?

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

Reply via email to