Index: src/x64/lithium-x64.cc |
diff --git a/src/x64/lithium-x64.cc b/src/x64/lithium-x64.cc |
index de21c10946dbee9b09c3e5b783c3a3c3376769e3..db98f238912ebf072790556b80b02f84334fc9ac 100644 |
--- a/src/x64/lithium-x64.cc |
+++ b/src/x64/lithium-x64.cc |
@@ -1836,6 +1836,9 @@ LInstruction* LChunkBuilder::DoChange(HChange* instr) { |
} else if (to.IsSmi()) { |
HValue* val = instr->value(); |
LOperand* value = UseRegister(val); |
+ if (val->type().IsSmi()) { |
+ return DefineSameAsFirst(new(zone()) LDummyUse(value)); |
+ } |
return AssignEnvironment( |
DefineSameAsFirst(new(zone()) LCheckSmiAndReturn(value))); |
} else { |