gnu: libmad: Fix MIPS assembler code to work with new GCC.
* gnu/packages/patches/libmad-mips-newgcc.patch: New file. * gnu/packages/mp3.scm (libmad): Add patch. * gnu-system.am (dist_patch_DATA): Add patch.
This commit is contained in:
parent
46acd05401
commit
dd863f1f39
|
@ -240,6 +240,7 @@ dist_patch_DATA = \
|
|||
gnu/packages/patches/hop-bigloo-4.0b.patch \
|
||||
gnu/packages/patches/libevent-dns-tests.patch \
|
||||
gnu/packages/patches/libffi-mips-n32-fix.patch \
|
||||
gnu/packages/patches/libmad-mips-newgcc.patch \
|
||||
gnu/packages/patches/libtheora-config-guess.patch \
|
||||
gnu/packages/patches/libtool-skip-tests.patch \
|
||||
gnu/packages/patches/libtool-skip-tests-for-mips.patch \
|
||||
|
|
|
@ -44,7 +44,8 @@
|
|||
version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"14460zhacxhswnzb36qfpd1f2wbk10qvksvm6wyq5hpvdgnw7ymv"))))
|
||||
"14460zhacxhswnzb36qfpd1f2wbk10qvksvm6wyq5hpvdgnw7ymv"))
|
||||
(patches (list (search-patch "libmad-mips-newgcc.patch")))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
`(#:phases
|
||||
|
|
|
@ -0,0 +1,16 @@
|
|||
Fix MIPS assembly code to work with newer GCC, where the "=h"
|
||||
constraint is no longer supported.
|
||||
|
||||
--- libmad/fixed.h.orig 2004-02-16 21:02:03.000000000 -0500
|
||||
+++ libmad/fixed.h 2011-10-29 18:47:21.000000000 -0400
|
||||
@@ -304,8 +304,8 @@
|
||||
* significant bit depends on OPT_ACCURACY via mad_f_scale64().
|
||||
*/
|
||||
# define MAD_F_MLX(hi, lo, x, y) \
|
||||
- asm ("mult %2,%3" \
|
||||
- : "=l" (lo), "=h" (hi) \
|
||||
+ asm ("mult %2,%3\n\tmfhi %1" \
|
||||
+ : "=l" (lo), "=r" (hi) \
|
||||
: "%r" (x), "r" (y))
|
||||
|
||||
# if defined(HAVE_MADD_ASM)
|
Loading…
Reference in New Issue