v8
V8 is Google’s open source high-performance JavaScript and WebAssembly engine, written in C++.
Loading...
Searching...
No Matches
v8::internal::SharedFunctionInfo Class Reference

#include <shared-function-info.h>

Inheritance diagram for v8::internal::SharedFunctionInfo:
Collaboration diagram for v8::internal::SharedFunctionInfo:

Classes

class  BodyDescriptor
 
class  ScriptIterator
 

Public Types

enum  Inlineability {
  kHasNoScript , kNeedsBinaryCoverage , kIsBuiltin , kIsNotUserCode ,
  kHasNoBytecode , kExceedsBytecodeLimit , kMayContainBreakPoints , kHasOptimizationDisabled ,
  kIsInlineable
}
 

Public Member Functions

void Init (ReadOnlyRoots roots, int unique_id)
 
Tagged< StringName () const
 
void SetName (Tagged< String > name)
 
V8_EXPORT_PRIVATE Tagged< CodeGetCode (Isolate *isolate) const
 
Tagged< AbstractCodeabstract_code (Isolate *isolate)
 
V8_EXPORT_PRIVATE void SetScript (IsolateForSandbox isolate, ReadOnlyRoots roots, Tagged< HeapObject > script_object, int function_literal_id, bool reset_preparsed_scope_data=true)
 
void CopyFrom (Tagged< SharedFunctionInfo > other, IsolateForSandbox isolate)
 
Tagged< ScopeInfoEarlyScopeInfo (AcquireLoadTag tag)
 
void set_raw_scope_info (Tagged< ScopeInfo > scope_info, WriteBarrierMode mode=UPDATE_WRITE_BARRIER)
 
void SetScopeInfo (Tagged< ScopeInfo > scope_info, WriteBarrierMode mode=UPDATE_WRITE_BARRIER)
 
bool is_script () const
 
bool needs_script_context () const
 
V8_EXPORT_PRIVATE int EndPosition () const
 
V8_EXPORT_PRIVATE int StartPosition () const
 
V8_EXPORT_PRIVATE void UpdateFromFunctionLiteralForLiveEdit (IsolateForSandbox isolate, FunctionLiteral *lit)
 
bool HasOuterScopeInfo () const
 
Tagged< ScopeInfoGetOuterScopeInfo () const
 
bool HasFeedbackMetadata () const
 
bool HasFeedbackMetadata (AcquireLoadTag tag) const
 
bool is_compiled () const
 
template<typename IsolateT >
IsCompiledScope is_compiled_scope (IsolateT *isolate) const
 
void set_internal_formal_parameter_count (int value)
 
uint16_t internal_formal_parameter_count_with_receiver () const
 
uint16_t internal_formal_parameter_count_without_receiver () const
 
void DontAdaptArguments ()
 
bool IsDontAdaptArguments () const
 
Tagged< ObjectGetTrustedData (IsolateForSandbox isolate) const
 
Tagged< ObjectGetUntrustedData () const
 
template<typename T , IndirectPointerTag tag>
Tagged< TGetTrustedData (IsolateForSandbox isolate) const
 
Tagged< ObjectGetTrustedData () const
 
bool IsApiFunction () const
 
bool is_class_constructor () const
 
template<typename IsolateT >
Tagged< BytecodeArrayGetBytecodeArray (IsolateT *isolate) const
 
void set_bytecode_array (Tagged< BytecodeArray > bytecode)
 
void overwrite_bytecode_array (Tagged< BytecodeArray > bytecode)
 
Tagged< CodeInterpreterTrampoline (IsolateForSandbox isolate) const
 
bool HasInterpreterData (IsolateForSandbox isolate) const
 
Tagged< InterpreterDatainterpreter_data (IsolateForSandbox isolate) const
 
void set_interpreter_data (Isolate *isolate, Tagged< InterpreterData > interpreter_data, WriteBarrierMode mode=UPDATE_WRITE_BARRIER)
 
void FlushBaselineCode ()
 
Tagged< BytecodeArrayGetActiveBytecodeArray (IsolateForSandbox isolate) const
 
void SetActiveBytecodeArray (Tagged< BytecodeArray > bytecode, IsolateForSandbox isolate)
 
bool HasBuiltinId () const
 
bool HasUncompiledData () const
 
Tagged< UncompiledDatauncompiled_data (IsolateForSandbox isolate) const
 
void set_uncompiled_data (Tagged< UncompiledData > data, WriteBarrierMode mode=UPDATE_WRITE_BARRIER)
 
bool HasUncompiledDataWithPreparseData () const
 
Tagged< UncompiledDataWithPreparseDatauncompiled_data_with_preparse_data (IsolateForSandbox isolate) const
 
void set_uncompiled_data_with_preparse_data (Tagged< UncompiledDataWithPreparseData > data, WriteBarrierMode mode=UPDATE_WRITE_BARRIER)
 
bool HasUncompiledDataWithoutPreparseData () const
 
void ClearUncompiledDataJobPointer (IsolateForSandbox isolate)
 
void ClearPreparseData (IsolateForSandbox isolate)
 
bool HasInferredName ()
 
bool HasDebugInfo (Isolate *isolate) const
 
V8_EXPORT_PRIVATE Tagged< DebugInfoGetDebugInfo (Isolate *isolate) const
 
V8_EXPORT_PRIVATE std::optional< Tagged< DebugInfo > > TryGetDebugInfo (Isolate *isolate) const
 
V8_EXPORT_PRIVATE bool HasBreakInfo (Isolate *isolate) const
 
bool BreakAtEntry (Isolate *isolate) const
 
bool HasCoverageInfo (Isolate *isolate) const
 
Tagged< CoverageInfoGetCoverageInfo (Isolate *isolate) const
 
std::unique_ptr< char[]> DebugNameCStr () const
 
bool PassesFilter (const char *raw_filter)
 
Tagged< HeapObjectscript () const
 
Tagged< HeapObjectscript (PtrComprCageBase cage_base) const
 
bool has_script (AcquireLoadTag tag) const
 
bool is_repl_mode () const
 
int function_token_position () const
 
bool HasSharedName () const
 
CachedTieringDecision cached_tiering_decision ()
 
void set_cached_tiering_decision (CachedTieringDecision decision)
 
LanguageMode language_mode () const
 
void set_language_mode (LanguageMode language_mode)
 
bool is_wrapped () const
 
FunctionKind kind () const
 
int UniqueIdInScript () const
 
void clear_padding ()
 
void UpdateFunctionMapIndex ()
 
bool optimization_disabled () const
 
BailoutReason disabled_optimization_reason () const
 
void DisableOptimization (Isolate *isolate, BailoutReason reason)
 
bool HasSourceCode () const
 
bool IsSubjectToDebugging () const
 
bool IsUserJavaScript () const
 
bool CanDiscardCompiled () const
 
void DiscardCompiledMetadata (Isolate *isolate, std::function< void(Tagged< HeapObject > object, ObjectSlot slot, Tagged< HeapObject > target)> gc_notify_updated_slot=[](Tagged< HeapObject > object, ObjectSlot slot, Tagged< HeapObject > target) {})
 
bool ShouldFlushCode (base::EnumSet< CodeFlushMode > code_flush_mode)
 
template<typename IsolateT >
Inlineability GetInlineability (IsolateT *isolate) const
 
int SourceSize ()
 
bool has_simple_parameters ()
 
void UpdateExpectedNofPropertiesFromEstimate (FunctionLiteral *literal)
 
void UpdateAndFinalizeExpectedNofPropertiesFromEstimate (FunctionLiteral *literal)
 
void SetFunctionTokenPosition (int function_token_position, int start_position)
 
bool CanCollectSourcePosition (Isolate *isolate)
 
template<typename IsolateT >
bool AreSourcePositionsAvailable (IsolateT *isolate) const
 
V8_EXPORT_PRIVATE uint32_t Hash ()
 
bool construct_as_builtin () const
 
void CalculateConstructAsBuiltin ()
 
uint16_t CompareExchangeAge (uint16_t expected_age, uint16_t new_age)
 

Static Public Member Functions

static Handle< StringDebugName (Isolate *isolate, DirectHandle< SharedFunctionInfo > shared)
 
static DirectHandle< ObjectGetSourceCode (Isolate *isolate, DirectHandle< SharedFunctionInfo > shared)
 
static Handle< ObjectGetSourceCodeHarmony (Isolate *isolate, DirectHandle< SharedFunctionInfo > shared)
 
static V8_EXPORT_PRIVATE void DiscardCompiled (Isolate *isolate, DirectHandle< SharedFunctionInfo > shared_info)
 
template<typename IsolateT >
static void InitFromFunctionLiteral (IsolateT *isolate, FunctionLiteral *lit, bool is_toplevel)
 
template<typename IsolateT >
static void CreateAndSetUncompiledData (IsolateT *isolate, FunctionLiteral *lit)
 
static void EnsureBytecodeArrayAvailable (Isolate *isolate, Handle< SharedFunctionInfo > shared_info, IsCompiledScope *is_compiled_scope, CreateSourcePositions flag=CreateSourcePositions::kNo)
 
static void EnsureSourcePositionsAvailable (Isolate *isolate, DirectHandle< SharedFunctionInfo > shared_info)
 
static V8_EXPORT_PRIVATE void EnsureOldForTesting (Tagged< SharedFunctionInfo > sfu)
 
static void InstallDebugBytecode (DirectHandle< SharedFunctionInfo > shared, Isolate *isolate)
 
static void UninstallDebugBytecode (Tagged< SharedFunctionInfo > shared, Isolate *isolate)
 

Static Public Attributes

static V8_EXPORT_PRIVATE constexpr Tagged< Smi > const kNoSharedNameSentinel
 
static const int kEntriesStart = 0
 
static const int kContextOffset = 0
 
static const int kCachedCodeOffset = 1
 
static const int kEntryLength = 2
 
static const int kInitialLength = kEntriesStart + kEntryLength
 
static const int kNotFound = -1
 
static constexpr int kAgeSize = kAgeOffsetEnd - kAgeOffset + 1
 
static constexpr uint16_t kMaxAge = UINT16_MAX
 
static const int kMaximumFunctionTokenOffset = kMaxUInt16 - 1
 
static const uint16_t kFunctionTokenOutOfRange = static_cast<uint16_t>(-1)
 

Private Member Functions

void SetTrustedData (Tagged< ExposedTrustedObject > value, WriteBarrierMode mode=UPDATE_WRITE_BARRIER)
 
void SetUntrustedData (Tagged< Object > value, WriteBarrierMode mode=UPDATE_WRITE_BARRIER)
 
bool HasTrustedData () const
 
bool HasUntrustedData () const
 
void set_kind (FunctionKind kind)
 
uint16_t get_property_estimate_from_literal (FunctionLiteral *literal)
 
int32_t relaxed_flags () const
 
void set_relaxed_flags (int32_t flags)
 
 FRIEND_TEST (PreParserTest, LazyFunctionLength)
 

Friends

template<typename Impl >
class FactoryBase
 
class V8HeapExplorer
 

Detailed Description

Definition at line 197 of file shared-function-info.h.

Member Enumeration Documentation

◆ Inlineability

Enumerator
kHasNoScript 
kNeedsBinaryCoverage 
kIsBuiltin 
kIsNotUserCode 
kHasNoBytecode 
kExceedsBytecodeLimit 
kMayContainBreakPoints 
kHasOptimizationDisabled 
kIsInlineable 

Definition at line 661 of file shared-function-info.h.

Member Function Documentation

◆ abstract_code()

Tagged< AbstractCode > v8::internal::SharedFunctionInfo::abstract_code ( Isolate * isolate)
inline

Definition at line 286 of file shared-function-info-inl.h.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ AreSourcePositionsAvailable()

template<typename IsolateT >
bool v8::internal::SharedFunctionInfo::AreSourcePositionsAvailable ( IsolateT * isolate) const

Definition at line 306 of file shared-function-info-inl.h.

Here is the call graph for this function:

◆ BreakAtEntry()

bool v8::internal::SharedFunctionInfo::BreakAtEntry ( Isolate * isolate) const

Definition at line 305 of file shared-function-info.cc.

◆ cached_tiering_decision()

CachedTieringDecision v8::internal::SharedFunctionInfo::cached_tiering_decision ( )

Definition at line 802 of file shared-function-info.cc.

◆ CalculateConstructAsBuiltin()

void v8::internal::SharedFunctionInfo::CalculateConstructAsBuiltin ( )
inline

Definition at line 450 of file shared-function-info-inl.h.

Here is the call graph for this function:

◆ CanCollectSourcePosition()

bool v8::internal::SharedFunctionInfo::CanCollectSourcePosition ( Isolate * isolate)
inline

Definition at line 692 of file shared-function-info-inl.h.

Here is the call graph for this function:

◆ CanDiscardCompiled()

bool v8::internal::SharedFunctionInfo::CanDiscardCompiled ( ) const
inline

Definition at line 1091 of file shared-function-info-inl.h.

Here is the call graph for this function:

◆ clear_padding()

void v8::internal::SharedFunctionInfo::clear_padding ( )
inline

Definition at line 499 of file shared-function-info-inl.h.

Here is the caller graph for this function:

◆ ClearPreparseData()

void v8::internal::SharedFunctionInfo::ClearPreparseData ( IsolateForSandbox isolate)
inline

Definition at line 998 of file shared-function-info-inl.h.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ ClearUncompiledDataJobPointer()

void v8::internal::SharedFunctionInfo::ClearUncompiledDataJobPointer ( IsolateForSandbox isolate)
inline

Definition at line 986 of file shared-function-info-inl.h.

Here is the call graph for this function:

◆ CompareExchangeAge()

uint16_t v8::internal::SharedFunctionInfo::CompareExchangeAge ( uint16_t expected_age,
uint16_t new_age )
inline

Definition at line 474 of file shared-function-info-inl.h.

Here is the call graph for this function:

◆ construct_as_builtin()

bool v8::internal::SharedFunctionInfo::construct_as_builtin ( ) const
inline

Definition at line 446 of file shared-function-info-inl.h.

◆ CopyFrom()

void v8::internal::SharedFunctionInfo::CopyFrom ( Tagged< SharedFunctionInfo > other,
IsolateForSandbox isolate )

Definition at line 232 of file shared-function-info.cc.

Here is the call graph for this function:

◆ CreateAndSetUncompiledData()

template<typename IsolateT >
void v8::internal::SharedFunctionInfo::CreateAndSetUncompiledData ( IsolateT * isolate,
FunctionLiteral * lit )
static

Definition at line 608 of file shared-function-info.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ DebugName()

Handle< String > v8::internal::SharedFunctionInfo::DebugName ( Isolate * isolate,
DirectHandle< SharedFunctionInfo > shared )
static

Definition at line 333 of file shared-function-info.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ DebugNameCStr()

std::unique_ptr< char[]> v8::internal::SharedFunctionInfo::DebugNameCStr ( ) const

Definition at line 319 of file shared-function-info.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ disabled_optimization_reason()

BailoutReason v8::internal::SharedFunctionInfo::disabled_optimization_reason ( ) const
inline

Definition at line 409 of file shared-function-info-inl.h.

◆ DisableOptimization()

void v8::internal::SharedFunctionInfo::DisableOptimization ( Isolate * isolate,
BailoutReason reason )

Definition at line 516 of file shared-function-info.cc.

Here is the call graph for this function:

◆ DiscardCompiled()

void v8::internal::SharedFunctionInfo::DiscardCompiled ( Isolate * isolate,
DirectHandle< SharedFunctionInfo > shared_info )
static

Definition at line 407 of file shared-function-info.cc.

Here is the caller graph for this function:

◆ DiscardCompiledMetadata()

void v8::internal::SharedFunctionInfo::DiscardCompiledMetadata ( Isolate * isolate,
std::function< void(Tagged< HeapObject > object, ObjectSlot slot, Tagged< HeapObject > target)> gc_notify_updated_slot = [](Tagged<HeapObject> object,                                      ObjectSlot slot,                                      Tagged<HeapObject> target) {} )

Definition at line 371 of file shared-function-info.cc.

Here is the call graph for this function:

◆ DontAdaptArguments()

void v8::internal::SharedFunctionInfo::DontAdaptArguments ( )
inline

Definition at line 507 of file shared-function-info-inl.h.

Here is the call graph for this function:

◆ EarlyScopeInfo()

Tagged< ScopeInfo > v8::internal::SharedFunctionInfo::EarlyScopeInfo ( AcquireLoadTag tag)
inline

Definition at line 548 of file shared-function-info-inl.h.

Here is the call graph for this function:

◆ EndPosition()

int v8::internal::SharedFunctionInfo::EndPosition ( ) const

Definition at line 738 of file shared-function-info.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ EnsureBytecodeArrayAvailable()

void v8::internal::SharedFunctionInfo::EnsureBytecodeArrayAvailable ( Isolate * isolate,
Handle< SharedFunctionInfo > shared_info,
IsCompiledScope * is_compiled_scope,
CreateSourcePositions flag = CreateSourcePositions::kNo )
static

Definition at line 812 of file shared-function-info.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ EnsureOldForTesting()

void v8::internal::SharedFunctionInfo::EnsureOldForTesting ( Tagged< SharedFunctionInfo > sfu)
static

Definition at line 873 of file shared-function-info.cc.

◆ EnsureSourcePositionsAvailable()

void v8::internal::SharedFunctionInfo::EnsureSourcePositionsAvailable ( Isolate * isolate,
DirectHandle< SharedFunctionInfo > shared_info )
static

Definition at line 827 of file shared-function-info.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ FlushBaselineCode()

void v8::internal::SharedFunctionInfo::FlushBaselineCode ( )
inline

Definition at line 837 of file shared-function-info-inl.h.

Here is the call graph for this function:

◆ FRIEND_TEST()

v8::internal::SharedFunctionInfo::FRIEND_TEST ( PreParserTest ,
LazyFunctionLength  )
private

◆ function_token_position()

int v8::internal::SharedFunctionInfo::function_token_position ( ) const
inline

Definition at line 296 of file shared-function-info-inl.h.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ get_property_estimate_from_literal()

uint16_t v8::internal::SharedFunctionInfo::get_property_estimate_from_literal ( FunctionLiteral * literal)
inlineprivate
Here is the caller graph for this function:

◆ GetActiveBytecodeArray()

Tagged< BytecodeArray > v8::internal::SharedFunctionInfo::GetActiveBytecodeArray ( IsolateForSandbox isolate) const
inline

Definition at line 735 of file shared-function-info-inl.h.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ GetBytecodeArray()

template<typename IsolateT >
Tagged< BytecodeArray > v8::internal::SharedFunctionInfo::GetBytecodeArray ( IsolateT * isolate) const
inline

Definition at line 718 of file shared-function-info-inl.h.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ GetCode()

Tagged< Code > v8::internal::SharedFunctionInfo::GetCode ( Isolate * isolate) const

Definition at line 75 of file shared-function-info.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ GetCoverageInfo()

Tagged< CoverageInfo > v8::internal::SharedFunctionInfo::GetCoverageInfo ( Isolate * isolate) const

Definition at line 313 of file shared-function-info.cc.

Here is the call graph for this function:

◆ GetDebugInfo()

Tagged< DebugInfo > v8::internal::SharedFunctionInfo::GetDebugInfo ( Isolate * isolate) const

Definition at line 292 of file shared-function-info.cc.

Here is the caller graph for this function:

◆ GetInlineability()

template<typename IsolateT >
SharedFunctionInfo::Inlineability v8::internal::SharedFunctionInfo::GetInlineability ( IsolateT * isolate) const

Definition at line 315 of file shared-function-info-inl.h.

Here is the call graph for this function:

◆ GetOuterScopeInfo()

Tagged< ScopeInfo > v8::internal::SharedFunctionInfo::GetOuterScopeInfo ( ) const
inline

Definition at line 611 of file shared-function-info-inl.h.

Here is the call graph for this function:

◆ GetSourceCode()

DirectHandle< Object > v8::internal::SharedFunctionInfo::GetSourceCode ( Isolate * isolate,
DirectHandle< SharedFunctionInfo > shared )
static

Definition at line 443 of file shared-function-info.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ GetSourceCodeHarmony()

Handle< Object > v8::internal::SharedFunctionInfo::GetSourceCodeHarmony ( Isolate * isolate,
DirectHandle< SharedFunctionInfo > shared )
static

Definition at line 453 of file shared-function-info.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ GetTrustedData() [1/3]

Tagged< Object > v8::internal::SharedFunctionInfo::GetTrustedData ( ) const
inline

Definition at line 173 of file shared-function-info-inl.h.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ GetTrustedData() [2/3]

Tagged< Object > v8::internal::SharedFunctionInfo::GetTrustedData ( IsolateForSandbox isolate) const
inline

Definition at line 160 of file shared-function-info-inl.h.

◆ GetTrustedData() [3/3]

template<typename T , IndirectPointerTag tag>
Tagged< T > v8::internal::SharedFunctionInfo::GetTrustedData ( IsolateForSandbox isolate) const
inline

Definition at line 167 of file shared-function-info-inl.h.

Here is the call graph for this function:

◆ GetUntrustedData()

Tagged< Object > v8::internal::SharedFunctionInfo::GetUntrustedData ( ) const
inline

Definition at line 188 of file shared-function-info-inl.h.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ has_script()

bool v8::internal::SharedFunctionInfo::has_script ( AcquireLoadTag tag) const
inline

Definition at line 195 of file shared-function-info-inl.h.

Here is the call graph for this function:

◆ has_simple_parameters()

bool v8::internal::SharedFunctionInfo::has_simple_parameters ( )
inline

Definition at line 688 of file shared-function-info-inl.h.

◆ HasBreakInfo()

bool v8::internal::SharedFunctionInfo::HasBreakInfo ( Isolate * isolate) const

Definition at line 301 of file shared-function-info.cc.

Here is the caller graph for this function:

◆ HasBuiltinId()

bool v8::internal::SharedFunctionInfo::HasBuiltinId ( ) const
inline

Definition at line 922 of file shared-function-info-inl.h.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ HasCoverageInfo()

bool v8::internal::SharedFunctionInfo::HasCoverageInfo ( Isolate * isolate) const

Definition at line 309 of file shared-function-info.cc.

Here is the caller graph for this function:

◆ HasDebugInfo()

bool v8::internal::SharedFunctionInfo::HasDebugInfo ( Isolate * isolate) const

Definition at line 274 of file shared-function-info.cc.

◆ HasFeedbackMetadata() [1/2]

bool v8::internal::SharedFunctionInfo::HasFeedbackMetadata ( ) const
inline

Definition at line 627 of file shared-function-info-inl.h.

Here is the caller graph for this function:

◆ HasFeedbackMetadata() [2/2]

bool v8::internal::SharedFunctionInfo::HasFeedbackMetadata ( AcquireLoadTag tag) const
inline

Definition at line 631 of file shared-function-info-inl.h.

◆ Hash()

uint32_t v8::internal::SharedFunctionInfo::Hash ( )

Definition at line 27 of file shared-function-info.cc.

Here is the call graph for this function:

◆ HasInferredName()

bool v8::internal::SharedFunctionInfo::HasInferredName ( )
inline

Definition at line 1053 of file shared-function-info-inl.h.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ HasInterpreterData()

bool v8::internal::SharedFunctionInfo::HasInterpreterData ( IsolateForSandbox isolate) const
inline

Definition at line 784 of file shared-function-info-inl.h.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ HasOuterScopeInfo()

bool v8::internal::SharedFunctionInfo::HasOuterScopeInfo ( ) const
inline

Definition at line 597 of file shared-function-info-inl.h.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ HasSharedName()

bool v8::internal::SharedFunctionInfo::HasSharedName ( ) const
inline

Definition at line 244 of file shared-function-info-inl.h.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ HasSourceCode()

bool v8::internal::SharedFunctionInfo::HasSourceCode ( ) const

Definition at line 364 of file shared-function-info.cc.

Here is the call graph for this function:

◆ HasTrustedData()

bool v8::internal::SharedFunctionInfo::HasTrustedData ( ) const
inlineprivate

Definition at line 154 of file shared-function-info-inl.h.

Here is the caller graph for this function:

◆ HasUncompiledData()

bool v8::internal::SharedFunctionInfo::HasUncompiledData ( ) const
inline

Definition at line 942 of file shared-function-info-inl.h.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ HasUncompiledDataWithoutPreparseData()

bool v8::internal::SharedFunctionInfo::HasUncompiledDataWithoutPreparseData ( ) const
inline

Definition at line 982 of file shared-function-info-inl.h.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ HasUncompiledDataWithPreparseData()

bool v8::internal::SharedFunctionInfo::HasUncompiledDataWithPreparseData ( ) const
inline

Definition at line 959 of file shared-function-info-inl.h.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ HasUntrustedData()

bool v8::internal::SharedFunctionInfo::HasUntrustedData ( ) const
inlineprivate

Definition at line 158 of file shared-function-info-inl.h.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ Init()

void v8::internal::SharedFunctionInfo::Init ( ReadOnlyRoots roots,
int unique_id )

Definition at line 36 of file shared-function-info.cc.

Here is the call graph for this function:

◆ InitFromFunctionLiteral()

template<typename IsolateT >
void v8::internal::SharedFunctionInfo::InitFromFunctionLiteral ( IsolateT * isolate,
FunctionLiteral * lit,
bool is_toplevel )
static

Definition at line 540 of file shared-function-info.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ InstallDebugBytecode()

void v8::internal::SharedFunctionInfo::InstallDebugBytecode ( DirectHandle< SharedFunctionInfo > shared,
Isolate * isolate )
static

Definition at line 839 of file shared-function-info.cc.

Here is the caller graph for this function:

◆ internal_formal_parameter_count_with_receiver()

uint16_t v8::internal::SharedFunctionInfo::internal_formal_parameter_count_with_receiver ( ) const
inline

Definition at line 212 of file shared-function-info-inl.h.

◆ internal_formal_parameter_count_without_receiver()

uint16_t v8::internal::SharedFunctionInfo::internal_formal_parameter_count_without_receiver ( ) const
inline

Definition at line 218 of file shared-function-info-inl.h.

◆ interpreter_data()

Tagged< InterpreterData > v8::internal::SharedFunctionInfo::interpreter_data ( IsolateForSandbox isolate) const
inline

Definition at line 794 of file shared-function-info-inl.h.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ InterpreterTrampoline()

Tagged< Code > v8::internal::SharedFunctionInfo::InterpreterTrampoline ( IsolateForSandbox isolate) const
inline

Definition at line 778 of file shared-function-info-inl.h.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ is_class_constructor()

bool v8::internal::SharedFunctionInfo::is_class_constructor ( ) const
inline

Definition at line 1099 of file shared-function-info-inl.h.

◆ is_compiled()

bool v8::internal::SharedFunctionInfo::is_compiled ( ) const
inline
Here is the caller graph for this function:

◆ is_compiled_scope()

template<typename IsolateT >
IsCompiledScope v8::internal::SharedFunctionInfo::is_compiled_scope ( IsolateT * isolate) const
inline
Here is the caller graph for this function:

◆ is_repl_mode()

bool v8::internal::SharedFunctionInfo::is_repl_mode ( ) const
inline

Definition at line 1049 of file shared-function-info-inl.h.

Here is the call graph for this function:

◆ is_script()

bool v8::internal::SharedFunctionInfo::is_script ( ) const
inline

Definition at line 276 of file shared-function-info-inl.h.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ is_wrapped()

bool v8::internal::SharedFunctionInfo::is_wrapped ( ) const
inline

Definition at line 442 of file shared-function-info-inl.h.

◆ IsApiFunction()

bool v8::internal::SharedFunctionInfo::IsApiFunction ( ) const
inline

Definition at line 697 of file shared-function-info-inl.h.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ IsDontAdaptArguments()

bool v8::internal::SharedFunctionInfo::IsDontAdaptArguments ( ) const
inline

Definition at line 531 of file shared-function-info-inl.h.

◆ IsSubjectToDebugging()

bool v8::internal::SharedFunctionInfo::IsSubjectToDebugging ( ) const
inline

Definition at line 1083 of file shared-function-info-inl.h.

Here is the call graph for this function:

◆ IsUserJavaScript()

bool v8::internal::SharedFunctionInfo::IsUserJavaScript ( ) const
inline

Definition at line 1076 of file shared-function-info-inl.h.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ kind()

FunctionKind v8::internal::SharedFunctionInfo::kind ( ) const
inline

Definition at line 429 of file shared-function-info-inl.h.

Here is the caller graph for this function:

◆ language_mode()

LanguageMode v8::internal::SharedFunctionInfo::language_mode ( ) const
inline

Definition at line 413 of file shared-function-info-inl.h.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ Name()

Tagged< String > v8::internal::SharedFunctionInfo::Name ( ) const
inline

Definition at line 252 of file shared-function-info-inl.h.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ needs_script_context()

bool v8::internal::SharedFunctionInfo::needs_script_context ( ) const
inline

Definition at line 282 of file shared-function-info-inl.h.

Here is the call graph for this function:

◆ optimization_disabled()

SharedFunctionInfo::HasStaticPrivateMethodsOrAccessorsBit SharedFunctionInfo::MaglevCompilationFailedBit SharedFunctionInfo::FunctionSyntaxKindBits SharedFunctionInfo::HasDuplicateParametersBit SharedFunctionInfo::RequiresInstanceMembersInitializerBit SharedFunctionInfo::HasReportedBinaryCoverageBit SharedFunctionInfo::PropertiesAreFinalBit SharedFunctionInfo::LiveEditedBit bool v8::internal::SharedFunctionInfo::optimization_disabled ( ) const
inline

Definition at line 405 of file shared-function-info-inl.h.

Here is the caller graph for this function:

◆ overwrite_bytecode_array()

void v8::internal::SharedFunctionInfo::overwrite_bytecode_array ( Tagged< BytecodeArray > bytecode)
inline

Definition at line 772 of file shared-function-info-inl.h.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ PassesFilter()

bool v8::internal::SharedFunctionInfo::PassesFilter ( const char * raw_filter)

Definition at line 354 of file shared-function-info.cc.

Here is the call graph for this function:

◆ relaxed_flags()

int32_t v8::internal::SharedFunctionInfo::relaxed_flags ( ) const
inlineprivate

◆ script() [1/2]

Tagged< HeapObject > v8::internal::SharedFunctionInfo::script ( ) const
inline
Here is the caller graph for this function:

◆ script() [2/2]

Tagged< HeapObject > v8::internal::SharedFunctionInfo::script ( PtrComprCageBase cage_base) const
inline

◆ set_bytecode_array()

void v8::internal::SharedFunctionInfo::set_bytecode_array ( Tagged< BytecodeArray > bytecode)
inline

Definition at line 766 of file shared-function-info-inl.h.

Here is the call graph for this function:

◆ set_cached_tiering_decision()

void v8::internal::SharedFunctionInfo::set_cached_tiering_decision ( CachedTieringDecision decision)

Definition at line 806 of file shared-function-info.cc.

◆ set_internal_formal_parameter_count()

void v8::internal::SharedFunctionInfo::set_internal_formal_parameter_count ( int value)
inline

Definition at line 225 of file shared-function-info-inl.h.

Here is the caller graph for this function:

◆ set_interpreter_data()

void v8::internal::SharedFunctionInfo::set_interpreter_data ( Isolate * isolate,
Tagged< InterpreterData > interpreter_data,
WriteBarrierMode mode = UPDATE_WRITE_BARRIER )
inline

Definition at line 807 of file shared-function-info-inl.h.

Here is the call graph for this function:

◆ set_kind()

void v8::internal::SharedFunctionInfo::set_kind ( FunctionKind kind)
inlineprivate

Definition at line 434 of file shared-function-info-inl.h.

Here is the call graph for this function:

◆ set_language_mode()

void v8::internal::SharedFunctionInfo::set_language_mode ( LanguageMode language_mode)
inline

Definition at line 418 of file shared-function-info-inl.h.

Here is the call graph for this function:

◆ set_raw_scope_info()

void v8::internal::SharedFunctionInfo::set_raw_scope_info ( Tagged< ScopeInfo > scope_info,
WriteBarrierMode mode = UPDATE_WRITE_BARRIER )
inline

Definition at line 585 of file shared-function-info-inl.h.

◆ set_relaxed_flags()

void v8::internal::SharedFunctionInfo::set_relaxed_flags ( int32_t flags)
inlineprivate

◆ set_uncompiled_data()

void v8::internal::SharedFunctionInfo::set_uncompiled_data ( Tagged< UncompiledData > data,
WriteBarrierMode mode = UPDATE_WRITE_BARRIER )
inline

Definition at line 953 of file shared-function-info-inl.h.

Here is the call graph for this function:

◆ set_uncompiled_data_with_preparse_data()

void v8::internal::SharedFunctionInfo::set_uncompiled_data_with_preparse_data ( Tagged< UncompiledDataWithPreparseData > data,
WriteBarrierMode mode = UPDATE_WRITE_BARRIER )
inline

Definition at line 974 of file shared-function-info-inl.h.

Here is the call graph for this function:

◆ SetActiveBytecodeArray()

void v8::internal::SharedFunctionInfo::SetActiveBytecodeArray ( Tagged< BytecodeArray > bytecode,
IsolateForSandbox isolate )
inline

Definition at line 752 of file shared-function-info-inl.h.

Here is the call graph for this function:

◆ SetFunctionTokenPosition()

void v8::internal::SharedFunctionInfo::SetFunctionTokenPosition ( int function_token_position,
int start_position )

Definition at line 695 of file shared-function-info.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ SetName()

void v8::internal::SharedFunctionInfo::SetName ( Tagged< String > name)
inline

Definition at line 264 of file shared-function-info-inl.h.

Here is the call graph for this function:

◆ SetScopeInfo()

void v8::internal::SharedFunctionInfo::SetScopeInfo ( Tagged< ScopeInfo > scope_info,
WriteBarrierMode mode = UPDATE_WRITE_BARRIER )
inline

Definition at line 558 of file shared-function-info-inl.h.

Here is the call graph for this function:

◆ SetScript()

void v8::internal::SharedFunctionInfo::SetScript ( IsolateForSandbox isolate,
ReadOnlyRoots roots,
Tagged< HeapObject > script_object,
int function_literal_id,
bool reset_preparsed_scope_data = true )

Definition at line 180 of file shared-function-info.cc.

Here is the call graph for this function:

◆ SetTrustedData()

void v8::internal::SharedFunctionInfo::SetTrustedData ( Tagged< ExposedTrustedObject > value,
WriteBarrierMode mode = UPDATE_WRITE_BARRIER )
inlineprivate
Here is the caller graph for this function:

◆ SetUntrustedData()

void v8::internal::SharedFunctionInfo::SetUntrustedData ( Tagged< Object > value,
WriteBarrierMode mode = UPDATE_WRITE_BARRIER )
inlineprivate

Definition at line 142 of file shared-function-info-inl.h.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ ShouldFlushCode()

bool v8::internal::SharedFunctionInfo::ShouldFlushCode ( base::EnumSet< CodeFlushMode > code_flush_mode)
inline

◆ SourceSize()

int v8::internal::SharedFunctionInfo::SourceSize ( )

Definition at line 483 of file shared-function-info.cc.

Here is the call graph for this function:

◆ StartPosition()

int v8::internal::SharedFunctionInfo::StartPosition ( ) const

Definition at line 710 of file shared-function-info.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ TryGetDebugInfo()

std::optional< Tagged< DebugInfo > > v8::internal::SharedFunctionInfo::TryGetDebugInfo ( Isolate * isolate) const

Definition at line 296 of file shared-function-info.cc.

Here is the caller graph for this function:

◆ uncompiled_data()

Tagged< UncompiledData > v8::internal::SharedFunctionInfo::uncompiled_data ( IsolateForSandbox isolate) const
inline

Definition at line 946 of file shared-function-info-inl.h.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ uncompiled_data_with_preparse_data()

Tagged< UncompiledDataWithPreparseData > v8::internal::SharedFunctionInfo::uncompiled_data_with_preparse_data ( IsolateForSandbox isolate) const
inline

Definition at line 964 of file shared-function-info-inl.h.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ UninstallDebugBytecode()

void v8::internal::SharedFunctionInfo::UninstallDebugBytecode ( Tagged< SharedFunctionInfo > shared,
Isolate * isolate )
static

Definition at line 859 of file shared-function-info.cc.

Here is the caller graph for this function:

◆ UniqueIdInScript()

int v8::internal::SharedFunctionInfo::UniqueIdInScript ( ) const

Definition at line 280 of file shared-function-info.cc.

Here is the call graph for this function:

◆ UpdateAndFinalizeExpectedNofPropertiesFromEstimate()

void v8::internal::SharedFunctionInfo::UpdateAndFinalizeExpectedNofPropertiesFromEstimate ( FunctionLiteral * literal)

Definition at line 674 of file shared-function-info.cc.

Here is the call graph for this function:

◆ UpdateExpectedNofPropertiesFromEstimate()

void v8::internal::SharedFunctionInfo::UpdateExpectedNofPropertiesFromEstimate ( FunctionLiteral * literal)

Definition at line 665 of file shared-function-info.cc.

Here is the call graph for this function:

◆ UpdateFromFunctionLiteralForLiveEdit()

void v8::internal::SharedFunctionInfo::UpdateFromFunctionLiteralForLiveEdit ( IsolateForSandbox isolate,
FunctionLiteral * lit )

Definition at line 766 of file shared-function-info.cc.

Here is the call graph for this function:

◆ UpdateFunctionMapIndex()

void v8::internal::SharedFunctionInfo::UpdateFunctionMapIndex ( )
inline

Definition at line 501 of file shared-function-info-inl.h.

Here is the call graph for this function:
Here is the caller graph for this function:

Friends And Related Symbol Documentation

◆ FactoryBase

template<typename Impl >
friend class FactoryBase
friend

Definition at line 826 of file shared-function-info.h.

◆ V8HeapExplorer

friend class V8HeapExplorer
friend

Definition at line 827 of file shared-function-info.h.

Member Data Documentation

◆ kAgeSize

int v8::internal::SharedFunctionInfo::kAgeSize = kAgeOffsetEnd - kAgeOffset + 1
staticconstexpr

Definition at line 246 of file shared-function-info.h.

◆ kCachedCodeOffset

const int v8::internal::SharedFunctionInfo::kCachedCodeOffset = 1
static

Definition at line 240 of file shared-function-info.h.

◆ kContextOffset

const int v8::internal::SharedFunctionInfo::kContextOffset = 0
static

Definition at line 239 of file shared-function-info.h.

◆ kEntriesStart

const int v8::internal::SharedFunctionInfo::kEntriesStart = 0
static

Definition at line 238 of file shared-function-info.h.

◆ kEntryLength

const int v8::internal::SharedFunctionInfo::kEntryLength = 2
static

Definition at line 241 of file shared-function-info.h.

◆ kFunctionTokenOutOfRange

const uint16_t v8::internal::SharedFunctionInfo::kFunctionTokenOutOfRange = static_cast<uint16_t>(-1)
static

Definition at line 768 of file shared-function-info.h.

◆ kInitialLength

const int v8::internal::SharedFunctionInfo::kInitialLength = kEntriesStart + kEntryLength
static

Definition at line 242 of file shared-function-info.h.

◆ kMaxAge

uint16_t v8::internal::SharedFunctionInfo::kMaxAge = UINT16_MAX
staticconstexpr

Definition at line 247 of file shared-function-info.h.

◆ kMaximumFunctionTokenOffset

const int v8::internal::SharedFunctionInfo::kMaximumFunctionTokenOffset = kMaxUInt16 - 1
static

Definition at line 767 of file shared-function-info.h.

◆ kNoSharedNameSentinel

V8_EXPORT_PRIVATE constexpr Tagged< Smi > v8::internal::SharedFunctionInfo::kNoSharedNameSentinel
staticconstexpr
Initial value:
=
static constexpr Tagged< Smi > zero()
Definition smi.h:99

Definition at line 210 of file shared-function-info.h.

◆ kNotFound

const int v8::internal::SharedFunctionInfo::kNotFound = -1
static

Definition at line 244 of file shared-function-info.h.


The documentation for this class was generated from the following files: