OLD | NEW |
1 // Copyright 2012 the V8 project authors. All rights reserved. | 1 // Copyright 2012 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_H_ | 5 #ifndef V8_CONTEXTS_H_ |
6 #define V8_CONTEXTS_H_ | 6 #define V8_CONTEXTS_H_ |
7 | 7 |
8 #include "src/heap/heap.h" | 8 #include "src/heap/heap.h" |
9 #include "src/objects.h" | 9 #include "src/objects.h" |
10 | 10 |
(...skipping 186 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
197 accessor_property_descriptor_map) \ | 197 accessor_property_descriptor_map) \ |
198 V(ALLOW_CODE_GEN_FROM_STRINGS_INDEX, Object, allow_code_gen_from_strings) \ | 198 V(ALLOW_CODE_GEN_FROM_STRINGS_INDEX, Object, allow_code_gen_from_strings) \ |
199 V(ARRAY_BUFFER_FUN_INDEX, JSFunction, array_buffer_fun) \ | 199 V(ARRAY_BUFFER_FUN_INDEX, JSFunction, array_buffer_fun) \ |
200 V(ARRAY_BUFFER_MAP_INDEX, Map, array_buffer_map) \ | 200 V(ARRAY_BUFFER_MAP_INDEX, Map, array_buffer_map) \ |
201 V(ARRAY_FUNCTION_INDEX, JSFunction, array_function) \ | 201 V(ARRAY_FUNCTION_INDEX, JSFunction, array_function) \ |
202 V(ASYNC_FUNCTION_AWAIT_REJECT_SHARED_FUN, SharedFunctionInfo, \ | 202 V(ASYNC_FUNCTION_AWAIT_REJECT_SHARED_FUN, SharedFunctionInfo, \ |
203 async_function_await_reject_shared_fun) \ | 203 async_function_await_reject_shared_fun) \ |
204 V(ASYNC_FUNCTION_AWAIT_RESOLVE_SHARED_FUN, SharedFunctionInfo, \ | 204 V(ASYNC_FUNCTION_AWAIT_RESOLVE_SHARED_FUN, SharedFunctionInfo, \ |
205 async_function_await_resolve_shared_fun) \ | 205 async_function_await_resolve_shared_fun) \ |
206 V(ASYNC_FUNCTION_FUNCTION_INDEX, JSFunction, async_function_constructor) \ | 206 V(ASYNC_FUNCTION_FUNCTION_INDEX, JSFunction, async_function_constructor) \ |
| 207 V(BOOL16X8_FUNCTION_INDEX, JSFunction, bool16x8_function) \ |
| 208 V(BOOL32X4_FUNCTION_INDEX, JSFunction, bool32x4_function) \ |
| 209 V(BOOL8X16_FUNCTION_INDEX, JSFunction, bool8x16_function) \ |
207 V(BOOLEAN_FUNCTION_INDEX, JSFunction, boolean_function) \ | 210 V(BOOLEAN_FUNCTION_INDEX, JSFunction, boolean_function) \ |
208 V(BOUND_FUNCTION_WITH_CONSTRUCTOR_MAP_INDEX, Map, \ | 211 V(BOUND_FUNCTION_WITH_CONSTRUCTOR_MAP_INDEX, Map, \ |
209 bound_function_with_constructor_map) \ | 212 bound_function_with_constructor_map) \ |
210 V(BOUND_FUNCTION_WITHOUT_CONSTRUCTOR_MAP_INDEX, Map, \ | 213 V(BOUND_FUNCTION_WITHOUT_CONSTRUCTOR_MAP_INDEX, Map, \ |
211 bound_function_without_constructor_map) \ | 214 bound_function_without_constructor_map) \ |
212 V(CALL_AS_CONSTRUCTOR_DELEGATE_INDEX, JSFunction, \ | 215 V(CALL_AS_CONSTRUCTOR_DELEGATE_INDEX, JSFunction, \ |
213 call_as_constructor_delegate) \ | 216 call_as_constructor_delegate) \ |
214 V(CALL_AS_FUNCTION_DELEGATE_INDEX, JSFunction, call_as_function_delegate) \ | 217 V(CALL_AS_FUNCTION_DELEGATE_INDEX, JSFunction, call_as_function_delegate) \ |
215 V(CALLSITE_FUNCTION_INDEX, JSFunction, callsite_function) \ | 218 V(CALLSITE_FUNCTION_INDEX, JSFunction, callsite_function) \ |
216 V(CONTEXT_EXTENSION_FUNCTION_INDEX, JSFunction, context_extension_function) \ | 219 V(CONTEXT_EXTENSION_FUNCTION_INDEX, JSFunction, context_extension_function) \ |
217 V(CURRENT_MODULE_INDEX, Module, current_module) \ | 220 V(CURRENT_MODULE_INDEX, Module, current_module) \ |
218 V(DATA_PROPERTY_DESCRIPTOR_MAP_INDEX, Map, data_property_descriptor_map) \ | 221 V(DATA_PROPERTY_DESCRIPTOR_MAP_INDEX, Map, data_property_descriptor_map) \ |
219 V(DATA_VIEW_FUN_INDEX, JSFunction, data_view_fun) \ | 222 V(DATA_VIEW_FUN_INDEX, JSFunction, data_view_fun) \ |
220 V(DATE_FUNCTION_INDEX, JSFunction, date_function) \ | 223 V(DATE_FUNCTION_INDEX, JSFunction, date_function) \ |
221 V(ERROR_MESSAGE_FOR_CODE_GEN_FROM_STRINGS_INDEX, Object, \ | 224 V(ERROR_MESSAGE_FOR_CODE_GEN_FROM_STRINGS_INDEX, Object, \ |
222 error_message_for_code_gen_from_strings) \ | 225 error_message_for_code_gen_from_strings) \ |
223 V(ERRORS_THROWN_INDEX, Smi, errors_thrown) \ | 226 V(ERRORS_THROWN_INDEX, Smi, errors_thrown) \ |
224 V(EXTRAS_EXPORTS_OBJECT_INDEX, JSObject, extras_binding_object) \ | 227 V(EXTRAS_EXPORTS_OBJECT_INDEX, JSObject, extras_binding_object) \ |
225 V(EXTRAS_UTILS_OBJECT_INDEX, Object, extras_utils_object) \ | 228 V(EXTRAS_UTILS_OBJECT_INDEX, Object, extras_utils_object) \ |
226 V(FAST_ALIASED_ARGUMENTS_MAP_INDEX, Map, fast_aliased_arguments_map) \ | 229 V(FAST_ALIASED_ARGUMENTS_MAP_INDEX, Map, fast_aliased_arguments_map) \ |
227 V(FAST_TEMPLATE_INSTANTIATIONS_CACHE_INDEX, FixedArray, \ | 230 V(FAST_TEMPLATE_INSTANTIATIONS_CACHE_INDEX, FixedArray, \ |
228 fast_template_instantiations_cache) \ | 231 fast_template_instantiations_cache) \ |
229 V(FLOAT32_ARRAY_FUN_INDEX, JSFunction, float32_array_fun) \ | 232 V(FLOAT32_ARRAY_FUN_INDEX, JSFunction, float32_array_fun) \ |
| 233 V(FLOAT32X4_FUNCTION_INDEX, JSFunction, float32x4_function) \ |
230 V(FLOAT64_ARRAY_FUN_INDEX, JSFunction, float64_array_fun) \ | 234 V(FLOAT64_ARRAY_FUN_INDEX, JSFunction, float64_array_fun) \ |
231 V(FUNCTION_FUNCTION_INDEX, JSFunction, function_function) \ | 235 V(FUNCTION_FUNCTION_INDEX, JSFunction, function_function) \ |
232 V(GENERATOR_FUNCTION_FUNCTION_INDEX, JSFunction, \ | 236 V(GENERATOR_FUNCTION_FUNCTION_INDEX, JSFunction, \ |
233 generator_function_function) \ | 237 generator_function_function) \ |
234 V(GENERATOR_OBJECT_PROTOTYPE_MAP_INDEX, Map, generator_object_prototype_map) \ | 238 V(GENERATOR_OBJECT_PROTOTYPE_MAP_INDEX, Map, generator_object_prototype_map) \ |
235 V(INITIAL_ARRAY_ITERATOR_PROTOTYPE_INDEX, JSObject, \ | 239 V(INITIAL_ARRAY_ITERATOR_PROTOTYPE_INDEX, JSObject, \ |
236 initial_array_iterator_prototype) \ | 240 initial_array_iterator_prototype) \ |
237 V(INITIAL_ARRAY_ITERATOR_PROTOTYPE_MAP_INDEX, Map, \ | 241 V(INITIAL_ARRAY_ITERATOR_PROTOTYPE_MAP_INDEX, Map, \ |
238 initial_array_iterator_prototype_map) \ | 242 initial_array_iterator_prototype_map) \ |
239 V(INITIAL_ARRAY_PROTOTYPE_INDEX, JSObject, initial_array_prototype) \ | 243 V(INITIAL_ARRAY_PROTOTYPE_INDEX, JSObject, initial_array_prototype) \ |
240 V(INITIAL_GENERATOR_PROTOTYPE_INDEX, JSObject, initial_generator_prototype) \ | 244 V(INITIAL_GENERATOR_PROTOTYPE_INDEX, JSObject, initial_generator_prototype) \ |
241 V(INITIAL_ITERATOR_PROTOTYPE_INDEX, JSObject, initial_iterator_prototype) \ | 245 V(INITIAL_ITERATOR_PROTOTYPE_INDEX, JSObject, initial_iterator_prototype) \ |
242 V(INITIAL_OBJECT_PROTOTYPE_INDEX, JSObject, initial_object_prototype) \ | 246 V(INITIAL_OBJECT_PROTOTYPE_INDEX, JSObject, initial_object_prototype) \ |
243 V(INT16_ARRAY_FUN_INDEX, JSFunction, int16_array_fun) \ | 247 V(INT16_ARRAY_FUN_INDEX, JSFunction, int16_array_fun) \ |
| 248 V(INT16X8_FUNCTION_INDEX, JSFunction, int16x8_function) \ |
244 V(INT32_ARRAY_FUN_INDEX, JSFunction, int32_array_fun) \ | 249 V(INT32_ARRAY_FUN_INDEX, JSFunction, int32_array_fun) \ |
| 250 V(INT32X4_FUNCTION_INDEX, JSFunction, int32x4_function) \ |
245 V(INT8_ARRAY_FUN_INDEX, JSFunction, int8_array_fun) \ | 251 V(INT8_ARRAY_FUN_INDEX, JSFunction, int8_array_fun) \ |
| 252 V(INT8X16_FUNCTION_INDEX, JSFunction, int8x16_function) \ |
246 V(INTERNAL_ARRAY_FUNCTION_INDEX, JSFunction, internal_array_function) \ | 253 V(INTERNAL_ARRAY_FUNCTION_INDEX, JSFunction, internal_array_function) \ |
247 V(ITERATOR_RESULT_MAP_INDEX, Map, iterator_result_map) \ | 254 V(ITERATOR_RESULT_MAP_INDEX, Map, iterator_result_map) \ |
248 V(INTL_DATE_TIME_FORMAT_FUNCTION_INDEX, JSFunction, \ | 255 V(INTL_DATE_TIME_FORMAT_FUNCTION_INDEX, JSFunction, \ |
249 intl_date_time_format_function) \ | 256 intl_date_time_format_function) \ |
250 V(INTL_NUMBER_FORMAT_FUNCTION_INDEX, JSFunction, \ | 257 V(INTL_NUMBER_FORMAT_FUNCTION_INDEX, JSFunction, \ |
251 intl_number_format_function) \ | 258 intl_number_format_function) \ |
252 V(INTL_COLLATOR_FUNCTION_INDEX, JSFunction, intl_collator_function) \ | 259 V(INTL_COLLATOR_FUNCTION_INDEX, JSFunction, intl_collator_function) \ |
253 V(INTL_V8_BREAK_ITERATOR_FUNCTION_INDEX, JSFunction, \ | 260 V(INTL_V8_BREAK_ITERATOR_FUNCTION_INDEX, JSFunction, \ |
254 intl_v8_break_iterator_function) \ | 261 intl_v8_break_iterator_function) \ |
255 V(JS_ARRAY_FAST_SMI_ELEMENTS_MAP_INDEX, Map, \ | 262 V(JS_ARRAY_FAST_SMI_ELEMENTS_MAP_INDEX, Map, \ |
(...skipping 78 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
334 V(WASM_INSTANCE_SYM_INDEX, Symbol, wasm_instance_sym) \ | 341 V(WASM_INSTANCE_SYM_INDEX, Symbol, wasm_instance_sym) \ |
335 V(WASM_MEMORY_CONSTRUCTOR_INDEX, JSFunction, wasm_memory_constructor) \ | 342 V(WASM_MEMORY_CONSTRUCTOR_INDEX, JSFunction, wasm_memory_constructor) \ |
336 V(WASM_MEMORY_SYM_INDEX, Symbol, wasm_memory_sym) \ | 343 V(WASM_MEMORY_SYM_INDEX, Symbol, wasm_memory_sym) \ |
337 V(WASM_MODULE_CONSTRUCTOR_INDEX, JSFunction, wasm_module_constructor) \ | 344 V(WASM_MODULE_CONSTRUCTOR_INDEX, JSFunction, wasm_module_constructor) \ |
338 V(WASM_MODULE_SYM_INDEX, Symbol, wasm_module_sym) \ | 345 V(WASM_MODULE_SYM_INDEX, Symbol, wasm_module_sym) \ |
339 V(WASM_TABLE_CONSTRUCTOR_INDEX, JSFunction, wasm_table_constructor) \ | 346 V(WASM_TABLE_CONSTRUCTOR_INDEX, JSFunction, wasm_table_constructor) \ |
340 V(WASM_TABLE_SYM_INDEX, Symbol, wasm_table_sym) \ | 347 V(WASM_TABLE_SYM_INDEX, Symbol, wasm_table_sym) \ |
341 V(TYPED_ARRAY_FUN_INDEX, JSFunction, typed_array_function) \ | 348 V(TYPED_ARRAY_FUN_INDEX, JSFunction, typed_array_function) \ |
342 V(TYPED_ARRAY_PROTOTYPE_INDEX, JSObject, typed_array_prototype) \ | 349 V(TYPED_ARRAY_PROTOTYPE_INDEX, JSObject, typed_array_prototype) \ |
343 V(UINT16_ARRAY_FUN_INDEX, JSFunction, uint16_array_fun) \ | 350 V(UINT16_ARRAY_FUN_INDEX, JSFunction, uint16_array_fun) \ |
| 351 V(UINT16X8_FUNCTION_INDEX, JSFunction, uint16x8_function) \ |
344 V(UINT32_ARRAY_FUN_INDEX, JSFunction, uint32_array_fun) \ | 352 V(UINT32_ARRAY_FUN_INDEX, JSFunction, uint32_array_fun) \ |
| 353 V(UINT32X4_FUNCTION_INDEX, JSFunction, uint32x4_function) \ |
345 V(UINT8_ARRAY_FUN_INDEX, JSFunction, uint8_array_fun) \ | 354 V(UINT8_ARRAY_FUN_INDEX, JSFunction, uint8_array_fun) \ |
346 V(UINT8_CLAMPED_ARRAY_FUN_INDEX, JSFunction, uint8_clamped_array_fun) \ | 355 V(UINT8_CLAMPED_ARRAY_FUN_INDEX, JSFunction, uint8_clamped_array_fun) \ |
| 356 V(UINT8X16_FUNCTION_INDEX, JSFunction, uint8x16_function) \ |
347 NATIVE_CONTEXT_INTRINSIC_FUNCTIONS(V) \ | 357 NATIVE_CONTEXT_INTRINSIC_FUNCTIONS(V) \ |
348 NATIVE_CONTEXT_IMPORTED_FIELDS(V) \ | 358 NATIVE_CONTEXT_IMPORTED_FIELDS(V) \ |
349 NATIVE_CONTEXT_JS_ARRAY_ITERATOR_MAPS(V) | 359 NATIVE_CONTEXT_JS_ARRAY_ITERATOR_MAPS(V) |
350 | 360 |
351 // A table of all script contexts. Every loaded top-level script with top-level | 361 // A table of all script contexts. Every loaded top-level script with top-level |
352 // lexical declarations contributes its ScriptContext into this table. | 362 // lexical declarations contributes its ScriptContext into this table. |
353 // | 363 // |
354 // The table is a fixed array, its first slot is the current used count and | 364 // The table is a fixed array, its first slot is the current used count and |
355 // the subsequent slots 1..used contain ScriptContexts. | 365 // the subsequent slots 1..used contain ScriptContexts. |
356 class ScriptContextTable : public FixedArray { | 366 class ScriptContextTable : public FixedArray { |
(...skipping 329 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
686 STATIC_ASSERT(kHeaderSize == Internals::kContextHeaderSize); | 696 STATIC_ASSERT(kHeaderSize == Internals::kContextHeaderSize); |
687 STATIC_ASSERT(EMBEDDER_DATA_INDEX == Internals::kContextEmbedderDataIndex); | 697 STATIC_ASSERT(EMBEDDER_DATA_INDEX == Internals::kContextEmbedderDataIndex); |
688 }; | 698 }; |
689 | 699 |
690 typedef Context::Field ContextField; | 700 typedef Context::Field ContextField; |
691 | 701 |
692 } // namespace internal | 702 } // namespace internal |
693 } // namespace v8 | 703 } // namespace v8 |
694 | 704 |
695 #endif // V8_CONTEXTS_H_ | 705 #endif // V8_CONTEXTS_H_ |
OLD | NEW |