1// Copyright 2018 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// Categories for instance types. 6export const CATEGORIES = new Map([ 7 [ 8 'user', new Set([ 9 'CONS_ONE_BYTE_STRING_TYPE', 10 'CONS_STRING_TYPE', 11 'DESCRIPTOR_ARRAY_TYPE', 12 'ELEMENTS_TYPE', 13 'EXTERNAL_INTERNALIZED_STRING_TYPE', 14 'EXTERNAL_ONE_BYTE_INTERNALIZED_STRING_TYPE', 15 'EXTERNAL_ONE_BYTE_STRING_TYPE', 16 'EXTERNAL_STRING_TYPE', 17 'EXTERNAL_STRING_WITH_ONE_BYTE_DATA_TYPE', 18 'FIXED_BIGINT64_ARRAY_TYPE', 19 'FIXED_BIGUINT64_ARRAY_TYPE', 20 'FIXED_DOUBLE_ARRAY_TYPE', 21 'FIXED_FLOAT32_ARRAY_TYPE', 22 'FIXED_FLOAT64_ARRAY_TYPE', 23 'FIXED_INT16_ARRAY_TYPE', 24 'FIXED_INT32_ARRAY_TYPE', 25 'FIXED_INT8_ARRAY_TYPE', 26 'FIXED_UINT16_ARRAY_TYPE', 27 'FIXED_UINT32_ARRAY_TYPE', 28 'FIXED_UINT8_ARRAY_TYPE', 29 'FIXED_UINT8_CLAMPED_ARRAY_TYPE', 30 'FUNCTION_CONTEXT_TYPE', 31 'GLOBAL_ELEMENTS_TYPE', 32 'GLOBAL_PROPERTIES_TYPE', 33 'HEAP_NUMBER_TYPE', 34 'INTERNALIZED_STRING_TYPE', 35 'JS_ARGUMENTS_OBJECT_TYPE', 36 'JS_ARRAY_BUFFER_TYPE', 37 'JS_ARRAY_ITERATOR_TYPE', 38 'JS_ARRAY_TYPE', 39 'JS_BOUND_FUNCTION_TYPE', 40 'JS_DATE_TYPE', 41 'JS_ERROR_TYPE', 42 'JS_FAST_ARRAY_KEY_ITERATOR_TYPE', 43 'JS_FAST_ARRAY_VALUE_ITERATOR_TYPE', 44 'JS_FAST_HOLEY_ARRAY_VALUE_ITERATOR_TYPE', 45 'JS_FAST_HOLEY_SMI_ARRAY_VALUE_ITERATOR_TYPE', 46 'JS_FAST_SMI_ARRAY_KEY_VALUE_ITERATOR_TYPE', 47 'JS_FAST_SMI_ARRAY_VALUE_ITERATOR_TYPE', 48 'JS_FUNCTION_TYPE', 49 'JS_GENERATOR_OBJECT_TYPE', 50 'JS_GENERIC_ARRAY_VALUE_ITERATOR_TYPE', 51 'JS_GLOBAL_OBJECT_TYPE', 52 'JS_GLOBAL_PROXY_TYPE', 53 'JS_COLLATOR_TYPE', 54 'JS_DATE_TIME_FORMAT_TYPE', 55 'JS_DISPLAY_NAMES_TYPE', 56 'JS_LIST_FORMAT_TYPE', 57 'JS_LOCALE_TYPE', 58 'JS_NUMBER_FORMAT_TYPE', 59 'JS_PLURAL_RULES_TYPE', 60 'JS_RELATIVE_TIME_FORMAT_TYPE', 61 'JS_SEGMENT_ITERATOR_TYPE', 62 'JS_SEGMENTER_TYPE', 63 'JS_SEGMENTS_TYPE', 64 'JS_V8_BREAK_ITERATOR_TYPE', 65 'JS_MAP_KEY_ITERATOR_TYPE', 66 'JS_MAP_KEY_VALUE_ITERATOR_TYPE', 67 'JS_MAP_TYPE', 68 'JS_MAP_VALUE_ITERATOR_TYPE', 69 'JS_MESSAGE_OBJECT_TYPE', 70 'JS_OBJECT_TYPE', 71 'JS_PRIMITIVE_WRAPPER_TYPE', 72 'JS_PROMISE_TYPE', 73 'JS_PROXY_TYPE', 74 'JS_REG_EXP_TYPE', 75 'JS_SET_KEY_VALUE_ITERATOR_TYPE', 76 'JS_SET_TYPE', 77 'JS_SET_VALUE_ITERATOR_TYPE', 78 'JS_STRING_ITERATOR_TYPE', 79 'JS_TO_WASM_FUNCTION', 80 'JS_TYPED_ARRAY_TYPE', 81 'JS_WEAK_MAP_TYPE', 82 'HEAP_NUMBER_TYPE', 83 'NATIVE_CONTEXT_TYPE', 84 'OBJECT_PROPERTY_DICTIONARY_TYPE', 85 'ONE_BYTE_INTERNALIZED_STRING_TYPE', 86 'ONE_BYTE_STRING_TYPE', 87 'OTHER_CONTEXT_TYPE', 88 'PROPERTY_ARRAY_TYPE', 89 'SLICED_ONE_BYTE_STRING_TYPE', 90 'SLICED_STRING_TYPE', 91 'STRING_EXTERNAL_RESOURCE_ONE_BYTE_TYPE', 92 'STRING_EXTERNAL_RESOURCE_TWO_BYTE_TYPE', 93 'STRING_TYPE', 94 'SYMBOL_TYPE', 95 'THIN_ONE_BYTE_STRING_TYPE', 96 'THIN_STRING_TYPE', 97 'UNCACHED_EXTERNAL_INTERNALIZED_STRING_TYPE', 98 'UNCACHED_EXTERNAL_ONE_BYTE_INTERNALIZED_STRING_TYPE', 99 'UNCACHED_EXTERNAL_ONE_BYTE_STRING_TYPE', 100 'UNCACHED_EXTERNAL_STRING_TYPE', 101 'WASM_INSTANCE_OBJECT_TYPE', 102 'WASM_MEMORY_OBJECT_TYPE', 103 'WASM_MODULE_OBJECT_TYPE', 104 ]) 105 ], 106 [ 107 'system', new Set([ 108 'ACCESS_CHECK_INFO_TYPE', 109 'ACCESSOR_INFO_TYPE', 110 'ACCESSOR_PAIR_TYPE', 111 'ALLOCATION_MEMENTO_TYPE', 112 'ALLOCATION_SITE_TYPE', 113 'ARRAY_BOILERPLATE_DESCRIPTION_TYPE', 114 'ARRAY_BOILERPLATE_DESCRIPTION_ELEMENTS_TYPE', 115 'BOILERPLATE_ELEMENTS_TYPE', 116 'BOILERPLATE_PROPERTY_ARRAY_TYPE', 117 'BOILERPLATE_PROPERTY_DICTIONARY_TYPE', 118 'BYTE_ARRAY_TYPE', 119 'CALL_HANDLER_INFO_TYPE', 120 'CALL_SITE_INFO_TYPE', 121 'CELL_TYPE', 122 'CODE_STUBS_TABLE_TYPE', 123 'CONTEXT_EXTENSION_TYPE', 124 'ENUM_CACHE_TYPE', 125 'ENUM_INDICES_CACHE_TYPE', 126 'FOREIGN_TYPE', 127 'FUNCTION_TEMPLATE_INFO_ENTRIES_TYPE', 128 'FUNCTION_TEMPLATE_INFO_TYPE', 129 'INTERCEPTOR_INFO_TYPE', 130 'JS_API_OBJECT_TYPE', 131 'JS_ARRAY_BOILERPLATE_TYPE', 132 'JS_OBJECT_BOILERPLATE_TYPE', 133 'JS_SPECIAL_API_OBJECT_TYPE', 134 'MAP_TYPE', 135 'NUMBER_STRING_CACHE_TYPE', 136 'OBJECT_BOILERPLATE_DESCRIPTION_TYPE', 137 'OBJECT_TEMPLATE_INFO_TYPE', 138 'OBJECT_TO_CODE_TYPE', 139 'ODDBALL_TYPE', 140 'PROMISE_REACTION_JOB_INFO_TYPE', 141 'PROMISE_RESOLVE_THENABLE_JOB_INFO_TYPE', 142 'PROPERTY_CELL_TYPE', 143 'PROTOTYPE_INFO_TYPE', 144 'PROTOTYPE_USERS_TYPE', 145 'REGEXP_MULTIPLE_CACHE_TYPE', 146 'RETAINED_MAPS_TYPE', 147 'SCOPE_INFO_TYPE', 148 'SCRIPT_LIST_TYPE', 149 'SCRIPT_SHARED_FUNCTION_INFOS_TYPE', 150 'SERIALIZED_OBJECTS_TYPE', 151 'SINGLE_CHARACTER_STRING_CACHE_TYPE', 152 'STRING_SPLIT_CACHE_TYPE', 153 'STRING_TABLE_TYPE', 154 'TRANSITION_ARRAY_TYPE', 155 'WEAK_NEW_SPACE_OBJECT_TO_CODE_TYPE', 156 ]) 157 ], 158 [ 159 'code', new Set([ 160 'BUILTIN', 161 'BYTECODE_ARRAY_CONSTANT_POOL_TYPE', 162 'BYTECODE_ARRAY_HANDLER_TABLE_TYPE', 163 'BYTECODE_ARRAY_TYPE', 164 'BYTECODE_HANDLER', 165 'CODE_DATA_CONTAINER_TYPE', 166 'DEOPTIMIZATION_DATA_TYPE', 167 'EMBEDDED_OBJECT_TYPE', 168 'FEEDBACK_CELL_TYPE', 169 'FEEDBACK_METADATA_TYPE', 170 'FEEDBACK_VECTOR_ENTRY_TYPE', 171 'FEEDBACK_VECTOR_HEADER_TYPE', 172 'FEEDBACK_VECTOR_SLOT_CALL_TYPE', 173 'FEEDBACK_VECTOR_SLOT_CALL_UNUSED_TYPE', 174 'FEEDBACK_VECTOR_SLOT_ENUM_TYPE', 175 'FEEDBACK_VECTOR_SLOT_LOAD_TYPE', 176 'FEEDBACK_VECTOR_SLOT_LOAD_UNUSED_TYPE', 177 'FEEDBACK_VECTOR_SLOT_OTHER_TYPE', 178 'FEEDBACK_VECTOR_SLOT_STORE_TYPE', 179 'FEEDBACK_VECTOR_SLOT_STORE_UNUSED_TYPE', 180 'FEEDBACK_VECTOR_TYPE', 181 'LOAD_HANDLER_TYPE', 182 'NOSCRIPT_SHARED_FUNCTION_INFOS_TYPE', 183 'OPTIMIZED_CODE_LITERALS_TYPE', 184 'OPTIMIZED_FUNCTION', 185 'PREPARSE_DATA_TYPE', 186 'REGEXP', 187 'RELOC_INFO_TYPE', 188 'SCRIPT_SOURCE_EXTERNAL_ONE_BYTE_TYPE', 189 'SCRIPT_SOURCE_EXTERNAL_TWO_BYTE_TYPE', 190 'SCRIPT_SOURCE_EXTERNAL_TYPE', 191 'SCRIPT_SOURCE_NON_EXTERNAL_ONE_BYTE_TYPE', 192 'SCRIPT_SOURCE_NON_EXTERNAL_TWO_BYTE_TYPE', 193 'SCRIPT_TYPE', 194 'SHARED_FUNCTION_INFO_TYPE', 195 'SOURCE_POSITION_TABLE_TYPE', 196 'STORE_HANDLER_TYPE', 197 'STUB', 198 'UNCOMPILED_DATA_WITHOUT_PREPARSE_DATA_TYPE', 199 'UNCOMPILED_DATA_WITH_PREPARSE_DATA_TYPE', 200 'UNCOMPILED_JS_FUNCTION_TYPE', 201 'UNCOMPILED_SHARED_FUNCTION_INFO_TYPE' 202 ]) 203 ], 204 ['unclassified', new Set()], 205]); 206 207// Maps category to description text that is shown in html. 208export const CATEGORY_NAMES = new Map([ 209 ['user', 'JS'], 210 ['system', 'Metadata'], 211 ['code', 'Code'], 212 ['unclassified', 'Unclassified'], 213]); 214