OLD | NEW |
1 // Copyright 2015 the V8 project authors. All rights reserved. | 1 // Copyright 2015 the V8 project authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #ifndef V8_CONTEXTS_INL_H_ | 5 #ifndef V8_CONTEXTS_INL_H_ |
6 #define V8_CONTEXTS_INL_H_ | 6 #define V8_CONTEXTS_INL_H_ |
7 | 7 |
8 #include "src/contexts.h" | 8 #include "src/contexts.h" |
9 #include "src/objects-inl.h" | 9 #include "src/objects-inl.h" |
10 | 10 |
(...skipping 106 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
117 Map* map = this->map(); | 117 Map* map = this->map(); |
118 return map == map->GetHeap()->module_context_map(); | 118 return map == map->GetHeap()->module_context_map(); |
119 } | 119 } |
120 | 120 |
121 | 121 |
122 bool Context::IsScriptContext() { | 122 bool Context::IsScriptContext() { |
123 Map* map = this->map(); | 123 Map* map = this->map(); |
124 return map == map->GetHeap()->script_context_map(); | 124 return map == map->GetHeap()->script_context_map(); |
125 } | 125 } |
126 | 126 |
| 127 bool Context::OptimizedCodeMapIsCleared() { |
| 128 return osr_code_table() == GetHeap()->empty_fixed_array(); |
| 129 } |
127 | 130 |
128 bool Context::HasSameSecurityTokenAs(Context* that) { | 131 bool Context::HasSameSecurityTokenAs(Context* that) { |
129 return this->native_context()->security_token() == | 132 return this->native_context()->security_token() == |
130 that->native_context()->security_token(); | 133 that->native_context()->security_token(); |
131 } | 134 } |
132 | 135 |
133 | 136 |
134 #define NATIVE_CONTEXT_FIELD_ACCESSORS(index, type, name) \ | 137 #define NATIVE_CONTEXT_FIELD_ACCESSORS(index, type, name) \ |
135 void Context::set_##name(type* value) { \ | 138 void Context::set_##name(type* value) { \ |
136 DCHECK(IsNativeContext()); \ | 139 DCHECK(IsNativeContext()); \ |
137 set(index, value); \ | 140 set(index, value); \ |
138 } \ | 141 } \ |
139 bool Context::is_##name(type* value) { \ | 142 bool Context::is_##name(type* value) { \ |
140 DCHECK(IsNativeContext()); \ | 143 DCHECK(IsNativeContext()); \ |
141 return type::cast(get(index)) == value; \ | 144 return type::cast(get(index)) == value; \ |
142 } \ | 145 } \ |
143 type* Context::name() { \ | 146 type* Context::name() { \ |
144 DCHECK(IsNativeContext()); \ | 147 DCHECK(IsNativeContext()); \ |
145 return type::cast(get(index)); \ | 148 return type::cast(get(index)); \ |
146 } | 149 } |
147 NATIVE_CONTEXT_FIELDS(NATIVE_CONTEXT_FIELD_ACCESSORS) | 150 NATIVE_CONTEXT_FIELDS(NATIVE_CONTEXT_FIELD_ACCESSORS) |
148 #undef NATIVE_CONTEXT_FIELD_ACCESSORS | 151 #undef NATIVE_CONTEXT_FIELD_ACCESSORS |
149 | 152 |
150 | 153 |
151 } // namespace internal | 154 } // namespace internal |
152 } // namespace v8 | 155 } // namespace v8 |
153 | 156 |
154 #endif // V8_CONTEXTS_INL_H_ | 157 #endif // V8_CONTEXTS_INL_H_ |
OLD | NEW |