Index: src/ia32/lithium-codegen-ia32.cc |
diff --git a/src/ia32/lithium-codegen-ia32.cc b/src/ia32/lithium-codegen-ia32.cc |
index abac9642244db89b450eb720a2cf1e9a2f86f9e5..33f02b6696760b180894b0ca6a490a7fa3430500 100644 |
--- a/src/ia32/lithium-codegen-ia32.cc |
+++ b/src/ia32/lithium-codegen-ia32.cc |
@@ -1083,9 +1083,9 @@ void LCodeGen::DoMathFloorOfDiv(LMathFloorOfDiv* instr) { |
static_cast<double>(static_cast<uint64_t>(1) << shift) / divisor_abs; |
int64_t multiplier; |
if (multiplier_f - floor(multiplier_f) < 0.5) { |
- multiplier = floor(multiplier_f); |
+ multiplier = static_cast<int64_t>(floor(multiplier_f)); |
} else { |
- multiplier = floor(multiplier_f) + 1; |
+ multiplier = static_cast<int64_t>(floor(multiplier_f)) + 1; |
} |
// The multiplier is a uint32. |
ASSERT(multiplier > 0 && |
@@ -1096,7 +1096,7 @@ void LCodeGen::DoMathFloorOfDiv(LMathFloorOfDiv* instr) { |
__ test(dividend, dividend); |
DeoptimizeIf(zero, instr->environment()); |
} |
- __ mov(edx, multiplier); |
+ __ mov(edx, static_cast<int32_t>(multiplier)); |
__ imul(edx); |
if (static_cast<int32_t>(multiplier) < 0) { |
__ add(edx, scratch); |