diff options
author | Vitor Sessak <vitor1001@gmail.com> | 2010-06-24 08:46:47 +0000 |
---|---|---|
committer | Vitor Sessak <vitor1001@gmail.com> | 2010-06-24 08:46:47 +0000 |
commit | 57dbd12b6dcff29526ae0da5168d70146cc72b39 (patch) | |
tree | 1dad6191906bb014894f17deca9513f85bf52fb4 | |
parent | 986f143a388bdeb6d641df0c4cf7a76fbecdeb41 (diff) | |
download | ffmpeg-57dbd12b6dcff29526ae0da5168d70146cc72b39.tar.gz |
Fix asm constraints in apply_window()
Originally committed as revision 23752 to svn://svn.ffmpeg.org/ffmpeg/trunk
-rw-r--r-- | libavcodec/x86/mpegaudiodec_mmx.c | 15 |
1 files changed, 8 insertions, 7 deletions
diff --git a/libavcodec/x86/mpegaudiodec_mmx.c b/libavcodec/x86/mpegaudiodec_mmx.c index 39122b8812..d9efffdbba 100644 --- a/libavcodec/x86/mpegaudiodec_mmx.c +++ b/libavcodec/x86/mpegaudiodec_mmx.c @@ -51,11 +51,11 @@ static void apply_window(const float *buf, const float *win1, #define MULT(a, b) \ - "movaps " #a "(%0,%5), %%xmm1 \n\t" \ - "movaps " #a "(%2,%5), %%xmm2 \n\t" \ + "movaps " #a "(%1,%0), %%xmm1 \n\t" \ + "movaps " #a "(%3,%0), %%xmm2 \n\t" \ "mulps %%xmm2, %%xmm1 \n\t" \ "subps %%xmm1, %%xmm0 \n\t" \ - "mulps " #b "(%1,%5), %%xmm2 \n\t" \ + "mulps " #b "(%2,%0), %%xmm2 \n\t" \ "subps %%xmm2, %%xmm4 \n\t" \ __asm__ volatile( @@ -72,11 +72,12 @@ static void apply_window(const float *buf, const float *win1, MULT(1536, 384) MULT(1792, 448) - "movaps %%xmm0, (%3,%5) \n\t" - "movaps %%xmm4, (%4,%5) \n\t" - "addl $16, %5 \n\t" + "movaps %%xmm0, (%4,%0) \n\t" + "movaps %%xmm4, (%5,%0) \n\t" + "addl $16, %0 \n\t" "jl 1b \n\t" - :"+&r"(win1a), "+&r"(win2a), "+&r"(bufa), "+&r"(sum1a), "+&r"(sum2a), "+&r"(count) + :"+&r"(count) + :"r"(win1a), "r"(win2a), "r"(bufa), "r"(sum1a), "r"(sum2a) ); #undef MULT |