New submission from Carl Eugen Hoyos <[email protected]>:
When trying to build ffmpeg with ./configure --disable-optimizations (with a 32 bit x86 compiler), compilation fails for transpose4x4() in libavcodec/x86/dsputil_mmx.c This being the only failing file (and disable-optimization being very useful when using valgrind) imo justifies a #if !HAVE_7REGS (or #if !HAVE_OPTIMIZATIONS) around a pure C implementation of transpose4x4 (or an asm implementation that needs less registers). cc -m32 -I. -I"/home/cehoyos/Projects/FFmpeg" -D_ISOC99_SOURCE -D_POSIX_C_SOURCE=200112 -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -DHAVE_AV_CONFIG_H -std=c99 -pthread -g -Wdeclaration-after-statement -Wall -Wno-switch -Wdisabled-optimization -Wpointer-arith -Wredundant-decls -Wno-pointer-sign -Wcast-qual -Wwrite-strings -Wtype-limits -Wundef -Wmissing-prototypes -fno-math-errno -fno-signed-zeros -fno-tree-vectorize -Werror=implicit-function-declaration -Werror=missing-prototypes -MMD -MF libavcodec/x86/dsputil_mmx.d -MT libavcodec/x86/dsputil_mmx.o -c -o libavcodec/x86/dsputil_mmx.o libavcodec/x86/dsputil_mmx.c ./libavutil/x86/bswap.h:32: warning: ‘av_bswap16’ defined but not used ./libavcodec/mathops.h:57: warning: ‘UMULH’ defined but not used ./libavcodec/get_bits.h:603: warning: ‘get_vlc2’ defined but not used libavcodec/x86/h264dsp_mmx.c:2080: warning: ‘avg_h264_qpel8or16_hv1_lowpass_3dnow’ defined but not used libavcodec/x86/h264dsp_mmx.c:2084: warning: ‘avg_h264_qpel8or16_hv1_lowpass_mmx2’ defined but not used libavcodec/x86/dsputil_mmx.c: In function ‘transpose4x4’: libavcodec/x86/dsputil_mmx.c:736: error: can't find a register in class ‘GENERAL_REGS’ while reloading ‘asm’ libavcodec/x86/dsputil_mmx.c:736: error: ‘asm’ operand has impossible constraints make: *** [libavcodec/x86/dsputil_mmx.o] Error 1 ---------- messages: 11410 priority: normal status: open substatus: open title: compilation with --disable-optimizations fails on x86_32 for transpose4x4() type: bug ________________________________________________ FFmpeg issue tracker <[email protected]> <https://roundup.ffmpeg.org/issue2127> ________________________________________________
