Index: src/mips/simulator-mips.h |
diff --git a/src/mips/simulator-mips.h b/src/mips/simulator-mips.h |
index e1c42fdccadc0ce0bcfd0f2662281915020cab01..01ece96319f96e78bd418828353db0762bb13231 100644 |
--- a/src/mips/simulator-mips.h |
+++ b/src/mips/simulator-mips.h |
@@ -300,6 +300,24 @@ class Simulator { |
inline int32_t SetDoubleHIW(double* addr); |
inline int32_t SetDoubleLOW(double* addr); |
+ // Min/Max template functions for Double and Single arguments. |
+ enum class IsMin : int { kMin = 0, kMax = 1 }; |
+ |
+ template <typename T> |
+ bool FPUProcessNaNsAndZeros(T a, T b, IsMin min, T& result); |
+ |
+ template <typename T> |
+ T FPUMin(T a, T b); |
+ |
+ template <typename T> |
+ T FPUMax(T a, T b); |
+ |
+ template <typename T> |
+ T FPUMinA(T a, T b); |
+ |
+ template <typename T> |
+ T FPUMaxA(T a, T b); |
+ |
// Executing is handled based on the instruction type. |
void DecodeTypeRegister(Instruction* instr); |