Index: src/vm-state.h |
diff --git a/src/vm-state.h b/src/vm-state.h |
index 241df4c9d48cbb36ce5f84378f7594ab831cbc5c..080eb8ded6a2b3fc4325528ccf8dfb59fff5c70e 100644 |
--- a/src/vm-state.h |
+++ b/src/vm-state.h |
@@ -44,15 +44,17 @@ class VMState BASE_EMBEDDED { |
// Used for debug asserts. |
static bool is_outermost_external() { |
- return current_state_ == NULL; |
+ return current_state_ == 0; |
} |
static StateTag current_state() { |
- return current_state_ ? current_state_->state() : EXTERNAL; |
+ VMState* state = reinterpret_cast<VMState*>(current_state_); |
+ return state ? state->state() : EXTERNAL; |
} |
static Address external_callback() { |
- return current_state_ ? current_state_->external_callback_ : NULL; |
+ VMState* state = reinterpret_cast<VMState*>(current_state_); |
+ return state ? state->external_callback_ : NULL; |
} |
private: |
@@ -62,7 +64,7 @@ class VMState BASE_EMBEDDED { |
Address external_callback_; |
// A stack of VM states. |
- static VMState* current_state_; |
+ static AtomicWord current_state_; |
#else |
public: |
explicit VMState(StateTag state) {} |