Index: src/ia32/code-stubs-ia32.cc |
diff --git a/src/ia32/code-stubs-ia32.cc b/src/ia32/code-stubs-ia32.cc |
index 6114da947c7d82548c1ddb20b39cb3ca63f1ffcc..783b97d8ad546fc72565b2d8c6967220bb049fa8 100644 |
--- a/src/ia32/code-stubs-ia32.cc |
+++ b/src/ia32/code-stubs-ia32.cc |
@@ -2871,9 +2871,10 @@ void FloatingPointHelper::CheckSSE2OperandIsInt32(MacroAssembler* masm, |
__ cvttsd2si(scratch, Operand(operand)); |
__ cvtsi2sd(xmm_scratch, scratch); |
__ pcmpeqd(xmm_scratch, operand); |
- __ movmskpd(scratch, xmm_scratch); |
- __ test(scratch, Immediate(1)); |
- __ j(zero, non_int32); |
+ __ movmskps(scratch, xmm_scratch); |
+ __ neg(scratch); |
+ __ test(scratch, Immediate(3)); |
+ __ j(not_zero, non_int32); |
} |