| Index: runtime/vm/instructions_x64_test.cc
 | 
| diff --git a/runtime/vm/instructions_x64_test.cc b/runtime/vm/instructions_x64_test.cc
 | 
| index 3e7fb7db96a335f30749764059bd91d576a0736c..0ad829486502baee864a79a04058bf6cc7d56ac6 100644
 | 
| --- a/runtime/vm/instructions_x64_test.cc
 | 
| +++ b/runtime/vm/instructions_x64_test.cc
 | 
| @@ -35,6 +35,34 @@ ASSEMBLER_TEST_GENERATE(Jump, assembler) {
 | 
|  }
 | 
|  
 | 
|  
 | 
| +ASSEMBLER_TEST_RUN(Jump, test) {
 | 
| +  ASSERT(prologue_code_size != -1);
 | 
| +  const Code& code = test->code();
 | 
| +  const Instructions& instrs = Instructions::Handle(code.instructions());
 | 
| +  bool status =
 | 
| +      VirtualMemory::Protect(reinterpret_cast<void*>(instrs.EntryPoint()),
 | 
| +                             instrs.size(),
 | 
| +                             VirtualMemory::kReadWrite);
 | 
| +  EXPECT(status);
 | 
| +  JumpPattern jump1(test->entry() + prologue_code_size, test->code());
 | 
| +  jump1.IsValid();
 | 
| +  EXPECT_EQ(StubCode::InvokeDartCode_entry()->label().address(),
 | 
| +            jump1.TargetAddress());
 | 
| +  JumpPattern jump2((test->entry() +
 | 
| +                     jump1.pattern_length_in_bytes() + prologue_code_size),
 | 
| +                    test->code());
 | 
| +  const Code& array_stub =
 | 
| +      Code::Handle(StubCode::AllocateArray_entry()->code());
 | 
| +  EXPECT_EQ(array_stub.EntryPoint(), jump2.TargetAddress());
 | 
| +  uword target1 = jump1.TargetAddress();
 | 
| +  uword target2 = jump2.TargetAddress();
 | 
| +  jump1.SetTargetAddress(target2);
 | 
| +  jump2.SetTargetAddress(target1);
 | 
| +  EXPECT_EQ(array_stub.EntryPoint(), jump1.TargetAddress());
 | 
| +  EXPECT_EQ(StubCode::InvokeDartCode_entry()->label().address(),
 | 
| +            jump2.TargetAddress());
 | 
| +}
 | 
| +
 | 
|  }  // namespace dart
 | 
|  
 | 
|  #endif  // defined TARGET_ARCH_X64
 | 
| 
 |