[MIPS] Disabled madd support for Ingenic Xburst CPUs.
1. Added xburst ARCH_VARIANT file 'mips32r2-fp-xburst.mk'.
a) Added -mno-fused-madd GCC option.
2. Removing -mno-fused-madd GCC option for LLVM.
Change-Id: I947a74eb89c05ae321417533c3c40241abc6f965
Signed-off-by: Pete Delaney <piet.delaney@imgtec.com>
diff --git a/core/combo/arch/mips/mips32r2-fp-xburst.mk b/core/combo/arch/mips/mips32r2-fp-xburst.mk
new file mode 100644
index 0000000..3768226
--- /dev/null
+++ b/core/combo/arch/mips/mips32r2-fp-xburst.mk
@@ -0,0 +1,17 @@
+# Configuration for Android on Ingenic xb4780/Xburst MIPS CPU.
+# Generating binaries for MIPS32R2/hard-float/little-endian without
+# support for the Madd family of instructions.
+
+ARCH_MIPS_HAS_FPU :=true
+ARCH_HAVE_ALIGNED_DOUBLES :=true
+arch_variant_cflags := \
+ -EL \
+ -march=mips32r2 \
+ -mtune=mips32r2 \
+ -mips32r2 \
+ -mhard-float \
+ -msynci \
+ -mno-fused-madd
+
+arch_variant_ldflags := \
+ -EL
diff --git a/core/llvm_config.mk b/core/llvm_config.mk
index 7a26842..9fe392f 100644
--- a/core/llvm_config.mk
+++ b/core/llvm_config.mk
@@ -60,7 +60,8 @@
-mtune=mips32r2 \
-march=mips32 \
-mtune=mips32 \
- -msynci
+ -msynci \
+ -mno-fused-madd
endif
ifeq ($(TARGET_ARCH),x86)
CLANG_CONFIG_EXTRA_CFLAGS += \