aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChenghua Xu <paul.hua.gm@gmail.com>2017-01-19 16:26:32 +0000
committerMatthew Fortune <mpf@gcc.gnu.org>2017-01-19 16:26:32 +0000
commitcedb7e2c853eafc4860ae6a8832c048c4affd883 (patch)
tree3d7d04d47c3915d8d3838ad3fd256fcf76ff6ad7
parentab6b44cb2201de72cdd17740fd1ad1a557319be3 (diff)
downloadgcc-cedb7e2c853eafc4860ae6a8832c048c4affd883.zip
gcc-cedb7e2c853eafc4860ae6a8832c048c4affd883.tar.gz
gcc-cedb7e2c853eafc4860ae6a8832c048c4affd883.tar.bz2
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. From-SVN: r244641
-rw-r--r--gcc/ChangeLog6
-rw-r--r--gcc/config/mips/mips.h6
2 files changed, 10 insertions, 2 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index f933e1ad..e53f9e1 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,9 @@
+2017-01-19 Chenghua Xu <paul.hua.gm@gmail.com>
+
+ * config/mips/mips.h (ISA_HAS_FUSED_MADD4): Enable for
+ TARGET_LOONGSON_3A.
+ (ISA_HAS_UNFUSED_MADD4): Exclude TARGET_LOONGSON_3A.
+
2017-01-19 Doug Gilmore <doug.gilmore@imgtec.com>
PR target/78176
diff --git a/gcc/config/mips/mips.h b/gcc/config/mips/mips.h
index 4205589..81032c9 100644
--- a/gcc/config/mips/mips.h
+++ b/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)'. */