Hi,

On Tue, Nov 1, 2011 at 2:41 PM, Justin Ruggles <[email protected]> wrote:
> The calling convention only allows 4 non-stack parameter, with each
> float or int register being skipped if not used.
>
> fixes Bug 64
> ---
>  libavcodec/x86/fmtconvert.asm |    6 +++++-
>  1 files changed, 5 insertions(+), 1 deletions(-)
>
> diff --git a/libavcodec/x86/fmtconvert.asm b/libavcodec/x86/fmtconvert.asm
> index 8549548..d6dc711 100644
> --- a/libavcodec/x86/fmtconvert.asm
> +++ b/libavcodec/x86/fmtconvert.asm
> @@ -28,10 +28,14 @@ SECTION_TEXT
>  ; void int32_to_float_fmul_scalar(float *dst, const int *src, float mul, int 
> len);
>  ;---------------------------------------------------------------------------------
>  %macro INT32_TO_FLOAT_FMUL_SCALAR 2
> -%ifdef ARCH_X86_64
> +%ifdef UNIX64
>  cglobal int32_to_float_fmul_scalar_%1, 3,3,%2, dst, src, len
>  %else
>  cglobal int32_to_float_fmul_scalar_%1, 4,4,%2, dst, src, mul, len
> +%endif
> +%ifdef WIN64
> +    movss   m0, m2
> +%elifdef ARCH_X86_32
>     movss   m0, mulm

SWAP 0, 2?

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

Reply via email to