Index: src/mips/macro-assembler-mips.h |
diff --git a/src/mips/macro-assembler-mips.h b/src/mips/macro-assembler-mips.h |
index 35f74e9eb18a233d1b0fad4f1a802e95233fbaa3..dc5c3297bc409e41b476389a7e7a6f0ad6a757fd 100644 |
--- a/src/mips/macro-assembler-mips.h |
+++ b/src/mips/macro-assembler-mips.h |
@@ -237,8 +237,8 @@ class MacroAssembler: public Assembler { |
void Call(Label* target); |
- void Move(Register dst, Handle<Object> handle) { li(dst, handle); } |
- void Move(Register dst, Smi* smi) { li(dst, Operand(smi)); } |
+ inline void Move(Register dst, Handle<Object> handle) { li(dst, handle); } |
+ inline void Move(Register dst, Smi* smi) { li(dst, Operand(smi)); } |
inline void Move(Register dst, Register src) { |
if (!dst.is(src)) { |
@@ -246,12 +246,20 @@ class MacroAssembler: public Assembler { |
} |
} |
- inline void Move(FPURegister dst, FPURegister src) { |
+ inline void Move_d(FPURegister dst, FPURegister src) { |
if (!dst.is(src)) { |
mov_d(dst, src); |
} |
} |
+ inline void Move_s(FPURegister dst, FPURegister src) { |
+ if (!dst.is(src)) { |
+ mov_s(dst, src); |
+ } |
+ } |
+ |
+ inline void Move(FPURegister dst, FPURegister src) { Move_d(dst, src); } |
+ |
inline void Move(Register dst_low, Register dst_high, FPURegister src) { |
mfc1(dst_low, src); |
Mfhc1(dst_high, src); |
@@ -285,6 +293,17 @@ class MacroAssembler: public Assembler { |
void Movt(Register rd, Register rs, uint16_t cc = 0); |
void Movf(Register rd, Register rs, uint16_t cc = 0); |
+ // Min, Max macros. |
+ // On pre-r6 these functions may modify at and t8 registers. |
+ void MinNaNCheck_d(FPURegister dst, FPURegister src1, FPURegister src2, |
+ Label* nan = nullptr); |
+ void MaxNaNCheck_d(FPURegister dst, FPURegister src1, FPURegister src2, |
+ Label* nan = nullptr); |
+ void MinNaNCheck_s(FPURegister dst, FPURegister src1, FPURegister src2, |
+ Label* nan = nullptr); |
+ void MaxNaNCheck_s(FPURegister dst, FPURegister src1, FPURegister src2, |
+ Label* nan = nullptr); |
+ |
void Clz(Register rd, Register rs); |
// Jump unconditionally to given label. |