• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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
3 // found in the LICENSE file.
4 
5 #ifndef V8_INIT_HEAP_SYMBOLS_H_
6 #define V8_INIT_HEAP_SYMBOLS_H_
7 
8 #ifdef V8_INTL_SUPPORT
9 #define INTERNALIZED_STRING_LIST_GENERATOR_INTL(V, _)               \
10   V(_, adoptText_string, "adoptText")                               \
11   V(_, baseName_string, "baseName")                                 \
12   V(_, accounting_string, "accounting")                             \
13   V(_, breakType_string, "breakType")                               \
14   V(_, calendars_string, "calendars")                               \
15   V(_, cardinal_string, "cardinal")                                 \
16   V(_, caseFirst_string, "caseFirst")                               \
17   V(_, ceil_string, "ceil")                                         \
18   V(_, compare_string, "compare")                                   \
19   V(_, collation_string, "collation")                               \
20   V(_, collations_string, "collations")                             \
21   V(_, compact_string, "compact")                                   \
22   V(_, compactDisplay_string, "compactDisplay")                     \
23   V(_, currency_string, "currency")                                 \
24   V(_, currencyDisplay_string, "currencyDisplay")                   \
25   V(_, currencySign_string, "currencySign")                         \
26   V(_, dateStyle_string, "dateStyle")                               \
27   V(_, dateTimeField_string, "dateTimeField")                       \
28   V(_, dayPeriod_string, "dayPeriod")                               \
29   V(_, decimal_string, "decimal")                                   \
30   V(_, dialect_string, "dialect")                                   \
31   V(_, direction_string, "direction")                               \
32   V(_, endRange_string, "endRange")                                 \
33   V(_, engineering_string, "engineering")                           \
34   V(_, exceptZero_string, "exceptZero")                             \
35   V(_, expand_string, "expand")                                     \
36   V(_, exponentInteger_string, "exponentInteger")                   \
37   V(_, exponentMinusSign_string, "exponentMinusSign")               \
38   V(_, exponentSeparator_string, "exponentSeparator")               \
39   V(_, fallback_string, "fallback")                                 \
40   V(_, first_string, "first")                                       \
41   V(_, firstDay_string, "firstDay")                                 \
42   V(_, floor_string, "floor")                                       \
43   V(_, format_string, "format")                                     \
44   V(_, fraction_string, "fraction")                                 \
45   V(_, fractionalSecond_string, "fractionalSecond")                 \
46   V(_, fractionalSecondDigits_string, "fractionalSecondDigits")     \
47   V(_, full_string, "full")                                         \
48   V(_, granularity_string, "granularity")                           \
49   V(_, grapheme_string, "grapheme")                                 \
50   V(_, group_string, "group")                                       \
51   V(_, h11_string, "h11")                                           \
52   V(_, h12_string, "h12")                                           \
53   V(_, h23_string, "h23")                                           \
54   V(_, h24_string, "h24")                                           \
55   V(_, halfCeil_string, "halfCeil")                                 \
56   V(_, halfEven_string, "halfEven")                                 \
57   V(_, halfExpand_string, "halfExpand")                             \
58   V(_, halfFloor_string, "halfFloor")                               \
59   V(_, halfTrunc_string, "halfTrunc")                               \
60   V(_, hour12_string, "hour12")                                     \
61   V(_, hourCycle_string, "hourCycle")                               \
62   V(_, hourCycles_string, "hourCycles")                             \
63   V(_, ideo_string, "ideo")                                         \
64   V(_, ignorePunctuation_string, "ignorePunctuation")               \
65   V(_, Invalid_Date_string, "Invalid Date")                         \
66   V(_, integer_string, "integer")                                   \
67   V(_, isWordLike_string, "isWordLike")                             \
68   V(_, kana_string, "kana")                                         \
69   V(_, language_string, "language")                                 \
70   V(_, languageDisplay_string, "languageDisplay")                   \
71   V(_, lessPrecision_string, "lessPrecision")                       \
72   V(_, letter_string, "letter")                                     \
73   V(_, list_string, "list")                                         \
74   V(_, literal_string, "literal")                                   \
75   V(_, locale_string, "locale")                                     \
76   V(_, loose_string, "loose")                                       \
77   V(_, lower_string, "lower")                                       \
78   V(_, ltr_string, "ltr")                                           \
79   V(_, maximumFractionDigits_string, "maximumFractionDigits")       \
80   V(_, maximumSignificantDigits_string, "maximumSignificantDigits") \
81   V(_, min2_string, "min2")                                         \
82   V(_, minimalDays_string, "minimalDays")                           \
83   V(_, minimumFractionDigits_string, "minimumFractionDigits")       \
84   V(_, minimumIntegerDigits_string, "minimumIntegerDigits")         \
85   V(_, minimumSignificantDigits_string, "minimumSignificantDigits") \
86   V(_, minus_0, "-0")                                               \
87   V(_, minusSign_string, "minusSign")                               \
88   V(_, morePrecision_string, "morePrecision")                       \
89   V(_, nan_string, "nan")                                           \
90   V(_, narrowSymbol_string, "narrowSymbol")                         \
91   V(_, negative_string, "negative")                                 \
92   V(_, never_string, "never")                                       \
93   V(_, none_string, "none")                                         \
94   V(_, notation_string, "notation")                                 \
95   V(_, normal_string, "normal")                                     \
96   V(_, numberingSystem_string, "numberingSystem")                   \
97   V(_, numberingSystems_string, "numberingSystems")                 \
98   V(_, numeric_string, "numeric")                                   \
99   V(_, ordinal_string, "ordinal")                                   \
100   V(_, percentSign_string, "percentSign")                           \
101   V(_, plusSign_string, "plusSign")                                 \
102   V(_, quarter_string, "quarter")                                   \
103   V(_, region_string, "region")                                     \
104   V(_, relatedYear_string, "relatedYear")                           \
105   V(_, roundingMode_string, "roundingMode")                         \
106   V(_, roundingPriority_string, "roundingPriority")                 \
107   V(_, rtl_string, "rtl")                                           \
108   V(_, scientific_string, "scientific")                             \
109   V(_, segment_string, "segment")                                   \
110   V(_, SegmentIterator_string, "Segment Iterator")                  \
111   V(_, Segments_string, "Segments")                                 \
112   V(_, sensitivity_string, "sensitivity")                           \
113   V(_, sep_string, "sep")                                           \
114   V(_, shared_string, "shared")                                     \
115   V(_, signDisplay_string, "signDisplay")                           \
116   V(_, standard_string, "standard")                                 \
117   V(_, startRange_string, "startRange")                             \
118   V(_, strict_string, "strict")                                     \
119   V(_, stripIfInteger_string, "stripIfInteger")                     \
120   V(_, style_string, "style")                                       \
121   V(_, term_string, "term")                                         \
122   V(_, textInfo_string, "textInfo")                                 \
123   V(_, timeStyle_string, "timeStyle")                               \
124   V(_, timeZones_string, "timeZones")                               \
125   V(_, timeZoneName_string, "timeZoneName")                         \
126   V(_, trailingZeroDisplay_string, "trailingZeroDisplay")           \
127   V(_, trunc_string, "trunc")                                       \
128   V(_, type_string, "type")                                         \
129   V(_, unknown_string, "unknown")                                   \
130   V(_, upper_string, "upper")                                       \
131   V(_, usage_string, "usage")                                       \
132   V(_, useGrouping_string, "useGrouping")                           \
133   V(_, unitDisplay_string, "unitDisplay")                           \
134   V(_, weekday_string, "weekday")                                   \
135   V(_, weekend_string, "weekend")                                   \
136   V(_, weekInfo_string, "weekInfo")                                 \
137   V(_, yearName_string, "yearName")
138 #else  // V8_INTL_SUPPORT
139 #define INTERNALIZED_STRING_LIST_GENERATOR_INTL(V, _)
140 #endif  // V8_INTL_SUPPORT
141 
142 #define INTERNALIZED_STRING_LIST_GENERATOR(V, _)                      \
143   INTERNALIZED_STRING_LIST_GENERATOR_INTL(V, _)                       \
144   V(_, add_string, "add")                                             \
145   V(_, AggregateError_string, "AggregateError")                       \
146   V(_, always_string, "always")                                       \
147   V(_, anonymous_function_string, "(anonymous function)")             \
148   V(_, anonymous_string, "anonymous")                                 \
149   V(_, apply_string, "apply")                                         \
150   V(_, Arguments_string, "Arguments")                                 \
151   V(_, arguments_string, "arguments")                                 \
152   V(_, arguments_to_string, "[object Arguments]")                     \
153   V(_, Array_string, "Array")                                         \
154   V(_, array_to_string, "[object Array]")                             \
155   V(_, ArrayBuffer_string, "ArrayBuffer")                             \
156   V(_, ArrayIterator_string, "Array Iterator")                        \
157   V(_, as_string, "as")                                               \
158   V(_, assert_string, "assert")                                       \
159   V(_, async_string, "async")                                         \
160   V(_, auto_string, "auto")                                           \
161   V(_, await_string, "await")                                         \
162   V(_, BigInt_string, "BigInt")                                       \
163   V(_, bigint_string, "bigint")                                       \
164   V(_, BigInt64Array_string, "BigInt64Array")                         \
165   V(_, BigUint64Array_string, "BigUint64Array")                       \
166   V(_, bind_string, "bind")                                           \
167   V(_, blank_string, "blank")                                         \
168   V(_, Boolean_string, "Boolean")                                     \
169   V(_, boolean_string, "boolean")                                     \
170   V(_, boolean_to_string, "[object Boolean]")                         \
171   V(_, bound__string, "bound ")                                       \
172   V(_, buffer_string, "buffer")                                       \
173   V(_, byte_length_string, "byteLength")                              \
174   V(_, byte_offset_string, "byteOffset")                              \
175   V(_, CompileError_string, "CompileError")                           \
176   V(_, calendar_string, "calendar")                                   \
177   V(_, callee_string, "callee")                                       \
178   V(_, caller_string, "caller")                                       \
179   V(_, cause_string, "cause")                                         \
180   V(_, character_string, "character")                                 \
181   V(_, closure_string, "(closure)")                                   \
182   V(_, code_string, "code")                                           \
183   V(_, column_string, "column")                                       \
184   V(_, computed_string, "<computed>")                                 \
185   V(_, configurable_string, "configurable")                           \
186   V(_, conjunction_string, "conjunction")                             \
187   V(_, console_string, "console")                                     \
188   V(_, constrain_string, "constrain")                                 \
189   V(_, construct_string, "construct")                                 \
190   V(_, constructor_string, "constructor")                             \
191   V(_, current_string, "current")                                     \
192   V(_, Date_string, "Date")                                           \
193   V(_, date_to_string, "[object Date]")                               \
194   V(_, dateAdd_string, "dateAdd")                                     \
195   V(_, dateFromFields_string, "dateFromFields")                       \
196   V(_, dateUntil_string, "dateUntil")                                 \
197   V(_, day_string, "day")                                             \
198   V(_, dayOfWeek_string, "dayOfWeek")                                 \
199   V(_, dayOfYear_string, "dayOfYear")                                 \
200   V(_, days_string, "days")                                           \
201   V(_, daysInMonth_string, "daysInMonth")                             \
202   V(_, daysInWeek_string, "daysInWeek")                               \
203   V(_, daysInYear_string, "daysInYear")                               \
204   V(_, default_string, "default")                                     \
205   V(_, defineProperty_string, "defineProperty")                       \
206   V(_, deleteProperty_string, "deleteProperty")                       \
207   V(_, disjunction_string, "disjunction")                             \
208   V(_, done_string, "done")                                           \
209   V(_, dot_brand_string, ".brand")                                    \
210   V(_, dot_catch_string, ".catch")                                    \
211   V(_, dot_default_string, ".default")                                \
212   V(_, dot_for_string, ".for")                                        \
213   V(_, dot_generator_object_string, ".generator_object")              \
214   V(_, dot_home_object_string, ".home_object")                        \
215   V(_, dot_result_string, ".result")                                  \
216   V(_, dot_repl_result_string, ".repl_result")                        \
217   V(_, dot_static_home_object_string, ".static_home_object")          \
218   V(_, dot_string, ".")                                               \
219   V(_, dot_switch_tag_string, ".switch_tag")                          \
220   V(_, dotAll_string, "dotAll")                                       \
221   V(_, Error_string, "Error")                                         \
222   V(_, EvalError_string, "EvalError")                                 \
223   V(_, enumerable_string, "enumerable")                               \
224   V(_, element_string, "element")                                     \
225   V(_, epochMicroseconds_string, "epochMicroseconds")                 \
226   V(_, epochMilliseconds_string, "epochMilliseconds")                 \
227   V(_, epochNanoseconds_string, "epochNanoseconds")                   \
228   V(_, epochSeconds_string, "epochSeconds")                           \
229   V(_, era_string, "era")                                             \
230   V(_, eraYear_string, "eraYear")                                     \
231   V(_, errors_string, "errors")                                       \
232   V(_, error_to_string, "[object Error]")                             \
233   V(_, eval_string, "eval")                                           \
234   V(_, exception_string, "exception")                                 \
235   V(_, exec_string, "exec")                                           \
236   V(_, false_string, "false")                                         \
237   V(_, fields_string, "fields")                                       \
238   V(_, FinalizationRegistry_string, "FinalizationRegistry")           \
239   V(_, flags_string, "flags")                                         \
240   V(_, Float32Array_string, "Float32Array")                           \
241   V(_, Float64Array_string, "Float64Array")                           \
242   V(_, from_string, "from")                                           \
243   V(_, Function_string, "Function")                                   \
244   V(_, function_native_code_string, "function () { [native code] }")  \
245   V(_, function_string, "function")                                   \
246   V(_, function_to_string, "[object Function]")                       \
247   V(_, Generator_string, "Generator")                                 \
248   V(_, get_space_string, "get ")                                      \
249   V(_, get_string, "get")                                             \
250   V(_, getOffsetNanosecondsFor_string, "getOffsetNanosecondsFor")     \
251   V(_, getOwnPropertyDescriptor_string, "getOwnPropertyDescriptor")   \
252   V(_, getPossibleInstantsFor_string, "getPossibleInstantsFor")       \
253   V(_, getPrototypeOf_string, "getPrototypeOf")                       \
254   V(_, global_string, "global")                                       \
255   V(_, globalThis_string, "globalThis")                               \
256   V(_, groups_string, "groups")                                       \
257   V(_, growable_string, "growable")                                   \
258   V(_, GrowableSharedArrayBuffer_string, "GrowableSharedArrayBuffer") \
259   V(_, has_string, "has")                                             \
260   V(_, hasIndices_string, "hasIndices")                               \
261   V(_, hour_string, "hour")                                           \
262   V(_, hours_string, "hours")                                         \
263   V(_, hoursInDay_string, "hoursInDay")                               \
264   V(_, ignoreCase_string, "ignoreCase")                               \
265   V(_, id_string, "id")                                               \
266   V(_, illegal_access_string, "illegal access")                       \
267   V(_, illegal_argument_string, "illegal argument")                   \
268   V(_, inLeapYear_string, "inLeapYear")                               \
269   V(_, index_string, "index")                                         \
270   V(_, indices_string, "indices")                                     \
271   V(_, Infinity_string, "Infinity")                                   \
272   V(_, infinity_string, "infinity")                                   \
273   V(_, input_string, "input")                                         \
274   V(_, Int16Array_string, "Int16Array")                               \
275   V(_, Int32Array_string, "Int32Array")                               \
276   V(_, Int8Array_string, "Int8Array")                                 \
277   V(_, isExtensible_string, "isExtensible")                           \
278   V(_, iso8601_string, "iso8601")                                     \
279   V(_, isoDay_string, "isoDay")                                       \
280   V(_, isoHour_string, "isoHour")                                     \
281   V(_, isoMicrosecond_string, "isoMicrosecond")                       \
282   V(_, isoMillisecond_string, "isoMillisecond")                       \
283   V(_, isoMinute_string, "isoMinute")                                 \
284   V(_, isoMonth_string, "isoMonth")                                   \
285   V(_, isoNanosecond_string, "isoNanosecond")                         \
286   V(_, isoSecond_string, "isoSecond")                                 \
287   V(_, isoYear_string, "isoYear")                                     \
288   V(_, jsMemoryEstimate_string, "jsMemoryEstimate")                   \
289   V(_, jsMemoryRange_string, "jsMemoryRange")                         \
290   V(_, keys_string, "keys")                                           \
291   V(_, largestUnit_string, "largestUnit")                             \
292   V(_, lastIndex_string, "lastIndex")                                 \
293   V(_, length_string, "length")                                       \
294   V(_, let_string, "let")                                             \
295   V(_, line_string, "line")                                           \
296   V(_, linear_string, "linear")                                       \
297   V(_, LinkError_string, "LinkError")                                 \
298   V(_, long_string, "long")                                           \
299   V(_, Map_string, "Map")                                             \
300   V(_, MapIterator_string, "Map Iterator")                            \
301   V(_, max_byte_length_string, "maxByteLength")                       \
302   V(_, medium_string, "medium")                                       \
303   V(_, mergeFields_string, "mergeFields")                             \
304   V(_, message_string, "message")                                     \
305   V(_, meta_string, "meta")                                           \
306   V(_, minus_Infinity_string, "-Infinity")                            \
307   V(_, microsecond_string, "microsecond")                             \
308   V(_, microseconds_string, "microseconds")                           \
309   V(_, millisecond_string, "millisecond")                             \
310   V(_, milliseconds_string, "milliseconds")                           \
311   V(_, minute_string, "minute")                                       \
312   V(_, minutes_string, "minutes")                                     \
313   V(_, Module_string, "Module")                                       \
314   V(_, month_string, "month")                                         \
315   V(_, monthDayFromFields_string, "monthDayFromFields")               \
316   V(_, months_string, "months")                                       \
317   V(_, monthsInYear_string, "monthsInYear")                           \
318   V(_, monthCode_string, "monthCode")                                 \
319   V(_, multiline_string, "multiline")                                 \
320   V(_, name_string, "name")                                           \
321   V(_, NaN_string, "NaN")                                             \
322   V(_, nanosecond_string, "nanosecond")                               \
323   V(_, nanoseconds_string, "nanoseconds")                             \
324   V(_, narrow_string, "narrow")                                       \
325   V(_, native_string, "native")                                       \
326   V(_, new_target_string, ".new.target")                              \
327   V(_, next_string, "next")                                           \
328   V(_, NFC_string, "NFC")                                             \
329   V(_, NFD_string, "NFD")                                             \
330   V(_, NFKC_string, "NFKC")                                           \
331   V(_, NFKD_string, "NFKD")                                           \
332   V(_, not_equal_string, "not-equal")                                 \
333   V(_, null_string, "null")                                           \
334   V(_, null_to_string, "[object Null]")                               \
335   V(_, Number_string, "Number")                                       \
336   V(_, number_string, "number")                                       \
337   V(_, number_to_string, "[object Number]")                           \
338   V(_, Object_string, "Object")                                       \
339   V(_, object_string, "object")                                       \
340   V(_, object_to_string, "[object Object]")                           \
341   V(_, of_string, "of")                                               \
342   V(_, offset_string, "offset")                                       \
343   V(_, offsetNanoseconds_string, "offsetNanoseconds")                 \
344   V(_, ok_string, "ok")                                               \
345   V(_, one_string, "1")                                               \
346   V(_, other_string, "other")                                         \
347   V(_, overflow_string, "overflow")                                   \
348   V(_, ownKeys_string, "ownKeys")                                     \
349   V(_, percent_string, "percent")                                     \
350   V(_, plainDate_string, "plainDate")                                 \
351   V(_, plainTime_string, "plainTime")                                 \
352   V(_, position_string, "position")                                   \
353   V(_, preventExtensions_string, "preventExtensions")                 \
354   V(_, private_constructor_string, "#constructor")                    \
355   V(_, Promise_string, "Promise")                                     \
356   V(_, proto_string, "__proto__")                                     \
357   V(_, prototype_string, "prototype")                                 \
358   V(_, proxy_string, "proxy")                                         \
359   V(_, Proxy_string, "Proxy")                                         \
360   V(_, query_colon_string, "(?:)")                                    \
361   V(_, RangeError_string, "RangeError")                               \
362   V(_, raw_string, "raw")                                             \
363   V(_, ReferenceError_string, "ReferenceError")                       \
364   V(_, ReflectGet_string, "Reflect.get")                              \
365   V(_, ReflectHas_string, "Reflect.has")                              \
366   V(_, RegExp_string, "RegExp")                                       \
367   V(_, regexp_to_string, "[object RegExp]")                           \
368   V(_, reject_string, "reject")                                       \
369   V(_, relativeTo_string, "relativeTo")                               \
370   V(_, resizable_string, "resizable")                                 \
371   V(_, ResizableArrayBuffer_string, "ResizableArrayBuffer")           \
372   V(_, resolve_string, "resolve")                                     \
373   V(_, return_string, "return")                                       \
374   V(_, revoke_string, "revoke")                                       \
375   V(_, roundingIncrement_string, "roundingIncrement")                 \
376   V(_, RuntimeError_string, "RuntimeError")                           \
377   V(_, WebAssemblyException_string, "WebAssembly.Exception")          \
378   V(_, Script_string, "Script")                                       \
379   V(_, script_string, "script")                                       \
380   V(_, second_string, "second")                                       \
381   V(_, seconds_string, "seconds")                                     \
382   V(_, short_string, "short")                                         \
383   V(_, Set_string, "Set")                                             \
384   V(_, sentence_string, "sentence")                                   \
385   V(_, set_space_string, "set ")                                      \
386   V(_, set_string, "set")                                             \
387   V(_, SetIterator_string, "Set Iterator")                            \
388   V(_, setPrototypeOf_string, "setPrototypeOf")                       \
389   V(_, ShadowRealm_string, "ShadowRealm")                             \
390   V(_, SharedArrayBuffer_string, "SharedArrayBuffer")                 \
391   V(_, sign_string, "sign")                                           \
392   V(_, smallestUnit_string, "smallestUnit")                           \
393   V(_, source_string, "source")                                       \
394   V(_, sourceText_string, "sourceText")                               \
395   V(_, stack_string, "stack")                                         \
396   V(_, stackTraceLimit_string, "stackTraceLimit")                     \
397   V(_, sticky_string, "sticky")                                       \
398   V(_, String_string, "String")                                       \
399   V(_, string_string, "string")                                       \
400   V(_, string_to_string, "[object String]")                           \
401   V(_, symbol_species_string, "[Symbol.species]")                     \
402   V(_, Symbol_string, "Symbol")                                       \
403   V(_, symbol_string, "symbol")                                       \
404   V(_, SyntaxError_string, "SyntaxError")                             \
405   V(_, target_string, "target")                                       \
406   V(_, then_string, "then")                                           \
407   V(_, this_function_string, ".this_function")                        \
408   V(_, this_string, "this")                                           \
409   V(_, throw_string, "throw")                                         \
410   V(_, timed_out_string, "timed-out")                                 \
411   V(_, timeZone_string, "timeZone")                                   \
412   V(_, toJSON_string, "toJSON")                                       \
413   V(_, toString_string, "toString")                                   \
414   V(_, true_string, "true")                                           \
415   V(_, total_string, "total")                                         \
416   V(_, TypeError_string, "TypeError")                                 \
417   V(_, Uint16Array_string, "Uint16Array")                             \
418   V(_, Uint32Array_string, "Uint32Array")                             \
419   V(_, Uint8Array_string, "Uint8Array")                               \
420   V(_, Uint8ClampedArray_string, "Uint8ClampedArray")                 \
421   V(_, undefined_string, "undefined")                                 \
422   V(_, undefined_to_string, "[object Undefined]")                     \
423   V(_, unicode_string, "unicode")                                     \
424   V(_, unit_string, "unit")                                           \
425   V(_, URIError_string, "URIError")                                   \
426   V(_, UTC_string, "UTC")                                             \
427   V(_, value_string, "value")                                         \
428   V(_, valueOf_string, "valueOf")                                     \
429   V(_, WeakMap_string, "WeakMap")                                     \
430   V(_, WeakRef_string, "WeakRef")                                     \
431   V(_, WeakSet_string, "WeakSet")                                     \
432   V(_, week_string, "week")                                           \
433   V(_, weeks_string, "weeks")                                         \
434   V(_, weekOfYear_string, "weekOfYear")                               \
435   V(_, with_string, "with")                                           \
436   V(_, word_string, "word")                                           \
437   V(_, writable_string, "writable")                                   \
438   V(_, yearMonthFromFields_string, "yearMonthFromFields")             \
439   V(_, year_string, "year")                                           \
440   V(_, years_string, "years")                                         \
441   V(_, zero_string, "0")
442 
443 #define PRIVATE_SYMBOL_LIST_GENERATOR(V, _)    \
444   V(_, array_buffer_wasm_memory_symbol)        \
445   V(_, call_site_info_symbol)                  \
446   V(_, console_context_id_symbol)              \
447   V(_, console_context_name_symbol)            \
448   V(_, class_fields_symbol)                    \
449   V(_, class_positions_symbol)                 \
450   V(_, elements_transition_symbol)             \
451   V(_, error_end_pos_symbol)                   \
452   V(_, error_script_symbol)                    \
453   V(_, error_stack_symbol)                     \
454   V(_, error_start_pos_symbol)                 \
455   V(_, frozen_symbol)                          \
456   V(_, interpreter_trampoline_symbol)          \
457   V(_, mega_dom_symbol)                        \
458   V(_, megamorphic_symbol)                     \
459   V(_, native_context_index_symbol)            \
460   V(_, nonextensible_symbol)                   \
461   V(_, not_mapped_symbol)                      \
462   V(_, promise_debug_marker_symbol)            \
463   V(_, promise_debug_message_symbol)           \
464   V(_, promise_forwarding_handler_symbol)      \
465   V(_, promise_handled_by_symbol)              \
466   V(_, promise_awaited_by_symbol)              \
467   V(_, regexp_result_names_symbol)             \
468   V(_, regexp_result_regexp_input_symbol)      \
469   V(_, regexp_result_regexp_last_index_symbol) \
470   V(_, sealed_symbol)                          \
471   V(_, strict_function_transition_symbol)      \
472   V(_, wasm_exception_tag_symbol)              \
473   V(_, wasm_exception_values_symbol)           \
474   V(_, wasm_uncatchable_symbol)                \
475   V(_, wasm_wrapped_object_symbol)             \
476   V(_, wasm_debug_proxy_cache_symbol)          \
477   V(_, wasm_debug_proxy_names_symbol)          \
478   V(_, uninitialized_symbol)
479 
480 #define PUBLIC_SYMBOL_LIST_GENERATOR(V, _)                \
481   V(_, async_iterator_symbol, Symbol.asyncIterator)       \
482   V(_, iterator_symbol, Symbol.iterator)                  \
483   V(_, intl_fallback_symbol, IntlLegacyConstructedSymbol) \
484   V(_, match_all_symbol, Symbol.matchAll)                 \
485   V(_, match_symbol, Symbol.match)                        \
486   V(_, replace_symbol, Symbol.replace)                    \
487   V(_, search_symbol, Symbol.search)                      \
488   V(_, species_symbol, Symbol.species)                    \
489   V(_, split_symbol, Symbol.split)                        \
490   V(_, to_primitive_symbol, Symbol.toPrimitive)           \
491   V(_, unscopables_symbol, Symbol.unscopables)
492 
493 // Well-Known Symbols are "Public" symbols, which have a bit set which causes
494 // them to produce an undefined value when a load results in a failed access
495 // check. Because this behaviour is not specified properly as of yet, it only
496 // applies to a subset of spec-defined Well-Known Symbols.
497 #define WELL_KNOWN_SYMBOL_LIST_GENERATOR(V, _)                 \
498   V(_, has_instance_symbol, Symbol.hasInstance)                \
499   V(_, is_concat_spreadable_symbol, Symbol.isConcatSpreadable) \
500   V(_, to_string_tag_symbol, Symbol.toStringTag)
501 
502 #define INCREMENTAL_SCOPES(F)                                      \
503   /* MC_INCREMENTAL is the top-level incremental marking scope. */ \
504   F(MC_INCREMENTAL)                                                \
505   F(MC_INCREMENTAL_EMBEDDER_PROLOGUE)                              \
506   F(MC_INCREMENTAL_EMBEDDER_TRACING)                               \
507   F(MC_INCREMENTAL_EXTERNAL_EPILOGUE)                              \
508   F(MC_INCREMENTAL_EXTERNAL_PROLOGUE)                              \
509   F(MC_INCREMENTAL_FINALIZE)                                       \
510   F(MC_INCREMENTAL_FINALIZE_BODY)                                  \
511   F(MC_INCREMENTAL_LAYOUT_CHANGE)                                  \
512   F(MC_INCREMENTAL_START)                                          \
513   F(MC_INCREMENTAL_SWEEPING)
514 
515 #define TOP_MC_SCOPES(F) \
516   F(MC_CLEAR)            \
517   F(MC_EPILOGUE)         \
518   F(MC_EVACUATE)         \
519   F(MC_FINISH)           \
520   F(MC_MARK)             \
521   F(MC_PROLOGUE)         \
522   F(MC_SWEEP)
523 
524 #define TRACER_SCOPES(F)                             \
525   INCREMENTAL_SCOPES(F)                              \
526   F(HEAP_EMBEDDER_TRACING_EPILOGUE)                  \
527   F(HEAP_EPILOGUE)                                   \
528   F(HEAP_EPILOGUE_REDUCE_NEW_SPACE)                  \
529   F(HEAP_EPILOGUE_SAFEPOINT)                         \
530   F(HEAP_EXTERNAL_EPILOGUE)                          \
531   F(HEAP_EXTERNAL_NEAR_HEAP_LIMIT)                   \
532   F(HEAP_EXTERNAL_PROLOGUE)                          \
533   F(HEAP_EXTERNAL_WEAK_GLOBAL_HANDLES)               \
534   F(HEAP_PROLOGUE)                                   \
535   F(HEAP_PROLOGUE_SAFEPOINT)                         \
536   F(MARK_COMPACTOR)                                  \
537   TOP_MC_SCOPES(F)                                   \
538   F(MC_CLEAR_DEPENDENT_CODE)                         \
539   F(MC_CLEAR_FLUSHABLE_BYTECODE)                     \
540   F(MC_CLEAR_FLUSHED_JS_FUNCTIONS)                   \
541   F(MC_CLEAR_MAPS)                                   \
542   F(MC_CLEAR_SLOTS_BUFFER)                           \
543   F(MC_CLEAR_STRING_TABLE)                           \
544   F(MC_CLEAR_WEAK_COLLECTIONS)                       \
545   F(MC_CLEAR_WEAK_LISTS)                             \
546   F(MC_CLEAR_WEAK_REFERENCES)                        \
547   F(MC_SWEEP_EXTERNAL_POINTER_TABLE)                 \
548   F(MC_COMPLETE_SWEEP_ARRAY_BUFFERS)                 \
549   F(MC_COMPLETE_SWEEPING)                            \
550   F(MC_EVACUATE_CANDIDATES)                          \
551   F(MC_EVACUATE_CLEAN_UP)                            \
552   F(MC_EVACUATE_COPY)                                \
553   F(MC_EVACUATE_COPY_PARALLEL)                       \
554   F(MC_EVACUATE_EPILOGUE)                            \
555   F(MC_EVACUATE_PROLOGUE)                            \
556   F(MC_EVACUATE_REBALANCE)                           \
557   F(MC_EVACUATE_UPDATE_POINTERS)                     \
558   F(MC_EVACUATE_UPDATE_POINTERS_CLIENT_HEAPS)        \
559   F(MC_EVACUATE_UPDATE_POINTERS_PARALLEL)            \
560   F(MC_EVACUATE_UPDATE_POINTERS_SLOTS_MAIN)          \
561   F(MC_EVACUATE_UPDATE_POINTERS_TO_NEW_ROOTS)        \
562   F(MC_EVACUATE_UPDATE_POINTERS_WEAK)                \
563   F(MC_FINISH_SWEEP_ARRAY_BUFFERS)                   \
564   F(MC_MARK_CLIENT_HEAPS)                            \
565   F(MC_MARK_EMBEDDER_PROLOGUE)                       \
566   F(MC_MARK_EMBEDDER_TRACING)                        \
567   F(MC_MARK_EMBEDDER_TRACING_CLOSURE)                \
568   F(MC_MARK_FINISH_INCREMENTAL)                      \
569   F(MC_MARK_MAIN)                                    \
570   F(MC_MARK_ROOTS)                                   \
571   F(MC_MARK_WEAK_CLOSURE)                            \
572   F(MC_MARK_WEAK_CLOSURE_EPHEMERON)                  \
573   F(MC_MARK_WEAK_CLOSURE_EPHEMERON_MARKING)          \
574   F(MC_MARK_WEAK_CLOSURE_EPHEMERON_LINEAR)           \
575   F(MC_MARK_WEAK_CLOSURE_WEAK_HANDLES)               \
576   F(MC_MARK_WEAK_CLOSURE_WEAK_ROOTS)                 \
577   F(MC_MARK_WEAK_CLOSURE_HARMONY)                    \
578   F(MC_SWEEP_CODE)                                   \
579   F(MC_SWEEP_MAP)                                    \
580   F(MC_SWEEP_OLD)                                    \
581   F(MINOR_MARK_COMPACTOR)                            \
582   F(MINOR_MC)                                        \
583   F(MINOR_MC_CLEAR)                                  \
584   F(MINOR_MC_CLEAR_STRING_TABLE)                     \
585   F(MINOR_MC_CLEAR_WEAK_LISTS)                       \
586   F(MINOR_MC_COMPLETE_SWEEP_ARRAY_BUFFERS)           \
587   F(MINOR_MC_EVACUATE)                               \
588   F(MINOR_MC_EVACUATE_CLEAN_UP)                      \
589   F(MINOR_MC_EVACUATE_COPY)                          \
590   F(MINOR_MC_EVACUATE_COPY_PARALLEL)                 \
591   F(MINOR_MC_EVACUATE_EPILOGUE)                      \
592   F(MINOR_MC_EVACUATE_PROLOGUE)                      \
593   F(MINOR_MC_EVACUATE_REBALANCE)                     \
594   F(MINOR_MC_EVACUATE_UPDATE_POINTERS)               \
595   F(MINOR_MC_EVACUATE_UPDATE_POINTERS_PARALLEL)      \
596   F(MINOR_MC_EVACUATE_UPDATE_POINTERS_SLOTS)         \
597   F(MINOR_MC_EVACUATE_UPDATE_POINTERS_TO_NEW_ROOTS)  \
598   F(MINOR_MC_EVACUATE_UPDATE_POINTERS_WEAK)          \
599   F(MINOR_MC_MARK)                                   \
600   F(MINOR_MC_MARK_GLOBAL_HANDLES)                    \
601   F(MINOR_MC_MARK_PARALLEL)                          \
602   F(MINOR_MC_MARK_SEED)                              \
603   F(MINOR_MC_MARK_ROOTS)                             \
604   F(MINOR_MC_MARK_WEAK)                              \
605   F(MINOR_MC_MARKING_DEQUE)                          \
606   F(MINOR_MC_RESET_LIVENESS)                         \
607   F(MINOR_MC_SWEEPING)                               \
608   F(SAFEPOINT)                                       \
609   F(SCAVENGER)                                       \
610   F(SCAVENGER_COMPLETE_SWEEP_ARRAY_BUFFERS)          \
611   F(SCAVENGER_FAST_PROMOTE)                          \
612   F(SCAVENGER_FREE_REMEMBERED_SET)                   \
613   F(SCAVENGER_SCAVENGE)                              \
614   F(SCAVENGER_SCAVENGE_WEAK_GLOBAL_HANDLES_IDENTIFY) \
615   F(SCAVENGER_SCAVENGE_WEAK_GLOBAL_HANDLES_PROCESS)  \
616   F(SCAVENGER_SCAVENGE_PARALLEL)                     \
617   F(SCAVENGER_SCAVENGE_ROOTS)                        \
618   F(SCAVENGER_SCAVENGE_STACK_ROOTS)                  \
619   F(SCAVENGER_SCAVENGE_UPDATE_REFS)                  \
620   F(SCAVENGER_SCAVENGE_WEAK)                         \
621   F(SCAVENGER_SCAVENGE_FINALIZE)                     \
622   F(SCAVENGER_SWEEP_ARRAY_BUFFERS)                   \
623   F(TIME_TO_GLOBAL_SAFEPOINT)                        \
624   F(TIME_TO_SAFEPOINT)                               \
625   F(UNMAPPER)                                        \
626   F(UNPARK)
627 
628 #define TRACER_BACKGROUND_SCOPES(F)               \
629   F(BACKGROUND_YOUNG_ARRAY_BUFFER_SWEEP)          \
630   F(BACKGROUND_FULL_ARRAY_BUFFER_SWEEP)           \
631   F(BACKGROUND_COLLECTION)                        \
632   F(BACKGROUND_UNMAPPER)                          \
633   F(BACKGROUND_UNPARK)                            \
634   F(BACKGROUND_SAFEPOINT)                         \
635   F(MC_BACKGROUND_EVACUATE_COPY)                  \
636   F(MC_BACKGROUND_EVACUATE_UPDATE_POINTERS)       \
637   F(MC_BACKGROUND_MARKING)                        \
638   F(MC_BACKGROUND_SWEEPING)                       \
639   F(MINOR_MC_BACKGROUND_EVACUATE_COPY)            \
640   F(MINOR_MC_BACKGROUND_EVACUATE_UPDATE_POINTERS) \
641   F(MINOR_MC_BACKGROUND_MARKING)                  \
642   F(SCAVENGER_BACKGROUND_SCAVENGE_PARALLEL)
643 
644 #define TRACER_YOUNG_EPOCH_SCOPES(F)        \
645   F(BACKGROUND_YOUNG_ARRAY_BUFFER_SWEEP)    \
646   F(MINOR_MARK_COMPACTOR)                   \
647   F(MINOR_MC_COMPLETE_SWEEP_ARRAY_BUFFERS)  \
648   F(SCAVENGER)                              \
649   F(SCAVENGER_BACKGROUND_SCAVENGE_PARALLEL) \
650   F(SCAVENGER_COMPLETE_SWEEP_ARRAY_BUFFERS)
651 
652 #endif  // V8_INIT_HEAP_SYMBOLS_H_
653