Chromium Code Reviews| Index: src/a64/code-stubs-a64.cc |
| diff --git a/src/a64/code-stubs-a64.cc b/src/a64/code-stubs-a64.cc |
| index 81f4a5657d19c5db35cbb2588c0467330168036d..5d328f1161796c55587e3a6e38734d37e0f4b2bc 100644 |
| --- a/src/a64/code-stubs-a64.cc |
| +++ b/src/a64/code-stubs-a64.cc |
| @@ -2532,7 +2532,7 @@ void CEntryStub::GenerateCore(MacroAssembler* masm, |
| __ Mov(exception_address, |
| Operand(ExternalReference(Isolate::kPendingExceptionAddress, |
| isolate))); |
| - __ Ldr(exception, MemOperand(exception_address)); |
| + __ Ldr(exception, MemOperand(exception_address)q); |
| // See if we just retrieved an OOM exception. |
| JumpIfOOM(masm, exception, x10, throw_out_of_memory); |
| @@ -2565,7 +2565,7 @@ void CEntryStub::Generate(MacroAssembler* masm) { |
| // fall-back Abort mechanism. |
| // |
| // Note that this stub must be generated before any use of Abort. |
| - masm->set_use_real_aborts(false); |
| + MacroAssembler::NoUseRealAbortsScope no_use_real_aborts(masm); |
| ASM_LOCATION("CEntryStub::Generate entry"); |
| ProfileEntryHookStub::MaybeCallEntryHook(masm); |
| @@ -2708,8 +2708,6 @@ void CEntryStub::Generate(MacroAssembler* masm) { |
| __ Mov(argc, 0); |
| __ Mov(target, 0); |
| __ Throw(x0, x10, x11, x12, x13); |
| - |
| - masm->set_use_real_aborts(true); |
| } |
| @@ -2743,6 +2741,8 @@ void JSEntryStub::GenerateBody(MacroAssembler* masm, bool is_construct) { |
| __ Mov(jssp, csp); |
| __ SetStackPointer(jssp); |
| + ProfileEntryHookStub::MaybeCallEntryHook(masm); |
|
ulan
2014/01/28 17:26:54
On ARM this is called before saving registers, but
|
| + |
| // Build an entry frame (see layout below). |
| Isolate* isolate = masm->isolate(); |
| @@ -6455,6 +6455,7 @@ void ProfileEntryHookStub::MaybeCallEntryHook(MacroAssembler* masm) { |
| void ProfileEntryHookStub::Generate(MacroAssembler* masm) { |
| + MacroAssembler::NoUseRealAbortsScope no_use_real_aborts(masm); |
|
ulan
2014/01/28 17:26:54
This stub is called in CEntryStub, which sets no_u
|
| // The entry hook is a "BumpSystemStackPointer" instruction (sub), followed by |
| // a "Push lr" instruction, followed by a call. |
| // TODO(jbramley): Verify that this call is always made with relocation. |
| @@ -6929,7 +6930,7 @@ void ArrayConstructorStub::Generate(MacroAssembler* masm) { |
| // In type_info_cell, we expect either undefined or a valid Cell. |
| Label okay_here; |
| - Handle<Map> cell_map(masm->isolate()->heap()->global_property_cell_map()); |
| + Handle<Map> cell_map(masm->isolate()->heap()->cell_map()); |
|
ulan
2014/01/28 17:26:54
ARM uses cell_map, using global_property_cell_map
|
| __ JumpIfRoot(type_info_cell, Heap::kUndefinedValueRootIndex, &okay_here); |
| __ Ldr(x10, FieldMemOperand(type_info_cell, Cell::kMapOffset)); |
| __ Cmp(x10, Operand(cell_map)); |