Index: src/compiler/mips64/code-generator-mips64.cc |
diff --git a/src/compiler/mips64/code-generator-mips64.cc b/src/compiler/mips64/code-generator-mips64.cc |
index b67302ef90794cea1bed78571c4b720502c78b31..6591fbfc9bb821d81aab2e71e81afad00b45fef2 100644 |
--- a/src/compiler/mips64/code-generator-mips64.cc |
+++ b/src/compiler/mips64/code-generator-mips64.cc |
@@ -974,6 +974,13 @@ void CodeGenerator::AssembleArchInstruction(Instruction* instr) { |
__ mfc1(i.OutputRegister(), scratch); |
break; |
} |
+ case kMips64TruncLD: { |
+ FPURegister scratch = kScratchDoubleReg; |
+ // Other arches use round to zero here, so we follow. |
+ __ trunc_l_d(scratch, i.InputDoubleRegister(0)); |
+ __ dmfc1(i.OutputRegister(), scratch); |
+ break; |
+ } |
case kMips64TruncUwD: { |
FPURegister scratch = kScratchDoubleReg; |
// TODO(plind): Fix wrong param order of Trunc_uw_d() macro-asm function. |