[Ffmpeg-devel] [BUG] Compilation failure when using --disable-opts

Panagiotis Issaris takis.issaris
Thu Mar 8 17:40:14 CET 2007


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Hi,

When configuring FFmpeg revision 8295 (most recent SVN) to disable
optimizations (for easier debugging), the cabac.c file fails to compile:
"can't find a register in class ?GENERAL_REGS? while reloading ?asm?"

I've tried using several versions of GCC. Any tips on how to fix this?


This is the output when using GCC 4.1.2:
./configure --enable-gpl  --enable-debug --disable-opts
...
In file included from raw.c:28:
avcodec.h:2439: warning: ?ImgReSampleContext? is deprecated
avcodec.h:2442: warning: ?ImgReSampleContext? is deprecated
gcc -I"/usr/local/src/rw/ffmpeg"/libswscale   -DHAVE_AV_CONFIG_H
- -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_ISOC9X_SOURCE
- -I"/usr/local/src/rw/ffmpeg" -I"/usr/local/src/rw/ffmpeg"
- -I"/usr/local/src/rw/ffmpeg"/libavutil -g -Wdeclaration-after-statement
- -Wall -Wno-switch -Wdisabled-optimization -Wpointer-arith
- -Wredundant-decls -Wno-pointer-sign  -c -o golomb.o golomb.c
gcc -I"/usr/local/src/rw/ffmpeg"/libswscale   -DHAVE_AV_CONFIG_H
- -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_ISOC9X_SOURCE
- -I"/usr/local/src/rw/ffmpeg" -I"/usr/local/src/rw/ffmpeg"
- -I"/usr/local/src/rw/ffmpeg"/libavutil -g -Wdeclaration-after-statement
- -Wall -Wno-switch -Wdisabled-optimization -Wpointer-arith
- -Wredundant-decls -Wno-pointer-sign  -c -o cabac.o cabac.c
In file included from cabac.c:32:
cabac.h: In function ?get_cabac_noinline?:
cabac.h:522: error: can't find a register in class ?GENERAL_REGS? while
reloading ?asm?
make[1]: *** [cabac.o] Error 1
make[1]: Leaving directory `/usr/local/src/rw/ffmpeg/libavcodec'
make: *** [lib] Error 2
takis at issaris:/usr/local/src/rw/ffmpeg$


When using GCC 3.4.6:
./configure --enable-gpl  --enable-debug --disable-opts --cc=gcc-3.4
...
gcc-3.4 -I"/usr/local/src/rw/ffmpeg"/libswscale   -DHAVE_AV_CONFIG_H
- -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_ISOC9X_SOURCE
- -I"/usr/local/src/rw/ffmpeg" -I"/usr/local/src/rw/ffmpeg"
- -I"/usr/local/src/rw/ffmpeg"/libavutil -g -Wdeclaration-after-statement
- -Wall -Wno-switch -Wdisabled-optimization -Wpointer-arith
- -Wredundant-decls  -c -o cabac.o cabac.c
In file included from cabac.c:32:
cabac.h: In function `get_cabac_noinline':
cabac.h:522: error: can't find a register in class `GENERAL_REGS' while
reloading `asm'
cabac.c: At top level:
cabac.h:109: warning: 'put_cabac_static' defined but not used
cabac.h:155: warning: 'put_cabac_terminate' defined but not used
cabac.h:183: warning: 'put_cabac_u' defined but not used
cabac.h:218: warning: 'put_cabac_ueg' defined but not used
cabac.h:270: warning: 'refill2' defined but not used
cabac.h:578: warning: 'get_cabac_noinline' defined but not used
cabac.h:684: warning: 'decode_significance_x86' defined but not used
cabac.h:734: warning: 'decode_significance_8x8_x86' defined but not used
cabac.h:795: warning: 'get_cabac_terminate' defined but not used
cabac.h:808: warning: 'get_cabac_u' defined but not used
cabac.h:824: warning: 'get_cabac_ueg' defined but not used
make[1]: *** [cabac.o] Error 1
make[1]: Leaving directory `/usr/local/src/rw/ffmpeg/libavcodec'
make: *** [lib] Error 2
takis at issaris:/usr/local/src/rw/ffmpeg$


When using GCC 3.3.6:
./configure --enable-gpl  --enable-debug --disable-opts --cc=gcc-3.3
...
gcc-3.3 -I"/usr/local/src/rw/ffmpeg"/libswscale   -DHAVE_AV_CONFIG_H
- -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_ISOC9X_SOURCE
- -I"/usr/local/src/rw/ffmpeg" -I"/usr/local/src/rw/ffmpeg"
- -I"/usr/local/src/rw/ffmpeg"/libavutil -g -Wall -Wno-switch
- -Wdisabled-optimization -Wpointer-arith -Wredundant-decls  -c -o cabac.o
cabac.c
In file included from cabac.c:32:
cabac.h: In function `get_cabac_noinline':
cabac.h:522: error: can't find a register in class `GENERAL_REGS' while
reloading `asm'
cabac.h: At top level:
cabac.h:109: warning: `put_cabac_static' defined but not used
cabac.h:155: warning: `put_cabac_terminate' defined but not used
cabac.h:183: warning: `put_cabac_u' defined but not used
cabac.h:218: warning: `put_cabac_ueg' defined but not used
cabac.h:270: warning: `refill2' defined but not used
cabac.h:578: warning: `get_cabac_noinline' defined but not used
cabac.h:684: warning: `decode_significance_x86' defined but not used
cabac.h:734: warning: `decode_significance_8x8_x86' defined but not used
cabac.h:795: warning: `get_cabac_terminate' defined but not used
cabac.h:808: warning: `get_cabac_u' defined but not used
cabac.h:824: warning: `get_cabac_ueg' defined but not used
make[1]: *** [cabac.o] Error 1
make[1]: Leaving directory `/usr/local/src/rw/ffmpeg/libavcodec'
make: *** [lib] Error 2


With GCC 2.95.4:
gcc-2.95 -I"/usr/local/src/rw/ffmpeg"/libswscale   -DHAVE_AV_CONFIG_H
- -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_ISOC9X_SOURCE
- -I"/usr/local/src/rw/ffmpeg" -I"/usr/local/src/rw/ffmpeg"
- -I"/usr/local/src/rw/ffmpeg"/libavutil -g -Wall -Wno-switch
- -Wpointer-arith -Wredundant-decls  -c -o cabac.o cabac.c
In file included from /usr/include/sys/types.h:270,
                 from /usr/include/stdlib.h:438,
                 from /usr/local/src/rw/ffmpeg/libavutil/common.h:35,
                 from cabac.c:30:
/usr/include/bits/pthreadtypes.h:69: warning: unnamed struct/union that
defines no instances
In file included from cabac.c:32:
cabac.h: In function `decode_significance_x86':
cabac.h:727: Invalid `asm' statement:
cabac.h:727: fixed or forbidden register 1 (dx) was spilled for class
GENERAL_REGS.
cabac.h: In function `decode_significance_8x8_x86':
cabac.h:783: Invalid `asm' statement:
cabac.h:783: fixed or forbidden register 1 (dx) was spilled for class
GENERAL_REGS.
cabac.c: In function `get_cabac_inline':
cabac.h:532: Invalid `asm' statement:
cabac.h:532: fixed or forbidden register 1 (dx) was spilled for class
GENERAL_REGS.
cabac.c: At top level:
cabac.h:109: warning: `put_cabac_static' defined but not used
cabac.h:155: warning: `put_cabac_terminate' defined but not used
cabac.h:183: warning: `put_cabac_u' defined but not used
cabac.h:218: warning: `put_cabac_ueg' defined but not used
cabac.h:270: warning: `refill2' defined but not used
cabac.h:578: warning: `get_cabac_noinline' defined but not used
cabac.h:684: warning: `decode_significance_x86' defined but not used
cabac.h:734: warning: `decode_significance_8x8_x86' defined but not used
cabac.h:795: warning: `get_cabac_terminate' defined but not used
cabac.h:808: warning: `get_cabac_u' defined but not used
cabac.h:824: warning: `get_cabac_ueg' defined but not used
make[1]: *** [cabac.o] Error 1
make[1]: Leaving directory `/usr/local/src/rw/ffmpeg/libavcodec'
make: *** [lib] Error 2


With friendly regards,
Takis
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.6 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org

iD8DBQFF8Dxu9kOxLuzz4CkRAhlHAJwI5UG398GyvEWbOndbgqxvB/uwsQCfd1pq
SwCFbT63+qsZ7sey2Z/inl0=
=fVGp
-----END PGP SIGNATURE-----




More information about the ffmpeg-devel mailing list