Update V8 to r6101 as required by WebKit r74534
Change-Id: I7f84af8dd732f11898fd644b2c2b1538914cb78d
diff --git a/src/vm-state.h b/src/vm-state.h
index cc91e83..df7fb30 100644
--- a/src/vm-state.h
+++ b/src/vm-state.h
@@ -36,34 +36,11 @@
class VMState BASE_EMBEDDED {
#ifdef ENABLE_VMSTATE_TRACKING
public:
- inline VMState(StateTag state);
+ inline explicit VMState(StateTag tag);
inline ~VMState();
- StateTag state() { return state_; }
- void set_external_callback(Address external_callback) {
- external_callback_ = external_callback;
- }
-
- // Used for debug asserts.
- static bool is_outermost_external() {
- return Top::current_vm_state() == 0;
- }
-
- static StateTag current_state() {
- VMState* state = Top::current_vm_state();
- return state ? state->state() : EXTERNAL;
- }
-
- static Address external_callback() {
- VMState* state = Top::current_vm_state();
- return state ? state->external_callback_ : NULL;
- }
-
private:
- bool disabled_;
- StateTag state_;
- VMState* previous_;
- Address external_callback_;
+ StateTag previous_tag_;
#else
public:
@@ -71,6 +48,20 @@
#endif
};
+
+class ExternalCallbackScope BASE_EMBEDDED {
+#ifdef ENABLE_LOGGING_AND_PROFILING
+ public:
+ inline explicit ExternalCallbackScope(Address callback);
+ inline ~ExternalCallbackScope();
+ private:
+ Address previous_callback_;
+#else
+ public:
+ explicit ExternalCallbackScope(Address callback) {}
+#endif
+};
+
} } // namespace v8::internal