Index: src/x64/lithium-x64.cc |
diff --git a/src/x64/lithium-x64.cc b/src/x64/lithium-x64.cc |
index d1dc6eaab794fe2f2cf70cb8d704bc146acd940d..3d28b665f3a0618d8d62c9d5952e6305bc561ca4 100644 |
--- a/src/x64/lithium-x64.cc |
+++ b/src/x64/lithium-x64.cc |
@@ -1613,8 +1613,10 @@ LInstruction* LChunkBuilder::DoChange(HChange* instr) { |
LOperand* value = UseRegister(instr->value()); |
bool needs_check = !instr->value()->type().IsSmi(); |
if (needs_check) { |
- LOperand* xmm_temp = instr->CanTruncateToInt32() ? NULL |
- : FixedTemp(xmm1); |
+ LOperand* xmm_temp = |
+ (instr->CanTruncateToInt32() && CpuFeatures::IsSupported(SSE3)) |
+ ? NULL |
+ : FixedTemp(xmm1); |
LTaggedToI* res = new LTaggedToI(value, xmm_temp); |
return AssignEnvironment(DefineSameAsFirst(res)); |
} else { |