Index: src/arm/lithium-codegen-arm.cc |
diff --git a/src/arm/lithium-codegen-arm.cc b/src/arm/lithium-codegen-arm.cc |
index 7615134ec08af7473a2851d7db3b7c9603218d4b..b773ca9ea1c16d245dcebb3c9e29518fe2e91f2f 100644 |
--- a/src/arm/lithium-codegen-arm.cc |
+++ b/src/arm/lithium-codegen-arm.cc |
@@ -1297,6 +1297,18 @@ void LCodeGen::DoDivI(LDivI* instr) { |
} |
+void LCodeGen::DoMultiplyAddD(LMultiplyAddD* instr) { |
+ DwVfpRegister addend = ToDoubleRegister(instr->addend()); |
+ DwVfpRegister multiplier = ToDoubleRegister(instr->multiplier()); |
+ DwVfpRegister multiplicand = ToDoubleRegister(instr->multiplicand()); |
+ |
+ // This is computed in-place. |
+ ASSERT(addend.is(ToDoubleRegister(instr->result()))); |
+ |
+ __ vmla(addend, multiplier, multiplicand); |
+} |
+ |
+ |
void LCodeGen::DoMathFloorOfDiv(LMathFloorOfDiv* instr) { |
const Register result = ToRegister(instr->result()); |
const Register left = ToRegister(instr->left()); |