Hi, [mostly Q for Loren]
On Sat, Nov 5, 2011 at 9:04 AM, Ronald S. Bultje <[email protected]> wrote: > From: Loren Merritt <[email protected]> > > We keep INIT_AVX (for backwards compatibility). 3arg AVX ops with > a memory arg can only have it in src2, whereas SSE emulation of > 3arg prefers to have it in src1 (i.e. the mov). So, if the op is > symmetric and the wrong one is memory, swap them. > --- > libavutil/x86/x86inc.asm | 523 > ++++++++++++++++++++++++++++++---------------- > 1 files changed, 340 insertions(+), 183 deletions(-) [..] > @@ -297,6 +297,9 @@ DECLARE_REG 6, rax, eax, ax, al, [rsp + stack_offset + > 56] > > %macro WIN64_SPILL_XMM 1 > %assign xmm_regs_used %1 > + %if mmsize == 8 > + %assign xmm_regs_used 0 > + %endif > ASSERT xmm_regs_used <= 16 > %if xmm_regs_used > 6 > sub rsp, (xmm_regs_used-6)*16+16 Apparently this chunk breaks FFT on Win64, but --disable-sse fixes it, and commenting out this chunk also fixes it. Any ideas what that means? Ronald _______________________________________________ libav-devel mailing list [email protected] https://lists.libav.org/mailman/listinfo/libav-devel
