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

#include <js-native-context-specialization.h>

Inheritance diagram for v8::internal::compiler::JSNativeContextSpecialization:
Collaboration diagram for v8::internal::compiler::JSNativeContextSpecialization:

Classes

class  ValueEffectControl
 

Public Types

enum  Flag { kNoFlags = 0u , kBailoutOnUninitialized = 1u << 0 }
 
using Flags = base::Flags<Flag>
 

Public Member Functions

 JSNativeContextSpecialization (Editor *editor, JSGraph *jsgraph, JSHeapBroker *broker, Flags flags, Zone *zone, Zone *shared_zone)
 
 JSNativeContextSpecialization (const JSNativeContextSpecialization &)=delete
 
JSNativeContextSpecializationoperator= (const JSNativeContextSpecialization &)=delete
 
const char * reducer_name () const override
 
Reduction Reduce (Node *node) final
 
- Public Member Functions inherited from v8::internal::compiler::AdvancedReducer
 AdvancedReducer (Editor *editor)
 
- Public Member Functions inherited from v8::internal::compiler::Reducer
virtual ~Reducer ()=default
 
Reduction Reduce (Node *node, ObserveNodeManager *observe_node_manager)
 
virtual void Finalize ()
 

Static Public Member Functions

static std::optional< size_tGetMaxStringLength (JSHeapBroker *broker, Node *node)
 
- Static Public Member Functions inherited from v8::internal::compiler::Reducer
static Reduction NoChange ()
 
static Reduction Replace (Node *node)
 
static Reduction Changed (Node *node)
 

Private Types

enum  InferHasInPrototypeChainResult { kIsInPrototypeChain , kIsNotInPrototypeChain , kMayBeInPrototypeChain }
 

Private Member Functions

Reduction ReduceJSAdd (Node *node)
 
Reduction ReduceJSAsyncFunctionEnter (Node *node)
 
Reduction ReduceJSAsyncFunctionReject (Node *node)
 
Reduction ReduceJSAsyncFunctionResolve (Node *node)
 
Reduction ReduceJSGetSuperConstructor (Node *node)
 
Reduction ReduceJSFindNonDefaultConstructorOrConstruct (Node *node)
 
Reduction ReduceJSInstanceOf (Node *node)
 
Reduction ReduceJSHasInPrototypeChain (Node *node)
 
Reduction ReduceJSOrdinaryHasInstance (Node *node)
 
Reduction ReduceJSPromiseResolve (Node *node)
 
Reduction ReduceJSResolvePromise (Node *node)
 
Reduction ReduceJSLoadGlobal (Node *node)
 
Reduction ReduceJSStoreGlobal (Node *node)
 
Reduction ReduceJSLoadNamed (Node *node)
 
Reduction ReduceJSLoadNamedFromSuper (Node *node)
 
Reduction ReduceJSGetIterator (Node *node)
 
Reduction ReduceJSSetNamedProperty (Node *node)
 
Reduction ReduceJSHasProperty (Node *node)
 
Reduction ReduceJSLoadProperty (Node *node)
 
Reduction ReduceJSSetKeyedProperty (Node *node)
 
Reduction ReduceJSDefineKeyedOwnProperty (Node *node)
 
Reduction ReduceJSDefineNamedOwnProperty (Node *node)
 
Reduction ReduceJSDefineKeyedOwnPropertyInLiteral (Node *node)
 
Reduction ReduceJSStoreInArrayLiteral (Node *node)
 
Reduction ReduceJSToObject (Node *node)
 
Reduction ReduceElementAccess (Node *node, Node *index, Node *value, ElementAccessFeedback const &feedback)
 
Reduction ReducePropertyAccess (Node *node, Node *key, OptionalNameRef static_name, Node *value, FeedbackSource const &source, AccessMode access_mode)
 
Reduction ReduceNamedAccess (Node *node, Node *value, NamedAccessFeedback const &feedback, AccessMode access_mode, Node *key=nullptr)
 
Reduction ReduceMegaDOMPropertyAccess (Node *node, Node *value, MegaDOMPropertyAccessFeedback const &feedback, FeedbackSource const &source)
 
Reduction ReduceGlobalAccess (Node *node, Node *lookup_start_object, Node *receiver, Node *value, NameRef name, AccessMode access_mode, Node *key, PropertyCellRef property_cell, Node *effect=nullptr)
 
Reduction ReduceElementLoadFromHeapConstant (Node *node, Node *key, AccessMode access_mode, KeyedAccessLoadMode load_mode)
 
Reduction ReduceElementAccessOnString (Node *node, Node *index, Node *value, KeyedAccessMode const &keyed_mode)
 
Reduction ReduceEagerDeoptimize (Node *node, DeoptimizeReason reason)
 
Reduction ReduceJSToString (Node *node)
 
Reduction ReduceJSLoadPropertyWithEnumeratedKey (Node *node)
 
Handle< StringCreateStringConstant (Node *node)
 
std::optional< ValueEffectControlBuildPropertyAccess (Node *lookup_start_object, Node *receiver, Node *value, Node *context, Node *frame_state, Node *effect, Node *control, NameRef name, ZoneVector< Node * > *if_exceptions, PropertyAccessInfo const &access_info, AccessMode access_mode)
 
std::optional< ValueEffectControlBuildPropertyLoad (Node *lookup_start_object, Node *receiver, Node *context, Node *frame_state, Node *effect, Node *control, NameRef name, ZoneVector< Node * > *if_exceptions, PropertyAccessInfo const &access_info)
 
ValueEffectControl BuildPropertyStore (Node *receiver, Node *value, Node *context, Node *frame_state, Node *effect, Node *control, NameRef name, ZoneVector< Node * > *if_exceptions, PropertyAccessInfo const &access_info, AccessMode access_mode)
 
ValueEffectControl BuildPropertyTest (Node *effect, Node *control, PropertyAccessInfo const &access_info)
 
NodeInlinePropertyGetterCall (Node *receiver, ConvertReceiverMode receiver_mode, Node *lookup_start_object, Node *context, Node *frame_state, Node **effect, Node **control, ZoneVector< Node * > *if_exceptions, PropertyAccessInfo const &access_info)
 
void InlinePropertySetterCall (Node *receiver, Node *value, Node *context, Node *frame_state, Node **effect, Node **control, ZoneVector< Node * > *if_exceptions, PropertyAccessInfo const &access_info)
 
NodeInlineApiCall (Node *receiver, Node *frame_state, Node *value, Node **effect, Node **control, FunctionTemplateInfoRef function_template_info, const FeedbackSource &feedback)
 
ValueEffectControl BuildElementAccess (Node *receiver, Node *index, Node *value, Node *effect, Node *control, Node *context, ElementAccessInfo const &access_info, KeyedAccessMode const &keyed_mode)
 
ValueEffectControl BuildElementAccessForTypedArrayOrRabGsabTypedArray (Node *receiver, Node *index, Node *value, Node *effect, Node *control, Node *context, ElementsKind elements_kind, KeyedAccessMode const &keyed_mode)
 
NodeBuildIndexedStringLoad (Node *receiver, Node *index, Node *length, Node **effect, Node **control, KeyedAccessLoadMode load_mode)
 
NodeBuildExtendPropertiesBackingStore (MapRef map, Node *properties, Node *effect, Node *control)
 
NodeBuildCheckEqualsName (NameRef name, Node *value, Node *effect, Node *control)
 
Handle< StringConcatenate (Handle< String > left, Handle< String > right)
 
bool StringCanSafelyBeRead (Node *const node, Handle< String > str)
 
bool CanTreatHoleAsUndefined (ZoneVector< MapRef > const &receiver_maps)
 
void RemoveImpossibleMaps (Node *object, ZoneVector< MapRef > *maps) const
 
ElementAccessFeedback const & TryRefineElementAccessFeedback (ElementAccessFeedback const &feedback, Node *receiver, Effect effect) const
 
bool InferMaps (Node *object, Effect effect, ZoneVector< MapRef > *maps) const
 
OptionalMapRef InferRootMap (Node *object) const
 
InferHasInPrototypeChainResult InferHasInPrototypeChain (Node *receiver, Effect effect, HeapObjectRef prototype)
 
NodeBuildLoadPrototypeFromObject (Node *object, Node *effect, Node *control)
 
std::pair< Node *, Node * > ReleaseEffectAndControlFromAssembler (JSGraphAssembler *assembler)
 
TFGraphgraph () const
 
JSGraphjsgraph () const
 
JSHeapBrokerbroker () const
 
Isolateisolate () const
 
Factoryfactory () const
 
CommonOperatorBuildercommon () const
 
JSOperatorBuilderjavascript () const
 
SimplifiedOperatorBuildersimplified () const
 
Flags flags () const
 
DirectHandle< JSGlobalObjectglobal_object () const
 
DirectHandle< JSGlobalProxyglobal_proxy () const
 
NativeContextRef native_context () const
 
CompilationDependenciesdependencies () const
 
Zonezone () const
 
Zoneshared_zone () const
 

Private Attributes

JSGraph *const jsgraph_
 
JSHeapBroker *const broker_
 
Flags const flags_
 
Handle< JSGlobalObjectglobal_object_
 
Handle< JSGlobalProxyglobal_proxy_
 
Zone *const zone_
 
Zone *const shared_zone_
 
TypeCache const * type_cache_
 
ZoneUnorderedSet< IndirectHandle< String >, IndirectHandle< String >::hash, IndirectHandle< String >::equal_to > created_strings_
 

Additional Inherited Members

- Protected Member Functions inherited from v8::internal::compiler::AdvancedReducer
void Replace (Node *node, Node *replacement)
 
void Replace (Node *node, Node *replacement, NodeId max_id)
 
void Revisit (Node *node)
 
void ReplaceWithValue (Node *node, Node *value, Node *effect=nullptr, Node *control=nullptr)
 
void RelaxEffectsAndControls (Node *node)
 
void RelaxControls (Node *node, Node *control=nullptr)
 
void MergeControlToEnd (TFGraph *graph, CommonOperatorBuilder *common, Node *node)
 
- Static Protected Member Functions inherited from v8::internal::compiler::AdvancedReducer
static Reduction Replace (Node *node)
 

Detailed Description

Definition at line 44 of file js-native-context-specialization.h.

Member Typedef Documentation

◆ Flags

Member Enumeration Documentation

◆ Flag

Enumerator
kNoFlags 
kBailoutOnUninitialized 

Definition at line 48 of file js-native-context-specialization.h.

◆ InferHasInPrototypeChainResult

Enumerator
kIsInPrototypeChain 
kIsNotInPrototypeChain 
kMayBeInPrototypeChain 

Definition at line 248 of file js-native-context-specialization.h.

Constructor & Destructor Documentation

◆ JSNativeContextSpecialization() [1/2]

v8::internal::compiler::JSNativeContextSpecialization::JSNativeContextSpecialization ( Editor * editor,
JSGraph * jsgraph,
JSHeapBroker * broker,
Flags flags,
Zone * zone,
Zone * shared_zone )

Definition at line 64 of file js-native-context-specialization.cc.

◆ JSNativeContextSpecialization() [2/2]

v8::internal::compiler::JSNativeContextSpecialization::JSNativeContextSpecialization ( const JSNativeContextSpecialization & )
delete

Member Function Documentation

◆ broker()

JSHeapBroker * v8::internal::compiler::JSNativeContextSpecialization::broker ( ) const
inlineprivate

Definition at line 264 of file js-native-context-specialization.h.

Here is the caller graph for this function:

◆ BuildCheckEqualsName()

Node * v8::internal::compiler::JSNativeContextSpecialization::BuildCheckEqualsName ( NameRef name,
Node * value,
Node * effect,
Node * control )
private

Definition at line 4228 of file js-native-context-specialization.cc.

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

◆ BuildElementAccess()

JSNativeContextSpecialization::ValueEffectControl v8::internal::compiler::JSNativeContextSpecialization::BuildElementAccess ( Node * receiver,
Node * index,
Node * value,
Node * effect,
Node * control,
Node * context,
ElementAccessInfo const & access_info,
KeyedAccessMode const & keyed_mode )
private

Definition at line 3406 of file js-native-context-specialization.cc.

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

◆ BuildElementAccessForTypedArrayOrRabGsabTypedArray()

JSNativeContextSpecialization::ValueEffectControl v8::internal::compiler::JSNativeContextSpecialization::BuildElementAccessForTypedArrayOrRabGsabTypedArray ( Node * receiver,
Node * index,
Node * value,
Node * effect,
Node * control,
Node * context,
ElementsKind elements_kind,
KeyedAccessMode const & keyed_mode )
private

Definition at line 3791 of file js-native-context-specialization.cc.

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

◆ BuildExtendPropertiesBackingStore()

Node * v8::internal::compiler::JSNativeContextSpecialization::BuildExtendPropertiesBackingStore ( MapRef map,
Node * properties,
Node * effect,
Node * control )
private

Definition at line 4155 of file js-native-context-specialization.cc.

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

◆ BuildIndexedStringLoad()

Node * v8::internal::compiler::JSNativeContextSpecialization::BuildIndexedStringLoad ( Node * receiver,
Node * index,
Node * length,
Node ** effect,
Node ** control,
KeyedAccessLoadMode load_mode )
private

Definition at line 4097 of file js-native-context-specialization.cc.

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

◆ BuildLoadPrototypeFromObject()

Node * v8::internal::compiler::JSNativeContextSpecialization::BuildLoadPrototypeFromObject ( Node * object,
Node * effect,
Node * control )
private

Definition at line 4297 of file js-native-context-specialization.cc.

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

◆ BuildPropertyAccess()

std::optional< JSNativeContextSpecialization::ValueEffectControl > v8::internal::compiler::JSNativeContextSpecialization::BuildPropertyAccess ( Node * lookup_start_object,
Node * receiver,
Node * value,
Node * context,
Node * frame_state,
Node * effect,
Node * control,
NameRef name,
ZoneVector< Node * > * if_exceptions,
PropertyAccessInfo const & access_info,
AccessMode access_mode )
private

Definition at line 3137 of file js-native-context-specialization.cc.

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

◆ BuildPropertyLoad()

std::optional< JSNativeContextSpecialization::ValueEffectControl > v8::internal::compiler::JSNativeContextSpecialization::BuildPropertyLoad ( Node * lookup_start_object,
Node * receiver,
Node * context,
Node * frame_state,
Node * effect,
Node * control,
NameRef name,
ZoneVector< Node * > * if_exceptions,
PropertyAccessInfo const & access_info )
private

Definition at line 3031 of file js-native-context-specialization.cc.

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

◆ BuildPropertyStore()

JSNativeContextSpecialization::ValueEffectControl v8::internal::compiler::JSNativeContextSpecialization::BuildPropertyStore ( Node * receiver,
Node * value,
Node * context,
Node * frame_state,
Node * effect,
Node * control,
NameRef name,
ZoneVector< Node * > * if_exceptions,
PropertyAccessInfo const & access_info,
AccessMode access_mode )
private

Definition at line 3162 of file js-native-context-specialization.cc.

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

◆ BuildPropertyTest()

JSNativeContextSpecialization::ValueEffectControl v8::internal::compiler::JSNativeContextSpecialization::BuildPropertyTest ( Node * effect,
Node * control,
PropertyAccessInfo const & access_info )
private

Definition at line 3119 of file js-native-context-specialization.cc.

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

◆ CanTreatHoleAsUndefined()

bool v8::internal::compiler::JSNativeContextSpecialization::CanTreatHoleAsUndefined ( ZoneVector< MapRef > const & receiver_maps)
private

Definition at line 4240 of file js-native-context-specialization.cc.

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

◆ common()

CommonOperatorBuilder * v8::internal::compiler::JSNativeContextSpecialization::common ( ) const
private

Definition at line 4340 of file js-native-context-specialization.cc.

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

◆ Concatenate()

Handle< String > v8::internal::compiler::JSNativeContextSpecialization::Concatenate ( Handle< String > left,
Handle< String > right )
private

Definition at line 357 of file js-native-context-specialization.cc.

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

◆ CreateStringConstant()

Handle< String > v8::internal::compiler::JSNativeContextSpecialization::CreateStringConstant ( Node * node)
private

Definition at line 201 of file js-native-context-specialization.cc.

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

◆ dependencies()

CompilationDependencies * v8::internal::compiler::JSNativeContextSpecialization::dependencies ( ) const
inlineprivate

Definition at line 276 of file js-native-context-specialization.h.

Here is the caller graph for this function:

◆ factory()

Factory * v8::internal::compiler::JSNativeContextSpecialization::factory ( ) const
private

Definition at line 4336 of file js-native-context-specialization.cc.

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

◆ flags()

Flags v8::internal::compiler::JSNativeContextSpecialization::flags ( ) const
inlineprivate

Definition at line 270 of file js-native-context-specialization.h.

Here is the caller graph for this function:

◆ GetMaxStringLength()

std::optional< size_t > v8::internal::compiler::JSNativeContextSpecialization::GetMaxStringLength ( JSHeapBroker * broker,
Node * node )
static

Definition at line 145 of file js-native-context-specialization.cc.

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

◆ global_object()

DirectHandle< JSGlobalObject > v8::internal::compiler::JSNativeContextSpecialization::global_object ( ) const
inlineprivate

Definition at line 271 of file js-native-context-specialization.h.

◆ global_proxy()

DirectHandle< JSGlobalProxy > v8::internal::compiler::JSNativeContextSpecialization::global_proxy ( ) const
inlineprivate

Definition at line 272 of file js-native-context-specialization.h.

◆ graph()

TFGraph * v8::internal::compiler::JSNativeContextSpecialization::graph ( ) const
private

Definition at line 4328 of file js-native-context-specialization.cc.

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

◆ InferHasInPrototypeChain()

JSNativeContextSpecialization::InferHasInPrototypeChainResult v8::internal::compiler::JSNativeContextSpecialization::InferHasInPrototypeChain ( Node * receiver,
Effect effect,
HeapObjectRef prototype )
private

Definition at line 837 of file js-native-context-specialization.cc.

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

◆ InferMaps()

bool v8::internal::compiler::JSNativeContextSpecialization::InferMaps ( Node * object,
Effect effect,
ZoneVector< MapRef > * maps ) const
private

Definition at line 4257 of file js-native-context-specialization.cc.

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

◆ InferRootMap()

OptionalMapRef v8::internal::compiler::JSNativeContextSpecialization::InferRootMap ( Node * object) const
private

Definition at line 4281 of file js-native-context-specialization.cc.

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

◆ InlineApiCall()

Node * v8::internal::compiler::JSNativeContextSpecialization::InlineApiCall ( Node * receiver,
Node * frame_state,
Node * value,
Node ** effect,
Node ** control,
FunctionTemplateInfoRef function_template_info,
const FeedbackSource & feedback )
private

Definition at line 2973 of file js-native-context-specialization.cc.

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

◆ InlinePropertyGetterCall()

Node * v8::internal::compiler::JSNativeContextSpecialization::InlinePropertyGetterCall ( Node * receiver,
ConvertReceiverMode receiver_mode,
Node * lookup_start_object,
Node * context,
Node * frame_state,
Node ** effect,
Node ** control,
ZoneVector< Node * > * if_exceptions,
PropertyAccessInfo const & access_info )
private

Definition at line 2843 of file js-native-context-specialization.cc.

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

◆ InlinePropertySetterCall()

void v8::internal::compiler::JSNativeContextSpecialization::InlinePropertySetterCall ( Node * receiver,
Node * value,
Node * context,
Node * frame_state,
Node ** effect,
Node ** control,
ZoneVector< Node * > * if_exceptions,
PropertyAccessInfo const & access_info )
private

Definition at line 2889 of file js-native-context-specialization.cc.

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

◆ isolate()

Isolate * v8::internal::compiler::JSNativeContextSpecialization::isolate ( ) const
private

Definition at line 4332 of file js-native-context-specialization.cc.

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

◆ javascript()

JSOperatorBuilder * v8::internal::compiler::JSNativeContextSpecialization::javascript ( ) const
private

Definition at line 4344 of file js-native-context-specialization.cc.

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

◆ jsgraph()

JSGraph * v8::internal::compiler::JSNativeContextSpecialization::jsgraph ( ) const
inlineprivate

Definition at line 262 of file js-native-context-specialization.h.

Here is the caller graph for this function:

◆ native_context()

NativeContextRef v8::internal::compiler::JSNativeContextSpecialization::native_context ( ) const
inlineprivate

Definition at line 273 of file js-native-context-specialization.h.

Here is the caller graph for this function:

◆ operator=()

JSNativeContextSpecialization & v8::internal::compiler::JSNativeContextSpecialization::operator= ( const JSNativeContextSpecialization & )
delete

◆ Reduce()

Reduction v8::internal::compiler::JSNativeContextSpecialization::Reduce ( Node * node)
finalvirtual

Implements v8::internal::compiler::Reducer.

Definition at line 80 of file js-native-context-specialization.cc.

Here is the call graph for this function:

◆ ReduceEagerDeoptimize()

Reduction v8::internal::compiler::JSNativeContextSpecialization::ReduceEagerDeoptimize ( Node * node,
DeoptimizeReason reason )
private

Definition at line 2624 of file js-native-context-specialization.cc.

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

◆ ReduceElementAccess()

Reduction v8::internal::compiler::JSNativeContextSpecialization::ReduceElementAccess ( Node * node,
Node * index,
Node * value,
ElementAccessFeedback const & feedback )
private

Definition at line 2258 of file js-native-context-specialization.cc.

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

◆ ReduceElementAccessOnString()

Reduction v8::internal::compiler::JSNativeContextSpecialization::ReduceElementAccessOnString ( Node * node,
Node * index,
Node * value,
KeyedAccessMode const & keyed_mode )
private

Definition at line 2180 of file js-native-context-specialization.cc.

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

◆ ReduceElementLoadFromHeapConstant()

Reduction v8::internal::compiler::JSNativeContextSpecialization::ReduceElementLoadFromHeapConstant ( Node * node,
Node * key,
AccessMode access_mode,
KeyedAccessLoadMode load_mode )
private

Definition at line 2484 of file js-native-context-specialization.cc.

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

◆ ReduceGlobalAccess()

Reduction v8::internal::compiler::JSNativeContextSpecialization::ReduceGlobalAccess ( Node * node,
Node * lookup_start_object,
Node * receiver,
Node * value,
NameRef name,
AccessMode access_mode,
Node * key,
PropertyCellRef property_cell,
Node * effect = nullptr )
private

Definition at line 1107 of file js-native-context-specialization.cc.

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

◆ ReduceJSAdd()

Reduction v8::internal::compiler::JSNativeContextSpecialization::ReduceJSAdd ( Node * node)
private

Definition at line 465 of file js-native-context-specialization.cc.

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

◆ ReduceJSAsyncFunctionEnter()

Reduction v8::internal::compiler::JSNativeContextSpecialization::ReduceJSAsyncFunctionEnter ( Node * node)
private

Definition at line 245 of file js-native-context-specialization.cc.

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

◆ ReduceJSAsyncFunctionReject()

Reduction v8::internal::compiler::JSNativeContextSpecialization::ReduceJSAsyncFunctionReject ( Node * node)
private

Definition at line 282 of file js-native-context-specialization.cc.

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

◆ ReduceJSAsyncFunctionResolve()

Reduction v8::internal::compiler::JSNativeContextSpecialization::ReduceJSAsyncFunctionResolve ( Node * node)
private

Definition at line 318 of file js-native-context-specialization.cc.

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

◆ ReduceJSDefineKeyedOwnProperty()

Reduction v8::internal::compiler::JSNativeContextSpecialization::ReduceJSDefineKeyedOwnProperty ( Node * node)
private

Definition at line 2833 of file js-native-context-specialization.cc.

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

◆ ReduceJSDefineKeyedOwnPropertyInLiteral()

Reduction v8::internal::compiler::JSNativeContextSpecialization::ReduceJSDefineKeyedOwnPropertyInLiteral ( Node * node)
private

Definition at line 3364 of file js-native-context-specialization.cc.

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

◆ ReduceJSDefineNamedOwnProperty()

Reduction v8::internal::compiler::JSNativeContextSpecialization::ReduceJSDefineNamedOwnProperty ( Node * node)
private

Definition at line 2170 of file js-native-context-specialization.cc.

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

◆ ReduceJSFindNonDefaultConstructorOrConstruct()

Reduction v8::internal::compiler::JSNativeContextSpecialization::ReduceJSFindNonDefaultConstructorOrConstruct ( Node * node)
private

Definition at line 560 of file js-native-context-specialization.cc.

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

◆ ReduceJSGetIterator()

Reduction v8::internal::compiler::JSNativeContextSpecialization::ReduceJSGetIterator ( Node * node)
private

Definition at line 1962 of file js-native-context-specialization.cc.

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

◆ ReduceJSGetSuperConstructor()

Reduction v8::internal::compiler::JSNativeContextSpecialization::ReduceJSGetSuperConstructor ( Node * node)
private

Definition at line 532 of file js-native-context-specialization.cc.

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

◆ ReduceJSHasInPrototypeChain()

Reduction v8::internal::compiler::JSNativeContextSpecialization::ReduceJSHasInPrototypeChain ( Node * node)
private

Definition at line 908 of file js-native-context-specialization.cc.

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

◆ ReduceJSHasProperty()

Reduction v8::internal::compiler::JSNativeContextSpecialization::ReduceJSHasProperty ( Node * node)
private

Definition at line 2641 of file js-native-context-specialization.cc.

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

◆ ReduceJSInstanceOf()

Reduction v8::internal::compiler::JSNativeContextSpecialization::ReduceJSInstanceOf ( Node * node)
private

Definition at line 704 of file js-native-context-specialization.cc.

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

◆ ReduceJSLoadGlobal()

Reduction v8::internal::compiler::JSNativeContextSpecialization::ReduceJSLoadGlobal ( Node * node)
private

Definition at line 1316 of file js-native-context-specialization.cc.

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

◆ ReduceJSLoadNamed()

Reduction v8::internal::compiler::JSNativeContextSpecialization::ReduceJSLoadNamed ( Node * node)
private

Definition at line 1913 of file js-native-context-specialization.cc.

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

◆ ReduceJSLoadNamedFromSuper()

Reduction v8::internal::compiler::JSNativeContextSpecialization::ReduceJSLoadNamedFromSuper ( Node * node)
private

Definition at line 1951 of file js-native-context-specialization.cc.

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

◆ ReduceJSLoadProperty()

Reduction v8::internal::compiler::JSNativeContextSpecialization::ReduceJSLoadProperty ( Node * node)
private

Definition at line 2809 of file js-native-context-specialization.cc.

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

◆ ReduceJSLoadPropertyWithEnumeratedKey()

Reduction v8::internal::compiler::JSNativeContextSpecialization::ReduceJSLoadPropertyWithEnumeratedKey ( Node * node)
private

Definition at line 2650 of file js-native-context-specialization.cc.

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

◆ ReduceJSOrdinaryHasInstance()

Reduction v8::internal::compiler::JSNativeContextSpecialization::ReduceJSOrdinaryHasInstance ( Node * node)
private

Definition at line 932 of file js-native-context-specialization.cc.

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

◆ ReduceJSPromiseResolve()

Reduction v8::internal::compiler::JSNativeContextSpecialization::ReduceJSPromiseResolve ( Node * node)
private

Definition at line 988 of file js-native-context-specialization.cc.

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

◆ ReduceJSResolvePromise()

Reduction v8::internal::compiler::JSNativeContextSpecialization::ReduceJSResolvePromise ( Node * node)
private

Definition at line 1034 of file js-native-context-specialization.cc.

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

◆ ReduceJSSetKeyedProperty()

Reduction v8::internal::compiler::JSNativeContextSpecialization::ReduceJSSetKeyedProperty ( Node * node)
private

Definition at line 2825 of file js-native-context-specialization.cc.

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

◆ ReduceJSSetNamedProperty()

Reduction v8::internal::compiler::JSNativeContextSpecialization::ReduceJSSetNamedProperty ( Node * node)
private

Definition at line 2162 of file js-native-context-specialization.cc.

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

◆ ReduceJSStoreGlobal()

Reduction v8::internal::compiler::JSNativeContextSpecialization::ReduceJSStoreGlobal ( Node * node)
private

Definition at line 1357 of file js-native-context-specialization.cc.

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

◆ ReduceJSStoreInArrayLiteral()

Reduction v8::internal::compiler::JSNativeContextSpecialization::ReduceJSStoreInArrayLiteral ( Node * node)
private

Definition at line 3381 of file js-native-context-specialization.cc.

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

◆ ReduceJSToObject()

Reduction v8::internal::compiler::JSNativeContextSpecialization::ReduceJSToObject ( Node * node)
private

Definition at line 3391 of file js-native-context-specialization.cc.

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

◆ ReduceJSToString()

Reduction v8::internal::compiler::JSNativeContextSpecialization::ReduceJSToString ( Node * node)
private

Definition at line 163 of file js-native-context-specialization.cc.

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

◆ ReduceMegaDOMPropertyAccess()

Reduction v8::internal::compiler::JSNativeContextSpecialization::ReduceMegaDOMPropertyAccess ( Node * node,
Node * value,
MegaDOMPropertyAccessFeedback const & feedback,
FeedbackSource const & source )
private

Definition at line 1396 of file js-native-context-specialization.cc.

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

◆ ReduceNamedAccess()

Reduction v8::internal::compiler::JSNativeContextSpecialization::ReduceNamedAccess ( Node * node,
Node * value,
NamedAccessFeedback const & feedback,
AccessMode access_mode,
Node * key = nullptr )
private

Definition at line 1488 of file js-native-context-specialization.cc.

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

◆ ReducePropertyAccess()

Reduction v8::internal::compiler::JSNativeContextSpecialization::ReducePropertyAccess ( Node * node,
Node * key,
OptionalNameRef static_name,
Node * value,
FeedbackSource const & source,
AccessMode access_mode )
private

Definition at line 2570 of file js-native-context-specialization.cc.

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

◆ reducer_name()

const char * v8::internal::compiler::JSNativeContextSpecialization::reducer_name ( ) const
inlineoverridevirtual

◆ ReleaseEffectAndControlFromAssembler()

std::pair< Node *, Node * > v8::internal::compiler::JSNativeContextSpecialization::ReleaseEffectAndControlFromAssembler ( JSGraphAssembler * assembler)
private

Definition at line 4308 of file js-native-context-specialization.cc.

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

◆ RemoveImpossibleMaps()

void v8::internal::compiler::JSNativeContextSpecialization::RemoveImpossibleMaps ( Node * object,
ZoneVector< MapRef > * maps ) const
private

Definition at line 2223 of file js-native-context-specialization.cc.

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

◆ shared_zone()

Zone * v8::internal::compiler::JSNativeContextSpecialization::shared_zone ( ) const
inlineprivate

Definition at line 280 of file js-native-context-specialization.h.

◆ simplified()

SimplifiedOperatorBuilder * v8::internal::compiler::JSNativeContextSpecialization::simplified ( ) const
private

Definition at line 4348 of file js-native-context-specialization.cc.

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

◆ StringCanSafelyBeRead()

bool v8::internal::compiler::JSNativeContextSpecialization::StringCanSafelyBeRead ( Node *const node,
Handle< String > str )
private

Definition at line 448 of file js-native-context-specialization.cc.

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

◆ TryRefineElementAccessFeedback()

ElementAccessFeedback const & v8::internal::compiler::JSNativeContextSpecialization::TryRefineElementAccessFeedback ( ElementAccessFeedback const & feedback,
Node * receiver,
Effect effect ) const
private

Definition at line 2239 of file js-native-context-specialization.cc.

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

◆ zone()

Zone * v8::internal::compiler::JSNativeContextSpecialization::zone ( ) const
inlineprivate

Definition at line 279 of file js-native-context-specialization.h.

Here is the caller graph for this function:

Member Data Documentation

◆ broker_

JSHeapBroker* const v8::internal::compiler::JSNativeContextSpecialization::broker_
private

Definition at line 283 of file js-native-context-specialization.h.

◆ created_strings_

ZoneUnorderedSet<IndirectHandle<String>, IndirectHandle<String>::hash, IndirectHandle<String>::equal_to> v8::internal::compiler::JSNativeContextSpecialization::created_strings_
private

Definition at line 292 of file js-native-context-specialization.h.

◆ flags_

Flags const v8::internal::compiler::JSNativeContextSpecialization::flags_
private

Definition at line 284 of file js-native-context-specialization.h.

◆ global_object_

Handle<JSGlobalObject> v8::internal::compiler::JSNativeContextSpecialization::global_object_
private

Definition at line 285 of file js-native-context-specialization.h.

◆ global_proxy_

Handle<JSGlobalProxy> v8::internal::compiler::JSNativeContextSpecialization::global_proxy_
private

Definition at line 286 of file js-native-context-specialization.h.

◆ jsgraph_

JSGraph* const v8::internal::compiler::JSNativeContextSpecialization::jsgraph_
private

Definition at line 282 of file js-native-context-specialization.h.

◆ shared_zone_

Zone* const v8::internal::compiler::JSNativeContextSpecialization::shared_zone_
private

Definition at line 288 of file js-native-context-specialization.h.

◆ type_cache_

TypeCache const* v8::internal::compiler::JSNativeContextSpecialization::type_cache_
private

Definition at line 289 of file js-native-context-specialization.h.

◆ zone_

Zone* const v8::internal::compiler::JSNativeContextSpecialization::zone_
private

Definition at line 287 of file js-native-context-specialization.h.


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