[x264-devel] [bug] asm operand has impossible constraints (x86)

Sérgio Basto sergio at serjux.com
Mon Aug 10 19:12:20 CEST 2015


On Seg, 2015-08-10 at 11:58 +0200, Johannes Dewender wrote:
> Hello x264 devs,
> 
> 
> when compiling the 32 bit package of libx264 (on a 64 bit machine) I
> get (current git master):
> 
> yasm -I. -I. -DARCH_X86_64=0 -I./common/x86/ -f elf32 -Worphan-labels
> -DSTACK_ALIGNMENT=32 -DPIC -DHIGH_BIT_DEPTH=0 -DBIT_DEPTH=8 -o
> common/x86/pixel-32.o common/x86/pixel-32.asm
> In file included from ./common/common.h:1014:0,
>                  from encoder/me.c:28:
> encoder/me.c: In function 'x264_me_search_ref':
> ./common/x86/util.h:130:5: error: 'asm' operand has impossible constrain
> ts
>      asm(
>       ^
> ./common/x86/util.h:193:5: error: 'asm' operand has impossible constrain
> ts
>      asm(
>       ^
> <builtin>: recipe for target 'encoder/me.o' failed
> 
> The problem appears in building the Arch Linux 32 bit package
> "lib32-libx264":
> https://aur.archlinux.org/packages/lib32-libx264/
> 
> Built on a 64 bit machine with:
> ./configure --prefix=/usr --libdir=/usr/lib32 --host=i686-linux-gnu \
>         --enable-shared \
>         --enable-pic
> make
> 
> The 64 bit build runs fine on the same machine, but that isn't using
> files out of common/x86/, I guess.
> 
> Arch Linux always ships the newest (stable) versions of all software
> so the problem is probably related to a new version of important build
> tools.
> However, I couldn't pinpoint the exact update generating the problem.
> 
> The complete build log is in
> https://gist.github.com/JonnyJD/6aa13527e8b98055a1d0
> 
> This is the list of packages and versions updated (breaking the build):
> https://gist.github.com/JonnyJD/22b65e6101d0e971ee4d
> (It worked before the Arch Linux update)
> 
> I can't tell if that is a bug in the build tools or in x264 and I
> don't have pratical experience in assembler.

Strange , we build it on RPMFusion with  :
%ifarch i686 armv5tel armv6l
   --disable-asm \
%endif

but today it compiles well, with asm enabled in i686, only tested in
i686, for Fedora21 and Fedora22 , it seems to me that is gcc version or
asm version (yasm.i686 1.2.0-7.fc22) and IIRC and with -fPIC  flag ...



> PS:
> I originally reported this at https://trac.videolan.org/vlc/ticket/15226
> (closed as you guys don't seem to use trac)
> _______________________________________________
> x264-devel mailing list
> x264-devel at videolan.org
> https://mailman.videolan.org/listinfo/x264-devel

-- 
Sérgio M. B.



More information about the x264-devel mailing list