Namespaces | |
namespace | wasm |
Typedefs | |
typedef uintptr_t | Address |
using | PlatformSmiTagging = SmiTagging< kApiTaggedSize > |
using | SandboxedPointer_t = Address |
using | ExternalPointerHandle = uint32_t |
using | ExternalPointer_t = Address |
using | CppHeapPointerHandle = uint32_t |
using | CppHeapPointer_t = Address |
using | IndirectPointerHandle = uint32_t |
using | TrustedPointerHandle = IndirectPointerHandle |
using | CodePointerHandle = IndirectPointerHandle |
Enumerations | |
enum | ExternalPointerTag : uint64_t { kExternalPointerNullTag = ((static_cast<uint64_t>( 0b00000000 ) << kExternalPointerTagShift) | ( 1 ? kExternalPointerMarkBit : 0)) , kAnyExternalPointerTag = ((static_cast<uint64_t>( 0b11111111 ) << kExternalPointerTagShift) | ( 1 ? kExternalPointerMarkBit : 0)) , kAnyForeignTag = kAnyExternalPointerTag , kExternalPointerFreeEntryTag = ((static_cast<uint64_t>( 0b11111111 ) << kExternalPointerTagShift) | ( 0 ? kExternalPointerMarkBit : 0)) , kExternalPointerEvacuationEntryTag = ((static_cast<uint64_t>( 0b11111110 ) << kExternalPointerTagShift) | ( 1 ? kExternalPointerMarkBit : 0)) , kExternalPointerZappedEntryTag = ((static_cast<uint64_t>( 0b11111101 ) << kExternalPointerTagShift) | ( 0 ? kExternalPointerMarkBit : 0)) , kFirstSharedTag = ((kAllTagsForAndBasedTypeChecking[ 0 ] << kExternalPointerTagShift) | kExternalPointerMarkBit) , kWaiterQueueNodeTag = ((kAllTagsForAndBasedTypeChecking[ 0 ] << kExternalPointerTagShift) | kExternalPointerMarkBit) , kExternalStringResourceTag = ((kAllTagsForAndBasedTypeChecking[ 1 ] << kExternalPointerTagShift) | kExternalPointerMarkBit) , kExternalStringResourceDataTag = ((kAllTagsForAndBasedTypeChecking[ 2 ] << kExternalPointerTagShift) | kExternalPointerMarkBit) , kLastSharedTag = ((kAllTagsForAndBasedTypeChecking[ 2 ] << kExternalPointerTagShift) | kExternalPointerMarkBit) , kNativeContextMicrotaskQueueTag = ((kAllTagsForAndBasedTypeChecking[ 5 ] << kExternalPointerTagShift) | kExternalPointerMarkBit) , kEmbedderDataSlotPayloadTag = ((kAllTagsForAndBasedTypeChecking[ 6 ] << kExternalPointerTagShift) | kExternalPointerMarkBit) , kExternalObjectValueTag = ((kAllTagsForAndBasedTypeChecking[ 7 ] << kExternalPointerTagShift) | kExternalPointerMarkBit) , kFunctionTemplateInfoCallbackTag = ((kAllTagsForAndBasedTypeChecking[ 8 ] << kExternalPointerTagShift) | kExternalPointerMarkBit) , kAccessorInfoGetterTag = ((kAllTagsForAndBasedTypeChecking[ 9 ] << kExternalPointerTagShift) | kExternalPointerMarkBit) , kAccessorInfoSetterTag = ((kAllTagsForAndBasedTypeChecking[ 10 ] << kExternalPointerTagShift) | kExternalPointerMarkBit) , kWasmInternalFunctionCallTargetTag = ((kAllTagsForAndBasedTypeChecking[ 11 ] << kExternalPointerTagShift) | kExternalPointerMarkBit) , kWasmTypeInfoNativeTypeTag = ((kAllTagsForAndBasedTypeChecking[ 12 ] << kExternalPointerTagShift) | kExternalPointerMarkBit) , kWasmExportedFunctionDataSignatureTag = ((kAllTagsForAndBasedTypeChecking[ 13 ] << kExternalPointerTagShift) | kExternalPointerMarkBit) , kWasmContinuationJmpbufTag = ((kAllTagsForAndBasedTypeChecking[ 14 ] << kExternalPointerTagShift) | kExternalPointerMarkBit) , kWasmStackMemoryTag = ((kAllTagsForAndBasedTypeChecking[ 15 ] << kExternalPointerTagShift) | kExternalPointerMarkBit) , kWasmIndirectFunctionTargetTag = ((kAllTagsForAndBasedTypeChecking[ 16 ] << kExternalPointerTagShift) | kExternalPointerMarkBit) , kGenericForeignTag = ((kAllTagsForAndBasedTypeChecking[ 20 ] << kExternalPointerTagShift) | kExternalPointerMarkBit) , kApiNamedPropertyQueryCallbackTag = ((kAllTagsForAndBasedTypeChecking[ 21 ] << kExternalPointerTagShift) | kExternalPointerMarkBit) , kApiNamedPropertyGetterCallbackTag = ((kAllTagsForAndBasedTypeChecking[ 22 ] << kExternalPointerTagShift) | kExternalPointerMarkBit) , kApiNamedPropertySetterCallbackTag = ((kAllTagsForAndBasedTypeChecking[ 23 ] << kExternalPointerTagShift) | kExternalPointerMarkBit) , kApiNamedPropertyDescriptorCallbackTag = ((kAllTagsForAndBasedTypeChecking[ 24 ] << kExternalPointerTagShift) | kExternalPointerMarkBit) , kApiNamedPropertyDefinerCallbackTag = ((kAllTagsForAndBasedTypeChecking[ 25 ] << kExternalPointerTagShift) | kExternalPointerMarkBit) , kApiNamedPropertyDeleterCallbackTag = ((kAllTagsForAndBasedTypeChecking[ 26 ] << kExternalPointerTagShift) | kExternalPointerMarkBit) , kApiIndexedPropertyQueryCallbackTag = ((kAllTagsForAndBasedTypeChecking[ 27 ] << kExternalPointerTagShift) | kExternalPointerMarkBit) , kApiIndexedPropertyGetterCallbackTag = ((kAllTagsForAndBasedTypeChecking[ 28 ] << kExternalPointerTagShift) | kExternalPointerMarkBit) , kApiIndexedPropertySetterCallbackTag = ((kAllTagsForAndBasedTypeChecking[ 29 ] << kExternalPointerTagShift) | kExternalPointerMarkBit) , kApiIndexedPropertyDescriptorCallbackTag = ((kAllTagsForAndBasedTypeChecking[ 30 ] << kExternalPointerTagShift) | kExternalPointerMarkBit) , kApiIndexedPropertyDefinerCallbackTag = ((kAllTagsForAndBasedTypeChecking[ 31 ] << kExternalPointerTagShift) | kExternalPointerMarkBit) , kApiIndexedPropertyDeleterCallbackTag = ((kAllTagsForAndBasedTypeChecking[ 32 ] << kExternalPointerTagShift) | kExternalPointerMarkBit) , kApiIndexedPropertyEnumeratorCallbackTag = ((kAllTagsForAndBasedTypeChecking[ 33 ] << kExternalPointerTagShift) | kExternalPointerMarkBit) , kApiAccessCheckCallbackTag = ((kAllTagsForAndBasedTypeChecking[ 34 ] << kExternalPointerTagShift) | kExternalPointerMarkBit) , kApiAbortScriptExecutionCallbackTag = ((kAllTagsForAndBasedTypeChecking[ 35 ] << kExternalPointerTagShift) | kExternalPointerMarkBit) , kSyntheticModuleTag = ((kAllTagsForAndBasedTypeChecking[ 36 ] << kExternalPointerTagShift) | kExternalPointerMarkBit) , kMicrotaskCallbackTag = ((kAllTagsForAndBasedTypeChecking[ 37 ] << kExternalPointerTagShift) | kExternalPointerMarkBit) , kMicrotaskCallbackDataTag = ((kAllTagsForAndBasedTypeChecking[ 38 ] << kExternalPointerTagShift) | kExternalPointerMarkBit) , kCFunctionTag = ((kAllTagsForAndBasedTypeChecking[ 39 ] << kExternalPointerTagShift) | kExternalPointerMarkBit) , kCFunctionInfoTag = ((kAllTagsForAndBasedTypeChecking[ 40 ] << kExternalPointerTagShift) | kExternalPointerMarkBit) , kMessageListenerTag = ((kAllTagsForAndBasedTypeChecking[ 41 ] << kExternalPointerTagShift) | kExternalPointerMarkBit) , kWaiterQueueForeignTag = ((kAllTagsForAndBasedTypeChecking[ 42 ] << kExternalPointerTagShift) | kExternalPointerMarkBit) , kFirstManagedResourceTag = ((kAllTagsForAndBasedTypeChecking[ 50 ] << kExternalPointerTagShift) | kExternalPointerMarkBit) , kGenericManagedTag = ((kAllTagsForAndBasedTypeChecking[ 50 ] << kExternalPointerTagShift) | kExternalPointerMarkBit) , kWasmWasmStreamingTag = ((kAllTagsForAndBasedTypeChecking[ 51 ] << kExternalPointerTagShift) | kExternalPointerMarkBit) , kWasmFuncDataTag = ((kAllTagsForAndBasedTypeChecking[ 52 ] << kExternalPointerTagShift) | kExternalPointerMarkBit) , kWasmManagedDataTag = ((kAllTagsForAndBasedTypeChecking[ 53 ] << kExternalPointerTagShift) | kExternalPointerMarkBit) , kWasmNativeModuleTag = ((kAllTagsForAndBasedTypeChecking[ 54 ] << kExternalPointerTagShift) | kExternalPointerMarkBit) , kIcuBreakIteratorTag = ((kAllTagsForAndBasedTypeChecking[ 55 ] << kExternalPointerTagShift) | kExternalPointerMarkBit) , kIcuUnicodeStringTag = ((kAllTagsForAndBasedTypeChecking[ 56 ] << kExternalPointerTagShift) | kExternalPointerMarkBit) , kIcuListFormatterTag = ((kAllTagsForAndBasedTypeChecking[ 57 ] << kExternalPointerTagShift) | kExternalPointerMarkBit) , kIcuLocaleTag = ((kAllTagsForAndBasedTypeChecking[ 58 ] << kExternalPointerTagShift) | kExternalPointerMarkBit) , kIcuSimpleDateFormatTag = ((kAllTagsForAndBasedTypeChecking[ 59 ] << kExternalPointerTagShift) | kExternalPointerMarkBit) , kIcuDateIntervalFormatTag = ((kAllTagsForAndBasedTypeChecking[ 60 ] << kExternalPointerTagShift) | kExternalPointerMarkBit) , kIcuRelativeDateTimeFormatterTag = ((kAllTagsForAndBasedTypeChecking[ 61 ] << kExternalPointerTagShift) | kExternalPointerMarkBit) , kIcuLocalizedNumberFormatterTag = ((kAllTagsForAndBasedTypeChecking[ 62 ] << kExternalPointerTagShift) | kExternalPointerMarkBit) , kIcuPluralRulesTag = ((kAllTagsForAndBasedTypeChecking[ 63 ] << kExternalPointerTagShift) | kExternalPointerMarkBit) , kIcuCollatorTag = ((kAllTagsForAndBasedTypeChecking[ 64 ] << kExternalPointerTagShift) | kExternalPointerMarkBit) , kDisplayNamesInternalTag = ((kAllTagsForAndBasedTypeChecking[ 65 ] << kExternalPointerTagShift) | kExternalPointerMarkBit) , kArrayBufferExtensionTag = ((kAllTagsForAndBasedTypeChecking[ 66 ] << kExternalPointerTagShift) | kExternalPointerMarkBit) , kLastManagedResourceTag = ((kAllTagsForAndBasedTypeChecking[ 66 ] << kExternalPointerTagShift) | kExternalPointerMarkBit) } |
enum class | TracedReferenceStoreMode { kInitializingStore , kAssigningStore } |
enum class | TracedReferenceHandling { kDefault , kDroppable } |
Functions | |
constexpr bool | PointerCompressionIsEnabled () |
constexpr bool | SmiValuesAre31Bits () |
constexpr bool | SmiValuesAre32Bits () |
constexpr bool | Is64 () |
constexpr bool | SandboxIsEnabled () |
internal::Isolate * | IsolateFromNeverReadOnlySpaceObject (Address obj) |
bool | ShouldThrowOnError (internal::Isolate *isolate) |
template<class T > | |
void | PerformCastCheck (T *data) |
void | VerifyHandleIsNonEmpty (bool is_empty) |
void | PrintFunctionCallbackInfo (void *function_callback_info) |
void | PrintPropertyCallbackInfo (void *property_callback_info) |
Address * | GlobalizeTracedReference (Isolate *isolate, Address value, Address *slot, TracedReferenceStoreMode store_mode, TracedReferenceHandling reference_handling) |
void | MoveTracedReference (Address **from, Address **to) |
void | CopyTracedReference (const Address *const *from, Address **to) |
void | DisposeTracedReference (Address *global_handle) |
Variables | |
constexpr int | KB = 1024 |
constexpr int | MB = KB * 1024 |
constexpr int | GB = MB * 1024 |
const int | kApiSystemPointerSize = sizeof(void*) |
const int | kApiDoubleSize = sizeof(double) |
const int | kApiInt32Size = sizeof(int32_t) |
const int | kApiInt64Size = sizeof(int64_t) |
const int | kApiSizetSize = sizeof(size_t) |
const int | kHeapObjectTag = 1 |
const int | kWeakHeapObjectTag = 3 |
const int | kHeapObjectTagSize = 2 |
const intptr_t | kHeapObjectTagMask = (1 << kHeapObjectTagSize) - 1 |
const intptr_t | kHeapObjectReferenceTagMask = 1 << (kHeapObjectTagSize - 1) |
const int | kForwardingTag = 0 |
const int | kForwardingTagSize = 2 |
const intptr_t | kForwardingTagMask = (1 << kForwardingTagSize) - 1 |
const int | kSmiTag = 0 |
const int | kSmiTagSize = 1 |
const intptr_t | kSmiTagMask = (1 << kSmiTagSize) - 1 |
constexpr intptr_t | kIntptrAllBitsSet = intptr_t{-1} |
constexpr uintptr_t | kUintptrAllBitsSet |
const int | kApiTaggedSize = kApiSystemPointerSize |
const int | kSmiShiftSize = PlatformSmiTagging::kSmiShiftSize |
const int | kSmiValueSize = PlatformSmiTagging::kSmiValueSize |
const int | kSmiMinValue = static_cast<int>(PlatformSmiTagging::kSmiMinValue) |
const int | kSmiMaxValue = static_cast<int>(PlatformSmiTagging::kSmiMaxValue) |
constexpr size_t | kMaxExternalPointers = 0 |
constexpr ExternalPointer_t | kNullExternalPointer = 0 |
constexpr ExternalPointerHandle | kNullExternalPointerHandle = 0 |
constexpr CppHeapPointer_t | kNullCppHeapPointer = 0 |
constexpr CppHeapPointerHandle | kNullCppHeapPointerHandle = 0 |
constexpr uint64_t | kCppHeapPointerMarkBit = 1ULL |
constexpr uint64_t | kCppHeapPointerTagShift = 1 |
constexpr uint64_t | kCppHeapPointerPayloadShift = 16 |
constexpr size_t | kMaxCppHeapPointers = 0 |
constexpr uint64_t | kExternalPointerMarkBit = 1ULL << 62 |
constexpr uint64_t | kExternalPointerTagMask = 0x40ff000000000000 |
constexpr uint64_t | kExternalPointerTagMaskWithoutMarkBit = 0xff000000000000 |
constexpr uint64_t | kExternalPointerTagShift = 48 |
constexpr uint64_t | kAllTagsForAndBasedTypeChecking [] |
constexpr IndirectPointerHandle | kNullIndirectPointerHandle = 0 |
constexpr size_t | kTrustedPointerTableReservationSize = 64 * MB |
constexpr uint32_t | kTrustedPointerHandleShift = 9 |
constexpr TrustedPointerHandle | kNullTrustedPointerHandle |
constexpr int | kTrustedPointerTableEntrySize = 8 |
constexpr int | kTrustedPointerTableEntrySizeLog2 = 3 |
constexpr size_t | kMaxTrustedPointers |
constexpr size_t | kCodePointerTableReservationSize = 128 * MB |
constexpr uint32_t | kCodePointerHandleShift = 9 |
constexpr CodePointerHandle | kNullCodePointerHandle = kNullIndirectPointerHandle |
constexpr uint32_t | kCodePointerHandleMarker = 0x1 |
constexpr int | kCodePointerTableEntrySize = 16 |
constexpr int | kCodePointerTableEntrySizeLog2 = 4 |
constexpr size_t | kMaxCodePointers |
constexpr int | kCodePointerTableEntryEntrypointOffset = 0 |
constexpr int | kCodePointerTableEntryCodeObjectOffset = 8 |
constexpr bool | kRuntimeGeneratedCodeObjectsLiveInTrustedSpace = true |
constexpr bool | kBuiltinCodeObjectsLiveInTrustedSpace = false |
constexpr bool | kAllCodeObjectsLiveInTrustedSpace |
constexpr int | kGarbageCollectionReasonMaxValue = 27 |
template<typename Iterator , typename = void> | |
constexpr bool | kHaveIteratorConcept = false |
template<typename Iterator , typename = void> | |
constexpr bool | kHaveIteratorCategory = false |
typedef uintptr_t v8::internal::Address |
using v8::internal::CodePointerHandle = typedef IndirectPointerHandle |
using v8::internal::CppHeapPointer_t = typedef Address |
using v8::internal::CppHeapPointerHandle = typedef uint32_t |
using v8::internal::ExternalPointer_t = typedef Address |
using v8::internal::ExternalPointerHandle = typedef uint32_t |
using v8::internal::IndirectPointerHandle = typedef uint32_t |
using v8::internal::PlatformSmiTagging = typedef SmiTagging<kApiTaggedSize> |
using v8::internal::SandboxedPointer_t = typedef Address |
using v8::internal::TrustedPointerHandle = typedef IndirectPointerHandle |
enum v8::internal::ExternalPointerTag : uint64_t |
|
strong |
|
strong |
void v8::internal::DisposeTracedReference | ( | Address * | global_handle | ) |
Address * v8::internal::GlobalizeTracedReference | ( | Isolate * | isolate, |
Address | value, | ||
Address * | slot, | ||
TracedReferenceStoreMode | store_mode, | ||
TracedReferenceHandling | reference_handling | ||
) |
|
constexpr |
internal::Isolate * v8::internal::IsolateFromNeverReadOnlySpaceObject | ( | Address | obj | ) |
|
inline |
|
constexpr |
void v8::internal::PrintFunctionCallbackInfo | ( | void * | function_callback_info | ) |
void v8::internal::PrintPropertyCallbackInfo | ( | void * | property_callback_info | ) |
|
constexpr |
bool v8::internal::ShouldThrowOnError | ( | internal::Isolate * | isolate | ) |
|
constexpr |
|
constexpr |
void v8::internal::VerifyHandleIsNonEmpty | ( | bool | is_empty | ) |
|
constexpr |
|
constexpr |
|
constexpr |
const int v8::internal::kApiDoubleSize = sizeof(double) |
const int v8::internal::kApiInt32Size = sizeof(int32_t) |
const int v8::internal::kApiInt64Size = sizeof(int64_t) |
const int v8::internal::kApiSizetSize = sizeof(size_t) |
const int v8::internal::kApiSystemPointerSize = sizeof(void*) |
Configuration of tagging scheme.
const int v8::internal::kApiTaggedSize = kApiSystemPointerSize |
|
constexpr |
|
constexpr |
|
constexpr |
|
constexpr |
|
constexpr |
|
constexpr |
|
constexpr |
|
constexpr |
|
constexpr |
|
constexpr |
|
constexpr |
|
constexpr |
|
constexpr |
|
constexpr |
|
constexpr |
|
constexpr |
const int v8::internal::kForwardingTag = 0 |
const intptr_t v8::internal::kForwardingTagMask = (1 << kForwardingTagSize) - 1 |
const int v8::internal::kForwardingTagSize = 2 |
|
constexpr |
|
inlineconstexpr |
|
inlineconstexpr |
const intptr_t v8::internal::kHeapObjectReferenceTagMask = 1 << (kHeapObjectTagSize - 1) |
const int v8::internal::kHeapObjectTag = 1 |
const intptr_t v8::internal::kHeapObjectTagMask = (1 << kHeapObjectTagSize) - 1 |
const int v8::internal::kHeapObjectTagSize = 2 |
|
constexpr |
|
constexpr |
|
constexpr |
|
constexpr |
|
constexpr |
|
constexpr |
|
constexpr |
|
constexpr |
|
constexpr |
|
constexpr |
|
constexpr |
|
constexpr |
|
constexpr |
const int v8::internal::kSmiMaxValue = static_cast<int>(PlatformSmiTagging::kSmiMaxValue) |
const int v8::internal::kSmiMinValue = static_cast<int>(PlatformSmiTagging::kSmiMinValue) |
const int v8::internal::kSmiShiftSize = PlatformSmiTagging::kSmiShiftSize |
const int v8::internal::kSmiTag = 0 |
const intptr_t v8::internal::kSmiTagMask = (1 << kSmiTagSize) - 1 |
const int v8::internal::kSmiTagSize = 1 |
const int v8::internal::kSmiValueSize = PlatformSmiTagging::kSmiValueSize |
|
constexpr |
|
constexpr |
|
constexpr |
|
constexpr |
|
constexpr |
const int v8::internal::kWeakHeapObjectTag = 3 |
|
constexpr |