| Index: runtime/vm/stub_code_x64.cc
|
| ===================================================================
|
| --- runtime/vm/stub_code_x64.cc (revision 41244)
|
| +++ runtime/vm/stub_code_x64.cc (working copy)
|
| @@ -44,8 +44,7 @@
|
|
|
| __ EnterFrame(0);
|
|
|
| - // Load current Isolate pointer from Context structure into RAX.
|
| - __ movq(RAX, FieldAddress(CTX, Context::isolate_offset()));
|
| + __ LoadIsolate(RAX);
|
|
|
| // Save exit frame information to enable stack walking as we are about
|
| // to transition to Dart VM C++ code.
|
| @@ -156,8 +155,7 @@
|
|
|
| __ EnterFrame(0);
|
|
|
| - // Load current Isolate pointer from Context structure into R8.
|
| - __ movq(R8, FieldAddress(CTX, Context::isolate_offset()));
|
| + __ LoadIsolate(R8);
|
|
|
| // Save exit frame information to enable stack walking as we are about
|
| // to transition to native code.
|
| @@ -245,8 +243,7 @@
|
|
|
| __ EnterFrame(0);
|
|
|
| - // Load current Isolate pointer from Context structure into R8.
|
| - __ movq(R8, FieldAddress(CTX, Context::isolate_offset()));
|
| + __ LoadIsolate(R8);
|
|
|
| // Save exit frame information to enable stack walking as we are about
|
| // to transition to native code.
|
| @@ -979,13 +976,6 @@
|
| // R10: number of context variables as integer value (not object).
|
| __ movq(FieldAddress(RAX, Context::num_variables_offset()), R10);
|
|
|
| - // Setup isolate field.
|
| - // RAX: new object.
|
| - // R10: number of context variables.
|
| - // R13: Isolate, not an object.
|
| - __ LoadIsolate(R13);
|
| - __ movq(FieldAddress(RAX, Context::isolate_offset()), R13);
|
| -
|
| // Setup the parent field.
|
| // RAX: new object.
|
| // R10: number of context variables.
|
| @@ -1754,7 +1744,7 @@
|
| void StubCode::GenerateDebugStepCheckStub(Assembler* assembler) {
|
| // Check single stepping.
|
| Label stepping, done_stepping;
|
| - __ movq(RAX, FieldAddress(CTX, Context::isolate_offset()));
|
| + __ LoadIsolate(RAX);
|
| __ movzxb(RAX, Address(RAX, Isolate::single_step_offset()));
|
| __ cmpq(RAX, Immediate(0));
|
| __ j(NOT_EQUAL, &stepping, Assembler::kNearJump);
|
| @@ -2021,7 +2011,7 @@
|
| Assembler* assembler) {
|
| // Check single stepping.
|
| Label stepping, done_stepping;
|
| - __ movq(RAX, FieldAddress(CTX, Context::isolate_offset()));
|
| + __ LoadIsolate(RAX);
|
| __ movzxb(RAX, Address(RAX, Isolate::single_step_offset()));
|
| __ cmpq(RAX, Immediate(0));
|
| __ j(NOT_EQUAL, &stepping);
|
|
|