From: "Ronald S. Bultje" <rsbul...@gmail.com> --- libavcodec/x86/dct32_sse.asm | 2 -- libavcodec/x86/dsputil_yasm.asm | 14 -------------- libavcodec/x86/fft_mmx.asm | 6 ------ libavresample/x86/audio_convert.asm | 10 ---------- libavresample/x86/audio_mix.asm | 10 ---------- libavutil/x86/float_dsp.asm | 10 ---------- libavutil/x86/x86inc.asm | 5 ++++- 7 files changed, 4 insertions(+), 53 deletions(-)
diff --git a/libavcodec/x86/dct32_sse.asm b/libavcodec/x86/dct32_sse.asm index e3c8a45..351c88d 100644 --- a/libavcodec/x86/dct32_sse.asm +++ b/libavcodec/x86/dct32_sse.asm @@ -278,8 +278,6 @@ cglobal dct32_float_avx, 2,3,8, out, in, tmp vperm2f128 m0, m1, m1, 0x31 vmovaps [outq+96], m1 - vzeroupper - ; pass 6, no SIMD... INIT_XMM PASS6_AND_PERMUTE diff --git a/libavcodec/x86/dsputil_yasm.asm b/libavcodec/x86/dsputil_yasm.asm index 077f3a0..70a0aa1 100644 --- a/libavcodec/x86/dsputil_yasm.asm +++ b/libavcodec/x86/dsputil_yasm.asm @@ -1158,12 +1158,7 @@ ALIGN 16 add src1q, 2*mmsize sub lenq, 2*mmsize jge .loop -%if mmsize == 32 - vzeroupper - RET -%else REP_RET -%endif %endmacro INIT_XMM sse @@ -1193,12 +1188,7 @@ ALIGN 16 sub lenq, 2*mmsize jge .loop -%if mmsize == 32 - vzeroupper - RET -%else REP_RET -%endif %endmacro INIT_XMM sse @@ -1243,10 +1233,6 @@ cglobal butterflies_float_interleave, 4,4,3, dst, src0, src1, len %endif add lenq, mmsize jl .loop -%if mmsize == 32 - vzeroupper - RET -%endif .end: REP_RET %endmacro diff --git a/libavcodec/x86/fft_mmx.asm b/libavcodec/x86/fft_mmx.asm index 1a430b9..527e215 100644 --- a/libavcodec/x86/fft_mmx.asm +++ b/libavcodec/x86/fft_mmx.asm @@ -749,9 +749,6 @@ section .text ; The others pass args in registers and don't spill anything. cglobal fft_dispatch%2, 2,5,8, z, nbits FFT_DISPATCH fullsuffix, nbits -%if mmsize == 32 - vzeroupper -%endif RET %endmacro ; DECL_FFT @@ -957,9 +954,6 @@ cglobal imdct_half, 3,12,8; FFTContext *s, FFTSample *output, const FFTSample *i %if ARCH_X86_64 == 0 add esp, 12 %endif -%if mmsize == 32 - vzeroupper -%endif RET %endmacro diff --git a/libavresample/x86/audio_convert.asm b/libavresample/x86/audio_convert.asm index 7b3cc22..244c4d1 100644 --- a/libavresample/x86/audio_convert.asm +++ b/libavresample/x86/audio_convert.asm @@ -145,12 +145,7 @@ cglobal conv_s32_to_flt, 3,3,3, dst, src, len mova [dstq+lenq+mmsize], m2 add lenq, mmsize*2 jl .loop -%if mmsize == 32 - vzeroupper - RET -%else REP_RET -%endif %endmacro INIT_XMM sse2 @@ -218,12 +213,7 @@ cglobal conv_flt_to_s32, 3,3,5, dst, src, len mova [dstq+lenq+3*mmsize], m3 add lenq, mmsize*4 jl .loop -%if mmsize == 32 - vzeroupper - RET -%else REP_RET -%endif %endmacro INIT_XMM sse2 diff --git a/libavresample/x86/audio_mix.asm b/libavresample/x86/audio_mix.asm index 58a4ded..dbfaa69 100644 --- a/libavresample/x86/audio_mix.asm +++ b/libavresample/x86/audio_mix.asm @@ -51,12 +51,7 @@ cglobal mix_2_to_1_fltp_flt, 3,4,6, src, matrix, len, src1 add srcq, mmsize*2 sub lend, mmsize*2/4 jg .loop -%if mmsize == 32 - vzeroupper - RET -%else REP_RET -%endif %endmacro INIT_XMM sse @@ -175,12 +170,7 @@ cglobal mix_1_to_2_fltp_flt, 3,5,4, src0, matrix0, len, src1, matrix1 add src0q, mmsize sub lend, mmsize/4 jg .loop -%if mmsize == 32 - vzeroupper - RET -%else REP_RET -%endif %endmacro INIT_XMM sse diff --git a/libavutil/x86/float_dsp.asm b/libavutil/x86/float_dsp.asm index 66ef093..c4e0c66 100644 --- a/libavutil/x86/float_dsp.asm +++ b/libavutil/x86/float_dsp.asm @@ -40,12 +40,7 @@ ALIGN 16 sub lenq, 2*mmsize jge .loop -%if mmsize == 32 - vzeroupper - RET -%else REP_RET -%endif %endmacro INIT_XMM sse @@ -86,12 +81,7 @@ cglobal vector_fmac_scalar, 4,4,3, dst, src, mul, len mova [dstq+lenq+mmsize], m2 sub lenq, 2*mmsize jge .loop -%if mmsize == 32 - vzeroupper - RET -%else REP_RET -%endif %endmacro INIT_XMM sse diff --git a/libavutil/x86/x86inc.asm b/libavutil/x86/x86inc.asm index 42ba97a..4b523e9 100644 --- a/libavutil/x86/x86inc.asm +++ b/libavutil/x86/x86inc.asm @@ -369,11 +369,14 @@ DECLARE_REG 14, R15, R15D, R15W, R15B, 120 %macro RET 0 WIN64_RESTORE_XMM_INTERNAL rsp POP_IF_USED 14, 13, 12, 11, 10, 9, 8, 7 +%if mmsize == 32 + vzeroupper +%endif ret %endmacro %macro REP_RET 0 - %if regs_used > 7 || xmm_regs_used > 6 + %if regs_used > 7 || xmm_regs_used > 6 || mmsize == 32 RET %else rep ret -- 1.7.9.5 _______________________________________________ libav-devel mailing list libav-devel@libav.org https://lists.libav.org/mailman/listinfo/libav-devel