Date: Mon, 15 Jul 2013 02:20:01 GMT From: dt71@gmx.com To: freebsd-ports-bugs@FreeBSD.org Subject: Re: ports/180564: MPlayer compilation error with Clang (running out of registers) Message-ID: <201307150220.r6F2K1VN065708@freefall.freebsd.org>
next in thread | raw e-mail | index | archive | help
The following reply was made to PR ports/180564; it has been noted by GNATS. From: dt71@gmx.com To: bug-followup@FreeBSD.org Cc: Subject: Re: ports/180564: MPlayer compilation error with Clang (running out of registers) Date: Mon, 15 Jul 2013 04:10:14 +0200 This is a multi-part message in MIME format. --------------070204050205040502000108 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Based on a discussion on #llvm at irc.oftc.net: - The assembly core of Clang is inherently different from that of GCC. One would have to fully reimplement the GCC assembly core to yield matching behaviors in all cases. This is obviously not going to happen. - The -fomit-frame-pointer option would free up 1 needed register. - Someone said that the inline assembly version of the code should be just dropped, because the C version is faster. The attached patch simply cancels the attempted use of 7 registers if the compiler is Clang. --------------070204050205040502000108 Content-Type: text/x-patch; name="mplayer.patch" Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename="mplayer.patch" --- ffmpeg/libavcodec/x86/ac3dsp_init.c 2013-07-03 21:34:20.000000000 +0200 +++ ffmpeg/libavcodec/x86/ac3dsp_init.c 2013-07-03 21:34:45.000000000 +0200 @@ -51,7 +51,7 @@ extern void ff_ac3_extract_exponents_sse2 (uint8_t *exp, int32_t *coef, int nb_coefs); extern void ff_ac3_extract_exponents_ssse3(uint8_t *exp, int32_t *coef, int nb_coefs); -#if ARCH_X86_32 && defined(__INTEL_COMPILER) +#if ARCH_X86_32 && (defined(__INTEL_COMPILER) || defined(__clang__)) # undef HAVE_7REGS # define HAVE_7REGS 0 #endif --------------070204050205040502000108--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201307150220.r6F2K1VN065708>