| Index: src/arm/lithium-arm.cc
|
| diff --git a/src/arm/lithium-arm.cc b/src/arm/lithium-arm.cc
|
| index 569d2954d7ea8cffd8911123cfa53d421d550c89..6b07ee6e66045e50733a09091aecb69a93e7bf9a 100644
|
| --- a/src/arm/lithium-arm.cc
|
| +++ b/src/arm/lithium-arm.cc
|
| @@ -1710,10 +1710,8 @@ LInstruction* LChunkBuilder::DoChange(HChange* instr) {
|
| } else {
|
| ASSERT(to.IsInteger32());
|
| LOperand* value = UseRegisterAtStart(instr->value());
|
| - bool needs_check = !instr->value()->type().IsSmi();
|
| - LInstruction* res = NULL;
|
| - if (!needs_check) {
|
| - res = DefineAsRegister(new(zone()) LSmiUntag(value, needs_check));
|
| + if (instr->value()->IsValueTaggedSmi()) {
|
| + res = DefineAsRegister(new(zone()) LSmiUntag(value, false));
|
| } else {
|
| LOperand* temp1 = TempRegister();
|
| LOperand* temp2 = instr->CanTruncateToInt32() ? TempRegister()
|
|
|