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

#include <js-function.h>

Inheritance diagram for v8::internal::JSFunction:
Collaboration diagram for v8::internal::JSFunction:

Classes

class  BodyDescriptor
 

Public Member Functions

 DECL_RELEASE_ACQUIRE_ACCESSORS (prototype_or_initial_map, Tagged< UnionOf< JSPrototype, Map, Hole > >) void TraceOptimizationStatus(const char *reason
 
Tagged< Contextcontext ()
 
bool has_context () const
 
Tagged< JSGlobalProxyglobal_proxy ()
 
Tagged< NativeContextnative_context ()
 
int length ()
 
void UpdateOptimizedCode (Isolate *isolate, Tagged< Code > code, WriteBarrierMode mode=WriteBarrierMode::UPDATE_WRITE_BARRIER)
 
void UpdateCode (Tagged< Code > code, WriteBarrierMode mode=WriteBarrierMode::UPDATE_WRITE_BARRIER)
 
void UpdateCodeKeepTieringRequests (Tagged< Code > code, WriteBarrierMode mode=WriteBarrierMode::UPDATE_WRITE_BARRIER)
 
Tagged< Objectraw_code (IsolateForSandbox isolate) const
 
Tagged< Objectraw_code (IsolateForSandbox isolate, AcquireLoadTag) const
 
Address instruction_start (IsolateForSandbox isolate) const
 
template<typename IsolateT >
Tagged< AbstractCodeabstract_code (IsolateT *isolate)
 
bool HasAvailableHigherTierCodeThan (IsolateForSandbox isolate, CodeKind kind) const
 
bool HasAvailableHigherTierCodeThanWithFilter (IsolateForSandbox isolate, CodeKind kind, CodeKinds filter_mask) const
 
V8_EXPORT_PRIVATE bool HasAttachedOptimizedCode (IsolateForSandbox isolate) const
 
bool HasAvailableOptimizedCode (IsolateForSandbox isolate) const
 
bool HasAttachedCodeKind (IsolateForSandbox isolate, CodeKind kind) const
 
bool HasAvailableCodeKind (IsolateForSandbox isolate, CodeKind kind) const
 
std::optional< CodeKindGetActiveTier (IsolateForSandbox isolate) const
 
V8_EXPORT_PRIVATE bool ActiveTierIsIgnition (IsolateForSandbox isolate) const
 
bool ActiveTierIsBaseline (IsolateForSandbox isolate) const
 
bool ActiveTierIsMaglev (IsolateForSandbox isolate) const
 
bool ActiveTierIsTurbofan (IsolateForSandbox isolate) const
 
bool CanDiscardCompiled (IsolateForSandbox isolate) const
 
bool ChecksTieringState (IsolateForSandbox isolate)
 
TieringState tiering_state () const
 
void RequestOptimization (Isolate *isolate, CodeKind target_kind, ConcurrencyMode mode=ConcurrencyMode::kConcurrent)
 
bool IsLoggingRequested (Isolate *isolate) const
 
bool IsOptimizationRequested (Isolate *isolate) const
 
bool IsMaglevRequested (Isolate *isolate) const
 
bool IsTurbofanRequested (Isolate *isolate) const
 
V8_INLINE std::optional< CodeKindGetRequestedOptimizationIfAny (Isolate *isolate, ConcurrencyMode mode=ConcurrencyMode::kConcurrent) const
 
bool tiering_in_progress () const
 
bool IsTieringRequestedOrInProgress () const
 
void SetTieringInProgress (bool in_progress, BytecodeOffset osr_offset=BytecodeOffset::None())
 
void ResetTieringRequests ()
 
bool osr_tiering_in_progress ()
 
void SetInterruptBudget (Isolate *isolate, BudgetModification kind, std::optional< CodeKind > override_active_tier={})
 
int ComputeInstanceSizeWithMinSlack (Isolate *isolate)
 
void CompleteInobjectSlackTrackingIfActive ()
 
bool has_closure_feedback_cell_array () const
 
Tagged< ClosureFeedbackCellArrayclosure_feedback_cell_array () const
 
void ClearAllTypeFeedbackInfoForTesting ()
 
bool NeedsResetDueToFlushedBytecode (Isolate *isolate)
 
void ResetIfCodeFlushed (Isolate *isolate, std::optional< std::function< void(Tagged< HeapObject > object, ObjectSlot slot, Tagged< HeapObject > target)> > gc_notify_updated_slot=std::nullopt)
 
bool NeedsResetDueToFlushedBaselineCode (IsolateForSandbox isolate)
 
bool ShouldFlushBaselineCode (base::EnumSet< CodeFlushMode > code_flush_mode)
 
bool is_compiled (IsolateForSandbox isolate) const
 
std::unique_ptr< char[]> DebugNameCStr ()
 
void PrintName (FILE *out=stdout)
 
CodeKinds GetAvailableCodeKinds (IsolateForSandbox isolate) const
 

Static Public Member Functions

static Handle< StringGetName (Isolate *isolate, DirectHandle< JSFunction > function)
 
static V8_EXPORT_PRIVATE void EnsureFeedbackVector (Isolate *isolate, DirectHandle< JSFunction > function, IsCompiledScope *compiled_scope)
 FeedbackVector eventually. Generally this shouldn't be used to get the.
 
static void CreateAndAttachFeedbackVector (Isolate *isolate, DirectHandle< JSFunction > function, IsCompiledScope *compiled_scope)
 
static void EnsureClosureFeedbackCellArray (DirectHandle< JSFunction > function)
 
static void InitializeFeedbackCell (DirectHandle< JSFunction > function, IsCompiledScope *compiled_scope, bool reset_budget_for_feedback_allocation)
 
static void SetInitialMap (Isolate *isolate, DirectHandle< JSFunction > function, DirectHandle< Map > map, DirectHandle< JSPrototype > prototype)
 
static void SetInitialMap (Isolate *isolate, DirectHandle< JSFunction > function, DirectHandle< Map > map, DirectHandle< JSPrototype > prototype, DirectHandle< JSFunction > constructor)
 
static V8_EXPORT_PRIVATE void EnsureHasInitialMap (DirectHandle< JSFunction > function)
 
static V8_EXPORT_PRIVATE V8_WARN_UNUSED_RESULT MaybeHandle< MapGetDerivedMap (Isolate *isolate, DirectHandle< JSFunction > constructor, DirectHandle< JSReceiver > new_target)
 
static V8_WARN_UNUSED_RESULT MaybeDirectHandle< MapGetDerivedRabGsabTypedArrayMap (Isolate *isolate, DirectHandle< JSFunction > constructor, DirectHandle< JSReceiver > new_target)
 
static V8_WARN_UNUSED_RESULT MaybeDirectHandle< MapGetDerivedRabGsabDataViewMap (Isolate *isolate, DirectHandle< JSReceiver > new_target)
 
static void SetPrototype (DirectHandle< JSFunction > function, DirectHandle< Object > value)
 
static int GetHeaderSize (bool function_has_prototype_slot)
 
static V8_WARN_UNUSED_RESULT int CalculateExpectedNofProperties (Isolate *isolate, DirectHandle< JSFunction > function)
 
static void CalculateInstanceSizeHelper (InstanceType instance_type, bool has_prototype_slot, int requested_embedder_fields, int requested_in_object_properties, int *instance_size, int *in_object_properties)
 
static DirectHandle< StringGetName (DirectHandle< JSFunction > function)
 
static V8_WARN_UNUSED_RESULT bool SetName (DirectHandle< JSFunction > function, DirectHandle< Name > name, DirectHandle< String > prefix)
 
static DirectHandle< StringGetDebugName (DirectHandle< JSFunction > function)
 
static DirectHandle< StringToString (DirectHandle< JSFunction > function)
 

Static Public Attributes

static const int kMinDescriptorsForFastBindAndWrap = 2
 
static constexpr int kSizeWithoutPrototype = kPrototypeOrInitialMapOffset
 
static constexpr int kSizeWithPrototype = TorqueGeneratedClass::kHeaderSize
 

Private Member Functions

void set_tiering_state (IsolateForSandbox isolate, TieringState state)
 
void UpdateCodeImpl (Tagged< Code > code, WriteBarrierMode mode, bool keep_tiering_request)
 
void UpdateDispatchEntry (Tagged< Code > new_code, WriteBarrierMode mode=WriteBarrierMode::UPDATE_WRITE_BARRIER)
 
void UpdateDispatchEntryKeepTieringRequest (Tagged< Code > new_code, WriteBarrierMode mode=WriteBarrierMode::UPDATE_WRITE_BARRIER)
 
CodeKinds GetAttachedCodeKinds (IsolateForSandbox isolate) const
 

Static Private Attributes

static const int kHeaderSize
 

Detailed Description

Definition at line 94 of file js-function.h.

Member Function Documentation

◆ abstract_code()

template<typename IsolateT >
Tagged< AbstractCode > v8::internal::JSFunction::abstract_code ( IsolateT * isolate)
inline

Definition at line 70 of file js-function-inl.h.

Here is the call graph for this function:

◆ ActiveTierIsBaseline()

bool v8::internal::JSFunction::ActiveTierIsBaseline ( IsolateForSandbox isolate) const

Definition at line 219 of file js-function.cc.

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

◆ ActiveTierIsIgnition()

bool v8::internal::JSFunction::ActiveTierIsIgnition ( IsolateForSandbox isolate) const

Definition at line 215 of file js-function.cc.

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

◆ ActiveTierIsMaglev()

bool v8::internal::JSFunction::ActiveTierIsMaglev ( IsolateForSandbox isolate) const

Definition at line 223 of file js-function.cc.

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

◆ ActiveTierIsTurbofan()

bool v8::internal::JSFunction::ActiveTierIsTurbofan ( IsolateForSandbox isolate) const

Definition at line 227 of file js-function.cc.

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

◆ CalculateExpectedNofProperties()

int v8::internal::JSFunction::CalculateExpectedNofProperties ( Isolate * isolate,
DirectHandle< JSFunction > function )
static

Definition at line 1505 of file js-function.cc.

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

◆ CalculateInstanceSizeHelper()

void v8::internal::JSFunction::CalculateInstanceSizeHelper ( InstanceType instance_type,
bool has_prototype_slot,
int requested_embedder_fields,
int requested_in_object_properties,
int * instance_size,
int * in_object_properties )
static

Definition at line 1549 of file js-function.cc.

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

◆ CanDiscardCompiled()

bool v8::internal::JSFunction::CanDiscardCompiled ( IsolateForSandbox isolate) const

Definition at line 231 of file js-function.cc.

Here is the call graph for this function:

◆ ChecksTieringState()

bool v8::internal::JSFunction::ChecksTieringState ( IsolateForSandbox isolate)
inline

Definition at line 58 of file js-function-inl.h.

Here is the caller graph for this function:

◆ ClearAllTypeFeedbackInfoForTesting()

void v8::internal::JSFunction::ClearAllTypeFeedbackInfoForTesting ( )

Definition at line 1577 of file js-function.cc.

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

◆ closure_feedback_cell_array()

Tagged< ClosureFeedbackCellArray > v8::internal::JSFunction::closure_feedback_cell_array ( ) const
inline

Definition at line 52 of file js-function-inl.h.

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

◆ CompleteInobjectSlackTrackingIfActive()

void v8::internal::JSFunction::CompleteInobjectSlackTrackingIfActive ( )
inline

Definition at line 62 of file js-function-inl.h.

Here is the call graph for this function:

◆ ComputeInstanceSizeWithMinSlack()

int v8::internal::JSFunction::ComputeInstanceSizeWithMinSlack ( Isolate * isolate)

Definition at line 1341 of file js-function.cc.

◆ context()

Tagged< Context > v8::internal::JSFunction::context ( )
inline

Definition at line 461 of file js-function-inl.h.

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

◆ CreateAndAttachFeedbackVector()

void v8::internal::JSFunction::CreateAndAttachFeedbackVector ( Isolate * isolate,
DirectHandle< JSFunction > function,
IsCompiledScope * compiled_scope )
static

Definition at line 695 of file js-function.cc.

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

◆ DebugNameCStr()

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

Definition at line 1350 of file js-function.cc.

Here is the caller graph for this function:

◆ DECL_RELEASE_ACQUIRE_ACCESSORS()

v8::internal::JSFunction::DECL_RELEASE_ACQUIRE_ACCESSORS ( prototype_or_initial_map ,
Tagged< UnionOf< JSPrototype, Map, Hole > >  ) const

◆ EnsureClosureFeedbackCellArray()

void v8::internal::JSFunction::EnsureClosureFeedbackCellArray ( DirectHandle< JSFunction > function)
static

Definition at line 623 of file js-function.cc.

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

◆ EnsureFeedbackVector()

void v8::internal::JSFunction::EnsureFeedbackVector ( Isolate * isolate,
DirectHandle< JSFunction > function,
IsCompiledScope * compiled_scope )
static

FeedbackVector eventually. Generally this shouldn't be used to get the.

Definition at line 681 of file js-function.cc.

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

◆ EnsureHasInitialMap()

void v8::internal::JSFunction::EnsureHasInitialMap ( DirectHandle< JSFunction > function)
static

Definition at line 934 of file js-function.cc.

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

◆ GetActiveTier()

std::optional< CodeKind > v8::internal::JSFunction::GetActiveTier ( IsolateForSandbox isolate) const

Definition at line 182 of file js-function.cc.

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

◆ GetAttachedCodeKinds()

CodeKinds v8::internal::JSFunction::GetAttachedCodeKinds ( IsolateForSandbox isolate) const
private

Definition at line 28 of file js-function.cc.

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

◆ GetAvailableCodeKinds()

CodeKinds v8::internal::JSFunction::GetAvailableCodeKinds ( IsolateForSandbox isolate) const

Definition at line 38 of file js-function.cc.

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

◆ GetDebugName()

DirectHandle< String > v8::internal::JSFunction::GetDebugName ( DirectHandle< JSFunction > function)
static

Definition at line 1381 of file js-function.cc.

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

◆ GetDerivedMap()

MaybeHandle< Map > v8::internal::JSFunction::GetDerivedMap ( Isolate * isolate,
DirectHandle< JSFunction > constructor,
DirectHandle< JSReceiver > new_target )
static

Definition at line 1191 of file js-function.cc.

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

◆ GetDerivedRabGsabDataViewMap()

MaybeDirectHandle< Map > v8::internal::JSFunction::GetDerivedRabGsabDataViewMap ( Isolate * isolate,
DirectHandle< JSReceiver > new_target )
static

Definition at line 1320 of file js-function.cc.

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

◆ GetDerivedRabGsabTypedArrayMap()

MaybeDirectHandle< Map > v8::internal::JSFunction::GetDerivedRabGsabTypedArrayMap ( Isolate * isolate,
DirectHandle< JSFunction > constructor,
DirectHandle< JSReceiver > new_target )
static

Definition at line 1292 of file js-function.cc.

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

◆ GetHeaderSize()

static int v8::internal::JSFunction::GetHeaderSize ( bool function_has_prototype_slot)
inlinestatic

Definition at line 387 of file js-function.h.

Here is the caller graph for this function:

◆ GetName() [1/2]

static DirectHandle< String > v8::internal::JSFunction::GetName ( DirectHandle< JSFunction > function)
static

◆ GetName() [2/2]

Handle< String > v8::internal::JSFunction::GetName ( Isolate * isolate,
DirectHandle< JSFunction > function )
static

Definition at line 614 of file js-function.cc.

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

◆ GetRequestedOptimizationIfAny()

std::optional< CodeKind > v8::internal::JSFunction::GetRequestedOptimizationIfAny ( Isolate * isolate,
ConcurrencyMode mode = ConcurrencyMode::kConcurrent ) const

Definition at line 335 of file js-function-inl.h.

Here is the call graph for this function:

◆ global_proxy()

Tagged< JSGlobalProxy > v8::internal::JSFunction::global_proxy ( )
inline

Definition at line 473 of file js-function-inl.h.

Here is the call graph for this function:

◆ has_closure_feedback_cell_array()

bool v8::internal::JSFunction::has_closure_feedback_cell_array ( ) const
inline

Definition at line 456 of file js-function-inl.h.

Here is the caller graph for this function:

◆ has_context()

bool v8::internal::JSFunction::has_context ( ) const
inline

Definition at line 469 of file js-function-inl.h.

◆ HasAttachedCodeKind()

bool v8::internal::JSFunction::HasAttachedCodeKind ( IsolateForSandbox isolate,
CodeKind kind ) const

Definition at line 151 of file js-function.cc.

Here is the call graph for this function:

◆ HasAttachedOptimizedCode()

bool v8::internal::JSFunction::HasAttachedOptimizedCode ( IsolateForSandbox isolate) const

Definition at line 124 of file js-function.cc.

Here is the call graph for this function:

◆ HasAvailableCodeKind()

bool v8::internal::JSFunction::HasAvailableCodeKind ( IsolateForSandbox isolate,
CodeKind kind ) const

Definition at line 157 of file js-function.cc.

Here is the call graph for this function:

◆ HasAvailableHigherTierCodeThan()

bool v8::internal::JSFunction::HasAvailableHigherTierCodeThan ( IsolateForSandbox isolate,
CodeKind kind ) const

Definition at line 129 of file js-function.cc.

Here is the call graph for this function:

◆ HasAvailableHigherTierCodeThanWithFilter()

bool v8::internal::JSFunction::HasAvailableHigherTierCodeThanWithFilter ( IsolateForSandbox isolate,
CodeKind kind,
CodeKinds filter_mask ) const

Definition at line 135 of file js-function.cc.

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

◆ HasAvailableOptimizedCode()

bool v8::internal::JSFunction::HasAvailableOptimizedCode ( IsolateForSandbox isolate) const

Definition at line 146 of file js-function.cc.

Here is the call graph for this function:

◆ InitializeFeedbackCell()

void v8::internal::JSFunction::InitializeFeedbackCell ( DirectHandle< JSFunction > function,
IsCompiledScope * compiled_scope,
bool reset_budget_for_feedback_allocation )
static

Definition at line 745 of file js-function.cc.

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

◆ instruction_start()

Address v8::internal::JSFunction::instruction_start ( IsolateForSandbox isolate) const
inline

Definition at line 241 of file js-function-inl.h.

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

◆ is_compiled()

bool v8::internal::JSFunction::is_compiled ( IsolateForSandbox isolate) const
inline

Definition at line 542 of file js-function-inl.h.

Here is the caller graph for this function:

◆ IsLoggingRequested()

bool v8::internal::JSFunction::IsLoggingRequested ( Isolate * isolate) const
inline

Definition at line 282 of file js-function-inl.h.

Here is the call graph for this function:

◆ IsMaglevRequested()

bool v8::internal::JSFunction::IsMaglevRequested ( Isolate * isolate) const
inline

Definition at line 291 of file js-function-inl.h.

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

◆ IsOptimizationRequested()

bool v8::internal::JSFunction::IsOptimizationRequested ( Isolate * isolate) const
inline

Definition at line 331 of file js-function-inl.h.

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

◆ IsTieringRequestedOrInProgress()

bool v8::internal::JSFunction::IsTieringRequestedOrInProgress ( ) const
inline

Definition at line 271 of file js-function-inl.h.

Here is the call graph for this function:

◆ IsTurbofanRequested()

bool v8::internal::JSFunction::IsTurbofanRequested ( Isolate * isolate) const
inline

Definition at line 311 of file js-function-inl.h.

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

◆ length()

int v8::internal::JSFunction::length ( )
inline

Definition at line 78 of file js-function-inl.h.

◆ native_context()

Tagged< NativeContext > v8::internal::JSFunction::native_context ( )
inline

Definition at line 477 of file js-function-inl.h.

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

◆ NeedsResetDueToFlushedBaselineCode()

bool v8::internal::JSFunction::NeedsResetDueToFlushedBaselineCode ( IsolateForSandbox isolate)
inline

Definition at line 571 of file js-function-inl.h.

Here is the caller graph for this function:

◆ NeedsResetDueToFlushedBytecode()

bool v8::internal::JSFunction::NeedsResetDueToFlushedBytecode ( Isolate * isolate)
inline

Definition at line 547 of file js-function-inl.h.

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

◆ osr_tiering_in_progress()

bool v8::internal::JSFunction::osr_tiering_in_progress ( )
inline

Definition at line 445 of file js-function-inl.h.

◆ PrintName()

void v8::internal::JSFunction::PrintName ( FILE * out = stdout)

Definition at line 1354 of file js-function.cc.

Here is the call graph for this function:

◆ raw_code() [1/2]

Tagged< Object > v8::internal::JSFunction::raw_code ( IsolateForSandbox isolate) const
inline

Definition at line 163 of file js-function-inl.h.

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

◆ raw_code() [2/2]

Tagged< Object > v8::internal::JSFunction::raw_code ( IsolateForSandbox isolate,
AcquireLoadTag tag ) const
inline

Definition at line 176 of file js-function-inl.h.

Here is the call graph for this function:

◆ RequestOptimization()

void v8::internal::JSFunction::RequestOptimization ( Isolate * isolate,
CodeKind target_kind,
ConcurrencyMode mode = ConcurrencyMode::kConcurrent )

Definition at line 264 of file js-function.cc.

Here is the call graph for this function:

◆ ResetIfCodeFlushed()

void v8::internal::JSFunction::ResetIfCodeFlushed ( Isolate * isolate,
std::optional< std::function< void(Tagged< HeapObject > object, ObjectSlot slot, Tagged< HeapObject > target)> ,
gc_notify_updated_slot = std::nullopt )
inline

Definition at line 576 of file js-function-inl.h.

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

◆ ResetTieringRequests()

void v8::internal::JSFunction::ResetTieringRequests ( )
inline

Definition at line 395 of file js-function-inl.h.

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

◆ set_tiering_state()

void v8::internal::JSFunction::set_tiering_state ( IsolateForSandbox isolate,
TieringState state )
inlineprivate

Definition at line 436 of file js-function-inl.h.

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

◆ SetInitialMap() [1/2]

void v8::internal::JSFunction::SetInitialMap ( Isolate * isolate,
DirectHandle< JSFunction > function,
DirectHandle< Map > map,
DirectHandle< JSPrototype > prototype )
static

Definition at line 909 of file js-function.cc.

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

◆ SetInitialMap() [2/2]

void v8::internal::JSFunction::SetInitialMap ( Isolate * isolate,
DirectHandle< JSFunction > function,
DirectHandle< Map > map,
DirectHandle< JSPrototype > prototype,
DirectHandle< JSFunction > constructor )
static

Definition at line 916 of file js-function.cc.

Here is the call graph for this function:

◆ SetInterruptBudget()

void v8::internal::JSFunction::SetInterruptBudget ( Isolate * isolate,
BudgetModification kind,
std::optional< CodeKind > override_active_tier = {} )

Definition at line 334 of file js-function.cc.

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

◆ SetName()

bool v8::internal::JSFunction::SetName ( DirectHandle< JSFunction > function,
DirectHandle< Name > name,
DirectHandle< String > prefix )
static

Definition at line 1406 of file js-function.cc.

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

◆ SetPrototype()

void v8::internal::JSFunction::SetPrototype ( DirectHandle< JSFunction > function,
DirectHandle< Object > value )
static

Definition at line 862 of file js-function.cc.

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

◆ SetTieringInProgress()

void v8::internal::JSFunction::SetTieringInProgress ( bool in_progress,
BytecodeOffset osr_offset = BytecodeOffset::None() )
inline

Definition at line 406 of file js-function-inl.h.

Here is the call graph for this function:

◆ ShouldFlushBaselineCode()

bool v8::internal::JSFunction::ShouldFlushBaselineCode ( base::EnumSet< CodeFlushMode > code_flush_mode)
inline

◆ tiering_in_progress()

bool v8::internal::JSFunction::tiering_in_progress ( ) const
inline

Definition at line 262 of file js-function-inl.h.

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

◆ tiering_state()

TieringState v8::internal::JSFunction::tiering_state ( ) const
inline

Definition at line 431 of file js-function-inl.h.

Here is the caller graph for this function:

◆ ToString()

DirectHandle< String > v8::internal::JSFunction::ToString ( DirectHandle< JSFunction > function)
static

Definition at line 1443 of file js-function.cc.

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

◆ UpdateCode()

void v8::internal::JSFunction::UpdateCode ( Tagged< Code > code,
WriteBarrierMode mode = WriteBarrierMode::UPDATE_WRITE_BARRIER )
inline

Definition at line 130 of file js-function-inl.h.

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

◆ UpdateCodeImpl()

void v8::internal::JSFunction::UpdateCodeImpl ( Tagged< Code > code,
WriteBarrierMode mode,
bool keep_tiering_request )
inlineprivate

Definition at line 98 of file js-function-inl.h.

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

◆ UpdateCodeKeepTieringRequests()

void v8::internal::JSFunction::UpdateCodeKeepTieringRequests ( Tagged< Code > code,
WriteBarrierMode mode = WriteBarrierMode::UPDATE_WRITE_BARRIER )
inline

Definition at line 138 of file js-function-inl.h.

Here is the call graph for this function:

◆ UpdateDispatchEntry()

void v8::internal::JSFunction::UpdateDispatchEntry ( Tagged< Code > new_code,
WriteBarrierMode mode = WriteBarrierMode::UPDATE_WRITE_BARRIER )
inlineprivate
Here is the caller graph for this function:

◆ UpdateDispatchEntryKeepTieringRequest()

void v8::internal::JSFunction::UpdateDispatchEntryKeepTieringRequest ( Tagged< Code > new_code,
WriteBarrierMode mode = WriteBarrierMode::UPDATE_WRITE_BARRIER )
inlineprivate
Here is the caller graph for this function:

◆ UpdateOptimizedCode()

void v8::internal::JSFunction::UpdateOptimizedCode ( Isolate * isolate,
Tagged< Code > code,
WriteBarrierMode mode = WriteBarrierMode::UPDATE_WRITE_BARRIER )
inline

Definition at line 80 of file js-function-inl.h.

Here is the call graph for this function:

Member Data Documentation

◆ kHeaderSize

const int v8::internal::JSFunction::kHeaderSize
staticprivate

Definition at line 442 of file js-function.h.

◆ kMinDescriptorsForFastBindAndWrap

const int v8::internal::JSFunction::kMinDescriptorsForFastBindAndWrap = 2
static

Definition at line 109 of file js-function.h.

◆ kSizeWithoutPrototype

int v8::internal::JSFunction::kSizeWithoutPrototype = kPrototypeOrInitialMapOffset
staticconstexpr

Definition at line 475 of file js-function.h.

◆ kSizeWithPrototype

int v8::internal::JSFunction::kSizeWithPrototype = TorqueGeneratedClass::kHeaderSize
staticconstexpr

Definition at line 476 of file js-function.h.


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