5#ifndef V8_OBJECTS_NAME_H_
6#define V8_OBJECTS_NAME_H_
15#include "torque-generated/bit-fields.h"
24class WasmGraphBuilder;
28class MaglevGraphBuilder;
31class SharedStringAccessGuardIfNeeded;
68 inline uint32_t
hash()
const;
164 std::min(16,
int{10 * (
sizeof(
size_t) / 4)});
185 "(kMaxCachedArrayIndexLength + 1) must be power of two");
static constexpr U encode(T value)
static constexpr int kSize
static constexpr int kShift
bool HasForwardingIndex(AcquireLoadTag) const
static const uint32_t kMaxArrayIndex
std::atomic_uint32_t raw_hash_field_
static const int kMaxCachedArrayIndexLength
void set_raw_hash_field(uint32_t hash, ReleaseStoreTag)
static bool IsIntegerIndex(uint32_t raw_hash_field)
bool IsInteresting(Isolate *isolate)
static bool IsForwardingIndex(uint32_t raw_hash_field)
friend class TorqueGeneratedNameAsserts
static const int kArrayIndexLengthBits
static V8_WARN_UNUSED_RESULT MaybeDirectHandle< String > ToFunctionName(Isolate *isolate, DirectHandle< Name > name)
static bool IsHash(uint32_t raw_hash_field)
static uint32_t CreateHashFieldValue(uint32_t hash, HashFieldType type)
bool TryGetHash(uint32_t *hash) const
static bool ContainsCachedArrayIndex(uint32_t hash)
void set_raw_hash_field_if_empty(uint32_t hash)
static const int kMaxArrayIndexSize
static constexpr int kEmptyHashField
bool Equals(Tagged< Name > other)
uint32_t raw_hash_field() const
static constexpr int kHashNotComputedMask
static const unsigned int kDoesNotContainCachedArrayIndexMask
friend class SandboxTesting
uint32_t raw_hash_field(AcquireLoadTag) const
static uint32_t CreateExternalForwardingIndex(uint32_t index)
static const unsigned int kDoesNotContainIntegerOrForwardingIndexMask
bool HasExternalForwardingIndex(AcquireLoadTag) const
static uint32_t CreateInternalizedForwardingIndex(uint32_t index)
bool AsArrayIndex(uint32_t *index)
void set_raw_hash_field(uint32_t hash)
static bool IsInternalizedForwardingIndex(uint32_t raw_hash_field)
static const int kArrayIndexValueBits
bool AsIntegerIndex(size_t *index)
static bool IsExternalForwardingIndex(uint32_t raw_hash_field)
static const int kMaxIntegerIndexSize
uint32_t GetRawHashFromForwardingTable(uint32_t raw_hash) const
bool HasInternalizedForwardingIndex(AcquireLoadTag) const
static bool IsHashFieldComputed(uint32_t raw_hash_field)
void set_is_private(bool value)
friend class TorqueGeneratedSymbolAsserts
TaggedMember< PrimitiveHeapObject > description_
friend struct OffsetsForDebug
void set_is_private_name()
bool is_interesting_symbol() const
void set_description(Tagged< PrimitiveHeapObject > value, WriteBarrierMode mode=UPDATE_WRITE_BARRIER)
void set_flags(uint32_t value)
void set_is_private_brand()
void set_is_in_public_symbol_table(bool value)
Tagged< PrimitiveHeapObject > description() const
void set_is_well_known_symbol(bool value)
void set_is_interesting_symbol(bool value)
bool is_private_name() const
void SymbolShortPrint(std::ostream &os)
bool is_in_public_symbol_table() const
const char * PrivateSymbolToName() const
bool is_well_known_symbol() const
bool is_private_brand() const
constexpr bool IsPowerOfTwo(T value)
v8::internal::LoadHandler V8_OBJECT_END
constexpr int kBitsPerInt
constexpr uint64_t TenToThe(uint32_t exponent)
bool IsUniqueName(Tagged< Name > obj)
constexpr uint32_t kMaxUInt32
#define DECL_VERIFIER(Name)
#define DECL_PRINTER(Name)
#define V8_WARN_UNUSED_RESULT