| OLD | NEW |
| 1 // Copyright 2012 the V8 project authors. All rights reserved. | 1 // Copyright 2012 the V8 project authors. All rights reserved. |
| 2 // Redistribution and use in source and binary forms, with or without | 2 // Redistribution and use in source and binary forms, with or without |
| 3 // modification, are permitted provided that the following conditions are | 3 // modification, are permitted provided that the following conditions are |
| 4 // met: | 4 // met: |
| 5 // | 5 // |
| 6 // * Redistributions of source code must retain the above copyright | 6 // * Redistributions of source code must retain the above copyright |
| 7 // notice, this list of conditions and the following disclaimer. | 7 // notice, this list of conditions and the following disclaimer. |
| 8 // * Redistributions in binary form must reproduce the above | 8 // * Redistributions in binary form must reproduce the above |
| 9 // copyright notice, this list of conditions and the following | 9 // copyright notice, this list of conditions and the following |
| 10 // disclaimer in the documentation and/or other materials provided | 10 // disclaimer in the documentation and/or other materials provided |
| (...skipping 83 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 94 // | 94 // |
| 95 // Note: Context must have no virtual functions and Context objects | 95 // Note: Context must have no virtual functions and Context objects |
| 96 // must always be allocated via Heap::AllocateContext() or | 96 // must always be allocated via Heap::AllocateContext() or |
| 97 // Factory::NewContext. | 97 // Factory::NewContext. |
| 98 | 98 |
| 99 #define NATIVE_CONTEXT_FIELDS(V) \ | 99 #define NATIVE_CONTEXT_FIELDS(V) \ |
| 100 V(GLOBAL_PROXY_INDEX, JSObject, global_proxy_object) \ | 100 V(GLOBAL_PROXY_INDEX, JSObject, global_proxy_object) \ |
| 101 V(SECURITY_TOKEN_INDEX, Object, security_token) \ | 101 V(SECURITY_TOKEN_INDEX, Object, security_token) \ |
| 102 V(BOOLEAN_FUNCTION_INDEX, JSFunction, boolean_function) \ | 102 V(BOOLEAN_FUNCTION_INDEX, JSFunction, boolean_function) \ |
| 103 V(NUMBER_FUNCTION_INDEX, JSFunction, number_function) \ | 103 V(NUMBER_FUNCTION_INDEX, JSFunction, number_function) \ |
| 104 V(FLOAT32x4_FUNCTION_INDEX, JSFunction, float32x4_function) \ |
| 105 V(FLOAT32x4_FUNCTION_PROTOTYPE_MAP_INDEX, Map, \ |
| 106 float32x4_function_prototype_map) \ |
| 107 V(INT32x4_FUNCTION_INDEX, JSFunction, int32x4_function) \ |
| 108 V(INT32x4_FUNCTION_PROTOTYPE_MAP_INDEX, Map, \ |
| 109 int32x4_function_prototype_map) \ |
| 104 V(STRING_FUNCTION_INDEX, JSFunction, string_function) \ | 110 V(STRING_FUNCTION_INDEX, JSFunction, string_function) \ |
| 105 V(STRING_FUNCTION_PROTOTYPE_MAP_INDEX, Map, string_function_prototype_map) \ | 111 V(STRING_FUNCTION_PROTOTYPE_MAP_INDEX, Map, string_function_prototype_map) \ |
| 106 V(SYMBOL_FUNCTION_INDEX, JSFunction, symbol_function) \ | 112 V(SYMBOL_FUNCTION_INDEX, JSFunction, symbol_function) \ |
| 107 V(OBJECT_FUNCTION_INDEX, JSFunction, object_function) \ | 113 V(OBJECT_FUNCTION_INDEX, JSFunction, object_function) \ |
| 108 V(INTERNAL_ARRAY_FUNCTION_INDEX, JSFunction, internal_array_function) \ | 114 V(INTERNAL_ARRAY_FUNCTION_INDEX, JSFunction, internal_array_function) \ |
| 109 V(ARRAY_FUNCTION_INDEX, JSFunction, array_function) \ | 115 V(ARRAY_FUNCTION_INDEX, JSFunction, array_function) \ |
| 110 V(JS_ARRAY_MAPS_INDEX, Object, js_array_maps) \ | 116 V(JS_ARRAY_MAPS_INDEX, Object, js_array_maps) \ |
| 111 V(DATE_FUNCTION_INDEX, JSFunction, date_function) \ | 117 V(DATE_FUNCTION_INDEX, JSFunction, date_function) \ |
| 112 V(JSON_OBJECT_INDEX, JSObject, json_object) \ | 118 V(JSON_OBJECT_INDEX, JSObject, json_object) \ |
| 113 V(REGEXP_FUNCTION_INDEX, JSFunction, regexp_function) \ | 119 V(REGEXP_FUNCTION_INDEX, JSFunction, regexp_function) \ |
| (...skipping 11 matching lines...) Expand all Loading... |
| 125 V(INSTANTIATE_FUN_INDEX, JSFunction, instantiate_fun) \ | 131 V(INSTANTIATE_FUN_INDEX, JSFunction, instantiate_fun) \ |
| 126 V(CONFIGURE_INSTANCE_FUN_INDEX, JSFunction, configure_instance_fun) \ | 132 V(CONFIGURE_INSTANCE_FUN_INDEX, JSFunction, configure_instance_fun) \ |
| 127 V(ARRAY_BUFFER_FUN_INDEX, JSFunction, array_buffer_fun) \ | 133 V(ARRAY_BUFFER_FUN_INDEX, JSFunction, array_buffer_fun) \ |
| 128 V(UINT8_ARRAY_FUN_INDEX, JSFunction, uint8_array_fun) \ | 134 V(UINT8_ARRAY_FUN_INDEX, JSFunction, uint8_array_fun) \ |
| 129 V(INT8_ARRAY_FUN_INDEX, JSFunction, int8_array_fun) \ | 135 V(INT8_ARRAY_FUN_INDEX, JSFunction, int8_array_fun) \ |
| 130 V(UINT16_ARRAY_FUN_INDEX, JSFunction, uint16_array_fun) \ | 136 V(UINT16_ARRAY_FUN_INDEX, JSFunction, uint16_array_fun) \ |
| 131 V(INT16_ARRAY_FUN_INDEX, JSFunction, int16_array_fun) \ | 137 V(INT16_ARRAY_FUN_INDEX, JSFunction, int16_array_fun) \ |
| 132 V(UINT32_ARRAY_FUN_INDEX, JSFunction, uint32_array_fun) \ | 138 V(UINT32_ARRAY_FUN_INDEX, JSFunction, uint32_array_fun) \ |
| 133 V(INT32_ARRAY_FUN_INDEX, JSFunction, int32_array_fun) \ | 139 V(INT32_ARRAY_FUN_INDEX, JSFunction, int32_array_fun) \ |
| 134 V(FLOAT_ARRAY_FUN_INDEX, JSFunction, float_array_fun) \ | 140 V(FLOAT_ARRAY_FUN_INDEX, JSFunction, float_array_fun) \ |
| 141 V(FLOAT32x4_ARRAY_FUN_INDEX, JSFunction, float32x4_array_fun) \ |
| 142 V(INT32x4_ARRAY_FUN_INDEX, JSFunction, int32x4_array_fun) \ |
| 135 V(DOUBLE_ARRAY_FUN_INDEX, JSFunction, double_array_fun) \ | 143 V(DOUBLE_ARRAY_FUN_INDEX, JSFunction, double_array_fun) \ |
| 136 V(UINT8C_ARRAY_FUN_INDEX, JSFunction, uint8c_array_fun) \ | 144 V(UINT8C_ARRAY_FUN_INDEX, JSFunction, uint8c_array_fun) \ |
| 137 V(DATA_VIEW_FUN_INDEX, JSFunction, data_view_fun) \ | 145 V(DATA_VIEW_FUN_INDEX, JSFunction, data_view_fun) \ |
| 138 V(FUNCTION_MAP_INDEX, Map, function_map) \ | 146 V(FUNCTION_MAP_INDEX, Map, function_map) \ |
| 139 V(STRICT_MODE_FUNCTION_MAP_INDEX, Map, strict_mode_function_map) \ | 147 V(STRICT_MODE_FUNCTION_MAP_INDEX, Map, strict_mode_function_map) \ |
| 140 V(FUNCTION_WITHOUT_PROTOTYPE_MAP_INDEX, Map, function_without_prototype_map) \ | 148 V(FUNCTION_WITHOUT_PROTOTYPE_MAP_INDEX, Map, function_without_prototype_map) \ |
| 141 V(STRICT_MODE_FUNCTION_WITHOUT_PROTOTYPE_MAP_INDEX, Map, \ | 149 V(STRICT_MODE_FUNCTION_WITHOUT_PROTOTYPE_MAP_INDEX, Map, \ |
| 142 strict_mode_function_without_prototype_map) \ | 150 strict_mode_function_without_prototype_map) \ |
| 143 V(REGEXP_RESULT_MAP_INDEX, Map, regexp_result_map)\ | 151 V(REGEXP_RESULT_MAP_INDEX, Map, regexp_result_map)\ |
| 144 V(ARGUMENTS_BOILERPLATE_INDEX, JSObject, arguments_boilerplate) \ | 152 V(ARGUMENTS_BOILERPLATE_INDEX, JSObject, arguments_boilerplate) \ |
| (...skipping 115 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 260 STRICT_MODE_ARGUMENTS_BOILERPLATE_INDEX, | 268 STRICT_MODE_ARGUMENTS_BOILERPLATE_INDEX, |
| 261 REGEXP_RESULT_MAP_INDEX, | 269 REGEXP_RESULT_MAP_INDEX, |
| 262 FUNCTION_MAP_INDEX, | 270 FUNCTION_MAP_INDEX, |
| 263 STRICT_MODE_FUNCTION_MAP_INDEX, | 271 STRICT_MODE_FUNCTION_MAP_INDEX, |
| 264 FUNCTION_WITHOUT_PROTOTYPE_MAP_INDEX, | 272 FUNCTION_WITHOUT_PROTOTYPE_MAP_INDEX, |
| 265 STRICT_MODE_FUNCTION_WITHOUT_PROTOTYPE_MAP_INDEX, | 273 STRICT_MODE_FUNCTION_WITHOUT_PROTOTYPE_MAP_INDEX, |
| 266 INITIAL_OBJECT_PROTOTYPE_INDEX, | 274 INITIAL_OBJECT_PROTOTYPE_INDEX, |
| 267 INITIAL_ARRAY_PROTOTYPE_INDEX, | 275 INITIAL_ARRAY_PROTOTYPE_INDEX, |
| 268 BOOLEAN_FUNCTION_INDEX, | 276 BOOLEAN_FUNCTION_INDEX, |
| 269 NUMBER_FUNCTION_INDEX, | 277 NUMBER_FUNCTION_INDEX, |
| 278 FLOAT32x4_FUNCTION_INDEX, |
| 279 FLOAT32x4_FUNCTION_PROTOTYPE_MAP_INDEX, |
| 280 INT32x4_FUNCTION_INDEX, |
| 281 INT32x4_FUNCTION_PROTOTYPE_MAP_INDEX, |
| 270 STRING_FUNCTION_INDEX, | 282 STRING_FUNCTION_INDEX, |
| 271 STRING_FUNCTION_PROTOTYPE_MAP_INDEX, | 283 STRING_FUNCTION_PROTOTYPE_MAP_INDEX, |
| 272 SYMBOL_FUNCTION_INDEX, | 284 SYMBOL_FUNCTION_INDEX, |
| 273 OBJECT_FUNCTION_INDEX, | 285 OBJECT_FUNCTION_INDEX, |
| 274 INTERNAL_ARRAY_FUNCTION_INDEX, | 286 INTERNAL_ARRAY_FUNCTION_INDEX, |
| 275 ARRAY_FUNCTION_INDEX, | 287 ARRAY_FUNCTION_INDEX, |
| 276 JS_ARRAY_MAPS_INDEX, | 288 JS_ARRAY_MAPS_INDEX, |
| 277 DATE_FUNCTION_INDEX, | 289 DATE_FUNCTION_INDEX, |
| 278 JSON_OBJECT_INDEX, | 290 JSON_OBJECT_INDEX, |
| 279 REGEXP_FUNCTION_INDEX, | 291 REGEXP_FUNCTION_INDEX, |
| (...skipping 10 matching lines...) Expand all Loading... |
| 290 INSTANTIATE_FUN_INDEX, | 302 INSTANTIATE_FUN_INDEX, |
| 291 CONFIGURE_INSTANCE_FUN_INDEX, | 303 CONFIGURE_INSTANCE_FUN_INDEX, |
| 292 ARRAY_BUFFER_FUN_INDEX, | 304 ARRAY_BUFFER_FUN_INDEX, |
| 293 UINT8_ARRAY_FUN_INDEX, | 305 UINT8_ARRAY_FUN_INDEX, |
| 294 INT8_ARRAY_FUN_INDEX, | 306 INT8_ARRAY_FUN_INDEX, |
| 295 UINT16_ARRAY_FUN_INDEX, | 307 UINT16_ARRAY_FUN_INDEX, |
| 296 INT16_ARRAY_FUN_INDEX, | 308 INT16_ARRAY_FUN_INDEX, |
| 297 UINT32_ARRAY_FUN_INDEX, | 309 UINT32_ARRAY_FUN_INDEX, |
| 298 INT32_ARRAY_FUN_INDEX, | 310 INT32_ARRAY_FUN_INDEX, |
| 299 FLOAT_ARRAY_FUN_INDEX, | 311 FLOAT_ARRAY_FUN_INDEX, |
| 312 FLOAT32x4_ARRAY_FUN_INDEX, |
| 313 INT32x4_ARRAY_FUN_INDEX, |
| 300 DOUBLE_ARRAY_FUN_INDEX, | 314 DOUBLE_ARRAY_FUN_INDEX, |
| 301 UINT8C_ARRAY_FUN_INDEX, | 315 UINT8C_ARRAY_FUN_INDEX, |
| 302 DATA_VIEW_FUN_INDEX, | 316 DATA_VIEW_FUN_INDEX, |
| 303 MESSAGE_LISTENERS_INDEX, | 317 MESSAGE_LISTENERS_INDEX, |
| 304 MAKE_MESSAGE_FUN_INDEX, | 318 MAKE_MESSAGE_FUN_INDEX, |
| 305 GET_STACK_TRACE_LINE_INDEX, | 319 GET_STACK_TRACE_LINE_INDEX, |
| 306 CONFIGURE_GLOBAL_INDEX, | 320 CONFIGURE_GLOBAL_INDEX, |
| 307 FUNCTION_CACHE_INDEX, | 321 FUNCTION_CACHE_INDEX, |
| 308 JSFUNCTION_RESULT_CACHES_INDEX, | 322 JSFUNCTION_RESULT_CACHES_INDEX, |
| 309 NORMALIZED_MAP_CACHE_INDEX, | 323 NORMALIZED_MAP_CACHE_INDEX, |
| (...skipping 209 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 519 static bool IsBootstrappingOrGlobalObject(Isolate* isolate, Object* object); | 533 static bool IsBootstrappingOrGlobalObject(Isolate* isolate, Object* object); |
| 520 #endif | 534 #endif |
| 521 | 535 |
| 522 STATIC_CHECK(kHeaderSize == Internals::kContextHeaderSize); | 536 STATIC_CHECK(kHeaderSize == Internals::kContextHeaderSize); |
| 523 STATIC_CHECK(EMBEDDER_DATA_INDEX == Internals::kContextEmbedderDataIndex); | 537 STATIC_CHECK(EMBEDDER_DATA_INDEX == Internals::kContextEmbedderDataIndex); |
| 524 }; | 538 }; |
| 525 | 539 |
| 526 } } // namespace v8::internal | 540 } } // namespace v8::internal |
| 527 | 541 |
| 528 #endif // V8_CONTEXTS_H_ | 542 #endif // V8_CONTEXTS_H_ |
| OLD | NEW |