| Index: src/compiler/arm64/instruction-selector-arm64.cc | 
| diff --git a/src/compiler/arm64/instruction-selector-arm64.cc b/src/compiler/arm64/instruction-selector-arm64.cc | 
| index 28ac51fc22e2f853ac67e87d16064f43d1c3550b..640452ffbf2a4f0af2ac56b14df0770c3c99e20b 100644 | 
| --- a/src/compiler/arm64/instruction-selector-arm64.cc | 
| +++ b/src/compiler/arm64/instruction-selector-arm64.cc | 
| @@ -1671,18 +1671,9 @@ void InstructionSelector::VisitRoundFloat64ToInt32(Node* node) { | 
| void InstructionSelector::VisitTruncateInt64ToInt32(Node* node) { | 
| Arm64OperandGenerator g(this); | 
| Node* value = node->InputAt(0); | 
| -  if (CanCover(node, value) && value->InputCount() >= 2) { | 
| -    Int64BinopMatcher m(value); | 
| -    if ((m.IsWord64Sar() && m.right().HasValue() && | 
| -         (m.right().Value() == 32)) || | 
| -        (m.IsWord64Shr() && m.right().IsInRange(32, 63))) { | 
| -      Emit(kArm64Lsr, g.DefineAsRegister(node), g.UseRegister(m.left().node()), | 
| -           g.UseImmediate(m.right().node())); | 
| -      return; | 
| -    } | 
| -  } | 
| - | 
| -  Emit(kArm64Mov32, g.DefineAsRegister(node), g.UseRegister(node->InputAt(0))); | 
| +  // The top 32 bits in the 64-bit register will be undefined, and | 
| +  // must not be used by a dependent node. | 
| +  Emit(kArchNop, g.DefineSameAsFirst(node), g.UseRegister(value)); | 
| } | 
|  | 
|  | 
|  |