| Index: src/x64/lithium-x64.cc
|
| diff --git a/src/x64/lithium-x64.cc b/src/x64/lithium-x64.cc
|
| index e8dd5bb63f02b7f79ff3ff9ca9438260fe9ee079..cf902f32f0e4c5a8ecaf96ccf2e1fde7526181c2 100644
|
| --- a/src/x64/lithium-x64.cc
|
| +++ b/src/x64/lithium-x64.cc
|
| @@ -1880,7 +1880,9 @@ LInstruction* LChunkBuilder::DoChange(HChange* instr) {
|
| return AssignPointerMap(DefineSameAsFirst(result));
|
| } else {
|
| LOperand* value = UseRegister(val);
|
| - LNumberTagI* result = new(zone()) LNumberTagI(value);
|
| + LOperand* temp1 = SmiValuesAre32Bits() ? NULL : TempRegister();
|
| + LOperand* temp2 = SmiValuesAre32Bits() ? NULL : FixedTemp(xmm1);
|
| + LNumberTagI* result = new(zone()) LNumberTagI(value, temp1, temp2);
|
| return AssignPointerMap(DefineSameAsFirst(result));
|
| }
|
| } else if (to.IsSmi()) {
|
|
|