Opened 4 years ago

Closed 4 years ago

Last modified 3 years ago

#738 closed defect (fixed)

libavcodec cannot be built if configured with "--disable-optimizations"

Reported by: Andrew Owned by:
Priority: minor Component: avcodec
Version: git-master Keywords:
Cc: Blocked By:
Blocking: Reproduced by developer: yes
Analyzed by developer: no

Description

In file included from libavcodec/cabac.h:60,

from libavcodec/cabac.c:31:

libavcodec/x86/cabac.h: In function ‘get_cabac_bypass_sign_x86’:
libavcodec/x86/cabac.h:107: error: can't find a register in class ‘GENERAL_REGS’ while reloading ‘asm’
libavcodec/x86/cabac.h:107: error: ‘asm’ operand has impossible constraints
make: * [libavcodec/cabac.o] Error 1

Attachments (3)

config.h (33.8 KB) - added by Andrew 4 years ago.
config.log (150.8 KB) - added by Andrew 4 years ago.
config.asm (25.6 KB) - added by Andrew 4 years ago.

Download all attachments as: .zip

Change History (13)

Changed 4 years ago by Andrew

Changed 4 years ago by Andrew

Changed 4 years ago by Andrew

comment:1 Changed 4 years ago by Andrew

sorry,
1) ./version.sh
N-35739-ga6c4c0f
2) This error has appeared not later the beginning of December.

comment:2 Changed 4 years ago by cehoyos

  • Reproduced by developer set
  • Status changed from new to open

Only reproducible for ia32, regression since 599b4c6e.

comment:3 Changed 4 years ago by llogan

  • Summary changed from libacvodec cannot be built if it configured with "--disable-optimizations" to libavcodec cannot be built if configured with "--disable-optimizations"

comment:4 Changed 4 years ago by michael

reverting 599b4c6e just causes the next file to fail:
libpostproc/postprocess_template.c: In function ‘dering_MMX2’:
libpostproc/postprocess_template.c:1045:5: error: can’t find a register in class ‘GENERAL_REGS’ while reloading ‘asm’
libpostproc/postprocess_template.c:1045:5: error: ‘asm’ operand has impossible constraints

comment:5 Changed 4 years ago by cehoyos

  • Resolution set to fixed
  • Status changed from open to closed

Not reproducible anymore.

comment:6 Changed 4 years ago by rogerdpack

  • Resolution fixed deleted
  • Status changed from closed to reopened

I was just able to reproduce it with

85c830331c36502144e1cc9cf8aa7bd177e1d79d

./configure --enable-memalign-hack --arch=x86 --enable-gpl --enable-libx264 --enable-avisynth --enable-libxvid --target-os=mingw32 --cross-prefix=/home/rogerdpack/dev/ffmpeg-windows-build-helpers/builds/mingw-w64-i686/bin/i686-w64-mingw32- --pkg-config=pkg-config --enable-libmp3lame --enable-version3 --enable-libvo-aacenc --enable-libvpx --extra-libs=-lws2_32 --extra-libs=-lpthread --enable-zlib --extra-libs=-lwinmm --extra-libs=-lgdi32 --enable-librtmp --enable-libvorbis --enable-libtheora --enable-libspeex --enable-libopenjpeg --enable-gnutls --enable-libgsm --enable-libfreetype --disable-optimizations --enable-runtime-cpudetect

I think the work around is to also use --disable-mmx if you use --disable-optimizations. Is this expected?

Feel free to re-close it if I'm wrong though, and I will research a bit more into it :)

comment:7 Changed 4 years ago by cehoyos

  • Resolution set to fixed
  • Status changed from reopened to closed

Please do not reopen ancient tickets, I suspect you have found ticket #1695, patches exist.

comment:8 follow-up: Changed 4 years ago by rogerdpack

Ok I hope #1695 fixes it (and may be related, though I'll admit that the error message I got was that described in this ticket). Real work around for now: configure with --disable-postproc.

comment:9 in reply to: ↑ 8 Changed 4 years ago by cehoyos

Replying to rogerdpack:

Ok I hope #1695 fixes it (and may be related, though I'll admit that the error message I got was that described in this ticket). Real work around for now: configure with --disable-postproc.

--disable-postproc helped with an error compiling cabac.c, are you sure?

comment:10 Changed 3 years ago by rogerdpack

(--disable-postproc helped it avoid the other error he mentioned "error: can’t find a register in class ‘GENERAL_REGS’ while reloading ‘asm’") FWIW. I haven't run into this for quite awhile and so appreciate the fix.

Note: See TracTickets for help on using tickets.