aboutsummaryrefslogtreecommitdiffstats
path: root/libavcodec/i386/snowdsp_mmx.c
diff options
context:
space:
mode:
authorMichael Niedermayer <michaelni@gmx.at>2007-08-20 23:54:49 +0000
committerMichael Niedermayer <michaelni@gmx.at>2007-08-20 23:54:49 +0000
commit4bf1790421554386abb8056feae98eaef93161ce (patch)
tree9ee58342a910ff5ef6dd2c9d88eb8afa0bd7eea8 /libavcodec/i386/snowdsp_mmx.c
parentdd30437bbedbd92bd8d873463b5be8854bf8000f (diff)
downloadffmpeg-4bf1790421554386abb8056feae98eaef93161ce.tar.gz
simplify, speedup and reduce needed headroom by 2 bits in the 3rd
vertical lifting step Originally committed as revision 10162 to svn://svn.ffmpeg.org/ffmpeg/trunk
Diffstat (limited to 'libavcodec/i386/snowdsp_mmx.c')
-rw-r--r--libavcodec/i386/snowdsp_mmx.c9
1 files changed, 4 insertions, 5 deletions
diff --git a/libavcodec/i386/snowdsp_mmx.c b/libavcodec/i386/snowdsp_mmx.c
index 17ac345664..7b3214dbb4 100644
--- a/libavcodec/i386/snowdsp_mmx.c
+++ b/libavcodec/i386/snowdsp_mmx.c
@@ -590,18 +590,17 @@ void ff_snow_vertical_compose97i_mmx(DWTELEM *b0, DWTELEM *b1, DWTELEM *b2, DWTE
snow_vertical_compose_mmx_sub("mm1","mm3","mm5","mm7","mm0","mm2","mm4","mm6")
snow_vertical_compose_mmx_store(REG_S,"mm0","mm2","mm4","mm6")
"mov %2, %%"REG_a" \n\t"
- snow_vertical_compose_mmx_load(REG_c,"mm1","mm3","mm5","mm7")
snow_vertical_compose_mmx_add(REG_a,"mm0","mm2","mm4","mm6")
- snow_vertical_compose_mmx_sll("2","mm1","mm3","mm5","mm7")
- snow_vertical_compose_mmx_r2r_add("mm1","mm3","mm5","mm7","mm0","mm2","mm4","mm6")
+ snow_vertical_compose_mmx_sra("2","mm0","mm2","mm4","mm6")
+ snow_vertical_compose_mmx_add(REG_c,"mm0","mm2","mm4","mm6")
"pcmpeqd %%mm1, %%mm1 \n\t"
"pslld $31, %%mm1 \n\t"
- "psrld $28, %%mm1 \n\t"
+ "psrld $30, %%mm1 \n\t"
"mov %1, %%"REG_S" \n\t"
snow_vertical_compose_mmx_r2r_add("mm1","mm1","mm1","mm1","mm0","mm2","mm4","mm6")
- snow_vertical_compose_mmx_sra("4","mm0","mm2","mm4","mm6")
+ snow_vertical_compose_mmx_sra("2","mm0","mm2","mm4","mm6")
snow_vertical_compose_mmx_add(REG_c,"mm0","mm2","mm4","mm6")
snow_vertical_compose_mmx_store(REG_c,"mm0","mm2","mm4","mm6")
snow_vertical_compose_mmx_add(REG_S,"mm0","mm2","mm4","mm6")