aboutsummaryrefslogtreecommitdiff
path: root/gnu/packages/patches/binutils-loongson-workaround.patch
diff options
context:
space:
mode:
authorMark H Weaver <mhw@netris.org>2013-11-03 18:08:33 -0500
committerMark H Weaver <mhw@netris.org>2013-11-03 23:25:54 -0500
commit2c1ceeacdf00c9fa6b4324b693c9998745f84b1c (patch)
tree4101306a1d39055bffe6802c0f8edaa70daf78bf /gnu/packages/patches/binutils-loongson-workaround.patch
parent69f777d14caa50a3a0d0167910ddb9a5910d4ab2 (diff)
downloadguix-2c1ceeacdf00c9fa6b4324b693c9998745f84b1c.tar
guix-2c1ceeacdf00c9fa6b4324b693c9998745f84b1c.tar.gz
gnu: binutils: apply fixes and workarounds for Loongson 2F CPUs.
* gnu/packages/patches/binutils-loongson-madd-fix.patch: New file. * gnu/packages/patches/binutils-loongson-workaround.patch: New file. * gnu/packages/base.scm (binutils): Add patches. * gnu-system.am (dist_patch_DATA): Add patches.
Diffstat (limited to 'gnu/packages/patches/binutils-loongson-workaround.patch')
-rw-r--r--gnu/packages/patches/binutils-loongson-workaround.patch34
1 files changed, 34 insertions, 0 deletions
diff --git a/gnu/packages/patches/binutils-loongson-workaround.patch b/gnu/packages/patches/binutils-loongson-workaround.patch
new file mode 100644
index 0000000000..f43572a53d
--- /dev/null
+++ b/gnu/packages/patches/binutils-loongson-workaround.patch
@@ -0,0 +1,34 @@
+Enable the workaround for the Loongson 2F bug by default.
+
+Patch by Mark H Weaver <mhw@netris.org>.
+
+--- binutils/gas/config/tc-mips.c.orig 2012-09-04 10:21:03.000000000 -0400
++++ binutils/gas/config/tc-mips.c 2013-10-06 02:23:21.651983768 -0400
+@@ -910,10 +910,10 @@
+ };
+
+ /* ...likewise -mfix-loongson2f-jump. */
+-static bfd_boolean mips_fix_loongson2f_jump;
++static bfd_boolean mips_fix_loongson2f_jump = FALSE;
+
+ /* ...likewise -mfix-loongson2f-nop. */
+-static bfd_boolean mips_fix_loongson2f_nop;
++static bfd_boolean mips_fix_loongson2f_nop = TRUE;
+
+ /* True if -mfix-loongson2f-nop or -mfix-loongson2f-jump passed. */
+ static bfd_boolean mips_fix_loongson2f;
+--- binutils/gas/testsuite/gas/mips/mips.exp.orig 2012-09-04 10:17:13.000000000 -0400
++++ binutils/gas/testsuite/gas/mips/mips.exp 2013-10-06 02:23:21.663983768 -0400
+@@ -91,6 +91,12 @@
+
+ # Catch because the variable won't be set the first time through.
+ catch {unset mips_arches}
++
++ # Disable the loongson2f nop fix by default, because most of the
++ # existing test cases for mips will fail otherwise.
++ global ASFLAGS
++ set old_ASFLAGS "$ASFLAGS"
++ set ASFLAGS "$ASFLAGS -mno-fix-loongson2f-nop"
+ }
+
+ # mips_arch_create ARCH GPRSIZE EXTENDS PROPS AS_FLAGS OBJDUMP_FLAGS \