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

#include <js-generic-lowering.h>

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

Public Member Functions

 JSGenericLowering (JSGraph *jsgraph, Editor *editor, JSHeapBroker *broker)
 
 ~JSGenericLowering () final
 
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 ()
 

Protected Member Functions

void ReplaceWithBuiltinCall (Node *node, Builtin builtin)
 
void ReplaceWithBuiltinCall (Node *node, Callable c, CallDescriptor::Flags flags)
 
void ReplaceWithBuiltinCall (Node *node, Callable c, CallDescriptor::Flags flags, Operator::Properties properties)
 
void ReplaceWithRuntimeCall (Node *node, Runtime::FunctionId f, int args=-1)
 
void ReplaceUnaryOpWithBuiltinCall (Node *node, Builtin builtin_without_feedback, Builtin builtin_with_feedback)
 
void ReplaceBinaryOpWithBuiltinCall (Node *node, Builtin builtin_without_feedback, Builtin builtin_with_feedback)
 
Zonezone () const
 
Isolateisolate () const
 
JSGraphjsgraph () const
 
TFGraphgraph () const
 
CommonOperatorBuildercommon () const
 
MachineOperatorBuildermachine () const
 
JSHeapBrokerbroker () const
 
- 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)
 

Private Attributes

JSGraph *const jsgraph_
 
JSHeapBroker *const broker_
 

Additional Inherited Members

- Static Public Member Functions inherited from v8::internal::compiler::Reducer
static Reduction NoChange ()
 
static Reduction Replace (Node *node)
 
static Reduction Changed (Node *node)
 
- Static Protected Member Functions inherited from v8::internal::compiler::AdvancedReducer
static Reduction Replace (Node *node)
 

Detailed Description

Definition at line 24 of file js-generic-lowering.h.

Constructor & Destructor Documentation

◆ JSGenericLowering()

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

Definition at line 37 of file js-generic-lowering.cc.

◆ ~JSGenericLowering()

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

Member Function Documentation

◆ broker()

JSHeapBroker * v8::internal::compiler::JSGenericLowering::broker ( ) const
inlineprotected

Definition at line 61 of file js-generic-lowering.h.

◆ common()

CommonOperatorBuilder * v8::internal::compiler::JSGenericLowering::common ( ) const
protected

Definition at line 1275 of file js-generic-lowering.cc.

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

◆ graph()

TFGraph * v8::internal::compiler::JSGenericLowering::graph ( ) const
protected

Definition at line 1273 of file js-generic-lowering.cc.

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

◆ isolate()

Isolate * v8::internal::compiler::JSGenericLowering::isolate ( ) const
protected

Definition at line 1271 of file js-generic-lowering.cc.

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

◆ jsgraph()

JSGraph * v8::internal::compiler::JSGenericLowering::jsgraph ( ) const
inlineprotected

Definition at line 57 of file js-generic-lowering.h.

Here is the caller graph for this function:

◆ machine()

MachineOperatorBuilder * v8::internal::compiler::JSGenericLowering::machine ( ) const
protected

Definition at line 1280 of file js-generic-lowering.cc.

Here is the call graph for this function:

◆ Reduce()

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

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

Definition at line 44 of file js-generic-lowering.cc.

Here is the call graph for this function:

◆ reducer_name()

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

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

Definition at line 29 of file js-generic-lowering.h.

◆ ReplaceBinaryOpWithBuiltinCall()

void v8::internal::compiler::JSGenericLowering::ReplaceBinaryOpWithBuiltinCall ( Node * node,
Builtin builtin_without_feedback,
Builtin builtin_with_feedback )
protected

Definition at line 160 of file js-generic-lowering.cc.

Here is the call graph for this function:

◆ ReplaceUnaryOpWithBuiltinCall()

void v8::internal::compiler::JSGenericLowering::ReplaceUnaryOpWithBuiltinCall ( Node * node,
Builtin builtin_without_feedback,
Builtin builtin_with_feedback )
protected

Definition at line 123 of file js-generic-lowering.cc.

Here is the call graph for this function:

◆ ReplaceWithBuiltinCall() [1/3]

void v8::internal::compiler::JSGenericLowering::ReplaceWithBuiltinCall ( Node * node,
Builtin builtin )
protected

Definition at line 83 of file js-generic-lowering.cc.

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

◆ ReplaceWithBuiltinCall() [2/3]

void v8::internal::compiler::JSGenericLowering::ReplaceWithBuiltinCall ( Node * node,
Callable c,
CallDescriptor::Flags flags )
protected

Definition at line 89 of file js-generic-lowering.cc.

Here is the call graph for this function:

◆ ReplaceWithBuiltinCall() [3/3]

void v8::internal::compiler::JSGenericLowering::ReplaceWithBuiltinCall ( Node * node,
Callable c,
CallDescriptor::Flags flags,
Operator::Properties properties )
protected

Definition at line 94 of file js-generic-lowering.cc.

Here is the call graph for this function:

◆ ReplaceWithRuntimeCall()

void v8::internal::compiler::JSGenericLowering::ReplaceWithRuntimeCall ( Node * node,
Runtime::FunctionId f,
int args = -1 )
protected

Definition at line 106 of file js-generic-lowering.cc.

Here is the call graph for this function:

◆ zone()

Zone * v8::internal::compiler::JSGenericLowering::zone ( ) const
protected

Definition at line 1268 of file js-generic-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::JSGenericLowering::broker_
private

Definition at line 65 of file js-generic-lowering.h.

◆ jsgraph_

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

Definition at line 64 of file js-generic-lowering.h.


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