Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 01 Nov 2013 13:24:49 -0400
From:      "Jason E. Hale" <jhale@freebsd.org>
To:        William Grzybowski <william88@gmail.com>
Cc:        "svn-ports-head@freebsd.org" <svn-ports-head@freebsd.org>, "svn-ports-all@freebsd.org" <svn-ports-all@freebsd.org>, "Herbert J. Skuhra" <hskuhra@eumx.net>, William Grzybowski <wg@freebsd.org>, ports-committers <ports-committers@freebsd.org>
Subject:   Re: svn commit: r332103 - head/multimedia/ffmpeg
Message-ID:  <1412906.ydtbp06j8k@mocha.verizon.net>
In-Reply-To: <CAHtVNLMmN7z%2BJpeMEf1hc=2gWbjv5MQh89sw-UJne0RPigskdg@mail.gmail.com>
References:  <201310301257.r9UCvLHO073107@svn.freebsd.org> <20131031100554.Horde.fMH4EsCHDLmIr67m_uCvFA7@ssl.eumx.net> <CAHtVNLMmN7z%2BJpeMEf1hc=2gWbjv5MQh89sw-UJne0RPigskdg@mail.gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help
This is a multi-part message in MIME format.

--nextPart6017251.nZTfFz8b72
Content-Transfer-Encoding: 7Bit
Content-Type: text/plain; charset="us-ascii"

On Thursday, October 31, 2013 09:09:52 William Grzybowski wrote:
> On Thu, Oct 31, 2013 at 8:05 AM, Herbert J. Skuhra <hskuhra@eumx.net> wrote:
> > on. 30. okt. 2013 kl. 13.57 +0100 skrev William Grzybowski:
> >> Author: wg
> >> Date: Wed Oct 30 12:57:20 2013
> >> New Revision: 332103
> >> URL: http://svnweb.freebsd.org/changeset/ports/332103
> >> 
> >> Log:
> >>   multimedia/ffmpeg: update to 2.1
> > 
> > Does not build on my machine (FreeBSD 10.0-BETA2 i386 - r257208):
> > 
> > CC      libavcodec/hevc_cabac.o
> > In file included from libavcodec/hevc_cabac.c:27:
> > In file included from libavcodec/cabac_functions.h:36:
> > libavcodec/x86/cabac.h:175:9: error: ran out of registers during register
> > allocation
> > 
> >         BRANCHLESS_GET_CABAC("%0", "%q0", "(%4)", "%1", "%w1",
> >         ^
> > 
> > libavcodec/x86/cabac.h:128:9: note: expanded from macro
> > 'BRANCHLESS_GET_CABAC'
> > 
> >         "movzbl "statep"    , "ret"
> > 
> > \n\t"\
> > 
> >         ^
> > 
> > libavcodec/x86/cabac.h:175:9: error: ran out of registers during register
> > allocation
> > libavcodec/x86/cabac.h:128:9: note: expanded from macro
> > 'BRANCHLESS_GET_CABAC'
> > 
> >         "movzbl "statep"    , "ret"
> > 
> > \n\t"\
> > 
> >         ^
> > 
> > libavcodec/x86/cabac.h:175:9: error: ran out of registers during register
> > allocation
> > libavcodec/x86/cabac.h:128:9: note: expanded from macro
> > 'BRANCHLESS_GET_CABAC'
> > 
> >         "movzbl "statep"    , "ret"
> > 
> > \n\t"\
> > 
> >         ^
> > 
> > libavcodec/x86/cabac.h:175:9: error: ran out of registers during register
> > allocation
> > libavcodec/x86/cabac.h:128:9: note: expanded from macro
> > 'BRANCHLESS_GET_CABAC'
> > 
> >         "movzbl "statep"    , "ret"
> > 
> > \n\t"\
> > 
> >         ^
> > 
> > libavcodec/x86/cabac.h:175:9: error: ran out of registers during register
> > allocation
> > libavcodec/x86/cabac.h:128:9: note: expanded from macro
> > 'BRANCHLESS_GET_CABAC'
> > 
> >         "movzbl "statep"    , "ret"
> > 
> > \n\t"\
> > 
> >         ^
> > 
> > libavcodec/x86/cabac.h:175:9: error: ran out of registers during register
> > allocation
> > libavcodec/x86/cabac.h:128:9: note: expanded from macro
> > 'BRANCHLESS_GET_CABAC'
> > 
> >         "movzbl "statep"    , "ret"
> > 
> > \n\t"\
> > 
> >         ^
> > 
> > libavcodec/x86/cabac.h:175:9: error: ran out of registers during register
> > allocation
> > libavcodec/x86/cabac.h:128:9: note: expanded from macro
> > 'BRANCHLESS_GET_CABAC'
> > 
> >         "movzbl "statep"    , "ret"
> > 
> > \n\t"\
> > 
> >         ^
> > 
> > 7 errors generated.
> > gmake[2]: *** [libavcodec/hevc_cabac.o] Error 1
> > gmake[2]: Leaving directory `/usr/ports/multimedia/ffmpeg/work/ffmpeg-2.1'
> > ===> Compilation failed unexpectedly.
> > Try to set MAKE_JOBS_UNSAFE=yes and rebuild before reporting the failure
> > to
> > the maintainer.
> > *** Error code 1
> > 
> > Stop.
> > make[1]: stopped in /usr/ports/multimedia/ffmpeg
> > *** Error code 1
> 
> Anyone know how to fix this compiler error? It built fine in 6
> backends in redports.

I've attached a patch that fixes the build for me on 9.2-i386 with clang as 
the compiler.  I successfully built it with base gcc too.

-- 
Jason E. Hale - jhale@
FreeBSD Ports Committer
KDE/FreeBSD Team
--nextPart6017251.nZTfFz8b72
Content-Disposition: attachment; filename="ffmpeg.diff"
Content-Transfer-Encoding: 7Bit
Content-Type: text/x-patch; charset="ISO-8859-1"; name="ffmpeg.diff"

Index: files/patch-libavutil-x86-asm.h
===================================================================
--- files/patch-libavutil-x86-asm.h	(revision 0)
+++ files/patch-libavutil-x86-asm.h	(working copy)
@@ -0,0 +1,11 @@
+--- ./libavutil/x86/asm.h.orig	2013-11-01 13:02:26.000000000 -0400
++++ ./libavutil/x86/asm.h	2013-11-01 13:03:00.000000000 -0400
+@@ -70,7 +70,7 @@
+ typedef int x86_reg;
+ #endif
+ 
+-#define HAVE_7REGS (ARCH_X86_64 || (HAVE_EBX_AVAILABLE && HAVE_EBP_AVAILABLE))
++#define HAVE_7REGS (ARCH_X86_64 || (HAVE_EBX_AVAILABLE && HAVE_EBP_AVAILABLE && !defined(__clang__)))
+ #define HAVE_6REGS (ARCH_X86_64 || (HAVE_EBX_AVAILABLE || HAVE_EBP_AVAILABLE))
+ 
+ #if ARCH_X86_64 && defined(PIC)

Property changes on: files/patch-libavutil-x86-asm.h
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Added: svn:mime-type
## -0,0 +1 ##
+text/plain
\ No newline at end of property
Added: fbsd:nokeywords
## -0,0 +1 ##
+yes
\ No newline at end of property

--nextPart6017251.nZTfFz8b72--




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?1412906.ydtbp06j8k>