Commit 5e1278c6 authored by Michael Niedermayer's avatar Michael Niedermayer

Merge commit '2c299d41'

* commit '2c299d41':
  x86: sbrdsp: implement SSE2 qmf_pre_shuffle

Conflicts:
	libavcodec/x86/sbrdsp.asm
	libavcodec/x86/sbrdsp_init.c
Merged-by: 's avatarMichael Niedermayer <michaelni@gmx.at>
parents 2a7d7198 2c299d41
...@@ -292,23 +292,23 @@ INIT_XMM sse2 ...@@ -292,23 +292,23 @@ INIT_XMM sse2
SBR_QMF_DEINT_BFLY SBR_QMF_DEINT_BFLY
INIT_XMM sse2 INIT_XMM sse2
cglobal sbr_qmf_pre_shuffle, 1,4,7,z cglobal sbr_qmf_pre_shuffle, 1,4,6,z
%define OFFSET (32*4-2*mmsize) %define OFFSET (32*4-2*mmsize)
mov r3q, OFFSET mov r3q, OFFSET
lea r1q, [zq + (32+1)*4] lea r1q, [zq + (32+1)*4]
lea r2q, [zq + 64*4] lea r2q, [zq + 64*4]
mova m6, [ps_neg] mova m5, [ps_neg]
.loop: .loop:
movu m0, [r1q] movu m0, [r1q]
movu m2, [r1q + mmsize] movu m2, [r1q + mmsize]
movu m1, [zq + r3q + 4 + mmsize] movu m1, [zq + r3q + 4 + mmsize]
movu m3, [zq + r3q + 4] movu m3, [zq + r3q + 4]
pxor m2, m6 pxor m2, m5
pxor m0, m6 pxor m0, m5
pshufd m2, m2, q0123 pshufd m2, m2, q0123
pshufd m0, m0, q0123 pshufd m0, m0, q0123
SBUTTERFLY dq, 2, 3, 5 SBUTTERFLY dq, 2, 3, 4
SBUTTERFLY dq, 0, 1, 4 SBUTTERFLY dq, 0, 1, 4
mova [r2q + 2*r3q + 0*mmsize], m2 mova [r2q + 2*r3q + 0*mmsize], m2
mova [r2q + 2*r3q + 1*mmsize], m3 mova [r2q + 2*r3q + 1*mmsize], m3
...@@ -317,7 +317,7 @@ cglobal sbr_qmf_pre_shuffle, 1,4,7,z ...@@ -317,7 +317,7 @@ cglobal sbr_qmf_pre_shuffle, 1,4,7,z
add r1q, 2*mmsize add r1q, 2*mmsize
sub r3q, 2*mmsize sub r3q, 2*mmsize
jge .loop jge .loop
mova m2, [zq] movq m2, [zq]
movq [r2q], m2 movq [r2q], m2
REP_RET REP_RET
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment