[FFmpeg-cvslog] r24958 - trunk/libavcodec/x86/fft_mmx.asm
lorenm
subversion
Sat Aug 28 23:03:14 CEST 2010
Author: lorenm
Date: Sat Aug 28 23:03:13 2010
New Revision: 24958
Log:
cosmetics in imdct_sse
Modified:
trunk/libavcodec/x86/fft_mmx.asm
Modified: trunk/libavcodec/x86/fft_mmx.asm
==============================================================================
--- trunk/libavcodec/x86/fft_mmx.asm Sat Aug 28 16:51:51 2010 (r24957)
+++ trunk/libavcodec/x86/fft_mmx.asm Sat Aug 28 23:03:13 2010 (r24958)
@@ -532,20 +532,15 @@ INIT_XMM
unpckhps xmm0, xmm2
%endmacro
-%macro PREROTATEW 3 ;addr1, addr2, xmm
- movlps %1, %3
- movhps %2, %3
-%endmacro
-
%macro CMUL 6 ;j, xmm0, xmm1, 3, 4, 5
movaps xmm6, [%4+%1*2]
movaps %2, [%4+%1*2+0x10]
movaps %3, xmm6
movaps xmm7, %2
- mulps xmm6, [%5+%1*1]
- mulps %2, [%6+%1*1]
- mulps %3, [%6+%1*1]
- mulps xmm7, [%5+%1*1]
+ mulps xmm6, [%5+%1]
+ mulps %2, [%6+%1]
+ mulps %3, [%6+%1]
+ mulps xmm7, [%5+%1]
subps %2, xmm6
addps %3, xmm7
%endmacro
@@ -576,8 +571,6 @@ cglobal imdct_half_sse, 3,7,8; FFTContex
%define rrevtab r10
%define rtcos r11
%define rtsin r12
- push r10
- push r11
push r12
push r13
push r14
@@ -620,21 +613,25 @@ cglobal imdct_half_sse, 3,7,8; FFTContex
PREROTATER r4, r3, r2, rtcos, rtsin
%ifdef ARCH_X86_64
- movzx r5, word [rrevtab+r4*1-4]
- movzx r6, word [rrevtab+r4*1-2]
- movzx r13, word [rrevtab+r3*1]
- movzx r14, word [rrevtab+r3*1+2]
- PREROTATEW [r1+r5 *8], [r1+r6 *8], xmm0
- PREROTATEW [r1+r13*8], [r1+r14*8], xmm1
+ movzx r5, word [rrevtab+r4-4]
+ movzx r6, word [rrevtab+r4-2]
+ movzx r13, word [rrevtab+r3]
+ movzx r14, word [rrevtab+r3+2]
+ movlps [r1+r5 *8], xmm0
+ movhps [r1+r6 *8], xmm0
+ movlps [r1+r13*8], xmm1
+ movhps [r1+r14*8], xmm1
add r4, 4
%else
mov r6, [esp]
- movzx r5, word [r6+r4*1-4]
- movzx r4, word [r6+r4*1-2]
- PREROTATEW [r1+r5*8], [r1+r4*8], xmm0
- movzx r5, word [r6+r3*1]
- movzx r4, word [r6+r3*1+2]
- PREROTATEW [r1+r5*8], [r1+r4*8], xmm1
+ movzx r5, word [r6+r4-4]
+ movzx r4, word [r6+r4-2]
+ movlps [r1+r5*8], xmm0
+ movhps [r1+r4*8], xmm0
+ movzx r5, word [r6+r3]
+ movzx r4, word [r6+r3+2]
+ movlps [r1+r5*8], xmm1
+ movhps [r1+r4*8], xmm1
%endif
sub r3, 4
jns .pre
@@ -663,8 +660,6 @@ cglobal imdct_half_sse, 3,7,8; FFTContex
pop r14
pop r13
pop r12
- pop r11
- pop r10
%else
add esp, 12
%endif
More information about the ffmpeg-cvslog
mailing list