diff options
Diffstat (limited to 'deps/v8/src/code-stubs.cc')
-rw-r--r-- | deps/v8/src/code-stubs.cc | 24 |
1 files changed, 23 insertions, 1 deletions
diff --git a/deps/v8/src/code-stubs.cc b/deps/v8/src/code-stubs.cc index 7d4f23ce94..59a4cdf823 100644 --- a/deps/v8/src/code-stubs.cc +++ b/deps/v8/src/code-stubs.cc @@ -194,7 +194,7 @@ bool ICCompareStub::FindCodeInSpecialCache(Code** code_out) { flags)); if (probe->IsCode()) { *code_out = Code::cast(*probe); - ASSERT(op_ == (*code_out)->compare_operation()); + ASSERT(op_ == (*code_out)->compare_operation() + Token::EQ); return true; } return false; @@ -478,4 +478,26 @@ void ElementsTransitionAndStoreStub::Generate(MacroAssembler* masm) { KeyedStoreIC::GenerateRuntimeSetProperty(masm, strict_mode_); } + +FunctionEntryHook ProfileEntryHookStub::entry_hook_ = NULL; + + +void ProfileEntryHookStub::EntryHookTrampoline(intptr_t function, + intptr_t stack_pointer) { + if (entry_hook_ != NULL) + entry_hook_(function, stack_pointer); +} + + +bool ProfileEntryHookStub::SetFunctionEntryHook(FunctionEntryHook entry_hook) { + // We don't allow setting a new entry hook over one that's + // already active, as the hooks won't stack. + if (entry_hook != 0 && entry_hook_ != 0) + return false; + + entry_hook_ = entry_hook; + return true; +} + + } } // namespace v8::internal |