mirror of https://github.com/mpv-player/mpv
This version is slightly better then previous, hard to decide.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@865 b3059339-0415-0410-9bf9-f77b7e298cf2
This commit is contained in:
parent
d3c061d749
commit
f3e7f4bd5f
|
@ -90,8 +90,7 @@ synth_1to1_sse:
|
||||||
.L74:
|
.L74:
|
||||||
pushl %eax
|
pushl %eax
|
||||||
call dct64
|
call dct64
|
||||||
addl $12,%esp
|
addl $12, %esp
|
||||||
emms
|
|
||||||
movl 16(%esp),%edx
|
movl 16(%esp),%edx
|
||||||
leal 0(,%edx,4),%edx
|
leal 0(,%edx,4),%edx
|
||||||
movl $decwin+64,%eax
|
movl $decwin+64,%eax
|
||||||
|
@ -100,24 +99,26 @@ synth_1to1_sse:
|
||||||
movl $16,%ebp
|
movl $16,%ebp
|
||||||
|
|
||||||
.L55:
|
.L55:
|
||||||
movups (%ecx), %xmm4
|
movups (%ecx), %xmm0
|
||||||
mulps (%ebx), %xmm4
|
mulps (%ebx), %xmm0
|
||||||
movups 16(%ecx), %xmm0
|
movups 16(%ecx), %xmm1
|
||||||
mulps 16(%ebx), %xmm0
|
mulps 16(%ebx), %xmm1
|
||||||
addps %xmm0, %xmm4
|
addps %xmm1, %xmm0
|
||||||
movups 32(%ecx), %xmm1
|
movups 32(%ecx), %xmm1
|
||||||
mulps 32(%ebx), %xmm1
|
mulps 32(%ebx), %xmm1
|
||||||
addps %xmm1, %xmm4
|
addps %xmm1, %xmm0
|
||||||
movups 48(%ecx), %xmm0
|
movups 48(%ecx), %xmm1
|
||||||
mulps 48(%ebx), %xmm0
|
mulps 48(%ebx), %xmm1
|
||||||
addps %xmm0, %xmm4
|
addps %xmm1, %xmm0
|
||||||
movhlps %xmm4, %xmm1 /* fake of pfacc */
|
movhlps %xmm0, %xmm1
|
||||||
addps %xmm1, %xmm4
|
addps %xmm1, %xmm0
|
||||||
shufps $0x55, %xmm4, %xmm1 /* fake of pfnacc. 1|1|1|1 */
|
movaps %xmm0, %xmm1
|
||||||
subps %xmm1, %xmm4
|
shufps $0x55, %xmm1, %xmm1 /* fake of pfnacc. 1|1|1|1 */
|
||||||
cvtss2si %xmm4, %eax
|
subss %xmm1, %xmm0
|
||||||
|
cvttss2si %xmm0, %eax
|
||||||
|
|
||||||
movw %ax,(%esi)
|
/ sar $16,%eax
|
||||||
|
movw %ax,(%esi)
|
||||||
|
|
||||||
addl $64,%ebx
|
addl $64,%ebx
|
||||||
subl $-128,%ecx
|
subl $-128,%ecx
|
||||||
|
@ -127,23 +128,24 @@ synth_1to1_sse:
|
||||||
|
|
||||||
/ --- end of loop 1 ---
|
/ --- end of loop 1 ---
|
||||||
|
|
||||||
movups (%ecx), %xmm4
|
movups (%ecx), %xmm0
|
||||||
mulps (%ebx), %xmm4
|
mulps (%ebx), %xmm0
|
||||||
movups 16(%ecx), %xmm0
|
movups 16(%ecx), %xmm1
|
||||||
mulps 16(%ebx), %xmm0
|
mulps 16(%ebx), %xmm1
|
||||||
addps %xmm0, %xmm4
|
addps %xmm1, %xmm0
|
||||||
movups 32(%ecx), %xmm1
|
movups 32(%ecx), %xmm1
|
||||||
mulps 32(%ebx), %xmm1
|
mulps 32(%ebx), %xmm1
|
||||||
addps %xmm1, %xmm4
|
addps %xmm1, %xmm0
|
||||||
movups 48(%ecx), %xmm0
|
movups 48(%ecx), %xmm1
|
||||||
mulps 48(%ebx), %xmm0
|
mulps 48(%ebx), %xmm1
|
||||||
addps %xmm0, %xmm4
|
addps %xmm1, %xmm0
|
||||||
movhlps %xmm4, %xmm1 /* 3|2|3|2 */
|
movhlps %xmm0, %xmm1
|
||||||
addps %xmm1, %xmm4
|
addss %xmm1, %xmm0
|
||||||
cvtss2si %xmm4, %eax
|
cvttss2si %xmm0, %eax
|
||||||
|
|
||||||
|
/ sar $16,%eax
|
||||||
|
|
||||||
movw %ax,(%esi)
|
movw %ax,(%esi)
|
||||||
|
|
||||||
addl $-64,%ebx
|
addl $-64,%ebx
|
||||||
addl $4,%esi
|
addl $4,%esi
|
||||||
|
@ -151,32 +153,29 @@ synth_1to1_sse:
|
||||||
movl $15,%ebp
|
movl $15,%ebp
|
||||||
|
|
||||||
.L68:
|
.L68:
|
||||||
xorps %xmm0, %xmm0
|
xorps %xmm0, %xmm0
|
||||||
|
movups (%ecx), %xmm1
|
||||||
|
mulps (%ebx), %xmm1
|
||||||
|
subps %xmm1, %xmm0
|
||||||
|
movups 16(%ecx), %xmm1
|
||||||
|
mulps 16(%ebx), %xmm1
|
||||||
|
subps %xmm1, %xmm0
|
||||||
|
movups 32(%ecx), %xmm1
|
||||||
|
mulps 32(%ebx), %xmm1
|
||||||
|
subps %xmm1, %xmm0
|
||||||
|
movups 48(%ecx), %xmm1
|
||||||
|
mulps 48(%ebx), %xmm1
|
||||||
|
subps %xmm1, %xmm0
|
||||||
|
movhlps %xmm0, %xmm1
|
||||||
|
subps %xmm1, %xmm0
|
||||||
|
movaps %xmm0, %xmm1
|
||||||
|
shufps $0x55, %xmm1, %xmm1 /* fake of pfacc 1|1|1|1 */
|
||||||
|
addss %xmm1, %xmm0
|
||||||
|
cvttss2si %xmm0, %eax
|
||||||
|
|
||||||
movups (%ecx),%xmm2
|
/ sar $16,%eax
|
||||||
mulps (%ebx),%xmm2
|
|
||||||
subps %xmm2,%xmm0
|
|
||||||
|
|
||||||
movups 16(%ecx),%xmm2
|
movw %ax,(%esi)
|
||||||
mulps 16(%ebx),%xmm2
|
|
||||||
subps %xmm2,%xmm0
|
|
||||||
|
|
||||||
movups 32(%ecx),%xmm2
|
|
||||||
mulps 32(%ebx),%xmm2
|
|
||||||
subps %xmm2,%xmm0
|
|
||||||
|
|
||||||
movups 48(%ecx),%xmm2
|
|
||||||
mulps 48(%ebx),%xmm2
|
|
||||||
subps %xmm2,%xmm0
|
|
||||||
|
|
||||||
movhlps %xmm0, %xmm1 /* 3|2|3|2 */
|
|
||||||
addps %xmm1, %xmm0
|
|
||||||
shufps $0x55, %xmm0, %xmm1 /* fake of pfacc 1|1|1|1 */
|
|
||||||
addps %xmm1, %xmm0
|
|
||||||
cvtss2si %xmm0, %eax
|
|
||||||
|
|
||||||
|
|
||||||
movw %ax,(%esi)
|
|
||||||
|
|
||||||
addl $-64,%ebx
|
addl $-64,%ebx
|
||||||
subl $-128,%ecx
|
subl $-128,%ecx
|
||||||
|
@ -186,8 +185,6 @@ synth_1to1_sse:
|
||||||
|
|
||||||
/ --- end of loop 2
|
/ --- end of loop 2
|
||||||
|
|
||||||
emms
|
|
||||||
|
|
||||||
movl %edi,%eax
|
movl %edi,%eax
|
||||||
popl %ebx
|
popl %ebx
|
||||||
popl %esi
|
popl %esi
|
||||||
|
|
Loading…
Reference in New Issue