// Copyright 2015 the V8 project authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

#ifndef V8_HEAP_SYMBOLS_H_
#define V8_HEAP_SYMBOLS_H_

#ifdef V8_INTL_SUPPORT
#define INTERNALIZED_STRING_LIST_GENERATOR_INTL(V, _)               \
  V(_, breakType_string, "breakType")                               \
  V(_, calendar_string, "calendar")                                 \
  V(_, cardinal_string, "cardinal")                                 \
  V(_, caseFirst_string, "caseFirst")                               \
  V(_, day_string, "day")                                           \
  V(_, dayPeriod_string, "dayPeriod")                               \
  V(_, decimal_string, "decimal")                                   \
  V(_, era_string, "era")                                           \
  V(_, fraction_string, "fraction")                                 \
  V(_, granularity_string, "granularity")                           \
  V(_, grapheme_string, "grapheme")                                 \
  V(_, group_string, "group")                                       \
  V(_, h11_string, "h11")                                           \
  V(_, h12_string, "h12")                                           \
  V(_, h23_string, "h23")                                           \
  V(_, h24_string, "h24")                                           \
  V(_, hard_string, "hard")                                         \
  V(_, hour_string, "hour")                                         \
  V(_, hour12_string, "hour12")                                     \
  V(_, hourCycle_string, "hourCycle")                               \
  V(_, collation_string, "collation")                               \
  V(_, currency_string, "currency")                                 \
  V(_, currencyDisplay_string, "currencyDisplay")                   \
  V(_, ideo_string, "ideo")                                         \
  V(_, ignorePunctuation_string, "ignorePunctuation")               \
  V(_, Invalid_Date_string, "Invalid Date")                         \
  V(_, integer_string, "integer")                                   \
  V(_, kana_string, "kana")                                         \
  V(_, letter_string, "letter")                                     \
  V(_, lineBreakStyle_string, "lineBreakStyle")                     \
  V(_, list_string, "list")                                         \
  V(_, literal_string, "literal")                                   \
  V(_, locale_string, "locale")                                     \
  V(_, loose_string, "loose")                                       \
  V(_, lower_string, "lower")                                       \
  V(_, maximumFractionDigits_string, "maximumFractionDigits")       \
  V(_, maximumSignificantDigits_string, "maximumSignificantDigits") \
  V(_, nan_string, "nan")                                           \
  V(_, minimumFractionDigits_string, "minimumFractionDigits")       \
  V(_, minimumIntegerDigits_string, "minimumIntegerDigits")         \
  V(_, minimumSignificantDigits_string, "minimumSignificantDigits") \
  V(_, minusSign_string, "minusSign")                               \
  V(_, minute_string, "minute")                                     \
  V(_, month_string, "month")                                       \
  V(_, none_string, "none")                                         \
  V(_, normal_string, "normal")                                     \
  V(_, numberingSystem_string, "numberingSystem")                   \
  V(_, numeric_string, "numeric")                                   \
  V(_, ordinal_string, "ordinal")                                   \
  V(_, percentSign_string, "percentSign")                           \
  V(_, plusSign_string, "plusSign")                                 \
  V(_, quarter_string, "quarter")                                   \
  V(_, second_string, "second")                                     \
  V(_, segment_string, "segment")                                   \
  V(_, SegmentIterator_string, "Segment Iterator")                  \
  V(_, sensitivity_string, "sensitivity")                           \
  V(_, sep_string, "sep")                                           \
  V(_, soft_string, "soft")                                         \
  V(_, strict_string, "strict")                                     \
  V(_, style_string, "style")                                       \
  V(_, term_string, "term")                                         \
  V(_, timeZone_string, "timeZone")                                 \
  V(_, timeZoneName_string, "timeZoneName")                         \
  V(_, type_string, "type")                                         \
  V(_, unknown_string, "unknown")                                   \
  V(_, upper_string, "upper")                                       \
  V(_, usage_string, "usage")                                       \
  V(_, useGrouping_string, "useGrouping")                           \
  V(_, UTC_string, "UTC")                                           \
  V(_, unit_string, "unit")                                         \
  V(_, weekday_string, "weekday")                                   \
  V(_, year_string, "year")
#else  // V8_INTL_SUPPORT
#define INTERNALIZED_STRING_LIST_GENERATOR_INTL(V, _)
#endif  // V8_INTL_SUPPORT

#define INTERNALIZED_STRING_LIST_GENERATOR(V, _)                      \
  INTERNALIZED_STRING_LIST_GENERATOR_INTL(V, _)                       \
  V(_, add_string, "add")                                             \
  V(_, always_string, "always")                                       \
  V(_, anonymous_function_string, "(anonymous function)")             \
  V(_, anonymous_string, "anonymous")                                 \
  V(_, apply_string, "apply")                                         \
  V(_, Arguments_string, "Arguments")                                 \
  V(_, arguments_string, "arguments")                                 \
  V(_, arguments_to_string, "[object Arguments]")                     \
  V(_, Array_string, "Array")                                         \
  V(_, array_to_string, "[object Array]")                             \
  V(_, ArrayBuffer_string, "ArrayBuffer")                             \
  V(_, ArrayIterator_string, "Array Iterator")                        \
  V(_, as_string, "as")                                               \
  V(_, assign_string, "assign")                                       \
  V(_, async_string, "async")                                         \
  V(_, auto_string, "auto")                                           \
  V(_, await_string, "await")                                         \
  V(_, BigInt_string, "BigInt")                                       \
  V(_, bigint_string, "bigint")                                       \
  V(_, BigInt64Array_string, "BigInt64Array")                         \
  V(_, BigUint64Array_string, "BigUint64Array")                       \
  V(_, bind_string, "bind")                                           \
  V(_, Boolean_string, "Boolean")                                     \
  V(_, boolean_string, "boolean")                                     \
  V(_, boolean_to_string, "[object Boolean]")                         \
  V(_, bound__string, "bound ")                                       \
  V(_, buffer_string, "buffer")                                       \
  V(_, byte_length_string, "byteLength")                              \
  V(_, byte_offset_string, "byteOffset")                              \
  V(_, call_string, "call")                                           \
  V(_, callee_string, "callee")                                       \
  V(_, caller_string, "caller")                                       \
  V(_, character_string, "character")                                 \
  V(_, closure_string, "(closure)")                                   \
  V(_, code_string, "code")                                           \
  V(_, column_string, "column")                                       \
  V(_, CompileError_string, "CompileError")                           \
  V(_, configurable_string, "configurable")                           \
  V(_, construct_string, "construct")                                 \
  V(_, constructor_string, "constructor")                             \
  V(_, conjunction_string, "conjunction")                             \
  V(_, create_string, "create")                                       \
  V(_, Date_string, "Date")                                           \
  V(_, date_to_string, "[object Date]")                               \
  V(_, default_string, "default")                                     \
  V(_, defineProperty_string, "defineProperty")                       \
  V(_, deleteProperty_string, "deleteProperty")                       \
  V(_, disjunction_string, "disjunction")                             \
  V(_, display_name_string, "displayName")                            \
  V(_, done_string, "done")                                           \
  V(_, dot_catch_string, ".catch")                                    \
  V(_, dot_for_string, ".for")                                        \
  V(_, dot_generator_object_string, ".generator_object")              \
  V(_, dot_iterator_string, ".iterator")                              \
  V(_, dot_promise_string, ".promise")                                \
  V(_, dot_result_string, ".result")                                  \
  V(_, dot_string, ".")                                               \
  V(_, dot_switch_tag_string, ".switch_tag")                          \
  V(_, dotAll_string, "dotAll")                                       \
  V(_, entries_string, "entries")                                     \
  V(_, enumerable_string, "enumerable")                               \
  V(_, element_string, "element")                                     \
  V(_, Error_string, "Error")                                         \
  V(_, error_to_string, "[object Error]")                             \
  V(_, eval_string, "eval")                                           \
  V(_, EvalError_string, "EvalError")                                 \
  V(_, exec_string, "exec")                                           \
  V(_, false_string, "false")                                         \
  V(_, flags_string, "flags")                                         \
  V(_, Float32Array_string, "Float32Array")                           \
  V(_, Float64Array_string, "Float64Array")                           \
  V(_, from_string, "from")                                           \
  V(_, Function_string, "Function")                                   \
  V(_, function_native_code_string, "function () { [native code] }")  \
  V(_, function_string, "function")                                   \
  V(_, function_to_string, "[object Function]")                       \
  V(_, Generator_string, "Generator")                                 \
  V(_, get_space_string, "get ")                                      \
  V(_, get_string, "get")                                             \
  V(_, getOwnPropertyDescriptor_string, "getOwnPropertyDescriptor")   \
  V(_, getOwnPropertyDescriptors_string, "getOwnPropertyDescriptors") \
  V(_, getPrototypeOf_string, "getPrototypeOf")                       \
  V(_, global_string, "global")                                       \
  V(_, globalThis_string, "globalThis")                               \
  V(_, groups_string, "groups")                                       \
  V(_, has_string, "has")                                             \
  V(_, ignoreCase_string, "ignoreCase")                               \
  V(_, illegal_access_string, "illegal access")                       \
  V(_, illegal_argument_string, "illegal argument")                   \
  V(_, index_string, "index")                                         \
  V(_, Infinity_string, "Infinity")                                   \
  V(_, infinity_string, "infinity")                                   \
  V(_, input_string, "input")                                         \
  V(_, Int16Array_string, "Int16Array")                               \
  V(_, Int32Array_string, "Int32Array")                               \
  V(_, Int8Array_string, "Int8Array")                                 \
  V(_, isExtensible_string, "isExtensible")                           \
  V(_, isView_string, "isView")                                       \
  V(_, keys_string, "keys")                                           \
  V(_, lastIndex_string, "lastIndex")                                 \
  V(_, length_string, "length")                                       \
  V(_, let_string, "let")                                             \
  V(_, line_string, "line")                                           \
  V(_, LinkError_string, "LinkError")                                 \
  V(_, long_string, "long")                                           \
  V(_, Map_string, "Map")                                             \
  V(_, MapIterator_string, "Map Iterator")                            \
  V(_, message_string, "message")                                     \
  V(_, meta_string, "meta")                                           \
  V(_, minus_Infinity_string, "-Infinity")                            \
  V(_, Module_string, "Module")                                       \
  V(_, multiline_string, "multiline")                                 \
  V(_, name_string, "name")                                           \
  V(_, NaN_string, "NaN")                                             \
  V(_, narrow_string, "narrow")                                       \
  V(_, native_string, "native")                                       \
  V(_, new_target_string, ".new.target")                              \
  V(_, next_string, "next")                                           \
  V(_, NFC_string, "NFC")                                             \
  V(_, NFD_string, "NFD")                                             \
  V(_, NFKC_string, "NFKC")                                           \
  V(_, NFKD_string, "NFKD")                                           \
  V(_, not_equal, "not-equal")                                        \
  V(_, null_string, "null")                                           \
  V(_, null_to_string, "[object Null]")                               \
  V(_, Number_string, "Number")                                       \
  V(_, number_string, "number")                                       \
  V(_, number_to_string, "[object Number]")                           \
  V(_, Object_string, "Object")                                       \
  V(_, object_string, "object")                                       \
  V(_, object_to_string, "[object Object]")                           \
  V(_, of_string, "of")                                               \
  V(_, ok, "ok")                                                      \
  V(_, one_string, "1")                                               \
  V(_, ownKeys_string, "ownKeys")                                     \
  V(_, percent_string, "percent")                                     \
  V(_, position_string, "position")                                   \
  V(_, preventExtensions_string, "preventExtensions")                 \
  V(_, private_constructor_string, "#constructor")                    \
  V(_, Promise_string, "Promise")                                     \
  V(_, promise_string, "promise")                                     \
  V(_, proto_string, "__proto__")                                     \
  V(_, prototype_string, "prototype")                                 \
  V(_, proxy_string, "proxy")                                         \
  V(_, Proxy_string, "Proxy")                                         \
  V(_, query_colon_string, "(?:)")                                    \
  V(_, RangeError_string, "RangeError")                               \
  V(_, raw_string, "raw")                                             \
  V(_, ReferenceError_string, "ReferenceError")                       \
  V(_, ReflectGet_string, "Reflect.get")                              \
  V(_, ReflectHas_string, "Reflect.has")                              \
  V(_, RegExp_string, "RegExp")                                       \
  V(_, regexp_to_string, "[object RegExp]")                           \
  V(_, resolve_string, "resolve")                                     \
  V(_, return_string, "return")                                       \
  V(_, revoke_string, "revoke")                                       \
  V(_, RuntimeError_string, "RuntimeError")                           \
  V(_, Script_string, "Script")                                       \
  V(_, script_string, "script")                                       \
  V(_, short_string, "short")                                         \
  V(_, Set_string, "Set")                                             \
  V(_, sentence_string, "sentence")                                   \
  V(_, set_space_string, "set ")                                      \
  V(_, set_string, "set")                                             \
  V(_, SetIterator_string, "Set Iterator")                            \
  V(_, setPrototypeOf_string, "setPrototypeOf")                       \
  V(_, SharedArrayBuffer_string, "SharedArrayBuffer")                 \
  V(_, source_string, "source")                                       \
  V(_, sourceText_string, "sourceText")                               \
  V(_, stack_string, "stack")                                         \
  V(_, stackTraceLimit_string, "stackTraceLimit")                     \
  V(_, star_default_star_string, "*default*")                         \
  V(_, sticky_string, "sticky")                                       \
  V(_, String_string, "String")                                       \
  V(_, string_string, "string")                                       \
  V(_, string_to_string, "[object String]")                           \
  V(_, symbol_species_string, "[Symbol.species]")                     \
  V(_, Symbol_string, "Symbol")                                       \
  V(_, symbol_string, "symbol")                                       \
  V(_, SyntaxError_string, "SyntaxError")                             \
  V(_, target_string, "target")                                       \
  V(_, then_string, "then")                                           \
  V(_, this_function_string, ".this_function")                        \
  V(_, this_string, "this")                                           \
  V(_, throw_string, "throw")                                         \
  V(_, timed_out, "timed-out")                                        \
  V(_, toJSON_string, "toJSON")                                       \
  V(_, toString_string, "toString")                                   \
  V(_, true_string, "true")                                           \
  V(_, TypeError_string, "TypeError")                                 \
  V(_, Uint16Array_string, "Uint16Array")                             \
  V(_, Uint32Array_string, "Uint32Array")                             \
  V(_, Uint8Array_string, "Uint8Array")                               \
  V(_, Uint8ClampedArray_string, "Uint8ClampedArray")                 \
  V(_, undefined_string, "undefined")                                 \
  V(_, undefined_to_string, "[object Undefined]")                     \
  V(_, unicode_string, "unicode")                                     \
  V(_, URIError_string, "URIError")                                   \
  V(_, value_string, "value")                                         \
  V(_, valueOf_string, "valueOf")                                     \
  V(_, values_string, "values")                                       \
  V(_, WeakCell_string, "WeakCell")                                   \
  V(_, WeakFactory_string, "WeakFactory")                             \
  V(_, WeakMap_string, "WeakMap")                                     \
  V(_, WeakRef_string, "WeakRef")                                     \
  V(_, WeakSet_string, "WeakSet")                                     \
  V(_, week_string, "week")                                           \
  V(_, word_string, "word")                                           \
  V(_, writable_string, "writable")                                   \
  V(_, zero_string, "0")

#define PRIVATE_SYMBOL_LIST_GENERATOR(V, _) \
  V(_, call_site_frame_array_symbol)        \
  V(_, call_site_frame_index_symbol)        \
  V(_, console_context_id_symbol)           \
  V(_, console_context_name_symbol)         \
  V(_, class_fields_symbol)                 \
  V(_, class_positions_symbol)              \
  V(_, detailed_stack_trace_symbol)         \
  V(_, elements_transition_symbol)          \
  V(_, error_end_pos_symbol)                \
  V(_, error_script_symbol)                 \
  V(_, error_start_pos_symbol)              \
  V(_, frozen_symbol)                       \
  V(_, generic_symbol)                      \
  V(_, home_object_symbol)                  \
  V(_, interpreter_trampoline_symbol)       \
  V(_, megamorphic_symbol)                  \
  V(_, native_context_index_symbol)         \
  V(_, nonextensible_symbol)                \
  V(_, not_mapped_symbol)                   \
  V(_, premonomorphic_symbol)               \
  V(_, promise_debug_marker_symbol)         \
  V(_, promise_forwarding_handler_symbol)   \
  V(_, promise_handled_by_symbol)           \
  V(_, sealed_symbol)                       \
  V(_, stack_trace_symbol)                  \
  V(_, strict_function_transition_symbol)   \
  V(_, wasm_exception_tag_symbol)           \
  V(_, wasm_exception_values_symbol)        \
  V(_, uninitialized_symbol)

#define PUBLIC_SYMBOL_LIST_GENERATOR(V, _)          \
  V(_, async_iterator_symbol, Symbol.asyncIterator) \
  V(_, iterator_symbol, Symbol.iterator)            \
  V(_, intl_fallback_symbol, IntlFallback)          \
  V(_, match_all_symbol, Symbol.matchAll)           \
  V(_, match_symbol, Symbol.match)                  \
  V(_, replace_symbol, Symbol.replace)              \
  V(_, search_symbol, Symbol.search)                \
  V(_, species_symbol, Symbol.species)              \
  V(_, split_symbol, Symbol.split)                  \
  V(_, to_primitive_symbol, Symbol.toPrimitive)     \
  V(_, unscopables_symbol, Symbol.unscopables)

// Well-Known Symbols are "Public" symbols, which have a bit set which causes
// them to produce an undefined value when a load results in a failed access
// check. Because this behaviour is not specified properly as of yet, it only
// applies to a subset of spec-defined Well-Known Symbols.
#define WELL_KNOWN_SYMBOL_LIST_GENERATOR(V, _)                 \
  V(_, has_instance_symbol, Symbol.hasInstance)                \
  V(_, is_concat_spreadable_symbol, Symbol.isConcatSpreadable) \
  V(_, to_string_tag_symbol, Symbol.toStringTag)

#define INCREMENTAL_SCOPES(F)                                      \
  /* MC_INCREMENTAL is the top-level incremental marking scope. */ \
  F(MC_INCREMENTAL)                                                \
  F(MC_INCREMENTAL_EMBEDDER_PROLOGUE)                              \
  F(MC_INCREMENTAL_EMBEDDER_TRACING)                               \
  F(MC_INCREMENTAL_EXTERNAL_EPILOGUE)                              \
  F(MC_INCREMENTAL_EXTERNAL_PROLOGUE)                              \
  F(MC_INCREMENTAL_FINALIZE)                                       \
  F(MC_INCREMENTAL_FINALIZE_BODY)                                  \
  F(MC_INCREMENTAL_LAYOUT_CHANGE)                                  \
  F(MC_INCREMENTAL_START)                                          \
  F(MC_INCREMENTAL_SWEEPING)

#define TOP_MC_SCOPES(F) \
  F(MC_CLEAR)            \
  F(MC_EPILOGUE)         \
  F(MC_EVACUATE)         \
  F(MC_FINISH)           \
  F(MC_MARK)             \
  F(MC_PROLOGUE)         \
  F(MC_SWEEP)

#define TRACER_SCOPES(F)                             \
  INCREMENTAL_SCOPES(F)                              \
  F(HEAP_EMBEDDER_TRACING_EPILOGUE)                  \
  F(HEAP_EPILOGUE)                                   \
  F(HEAP_EPILOGUE_REDUCE_NEW_SPACE)                  \
  F(HEAP_EXTERNAL_EPILOGUE)                          \
  F(HEAP_EXTERNAL_PROLOGUE)                          \
  F(HEAP_EXTERNAL_WEAK_GLOBAL_HANDLES)               \
  F(HEAP_PROLOGUE)                                   \
  TOP_MC_SCOPES(F)                                   \
  F(MC_CLEAR_DEPENDENT_CODE)                         \
  F(MC_CLEAR_FLUSHABLE_BYTECODE)                     \
  F(MC_CLEAR_MAPS)                                   \
  F(MC_CLEAR_SLOTS_BUFFER)                           \
  F(MC_CLEAR_STORE_BUFFER)                           \
  F(MC_CLEAR_STRING_TABLE)                           \
  F(MC_CLEAR_WEAK_COLLECTIONS)                       \
  F(MC_CLEAR_WEAK_LISTS)                             \
  F(MC_CLEAR_WEAK_REFERENCES)                        \
  F(MC_EVACUATE_CANDIDATES)                          \
  F(MC_EVACUATE_CLEAN_UP)                            \
  F(MC_EVACUATE_COPY)                                \
  F(MC_EVACUATE_EPILOGUE)                            \
  F(MC_EVACUATE_PROLOGUE)                            \
  F(MC_EVACUATE_REBALANCE)                           \
  F(MC_EVACUATE_UPDATE_POINTERS)                     \
  F(MC_EVACUATE_UPDATE_POINTERS_SLOTS_MAIN)          \
  F(MC_EVACUATE_UPDATE_POINTERS_SLOTS_MAP_SPACE)     \
  F(MC_EVACUATE_UPDATE_POINTERS_TO_NEW_ROOTS)        \
  F(MC_EVACUATE_UPDATE_POINTERS_WEAK)                \
  F(MC_MARK_EMBEDDER_PROLOGUE)                       \
  F(MC_MARK_EMBEDDER_TRACING)                        \
  F(MC_MARK_EMBEDDER_TRACING_CLOSURE)                \
  F(MC_MARK_FINISH_INCREMENTAL)                      \
  F(MC_MARK_MAIN)                                    \
  F(MC_MARK_ROOTS)                                   \
  F(MC_MARK_WEAK_CLOSURE)                            \
  F(MC_MARK_WEAK_CLOSURE_EPHEMERON)                  \
  F(MC_MARK_WEAK_CLOSURE_EPHEMERON_MARKING)          \
  F(MC_MARK_WEAK_CLOSURE_EPHEMERON_LINEAR)           \
  F(MC_MARK_WEAK_CLOSURE_WEAK_HANDLES)               \
  F(MC_MARK_WEAK_CLOSURE_WEAK_ROOTS)                 \
  F(MC_MARK_WEAK_CLOSURE_HARMONY)                    \
  F(MC_SWEEP_CODE)                                   \
  F(MC_SWEEP_MAP)                                    \
  F(MC_SWEEP_OLD)                                    \
  F(MINOR_MC)                                        \
  F(MINOR_MC_CLEAR)                                  \
  F(MINOR_MC_CLEAR_STRING_TABLE)                     \
  F(MINOR_MC_CLEAR_WEAK_LISTS)                       \
  F(MINOR_MC_EVACUATE)                               \
  F(MINOR_MC_EVACUATE_CLEAN_UP)                      \
  F(MINOR_MC_EVACUATE_COPY)                          \
  F(MINOR_MC_EVACUATE_EPILOGUE)                      \
  F(MINOR_MC_EVACUATE_PROLOGUE)                      \
  F(MINOR_MC_EVACUATE_REBALANCE)                     \
  F(MINOR_MC_EVACUATE_UPDATE_POINTERS)               \
  F(MINOR_MC_EVACUATE_UPDATE_POINTERS_SLOTS)         \
  F(MINOR_MC_EVACUATE_UPDATE_POINTERS_TO_NEW_ROOTS)  \
  F(MINOR_MC_EVACUATE_UPDATE_POINTERS_WEAK)          \
  F(MINOR_MC_MARK)                                   \
  F(MINOR_MC_MARK_GLOBAL_HANDLES)                    \
  F(MINOR_MC_MARK_SEED)                              \
  F(MINOR_MC_MARK_ROOTS)                             \
  F(MINOR_MC_MARK_WEAK)                              \
  F(MINOR_MC_MARKING_DEQUE)                          \
  F(MINOR_MC_RESET_LIVENESS)                         \
  F(MINOR_MC_SWEEPING)                               \
  F(SCAVENGER_FAST_PROMOTE)                          \
  F(SCAVENGER_SCAVENGE)                              \
  F(SCAVENGER_PROCESS_ARRAY_BUFFERS)                 \
  F(SCAVENGER_SCAVENGE_WEAK_GLOBAL_HANDLES_IDENTIFY) \
  F(SCAVENGER_SCAVENGE_WEAK_GLOBAL_HANDLES_PROCESS)  \
  F(SCAVENGER_SCAVENGE_PARALLEL)                     \
  F(SCAVENGER_SCAVENGE_ROOTS)                        \
  F(SCAVENGER_SCAVENGE_UPDATE_REFS)                  \
  F(SCAVENGER_SCAVENGE_WEAK)                         \
  F(SCAVENGER_SCAVENGE_FINALIZE)

#define TRACER_BACKGROUND_SCOPES(F)               \
  F(BACKGROUND_ARRAY_BUFFER_FREE)                 \
  F(BACKGROUND_STORE_BUFFER)                      \
  F(BACKGROUND_UNMAPPER)                          \
  F(MC_BACKGROUND_EVACUATE_COPY)                  \
  F(MC_BACKGROUND_EVACUATE_UPDATE_POINTERS)       \
  F(MC_BACKGROUND_MARKING)                        \
  F(MC_BACKGROUND_SWEEPING)                       \
  F(MINOR_MC_BACKGROUND_EVACUATE_COPY)            \
  F(MINOR_MC_BACKGROUND_EVACUATE_UPDATE_POINTERS) \
  F(MINOR_MC_BACKGROUND_MARKING)                  \
  F(SCAVENGER_BACKGROUND_SCAVENGE_PARALLEL)

#endif  // V8_HEAP_SYMBOLS_H_
