#include <stddef.h>
#include <stdint.h>
#include <string.h>
#include <atomic>
#include <iterator>
#include <memory>
#include <type_traits>
#include "v8config.h"
Go to the source code of this file.
Namespaces | |
namespace | v8 |
namespace | v8::internal |
Macros | |
#define | TAG(i) |
#define | SHARED_EXTERNAL_POINTER_TAGS(V) |
#define | PER_ISOLATE_EXTERNAL_POINTER_TAGS(V) |
#define | ALL_EXTERNAL_POINTER_TAGS(V) |
#define | EXTERNAL_POINTER_TAG_ENUM(Name, Tag) Name = Tag, |
#define | MAKE_TAG(HasMarkBit, TypeTag) |
#define | CHECK_SHARED_EXTERNAL_POINTER_TAGS(Tag, ...) static_assert(IsSharedExternalPointerType(Tag)); |
#define | CHECK_NON_SHARED_EXTERNAL_POINTER_TAGS(Tag, ...) static_assert(!IsSharedExternalPointerType(Tag)); |
Typedefs | |
typedef uintptr_t | v8::internal::Address |
using | v8::internal::PlatformSmiTagging = SmiTagging< kApiTaggedSize > |
using | v8::internal::SandboxedPointer_t = Address |
using | v8::internal::ExternalPointerHandle = uint32_t |
using | v8::internal::ExternalPointer_t = Address |
using | v8::internal::CppHeapPointerHandle = uint32_t |
using | v8::internal::CppHeapPointer_t = Address |
using | v8::internal::ExternalBufferHandle = uint32_t |
using | v8::internal::ExternalBuffer_t = Address |
using | v8::internal::IndirectPointerHandle = uint32_t |
using | v8::internal::TrustedPointerHandle = IndirectPointerHandle |
using | v8::internal::CodePointerHandle = IndirectPointerHandle |
Enumerations | |
enum | v8::internal::ExternalPointerTag : uint64_t { v8::internal::kExternalPointerNullTag = ((static_cast<uint64_t>( 0b00000000 ) << kExternalPointerTagShift) | ( 1 ? kExternalPointerMarkBit : 0)) , v8::internal::kAnyExternalPointerTag = ((static_cast<uint64_t>( 0b11111111 ) << kExternalPointerTagShift) | ( 1 ? kExternalPointerMarkBit : 0)) , v8::internal::kAnyForeignTag = kAnyExternalPointerTag , v8::internal::kExternalPointerFreeEntryTag = ((static_cast<uint64_t>( 0b11111111 ) << kExternalPointerTagShift) | ( 0 ? kExternalPointerMarkBit : 0)) , v8::internal::kExternalPointerEvacuationEntryTag = ((static_cast<uint64_t>( 0b11111110 ) << kExternalPointerTagShift) | ( 1 ? kExternalPointerMarkBit : 0)) , v8::internal::kExternalPointerZappedEntryTag = ((static_cast<uint64_t>( 0b11111101 ) << kExternalPointerTagShift) | ( 0 ? kExternalPointerMarkBit : 0)) , v8::internal::kFirstSharedTag = ((kAllExternalPointerTypeTags[ 0 ] << kExternalPointerTagShift) | kExternalPointerMarkBit) , v8::internal::kWaiterQueueNodeTag = ((kAllExternalPointerTypeTags[ 0 ] << kExternalPointerTagShift) | kExternalPointerMarkBit) , v8::internal::kExternalStringResourceTag = ((kAllExternalPointerTypeTags[ 1 ] << kExternalPointerTagShift) | kExternalPointerMarkBit) , v8::internal::kExternalStringResourceDataTag = ((kAllExternalPointerTypeTags[ 2 ] << kExternalPointerTagShift) | kExternalPointerMarkBit) , v8::internal::kLastSharedTag = ((kAllExternalPointerTypeTags[ 2 ] << kExternalPointerTagShift) | kExternalPointerMarkBit) , v8::internal::kNativeContextMicrotaskQueueTag = ((kAllExternalPointerTypeTags[ 10 ] << kExternalPointerTagShift) | kExternalPointerMarkBit) , v8::internal::kEmbedderDataSlotPayloadTag = ((kAllExternalPointerTypeTags[ 11 ] << kExternalPointerTagShift) | kExternalPointerMarkBit) , v8::internal::kExternalObjectValueTag = ((kAllExternalPointerTypeTags[ 12 ] << kExternalPointerTagShift) | kExternalPointerMarkBit) , v8::internal::kFunctionTemplateInfoCallbackTag = ((kAllExternalPointerTypeTags[ 13 ] << kExternalPointerTagShift) | kExternalPointerMarkBit) , v8::internal::kAccessorInfoGetterTag = ((kAllExternalPointerTypeTags[ 14 ] << kExternalPointerTagShift) | kExternalPointerMarkBit) , v8::internal::kAccessorInfoSetterTag = ((kAllExternalPointerTypeTags[ 15 ] << kExternalPointerTagShift) | kExternalPointerMarkBit) , v8::internal::kWasmInternalFunctionCallTargetTag = ((kAllExternalPointerTypeTags[ 16 ] << kExternalPointerTagShift) | kExternalPointerMarkBit) , v8::internal::kWasmTypeInfoNativeTypeTag = ((kAllExternalPointerTypeTags[ 17 ] << kExternalPointerTagShift) | kExternalPointerMarkBit) , v8::internal::kWasmExportedFunctionDataSignatureTag = ((kAllExternalPointerTypeTags[ 18 ] << kExternalPointerTagShift) | kExternalPointerMarkBit) , v8::internal::kWasmContinuationJmpbufTag = ((kAllExternalPointerTypeTags[ 19 ] << kExternalPointerTagShift) | kExternalPointerMarkBit) , v8::internal::kWasmIndirectFunctionTargetTag = ((kAllExternalPointerTypeTags[ 20 ] << kExternalPointerTagShift) | kExternalPointerMarkBit) , v8::internal::kGenericForeignTag = ((kAllExternalPointerTypeTags[ 30 ] << kExternalPointerTagShift) | kExternalPointerMarkBit) , v8::internal::kFirstManagedResourceTag = ((kAllExternalPointerTypeTags[ 40 ] << kExternalPointerTagShift) | kExternalPointerMarkBit) , v8::internal::kGenericManagedTag = ((kAllExternalPointerTypeTags[ 40 ] << kExternalPointerTagShift) | kExternalPointerMarkBit) , v8::internal::kWasmWasmStreamingTag = ((kAllExternalPointerTypeTags[ 41 ] << kExternalPointerTagShift) | kExternalPointerMarkBit) , v8::internal::kWasmFuncDataTag = ((kAllExternalPointerTypeTags[ 42 ] << kExternalPointerTagShift) | kExternalPointerMarkBit) , v8::internal::kWasmManagedDataTag = ((kAllExternalPointerTypeTags[ 43 ] << kExternalPointerTagShift) | kExternalPointerMarkBit) , v8::internal::kWasmNativeModuleTag = ((kAllExternalPointerTypeTags[ 44 ] << kExternalPointerTagShift) | kExternalPointerMarkBit) , v8::internal::kWasmStackMemoryTag = ((kAllExternalPointerTypeTags[ 45 ] << kExternalPointerTagShift) | kExternalPointerMarkBit) , v8::internal::kIcuBreakIteratorTag = ((kAllExternalPointerTypeTags[ 46 ] << kExternalPointerTagShift) | kExternalPointerMarkBit) , v8::internal::kIcuUnicodeStringTag = ((kAllExternalPointerTypeTags[ 47 ] << kExternalPointerTagShift) | kExternalPointerMarkBit) , v8::internal::kIcuListFormatterTag = ((kAllExternalPointerTypeTags[ 48 ] << kExternalPointerTagShift) | kExternalPointerMarkBit) , v8::internal::kIcuLocaleTag = ((kAllExternalPointerTypeTags[ 49 ] << kExternalPointerTagShift) | kExternalPointerMarkBit) , v8::internal::kIcuSimpleDateFormatTag = ((kAllExternalPointerTypeTags[ 50 ] << kExternalPointerTagShift) | kExternalPointerMarkBit) , v8::internal::kIcuDateIntervalFormatTag = ((kAllExternalPointerTypeTags[ 51 ] << kExternalPointerTagShift) | kExternalPointerMarkBit) , v8::internal::kIcuRelativeDateTimeFormatterTag = ((kAllExternalPointerTypeTags[ 52 ] << kExternalPointerTagShift) | kExternalPointerMarkBit) , v8::internal::kIcuLocalizedNumberFormatterTag = ((kAllExternalPointerTypeTags[ 53 ] << kExternalPointerTagShift) | kExternalPointerMarkBit) , v8::internal::kIcuPluralRulesTag = ((kAllExternalPointerTypeTags[ 54 ] << kExternalPointerTagShift) | kExternalPointerMarkBit) , v8::internal::kIcuCollatorTag = ((kAllExternalPointerTypeTags[ 55 ] << kExternalPointerTagShift) | kExternalPointerMarkBit) , v8::internal::kDisplayNamesInternalTag = ((kAllExternalPointerTypeTags[ 56 ] << kExternalPointerTagShift) | kExternalPointerMarkBit) , v8::internal::kLastManagedResourceTag = ((kAllExternalPointerTypeTags[ 56 ] << kExternalPointerTagShift) | kExternalPointerMarkBit) , v8::internal::kArrayBufferExtensionTag = ((kAllExternalPointerTypeTags[ 57 ] << kExternalPointerTagShift) | kExternalPointerMarkBit) } |
Functions | |
constexpr bool | v8::internal::PointerCompressionIsEnabled () |
constexpr bool | v8::internal::SmiValuesAre31Bits () |
constexpr bool | v8::internal::SmiValuesAre32Bits () |
constexpr bool | v8::internal::Is64 () |
constexpr bool | v8::internal::SandboxIsEnabled () |
internal::Isolate * | v8::internal::IsolateFromNeverReadOnlySpaceObject (Address obj) |
bool | v8::internal::ShouldThrowOnError (internal::Isolate *isolate) |
template<class T > | |
void | v8::internal::PerformCastCheck (T *data) |
template<typename Iterator , typename ElementType , typename OtherIterator , typename OtherElementType > | |
constexpr bool | v8::internal::operator== (const WrappedIterator< Iterator, ElementType > &x, const WrappedIterator< OtherIterator, OtherElementType > &y) noexcept |
template<typename Iterator , typename ElementType , typename OtherIterator , typename OtherElementType > | |
constexpr bool | v8::internal::operator< (const WrappedIterator< Iterator, ElementType > &x, const WrappedIterator< OtherIterator, OtherElementType > &y) noexcept |
template<typename Iterator , typename ElementType , typename OtherIterator , typename OtherElementType > | |
constexpr bool | v8::internal::operator!= (const WrappedIterator< Iterator, ElementType > &x, const WrappedIterator< OtherIterator, OtherElementType > &y) noexcept |
template<typename Iterator , typename ElementType , typename OtherIterator , typename OtherElementType > | |
constexpr bool | v8::internal::operator> (const WrappedIterator< Iterator, ElementType > &x, const WrappedIterator< OtherIterator, OtherElementType > &y) noexcept |
template<typename Iterator , typename ElementType , typename OtherIterator , typename OtherElementType > | |
constexpr bool | v8::internal::operator>= (const WrappedIterator< Iterator, ElementType > &x, const WrappedIterator< OtherIterator, OtherElementType > &y) noexcept |
template<typename Iterator , typename ElementType , typename OtherIterator , typename OtherElementType > | |
constexpr bool | v8::internal::operator<= (const WrappedIterator< Iterator, ElementType > &x, const WrappedIterator< OtherIterator, OtherElementType > &y) noexcept |
template<typename Iterator , typename ElementType , typename OtherIterator , typename OtherElementType > | |
constexpr auto | v8::internal::operator- (const WrappedIterator< Iterator, ElementType > &x, const WrappedIterator< OtherIterator, OtherElementType > &y) noexcept -> decltype(x.base() - y.base()) |
template<typename Iterator , typename ElementType > | |
constexpr WrappedIterator< Iterator > | v8::internal::operator+ (typename WrappedIterator< Iterator, ElementType >::difference_type n, const WrappedIterator< Iterator, ElementType > &x) noexcept |
void | v8::internal::VerifyHandleIsNonEmpty (bool is_empty) |
#define CHECK_NON_SHARED_EXTERNAL_POINTER_TAGS | ( | Tag, | |
... | |||
) | static_assert(!IsSharedExternalPointerType(Tag)); |
#define CHECK_SHARED_EXTERNAL_POINTER_TAGS | ( | Tag, | |
... | |||
) | static_assert(IsSharedExternalPointerType(Tag)); |
#define EXTERNAL_POINTER_TAG_ENUM | ( | Name, | |
Tag | |||
) | Name = Tag, |
#define MAKE_TAG | ( | HasMarkBit, | |
TypeTag | |||
) |
#define PER_ISOLATE_EXTERNAL_POINTER_TAGS | ( | V | ) |
#define SHARED_EXTERNAL_POINTER_TAGS | ( | V | ) |
#define TAG | ( | i | ) |