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

#include <js-intrinsic-lowering.h>

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

Public Member Functions

 JSIntrinsicLowering (Editor *editor, JSGraph *jsgraph, JSHeapBroker *broker)
 
 ~JSIntrinsicLowering () final=default
 
const char * reducer_name () const override
 
Reduction Reduce (Node *node) final
 

Private Types

enum  FrameStateFlag { kNeedsFrameState , kDoesNotNeedFrameState }
 

Private Member Functions

Reduction ReduceCopyDataProperties (Node *node)
 
Reduction ReduceCopyDataPropertiesWithExcludedPropertiesOnStack (Node *node)
 
Reduction ReduceCreateIterResultObject (Node *node)
 
Reduction ReduceDeoptimizeNow (Node *node)
 
Reduction ReduceCreateJSGeneratorObject (Node *node)
 
Reduction ReduceGeneratorClose (Node *node)
 
Reduction ReduceAsyncFunctionAwait (Node *node)
 
Reduction ReduceAsyncFunctionEnter (Node *node)
 
Reduction ReduceAsyncFunctionReject (Node *node)
 
Reduction ReduceAsyncFunctionResolve (Node *node)
 
Reduction ReduceAsyncGeneratorAwait (Node *node)
 
Reduction ReduceAsyncGeneratorReject (Node *node)
 
Reduction ReduceAsyncGeneratorResolve (Node *node)
 
Reduction ReduceAsyncGeneratorYieldWithAwait (Node *node)
 
Reduction ReduceGeneratorGetResumeMode (Node *node)
 
Reduction ReduceIsInstanceType (Node *node, InstanceType instance_type)
 
Reduction ReduceIsJSReceiver (Node *node)
 
Reduction ReduceIsBeingInterpreted (Node *node)
 
Reduction ReduceTurbofanStaticAssert (Node *node)
 
Reduction ReduceVerifyType (Node *node)
 
Reduction ReduceCheckTurboshaftTypeOf (Node *node)
 
Reduction ReduceToLength (Node *node)
 
Reduction ReduceToObject (Node *node)
 
Reduction ReduceToString (Node *node)
 
Reduction ReduceCall (Node *node)
 
Reduction ReduceIncBlockCounter (Node *node)
 
Reduction ReduceGetImportMetaObject (Node *node)
 
Reduction Change (Node *node, const Operator *op)
 
Reduction Change (Node *node, const Operator *op, Node *a, Node *b)
 
Reduction Change (Node *node, const Operator *op, Node *a, Node *b, Node *c)
 
Reduction Change (Node *node, const Operator *op, Node *a, Node *b, Node *c, Node *d)
 
Reduction Change (Node *node, Callable const &callable, int stack_parameter_count, enum FrameStateFlag frame_state_flag=kNeedsFrameState)
 
TFGraphgraph () const
 
JSGraphjsgraph () const
 
JSHeapBrokerbroker () const
 
Isolateisolate () const
 
CommonOperatorBuildercommon () const
 
JSOperatorBuilderjavascript () const
 
SimplifiedOperatorBuildersimplified () const
 

Private Attributes

JSGraph *const jsgraph_
 
JSHeapBroker *const broker_
 

Detailed Description

Definition at line 30 of file js-intrinsic-lowering.h.

Member Enumeration Documentation

◆ FrameStateFlag

Enumerator
kNeedsFrameState 
kDoesNotNeedFrameState 

Definition at line 75 of file js-intrinsic-lowering.h.

Constructor & Destructor Documentation

◆ JSIntrinsicLowering()

v8::internal::compiler::JSIntrinsicLowering::JSIntrinsicLowering ( Editor * editor,
JSGraph * jsgraph,
JSHeapBroker * broker )

Definition at line 23 of file js-intrinsic-lowering.cc.

◆ ~JSIntrinsicLowering()

v8::internal::compiler::JSIntrinsicLowering::~JSIntrinsicLowering ( )
finaldefault

Member Function Documentation

◆ broker()

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

Definition at line 85 of file js-intrinsic-lowering.h.

Here is the caller graph for this function:

◆ Change() [1/5]

Reduction v8::internal::compiler::JSIntrinsicLowering::Change ( Node * node,
Callable const & callable,
int stack_parameter_count,
enum FrameStateFlag frame_state_flag = kNeedsFrameState )
private

Definition at line 396 of file js-intrinsic-lowering.cc.

Here is the call graph for this function:

◆ Change() [2/5]

Reduction v8::internal::compiler::JSIntrinsicLowering::Change ( Node * node,
const Operator * op )
private

Definition at line 306 of file js-intrinsic-lowering.cc.

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

◆ Change() [3/5]

Reduction v8::internal::compiler::JSIntrinsicLowering::Change ( Node * node,
const Operator * op,
Node * a,
Node * b )
private

Definition at line 363 of file js-intrinsic-lowering.cc.

Here is the call graph for this function:

◆ Change() [4/5]

Reduction v8::internal::compiler::JSIntrinsicLowering::Change ( Node * node,
const Operator * op,
Node * a,
Node * b,
Node * c )
private

Definition at line 373 of file js-intrinsic-lowering.cc.

Here is the call graph for this function:

◆ Change() [5/5]

Reduction v8::internal::compiler::JSIntrinsicLowering::Change ( Node * node,
const Operator * op,
Node * a,
Node * b,
Node * c,
Node * d )
private

Definition at line 384 of file js-intrinsic-lowering.cc.

Here is the call graph for this function:

◆ common()

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

Definition at line 415 of file js-intrinsic-lowering.cc.

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

◆ graph()

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

Definition at line 411 of file js-intrinsic-lowering.cc.

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

◆ isolate()

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

Definition at line 413 of file js-intrinsic-lowering.cc.

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

◆ javascript()

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

Definition at line 419 of file js-intrinsic-lowering.cc.

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

◆ jsgraph()

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

Definition at line 84 of file js-intrinsic-lowering.h.

Here is the caller graph for this function:

◆ Reduce()

Reduction v8::internal::compiler::JSIntrinsicLowering::Reduce ( Node * node)
final

Definition at line 27 of file js-intrinsic-lowering.cc.

Here is the call graph for this function:

◆ ReduceAsyncFunctionAwait()

Reduction v8::internal::compiler::JSIntrinsicLowering::ReduceAsyncFunctionAwait ( Node * node)
private

Definition at line 161 of file js-intrinsic-lowering.cc.

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

◆ ReduceAsyncFunctionEnter()

Reduction v8::internal::compiler::JSIntrinsicLowering::ReduceAsyncFunctionEnter ( Node * node)
private

Definition at line 166 of file js-intrinsic-lowering.cc.

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

◆ ReduceAsyncFunctionReject()

Reduction v8::internal::compiler::JSIntrinsicLowering::ReduceAsyncFunctionReject ( Node * node)
private

Definition at line 171 of file js-intrinsic-lowering.cc.

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

◆ ReduceAsyncFunctionResolve()

Reduction v8::internal::compiler::JSIntrinsicLowering::ReduceAsyncFunctionResolve ( Node * node)
private

Definition at line 177 of file js-intrinsic-lowering.cc.

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

◆ ReduceAsyncGeneratorAwait()

Reduction v8::internal::compiler::JSIntrinsicLowering::ReduceAsyncGeneratorAwait ( Node * node)
private

Definition at line 183 of file js-intrinsic-lowering.cc.

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

◆ ReduceAsyncGeneratorReject()

Reduction v8::internal::compiler::JSIntrinsicLowering::ReduceAsyncGeneratorReject ( Node * node)
private

Definition at line 188 of file js-intrinsic-lowering.cc.

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

◆ ReduceAsyncGeneratorResolve()

Reduction v8::internal::compiler::JSIntrinsicLowering::ReduceAsyncGeneratorResolve ( Node * node)
private

Definition at line 194 of file js-intrinsic-lowering.cc.

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

◆ ReduceAsyncGeneratorYieldWithAwait()

Reduction v8::internal::compiler::JSIntrinsicLowering::ReduceAsyncGeneratorYieldWithAwait ( Node * node)
private

Definition at line 200 of file js-intrinsic-lowering.cc.

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

◆ ReduceCall()

Reduction v8::internal::compiler::JSIntrinsicLowering::ReduceCall ( Node * node)
private

Definition at line 337 of file js-intrinsic-lowering.cc.

Here is the call graph for this function:

◆ ReduceCheckTurboshaftTypeOf()

Reduction v8::internal::compiler::JSIntrinsicLowering::ReduceCheckTurboshaftTypeOf ( Node * node)
private

Definition at line 284 of file js-intrinsic-lowering.cc.

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

◆ ReduceCopyDataProperties()

Reduction v8::internal::compiler::JSIntrinsicLowering::ReduceCopyDataProperties ( Node * node)
private

Definition at line 85 of file js-intrinsic-lowering.cc.

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

◆ ReduceCopyDataPropertiesWithExcludedPropertiesOnStack()

Reduction v8::internal::compiler::JSIntrinsicLowering::ReduceCopyDataPropertiesWithExcludedPropertiesOnStack ( Node * node)
private

Definition at line 91 of file js-intrinsic-lowering.cc.

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

◆ ReduceCreateIterResultObject()

Reduction v8::internal::compiler::JSIntrinsicLowering::ReduceCreateIterResultObject ( Node * node)
private

Definition at line 109 of file js-intrinsic-lowering.cc.

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

◆ ReduceCreateJSGeneratorObject()

Reduction v8::internal::compiler::JSIntrinsicLowering::ReduceCreateJSGeneratorObject ( Node * node)
private

Definition at line 133 of file js-intrinsic-lowering.cc.

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

◆ ReduceDeoptimizeNow()

Reduction v8::internal::compiler::JSIntrinsicLowering::ReduceDeoptimizeNow ( Node * node)
private

Definition at line 118 of file js-intrinsic-lowering.cc.

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

◆ ReduceGeneratorClose()

Reduction v8::internal::compiler::JSIntrinsicLowering::ReduceGeneratorClose ( Node * node)
private

Definition at line 146 of file js-intrinsic-lowering.cc.

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

◆ ReduceGeneratorGetResumeMode()

Reduction v8::internal::compiler::JSIntrinsicLowering::ReduceGeneratorGetResumeMode ( Node * node)
private

Definition at line 207 of file js-intrinsic-lowering.cc.

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

◆ ReduceGetImportMetaObject()

Reduction v8::internal::compiler::JSIntrinsicLowering::ReduceGetImportMetaObject ( Node * node)
private

Definition at line 358 of file js-intrinsic-lowering.cc.

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

◆ ReduceIncBlockCounter()

Reduction v8::internal::compiler::JSIntrinsicLowering::ReduceIncBlockCounter ( Node * node)
private

Definition at line 350 of file js-intrinsic-lowering.cc.

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

◆ ReduceIsBeingInterpreted()

Reduction v8::internal::compiler::JSIntrinsicLowering::ReduceIsBeingInterpreted ( Node * node)
private

Definition at line 301 of file js-intrinsic-lowering.cc.

Here is the caller graph for this function:

◆ ReduceIsInstanceType()

Reduction v8::internal::compiler::JSIntrinsicLowering::ReduceIsInstanceType ( Node * node,
InstanceType instance_type )
private

Definition at line 217 of file js-intrinsic-lowering.cc.

Here is the call graph for this function:

◆ ReduceIsJSReceiver()

Reduction v8::internal::compiler::JSIntrinsicLowering::ReduceIsJSReceiver ( Node * node)
private

Definition at line 258 of file js-intrinsic-lowering.cc.

Here is the call graph for this function:

◆ reducer_name()

const char * v8::internal::compiler::JSIntrinsicLowering::reducer_name ( ) const
inlineoverride

Definition at line 36 of file js-intrinsic-lowering.h.

◆ ReduceToLength()

Reduction v8::internal::compiler::JSIntrinsicLowering::ReduceToLength ( Node * node)
private

Definition at line 316 of file js-intrinsic-lowering.cc.

Here is the call graph for this function:

◆ ReduceToObject()

Reduction v8::internal::compiler::JSIntrinsicLowering::ReduceToObject ( Node * node)
private

Definition at line 321 of file js-intrinsic-lowering.cc.

Here is the call graph for this function:

◆ ReduceToString()

Reduction v8::internal::compiler::JSIntrinsicLowering::ReduceToString ( Node * node)
private

Definition at line 326 of file js-intrinsic-lowering.cc.

Here is the call graph for this function:

◆ ReduceTurbofanStaticAssert()

Reduction v8::internal::compiler::JSIntrinsicLowering::ReduceTurbofanStaticAssert ( Node * node)
private

Definition at line 262 of file js-intrinsic-lowering.cc.

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

◆ ReduceVerifyType()

Reduction v8::internal::compiler::JSIntrinsicLowering::ReduceVerifyType ( Node * node)
private

Definition at line 276 of file js-intrinsic-lowering.cc.

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

◆ simplified()

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

Definition at line 423 of file js-intrinsic-lowering.cc.

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

Member Data Documentation

◆ broker_

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

Definition at line 92 of file js-intrinsic-lowering.h.

◆ jsgraph_

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

Definition at line 91 of file js-intrinsic-lowering.h.


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