@@ -103,6 +103,7 @@ static void apply_window(const float *buf, const float *win1,
"jl 1b \n\t"
:"+&r"(count)
:"r"(win1a), "r"(win2a), "r"(bufa), "r"(sum1a), "r"(sum2a)
+ XMM_CLOBBERS_ONLY("xmm0", "xmm1", "xmm2", "xmm4")
);
#undef MULT
@@ -137,7 +138,7 @@ static void apply_window_mp3(float *in, float *win, int *unused, float *out,
"movaps %%xmm2, 96(%1) \n\t" \
"movaps %%xmm3, 112(%1) \n\t"
::"r"(in), "r"(in+512)
- :"memory"
+ :"memory" XMM_CLOBBERS(, "xmm0", "xmm1", "xmm2", "xmm3")
);
apply_window(in + 16, win , win + 512, suma, sumc, 16);
@@ -169,7 +170,7 @@ static void apply_window_mp3(float *in, float *win, int *unused, float *out,
:"+&r"(out)
:"r"(&suma[0]), "r"(&sumb[0]), "r"(&sumc[0]), "r"(&sumd[0])
- :"memory"
+ :"memory" XMM_CLOBBERS(, "xmm0")
);
out += 16*incr;
} else {
From: Frédéric Recoules <frederic.recoules@orange.fr> --- libavcodec/x86/mpegaudiodsp.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-)