Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(459)

Side by Side Diff: src/heap/heap.h

Issue 1293493004: Unify symbols sharing across native scripts and runtime. (Closed) Base URL: https://chromium.googlesource.com/v8/v8.git@master
Patch Set: Created 5 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
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_HEAP_HEAP_H_ 5 #ifndef V8_HEAP_HEAP_H_
6 #define V8_HEAP_HEAP_H_ 6 #define V8_HEAP_HEAP_H_
7 7
8 #include <cmath> 8 #include <cmath>
9 #include <map> 9 #include <map>
10 10
(...skipping 246 matching lines...) Expand 10 before | Expand all | Expand 10 after
257 V(string_string, "string") \ 257 V(string_string, "string") \
258 V(String_string, "String") \ 258 V(String_string, "String") \
259 V(symbol_string, "symbol") \ 259 V(symbol_string, "symbol") \
260 V(Symbol_string, "Symbol") \ 260 V(Symbol_string, "Symbol") \
261 V(Map_string, "Map") \ 261 V(Map_string, "Map") \
262 V(Set_string, "Set") \ 262 V(Set_string, "Set") \
263 V(WeakMap_string, "WeakMap") \ 263 V(WeakMap_string, "WeakMap") \
264 V(WeakSet_string, "WeakSet") \ 264 V(WeakSet_string, "WeakSet") \
265 V(for_string, "for") \ 265 V(for_string, "for") \
266 V(for_api_string, "for_api") \ 266 V(for_api_string, "for_api") \
267 V(for_intern_string, "for_intern") \
268 V(private_api_string, "private_api") \
269 V(private_intern_string, "private_intern") \
270 V(Date_string, "Date") \ 267 V(Date_string, "Date") \
271 V(char_at_string, "CharAt") \ 268 V(char_at_string, "CharAt") \
272 V(undefined_string, "undefined") \ 269 V(undefined_string, "undefined") \
273 V(value_of_string, "valueOf") \ 270 V(value_of_string, "valueOf") \
274 V(stack_string, "stack") \ 271 V(stack_string, "stack") \
275 V(toJSON_string, "toJSON") \ 272 V(toJSON_string, "toJSON") \
276 V(KeyedLoadMonomorphic_string, "KeyedLoadMonomorphic") \ 273 V(KeyedLoadMonomorphic_string, "KeyedLoadMonomorphic") \
277 V(KeyedStoreMonomorphic_string, "KeyedStoreMonomorphic") \ 274 V(KeyedStoreMonomorphic_string, "KeyedStoreMonomorphic") \
278 V(illegal_access_string, "illegal access") \ 275 V(illegal_access_string, "illegal access") \
279 V(cell_value_string, "%cell_value") \ 276 V(cell_value_string, "%cell_value") \
(...skipping 10 matching lines...) Expand all
290 V(done_string, "done") \ 287 V(done_string, "done") \
291 V(value_string, "value") \ 288 V(value_string, "value") \
292 V(next_string, "next") \ 289 V(next_string, "next") \
293 V(byte_length_string, "byteLength") \ 290 V(byte_length_string, "byteLength") \
294 V(byte_offset_string, "byteOffset") \ 291 V(byte_offset_string, "byteOffset") \
295 V(minus_zero_string, "-0") \ 292 V(minus_zero_string, "-0") \
296 V(Array_string, "Array") \ 293 V(Array_string, "Array") \
297 V(Error_string, "Error") \ 294 V(Error_string, "Error") \
298 V(RegExp_string, "RegExp") 295 V(RegExp_string, "RegExp")
299 296
300 #define PRIVATE_SYMBOL_LIST(V) \ 297 #define PRIVATE_SYMBOL_LIST(V) \
Michael Lippautz 2015/08/19 13:41:13 I wonder whether it would (at some point) make sen
301 V(nonextensible_symbol) \ 298 V(array_iteration_kind_symbol) \
302 V(sealed_symbol) \ 299 V(array_iterator_next_symbol) \
303 V(hash_code_symbol) \ 300 V(array_iterator_object_symbol) \
304 V(frozen_symbol) \ 301 V(call_site_function_symbol) \
305 V(nonexistent_symbol) \ 302 V(call_site_position_symbol) \
306 V(elements_transition_symbol) \ 303 V(call_site_receiver_symbol) \
307 V(observed_symbol) \ 304 V(call_site_strict_symbol) \
308 V(uninitialized_symbol) \ 305 V(class_end_position_symbol) \
309 V(megamorphic_symbol) \ 306 V(class_start_position_symbol) \
310 V(premonomorphic_symbol) \ 307 V(detailed_stack_trace_symbol) \
311 V(stack_trace_symbol) \ 308 V(elements_transition_symbol) \
312 V(detailed_stack_trace_symbol) \ 309 V(error_end_pos_symbol) \
313 V(normal_ic_symbol) \ 310 V(error_script_symbol) \
314 V(home_object_symbol) \ 311 V(error_start_pos_symbol) \
315 V(intl_initialized_marker_symbol) \ 312 V(formatted_stack_trace_symbol) \
316 V(intl_impl_object_symbol) \ 313 V(frozen_symbol) \
317 V(promise_debug_marker_symbol) \ 314 V(hash_code_symbol) \
318 V(promise_has_handler_symbol) \ 315 V(home_object_symbol) \
319 V(class_start_position_symbol) \ 316 V(internal_error_symbol) \
320 V(class_end_position_symbol) \ 317 V(intl_impl_object_symbol) \
321 V(error_start_pos_symbol) \ 318 V(intl_initialized_marker_symbol) \
322 V(error_end_pos_symbol) \ 319 V(megamorphic_symbol) \
323 V(error_script_symbol) \ 320 V(nonexistent_symbol) \
324 V(internal_error_symbol) 321 V(nonextensible_symbol) \
322 V(normal_ic_symbol) \
323 V(observed_symbol) \
324 V(premonomorphic_symbol) \
325 V(promise_debug_marker_symbol) \
326 V(promise_has_handler_symbol) \
327 V(promise_on_resolve_symbol) \
328 V(promise_on_reject_symbol) \
329 V(promise_raw_symbol) \
330 V(promise_status_symbol) \
331 V(promise_value_symbol) \
332 V(sealed_symbol) \
333 V(stack_trace_symbol) \
334 V(string_iterator_iterated_string_symbol) \
335 V(string_iterator_next_index_symbol) \
336 V(uninitialized_symbol)
337
325 338
326 #define PUBLIC_SYMBOL_LIST(V) \ 339 #define PUBLIC_SYMBOL_LIST(V) \
327 V(has_instance_symbol, symbolHasInstance, Symbol.hasInstance) \ 340 V(has_instance_symbol, symbolHasInstance, Symbol.hasInstance) \
328 V(is_concat_spreadable_symbol, symbolIsConcatSpreadable, \ 341 V(is_concat_spreadable_symbol, symbolIsConcatSpreadable, \
329 Symbol.isConcatSpreadable) \ 342 Symbol.isConcatSpreadable) \
330 V(is_regexp_symbol, symbolIsRegExp, Symbol.isRegExp) \ 343 V(is_regexp_symbol, symbolIsRegExp, Symbol.isRegExp) \
331 V(iterator_symbol, symbolIterator, Symbol.iterator) \ 344 V(iterator_symbol, symbolIterator, Symbol.iterator) \
332 V(to_string_tag_symbol, symbolToStringTag, Symbol.toStringTag) \ 345 V(to_string_tag_symbol, symbolToStringTag, Symbol.toStringTag) \
333 V(unscopables_symbol, symbolUnscopables, Symbol.unscopables) 346 V(unscopables_symbol, symbolUnscopables, Symbol.unscopables)
334 347
(...skipping 1476 matching lines...) Expand 10 before | Expand all | Expand 10 after
1811 }; 1824 };
1812 1825
1813 static const StringTypeTable string_type_table[]; 1826 static const StringTypeTable string_type_table[];
1814 static const ConstantStringTable constant_string_table[]; 1827 static const ConstantStringTable constant_string_table[];
1815 static const StructTable struct_table[]; 1828 static const StructTable struct_table[];
1816 1829
1817 // The special hidden string which is an empty string, but does not match 1830 // The special hidden string which is an empty string, but does not match
1818 // any string when looked up in properties. 1831 // any string when looked up in properties.
1819 String* hidden_string_; 1832 String* hidden_string_;
1820 1833
1821 void AddPrivateGlobalSymbols(Handle<Object> private_intern_table);
1822
1823 struct GCCallbackPair { 1834 struct GCCallbackPair {
1824 GCCallbackPair(v8::Isolate::GCCallback callback, GCType gc_type, 1835 GCCallbackPair(v8::Isolate::GCCallback callback, GCType gc_type,
1825 bool pass_isolate) 1836 bool pass_isolate)
1826 : callback(callback), gc_type(gc_type), pass_isolate(pass_isolate) {} 1837 : callback(callback), gc_type(gc_type), pass_isolate(pass_isolate) {}
1827 1838
1828 bool operator==(const GCCallbackPair& other) const { 1839 bool operator==(const GCCallbackPair& other) const {
1829 return other.callback == callback; 1840 return other.callback == callback;
1830 } 1841 }
1831 1842
1832 v8::Isolate::GCCallback callback; 1843 v8::Isolate::GCCallback callback;
(...skipping 876 matching lines...) Expand 10 before | Expand all | Expand 10 after
2709 DisallowHeapAllocation no_allocation; // i.e. no gc allowed. 2720 DisallowHeapAllocation no_allocation; // i.e. no gc allowed.
2710 2721
2711 private: 2722 private:
2712 DISALLOW_IMPLICIT_CONSTRUCTORS(PathTracer); 2723 DISALLOW_IMPLICIT_CONSTRUCTORS(PathTracer);
2713 }; 2724 };
2714 #endif // DEBUG 2725 #endif // DEBUG
2715 } 2726 }
2716 } // namespace v8::internal 2727 } // namespace v8::internal
2717 2728
2718 #endif // V8_HEAP_HEAP_H_ 2729 #endif // V8_HEAP_HEAP_H_
OLDNEW
« src/array-iterator.js ('K') | « src/debug/mirrors.js ('k') | src/heap/heap.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698