| Index: src/builtins.cc
|
| diff --git a/src/builtins.cc b/src/builtins.cc
|
| index 029f2421d46a7ee0ffc21b72d89ae563ae9c7743..8eeaf116a02dd3bab944bd9cc41e4fb6b23e73b9 100644
|
| --- a/src/builtins.cc
|
| +++ b/src/builtins.cc
|
| @@ -32,6 +32,7 @@
|
| #include "bootstrapper.h"
|
| #include "builtins.h"
|
| #include "ic-inl.h"
|
| +#include "vm-state-inl.h"
|
|
|
| namespace v8 {
|
| namespace internal {
|
| @@ -1052,9 +1053,8 @@ MUST_USE_RESULT static MaybeObject* HandleApiCallHelper(
|
| {
|
| // Leaving JavaScript.
|
| VMState state(isolate, EXTERNAL);
|
| -#ifdef ENABLE_LOGGING_AND_PROFILING
|
| - state.set_external_callback(v8::ToCData<Address>(callback_obj));
|
| -#endif
|
| + ExternalCallbackScope call_scope(isolate,
|
| + v8::ToCData<Address>(callback_obj));
|
| value = callback(new_args);
|
| }
|
| if (value.IsEmpty()) {
|
| @@ -1125,9 +1125,8 @@ BUILTIN(FastHandleApiCall) {
|
| {
|
| // Leaving JavaScript.
|
| VMState state(isolate, EXTERNAL);
|
| -#ifdef ENABLE_LOGGING_AND_PROFILING
|
| - state.set_external_callback(v8::ToCData<Address>(callback_obj));
|
| -#endif
|
| + ExternalCallbackScope call_scope(isolate,
|
| + v8::ToCData<Address>(callback_obj));
|
| v8::InvocationCallback callback =
|
| v8::ToCData<v8::InvocationCallback>(callback_obj);
|
|
|
| @@ -1193,9 +1192,8 @@ MUST_USE_RESULT static MaybeObject* HandleApiCallAsFunctionOrConstructor(
|
| {
|
| // Leaving JavaScript.
|
| VMState state(isolate, EXTERNAL);
|
| -#ifdef ENABLE_LOGGING_AND_PROFILING
|
| - state.set_external_callback(v8::ToCData<Address>(callback_obj));
|
| -#endif
|
| + ExternalCallbackScope call_scope(isolate,
|
| + v8::ToCData<Address>(callback_obj));
|
| value = callback(new_args);
|
| }
|
| if (value.IsEmpty()) {
|
| @@ -1356,6 +1354,11 @@ static void Generate_StoreIC_ArrayLength(MacroAssembler* masm) {
|
| }
|
|
|
|
|
| +static void Generate_StoreIC_GlobalProxy(MacroAssembler* masm) {
|
| + StoreIC::GenerateGlobalProxy(masm);
|
| +}
|
| +
|
| +
|
| static void Generate_KeyedStoreIC_Generic(MacroAssembler* masm) {
|
| KeyedStoreIC::GenerateGeneric(masm);
|
| }
|
| @@ -1642,4 +1645,5 @@ const char* Builtins::Lookup(byte* pc) {
|
| return NULL;
|
| }
|
|
|
| +
|
| } } // namespace v8::internal
|
|
|