[FFmpeg-cvslog] r9000 - trunk/libavcodec/i386/dsputil_mmx.c

Ivo ivop
Mon Jul 16 12:11:50 CEST 2007


On Saturday 12 May 2007 03:16, lorenm wrote:
> Author: lorenm
> Date: Sat May 12 03:16:06 2007
> New Revision: 9000
>
> Log:
> sse2 & ssse3 versions of hadamard. unroll and inline diff_pixels.
> core2: before mmx2=193 cycles. after mmx2=174 sse2=122 ssse3=115
> (cycles). k8: before mmx2=205. after mmx2=184 sse2=180.
> p4: before mmx2=342. after mmx2=314 sse2=309.
>
>
> Modified:
>    trunk/libavcodec/i386/dsputil_mmx.c

This breaks compilation with gcc 2.95.3:

/opt/gcc-2.95.3/bin/gcc -I"/misc4/ffmpeg"/libswscale -I"/misc4/ffmpeg"/libavcodec  -DHAVE_AV_CONFIG_H -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_ISOC9X_SOURCE -I"/misc4/ffmpeg" -I"/misc4/ffmpeg" -I"/misc4/ffmpeg"/libavutil -fomit-frame-pointer -g -Wall -Wno-switch -Wpointer-arith -Wredundant-decls -O3  -c -o 
i386/dsputil_mmx.o i386/dsputil_mmx.c
In file included from /usr/include/string.h:417,
                 from /misc4/ffmpeg/libavutil/common.h:37,
                 from /misc4/ffmpeg/libavutil/avutil.h:40,
                 from /misc4/ffmpeg/libavcodec/avcodec.h:30,
                 from /misc4/ffmpeg/libavcodec/dsputil.h:33,
                 from i386/dsputil_mmx.c:25:
/usr/include/bits/string2.h: In function `__strcpy_small':
/usr/include/bits/string2.h:454: warning: pointer of type `void *' used in 
arithmetic
/usr/include/bits/string2.h:462: warning: pointer of type `void *' used in 
arithmetic
/usr/include/bits/string2.h:467: warning: pointer of type `void *' used in 
arithmetic
/usr/include/bits/string2.h:472: warning: pointer of type `void *' used in 
arithmetic
/usr/include/bits/string2.h:474: warning: pointer of type `void *' used in 
arithmetic
/usr/include/bits/string2.h:479: warning: pointer of type `void *' used in 
arithmetic
i386/dsputil_mmx.c: In function `gmc_mmx':
i386/dsputil_mmx.c:2659: warning: suggest parentheses around arithmetic in 
operand of |
i386/dsputil_mmx.c:2659: warning: suggest parentheses around arithmetic in 
operand of |
i386/dsputil_mmx.c:2660: warning: suggest parentheses around arithmetic in 
operand of |
i386/dsputil_mmx.c:2660: warning: suggest parentheses around arithmetic in 
operand of |
i386/dsputil_mmx.c:2660: warning: suggest parentheses around arithmetic in 
operand of |
i386/dsputil_mmx.c: In function `hadamard8_diff_mmx':
i386/dsputil_mmx.c:1789: impossible register constraint in `asm'
i386/dsputil_mmx.c:1789: `asm' needs too many reloads
i386/dsputil_mmx.c: In function `hadamard8_diff16_mmx':
i386/dsputil_mmx.c:1789: impossible register constraint in `asm'
i386/dsputil_mmx.c:1789: impossible register constraint in `asm'
i386/dsputil_mmx.c:1789: `asm' needs too many reloads
i386/dsputil_mmx.c:1789: `asm' needs too many reloads
i386/dsputil_mmx.c: In function `hadamard8_diff_mmx2':
i386/dsputil_mmx.c:1796: impossible register constraint in `asm'
i386/dsputil_mmx.c:1796: `asm' needs too many reloads
i386/dsputil_mmx.c: In function `hadamard8_diff16_mmx2':
i386/dsputil_mmx.c:1796: impossible register constraint in `asm'
i386/dsputil_mmx.c:1796: impossible register constraint in `asm'
i386/dsputil_mmx.c:1796: `asm' needs too many reloads
i386/dsputil_mmx.c:1796: `asm' needs too many reloads
i386/dsputil_mmx.c: In function `hadamard8_diff_sse2':
i386/dsputil_mmx.c:1797: impossible register constraint in `asm'
i386/dsputil_mmx.c:1797: `asm' needs too many reloads
i386/dsputil_mmx.c: In function `hadamard8_diff16_sse2':
i386/dsputil_mmx.c:1797: impossible register constraint in `asm'
i386/dsputil_mmx.c:1797: impossible register constraint in `asm'
i386/dsputil_mmx.c:1797: `asm' needs too many reloads
i386/dsputil_mmx.c:1797: `asm' needs too many reloads
i386/dsputil_mmx.c: In function `hadamard8_diff_ssse3':
i386/dsputil_mmx.c:1805: impossible register constraint in `asm'
i386/dsputil_mmx.c:1805: `asm' needs too many reloads
i386/dsputil_mmx.c: In function `hadamard8_diff16_ssse3':
i386/dsputil_mmx.c:1805: impossible register constraint in `asm'
i386/dsputil_mmx.c:1805: impossible register constraint in `asm'
i386/dsputil_mmx.c:1805: `asm' needs too many reloads
i386/dsputil_mmx.c:1805: `asm' needs too many reloads
make[1]: *** [i386/dsputil_mmx.o] Error 1
make[1]: Leaving directory `/misc4/ffmpeg/libavcodec'
make: *** [lib] Error 2




More information about the ffmpeg-cvslog mailing list