Index: src/code-stubs.cc |
diff --git a/src/code-stubs.cc b/src/code-stubs.cc |
index 8f316606c20d29b6889512f41939c5af1f6ecccc..f672d33e2124cf880c599cc28187b0cca234c9a4 100644 |
--- a/src/code-stubs.cc |
+++ b/src/code-stubs.cc |
@@ -470,4 +470,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 |