mirror of
https://github.com/NixOS/nixpkgs.git
synced 2024-11-20 12:42:24 +00:00
lame: fix build on 32-bit with gcc 4.9
This commit is contained in:
parent
e7f1038798
commit
aaaa9f0041
|
@ -30,6 +30,8 @@ stdenv.mkDerivation rec {
|
|||
sha256 = "1zr3kadv35ii6liia0bpfgxpag27xcivp571ybckpbz4b10nnd14";
|
||||
};
|
||||
|
||||
patches = [ ./gcc-4.9.patch ];
|
||||
|
||||
nativeBuildInputs = [ ]
|
||||
++ optional nasmSupport nasm;
|
||||
|
||||
|
|
33
pkgs/development/libraries/lame/gcc-4.9.patch
Normal file
33
pkgs/development/libraries/lame/gcc-4.9.patch
Normal file
|
@ -0,0 +1,33 @@
|
|||
fix sse optimizations build on 32-bit with gcc 4.9
|
||||
http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=351af417bae0d09bd5a3753d1237f03adf591933
|
||||
|
||||
xmm_quantize_sub.c: In function 'init_xrpow_core_sse':
|
||||
xmm_quantize_sub.c:65:18: warning: SSE vector return without SSE enabled changes the ABI [-W
|
||||
psabi]
|
||||
const __m128 vec_fabs_mask = _mm_loadu_ps(&fabs_mask._float[0]);
|
||||
^
|
||||
In file included from xmm_quantize_sub.c:37:0:
|
||||
/usr/lib/gcc/i686-w64-mingw32/4.9.0/include/xmmintrin.h:933:1: error: inlining failed in call to always_inline '_mm_loadu_ps': target specific option mismatch
|
||||
_mm_loadu_ps (float const *__P)
|
||||
^
|
||||
xmm_quantize_sub.c:65:18: error: called from here
|
||||
const __m128 vec_fabs_mask = _mm_loadu_ps(&fabs_mask._float[0]);
|
||||
^
|
||||
--- lame/libmp3lame/vector/xmm_quantize_sub.c.orig 2014-06-08 12:16:19.455468042 -0700
|
||||
+++ lame/libmp3lame/vector/xmm_quantize_sub.c 2014-06-08 12:16:09.592356980 -0700
|
||||
@@ -35,6 +35,7 @@
|
||||
#ifdef HAVE_XMMINTRIN_H
|
||||
|
||||
#include <xmmintrin.h>
|
||||
+#pragma GCC target("sse")
|
||||
|
||||
typedef union {
|
||||
int32_t _i_32[4]; /* unions are initialized by its first member */
|
||||
@@ -124,6 +125,7 @@
|
||||
}
|
||||
|
||||
|
||||
+#pragma GCC target("sse2")
|
||||
void
|
||||
fht_SSE2(FLOAT * fz, int n)
|
||||
{
|
Loading…
Reference in a new issue