Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(180)

Unified Diff: src/a64/code-stubs-a64.cc

Issue 148933002: A64: Call ProfileEntryHook in JSEntryStub and do not use real aborts in ProfileEntryHook. (Closed) Base URL: https://v8.googlecode.com/svn/branches/experimental/a64
Patch Set: Fix name Created 6 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « no previous file | src/a64/macro-assembler-a64.h » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
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));
« no previous file with comments | « no previous file | src/a64/macro-assembler-a64.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698