summaryrefslogtreecommitdiff
path: root/libavcodec/i386
diff options
context:
space:
mode:
authorLoren Merritt <lorenm@u.washington.edu>2008-02-06 04:44:21 +0000
committerLoren Merritt <lorenm@u.washington.edu>2008-02-06 04:44:21 +0000
commit20d565be6d52c38495eeaa8904c02315421629b3 (patch)
tree7fcc56ad09801e6e42c0aa2626c369025b3b2ca0 /libavcodec/i386
parent7080ec2937076596d37d9eba7f137412fcc0e4b9 (diff)
put loop counter in a register if possible. makes some of the qpel functions 3% faster.
Originally committed as revision 11876 to svn://svn.ffmpeg.org/ffmpeg/trunk
Diffstat (limited to 'libavcodec/i386')
-rw-r--r--libavcodec/i386/dsputil_mmx.c4
-rw-r--r--libavcodec/i386/h264dsp_mmx.c8
2 files changed, 6 insertions, 6 deletions
diff --git a/libavcodec/i386/dsputil_mmx.c b/libavcodec/i386/dsputil_mmx.c
index 611ee37108..55343181de 100644
--- a/libavcodec/i386/dsputil_mmx.c
+++ b/libavcodec/i386/dsputil_mmx.c
@@ -2061,7 +2061,7 @@ static void OPNAME ## mpeg4_qpel16_h_lowpass_mmx2(uint8_t *dst, uint8_t *src, in
"add %4, %1 \n\t"\
"decl %2 \n\t"\
" jnz 1b \n\t"\
- : "+a"(src), "+c"(dst), "+m"(h)\
+ : "+a"(src), "+c"(dst), "+g"(h)\
: "d"((long)srcStride), "S"((long)dstStride), /*"m"(ff_pw_20), "m"(ff_pw_3),*/ "m"(temp), "m"(ROUNDER)\
: "memory"\
);\
@@ -2174,7 +2174,7 @@ static void OPNAME ## mpeg4_qpel8_h_lowpass_mmx2(uint8_t *dst, uint8_t *src, int
"add %4, %1 \n\t"\
"decl %2 \n\t"\
" jnz 1b \n\t"\
- : "+a"(src), "+c"(dst), "+m"(h)\
+ : "+a"(src), "+c"(dst), "+g"(h)\
: "S"((long)srcStride), "D"((long)dstStride), /*"m"(ff_pw_20), "m"(ff_pw_3),*/ "m"(temp), "m"(ROUNDER)\
: "memory"\
);\
diff --git a/libavcodec/i386/h264dsp_mmx.c b/libavcodec/i386/h264dsp_mmx.c
index 4dc57321a3..340d9fab5f 100644
--- a/libavcodec/i386/h264dsp_mmx.c
+++ b/libavcodec/i386/h264dsp_mmx.c
@@ -796,7 +796,7 @@ static av_noinline void OPNAME ## h264_qpel4_h_lowpass_ ## MMX(uint8_t *dst, uin
"add %4, %1 \n\t"\
"decl %2 \n\t"\
" jnz 1b \n\t"\
- : "+a"(src), "+c"(dst), "+m"(h)\
+ : "+a"(src), "+c"(dst), "+g"(h)\
: "d"((long)srcStride), "S"((long)dstStride), "m"(ff_pw_5), "m"(ff_pw_16)\
: "memory"\
);\
@@ -930,7 +930,7 @@ static av_noinline void OPNAME ## h264_qpel4_hv_lowpass_ ## MMX(uint8_t *dst, in
"add %3, %1 \n\t"\
"decl %2 \n\t"\
" jnz 1b \n\t"\
- : "+a"(tmp), "+c"(dst), "+m"(h)\
+ : "+a"(tmp), "+c"(dst), "+g"(h)\
: "S"((long)dstStride)\
: "memory"\
);\
@@ -987,7 +987,7 @@ static av_noinline void OPNAME ## h264_qpel8_h_lowpass_ ## MMX(uint8_t *dst, uin
"add %4, %1 \n\t"\
"decl %2 \n\t"\
" jnz 1b \n\t"\
- : "+a"(src), "+c"(dst), "+m"(h)\
+ : "+a"(src), "+c"(dst), "+g"(h)\
: "d"((long)srcStride), "S"((long)dstStride), "m"(ff_pw_5), "m"(ff_pw_16)\
: "memory"\
);\
@@ -1201,7 +1201,7 @@ static av_noinline void OPNAME ## h264_qpel8or16_hv_lowpass_ ## MMX(uint8_t *dst
"add %3, %1 \n\t"\
"decl %2 \n\t"\
" jnz 1b \n\t"\
- : "+a"(tmp), "+c"(dst), "+m"(h)\
+ : "+a"(tmp), "+c"(dst), "+g"(h)\
: "S"((long)dstStride)\
: "memory"\
);\