Index: src/mips/constants-mips.h |
diff --git a/src/mips/constants-mips.h b/src/mips/constants-mips.h |
index 8327501b6f8d7e4ecb6d28e66e939b9c62b34889..7e0e2805904501c9181cd576223cae926c1deeb6 100644 |
--- a/src/mips/constants-mips.h |
+++ b/src/mips/constants-mips.h |
@@ -64,8 +64,12 @@ enum FpuMode { |
#elif defined(FPU_MODE_FP64) |
static const FpuMode kFpuMode = kFP64; |
#elif defined(FPU_MODE_FPXX) |
+#if defined(_MIPS_ARCH_MIPS32R2) || defined(_MIPS_ARCH_MIPS32R6) |
static const FpuMode kFpuMode = kFPXX; |
#else |
+#error "FPXX is supported only on Mips32R2 and Mips32R6" |
+#endif |
+#else |
static const FpuMode kFpuMode = kFP32; |
#endif |
@@ -92,13 +96,9 @@ const uint32_t kHoleNanLower32Offset = 4; |
#error Unknown endianness |
#endif |
-#ifndef FPU_MODE_FPXX |
-#define IsFp64Mode() \ |
- (kFpuMode == kFP64) |
-#else |
-#define IsFp64Mode() \ |
- (CpuFeatures::IsSupported(FP64FPU)) |
-#endif |
+#define IsFp64Mode() (kFpuMode == kFP64) |
+#define IsFp32Mode() (kFpuMode == kFP32) |
+#define IsFpxxMode() (kFpuMode == kFPXX) |
#ifndef _MIPS_ARCH_MIPS32RX |
#define IsMipsArchVariant(check) \ |