thread isolate for EntryHookTrampoline

R=svenpanne@chromium.org
BUG=

Review URL: https://codereview.chromium.org/23587019

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16630 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
This commit is contained in:
dcarney@chromium.org 2013-09-11 06:56:47 +00:00
parent 9139e1a864
commit c2bea784e1
3 changed files with 8 additions and 3 deletions

View File

@ -6836,6 +6836,9 @@ void ProfileEntryHookStub::Generate(MacroAssembler* masm) {
#else
// Under the simulator we need to indirect the entry hook through a
// trampoline function at a known address.
// It additionally takes an isolate as a third parameter
__ mov(r2, Operand(ExternalReference::isolate_address(masm->isolate())));
ApiFunction dispatcher(FUNCTION_ADDR(EntryHookTrampoline));
__ mov(ip, Operand(ExternalReference(&dispatcher,
ExternalReference::BUILTIN_CALL,

View File

@ -731,8 +731,9 @@ void StubFailureTrampolineStub::GenerateAheadOfTime(Isolate* isolate) {
void ProfileEntryHookStub::EntryHookTrampoline(intptr_t function,
intptr_t stack_pointer) {
FunctionEntryHook entry_hook = Isolate::Current()->function_entry_hook();
intptr_t stack_pointer,
Isolate* isolate) {
FunctionEntryHook entry_hook = isolate->function_entry_hook();
ASSERT(entry_hook != NULL);
entry_hook(function, stack_pointer);
}

View File

@ -2295,7 +2295,8 @@ class ProfileEntryHookStub : public PlatformCodeStub {
private:
static void EntryHookTrampoline(intptr_t function,
intptr_t stack_pointer);
intptr_t stack_pointer,
Isolate* isolate);
Major MajorKey() { return ProfileEntryHook; }
int MinorKey() { return 0; }