summaryrefslogtreecommitdiff
path: root/debian/patches/mips-loongson3a-use-fused-madd.d.diff
diff options
context:
space:
mode:
authorIgor Pashev <pashev.igor@gmail.com>2017-05-13 13:54:49 +0300
committerIgor Pashev <pashev.igor@gmail.com>2017-05-13 13:54:49 +0300
commit42156b5190f4fa150e1fab6777eb81e69d4db8c9 (patch)
tree3bf47de81cf1f89892789535a036d2d55d93a136 /debian/patches/mips-loongson3a-use-fused-madd.d.diff
downloadgcc-6-42156b5190f4fa150e1fab6777eb81e69d4db8c9.tar.gz
Imported gcc-6 (6.3.0-17)debian/6.3.0-17debian
Diffstat (limited to 'debian/patches/mips-loongson3a-use-fused-madd.d.diff')
-rw-r--r--debian/patches/mips-loongson3a-use-fused-madd.d.diff39
1 files changed, 39 insertions, 0 deletions
diff --git a/debian/patches/mips-loongson3a-use-fused-madd.d.diff b/debian/patches/mips-loongson3a-use-fused-madd.d.diff
new file mode 100644
index 0000000..c731e52
--- /dev/null
+++ b/debian/patches/mips-loongson3a-use-fused-madd.d.diff
@@ -0,0 +1,39 @@
+From 04877b8f39eff7bc35ff4d3bcdd8196ec1449c43 Mon Sep 17 00:00:00 2001
+From: mpf <mpf@138bc75d-0d04-0410-961f-82ee72b054a4>
+Date: Thu, 19 Jan 2017 16:26:32 +0000
+Subject: [PATCH] MIPS: Make loongson3a use fused madd.d
+
+gcc/
+ * config/mips/mips.h (ISA_HAS_FUSED_MADD4): Enable for
+ TARGET_LOONGSON_3A.
+ (ISA_HAS_UNFUSED_MADD4): Exclude TARGET_LOONGSON_3A.
+
+git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@244641 138bc75d-0d04-0410-961f-82ee72b054a4
+---
+ gcc/ChangeLog | 6 ++++++
+ gcc/config/mips/mips.h | 6 ++++--
+ 2 files changed, 10 insertions(+), 2 deletions(-)
+
+diff --git a/src/gcc/config/mips/mips.h b/src/gcc/config/mips/mips.h
+index 4205589af45..81032c9f94c 100644
+--- a/src/gcc/config/mips/mips.h
++++ b/src/gcc/config/mips/mips.h
+@@ -1066,11 +1066,13 @@ struct mips_cpu_info {
+
+ /* ISA has 4 operand fused madd instructions of the form
+ 'd = [+-] (a * b [+-] c)'. */
+-#define ISA_HAS_FUSED_MADD4 TARGET_MIPS8000
++#define ISA_HAS_FUSED_MADD4 (TARGET_MIPS8000 || TARGET_LOONGSON_3A)
+
+ /* ISA has 4 operand unfused madd instructions of the form
+ 'd = [+-] (a * b [+-] c)'. */
+-#define ISA_HAS_UNFUSED_MADD4 (ISA_HAS_FP4 && !TARGET_MIPS8000)
++#define ISA_HAS_UNFUSED_MADD4 (ISA_HAS_FP4 \
++ && !TARGET_MIPS8000 \
++ && !TARGET_LOONGSON_3A)
+
+ /* ISA has 3 operand r6 fused madd instructions of the form
+ 'c = c [+-] (a * b)'. */
+--
+2.11.0
+