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

#include <simplified-lowering.h>

Collaboration diagram for v8::internal::compiler::SimplifiedLowering:

Classes

class  NodeProperties
 

Public Member Functions

 SimplifiedLowering (JSGraph *jsgraph, JSHeapBroker *broker, Zone *zone, SourcePositionTable *source_position, NodeOriginTable *node_origins, TickCounter *tick_counter, Linkage *linkage, OptimizedCompilationInfo *info, ObserveNodeManager *observe_node_manager=nullptr)
 
 ~SimplifiedLowering ()=default
 
void LowerAllNodes ()
 
void DoMax (Node *node, Operator const *op, MachineRepresentation rep)
 
void DoMin (Node *node, Operator const *op, MachineRepresentation rep)
 
void DoJSToNumberOrNumericTruncatesToFloat64 (Node *node, RepresentationSelector *selector)
 
void DoJSToNumberOrNumericTruncatesToWord32 (Node *node, RepresentationSelector *selector)
 
void DoIntegral32ToBit (Node *node)
 
void DoOrderedNumberToBit (Node *node)
 
void DoNumberToBit (Node *node)
 
void DoIntegerToUint8Clamped (Node *node)
 
void DoNumberToUint8Clamped (Node *node)
 
void DoSigned32ToUint8Clamped (Node *node)
 
void DoUnsigned32ToUint8Clamped (Node *node)
 

Private Member Functions

void ChangeOp (Node *node, const Operator *new_op)
 
NodeFloat64Round (Node *const node)
 
NodeFloat64Sign (Node *const node)
 
NodeInt32Abs (Node *const node)
 
NodeInt32Div (Node *const node)
 
NodeInt32Mod (Node *const node)
 
NodeInt32Sign (Node *const node)
 
NodeUint32Div (Node *const node)
 
NodeUint32Mod (Node *const node)
 
NodeToNumberCode ()
 
NodeToNumberConvertBigIntCode ()
 
NodeToNumericCode ()
 
NodeIeee754Fp64ToFp16RawBitsCode ()
 
Operator const * ToNumberOperator ()
 
Operator const * ToNumberConvertBigIntOperator ()
 
Operator const * ToNumericOperator ()
 
Operator const * Ieee754Fp64ToFp16RawBitsOperator ()
 
Isolateisolate ()
 
Zonezone ()
 
JSGraphjsgraph ()
 
TFGraphgraph ()
 
CommonOperatorBuildercommon ()
 
MachineOperatorBuildermachine ()
 
SimplifiedOperatorBuildersimplified ()
 
Linkagelinkage ()
 

Private Attributes

JSGraph *const jsgraph_
 
JSHeapBrokerbroker_
 
Zone *const zone_
 
TypeCache const * type_cache_
 
SetOncePointer< Nodeto_number_code_
 
SetOncePointer< Nodeto_number_convert_big_int_code_
 
SetOncePointer< Nodeto_numeric_code_
 
SetOncePointer< Operator const > to_number_operator_
 
SetOncePointer< Operator const > to_number_convert_big_int_operator_
 
SetOncePointer< Operator const > to_numeric_operator_
 
SourcePositionTablesource_positions_
 
NodeOriginTablenode_origins_
 
TickCounter *const tick_counter_
 
Linkage *const linkage_
 
OptimizedCompilationInfoinfo_
 
ObserveNodeManager *const observe_node_manager_
 

Friends

class RepresentationSelector
 

Detailed Description

Definition at line 29 of file simplified-lowering.h.

Constructor & Destructor Documentation

◆ SimplifiedLowering()

v8::internal::compiler::SimplifiedLowering::SimplifiedLowering ( JSGraph * jsgraph,
JSHeapBroker * broker,
Zone * zone,
SourcePositionTable * source_position,
NodeOriginTable * node_origins,
TickCounter * tick_counter,
Linkage * linkage,
OptimizedCompilationInfo * info,
ObserveNodeManager * observe_node_manager = nullptr )

Definition at line 5137 of file simplified-lowering.cc.

◆ ~SimplifiedLowering()

v8::internal::compiler::SimplifiedLowering::~SimplifiedLowering ( )
default

Member Function Documentation

◆ ChangeOp()

void v8::internal::compiler::SimplifiedLowering::ChangeOp ( Node * node,
const Operator * new_op )
private

Definition at line 5871 of file simplified-lowering.cc.

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

◆ common()

CommonOperatorBuilder * v8::internal::compiler::SimplifiedLowering::common ( )
inlineprivate

Definition at line 115 of file simplified-lowering.h.

Here is the caller graph for this function:

◆ DoIntegerToUint8Clamped()

void v8::internal::compiler::SimplifiedLowering::DoIntegerToUint8Clamped ( Node * node)

Definition at line 5744 of file simplified-lowering.cc.

Here is the call graph for this function:

◆ DoIntegral32ToBit()

void v8::internal::compiler::SimplifiedLowering::DoIntegral32ToBit ( Node * node)

Definition at line 5716 of file simplified-lowering.cc.

Here is the call graph for this function:

◆ DoJSToNumberOrNumericTruncatesToFloat64()

void v8::internal::compiler::SimplifiedLowering::DoJSToNumberOrNumericTruncatesToFloat64 ( Node * node,
RepresentationSelector * selector )

Definition at line 5165 of file simplified-lowering.cc.

Here is the call graph for this function:

◆ DoJSToNumberOrNumericTruncatesToWord32()

void v8::internal::compiler::SimplifiedLowering::DoJSToNumberOrNumericTruncatesToWord32 ( Node * node,
RepresentationSelector * selector )

Definition at line 5270 of file simplified-lowering.cc.

Here is the call graph for this function:

◆ DoMax()

void v8::internal::compiler::SimplifiedLowering::DoMax ( Node * node,
Operator const * op,
MachineRepresentation rep )

Definition at line 5694 of file simplified-lowering.cc.

Here is the call graph for this function:

◆ DoMin()

void v8::internal::compiler::SimplifiedLowering::DoMin ( Node * node,
Operator const * op,
MachineRepresentation rep )

Definition at line 5705 of file simplified-lowering.cc.

Here is the call graph for this function:

◆ DoNumberToBit()

void v8::internal::compiler::SimplifiedLowering::DoNumberToBit ( Node * node)

Definition at line 5735 of file simplified-lowering.cc.

Here is the call graph for this function:

◆ DoNumberToUint8Clamped()

void v8::internal::compiler::SimplifiedLowering::DoNumberToUint8Clamped ( Node * node)

Definition at line 5761 of file simplified-lowering.cc.

Here is the call graph for this function:

◆ DoOrderedNumberToBit()

void v8::internal::compiler::SimplifiedLowering::DoOrderedNumberToBit ( Node * node)

Definition at line 5726 of file simplified-lowering.cc.

Here is the call graph for this function:

◆ DoSigned32ToUint8Clamped()

void v8::internal::compiler::SimplifiedLowering::DoSigned32ToUint8Clamped ( Node * node)

Definition at line 5778 of file simplified-lowering.cc.

Here is the call graph for this function:

◆ DoUnsigned32ToUint8Clamped()

void v8::internal::compiler::SimplifiedLowering::DoUnsigned32ToUint8Clamped ( Node * node)

Definition at line 5794 of file simplified-lowering.cc.

Here is the call graph for this function:

◆ Float64Round()

Node * v8::internal::compiler::SimplifiedLowering::Float64Round ( Node *const node)
private

Definition at line 5368 of file simplified-lowering.cc.

Here is the call graph for this function:

◆ Float64Sign()

Node * v8::internal::compiler::SimplifiedLowering::Float64Sign ( Node *const node)
private

Definition at line 5384 of file simplified-lowering.cc.

Here is the call graph for this function:

◆ graph()

TFGraph * v8::internal::compiler::SimplifiedLowering::graph ( )
inlineprivate

Definition at line 114 of file simplified-lowering.h.

Here is the caller graph for this function:

◆ Ieee754Fp64ToFp16RawBitsCode()

Node * v8::internal::compiler::SimplifiedLowering::Ieee754Fp64ToFp16RawBitsCode ( )
private

◆ Ieee754Fp64ToFp16RawBitsOperator()

Operator const * v8::internal::compiler::SimplifiedLowering::Ieee754Fp64ToFp16RawBitsOperator ( )
private

◆ Int32Abs()

Node * v8::internal::compiler::SimplifiedLowering::Int32Abs ( Node *const node)
private

Definition at line 5400 of file simplified-lowering.cc.

Here is the call graph for this function:

◆ Int32Div()

Node * v8::internal::compiler::SimplifiedLowering::Int32Div ( Node *const node)
private

Definition at line 5415 of file simplified-lowering.cc.

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

◆ Int32Mod()

Node * v8::internal::compiler::SimplifiedLowering::Int32Mod ( Node *const node)
private

Definition at line 5493 of file simplified-lowering.cc.

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

◆ Int32Sign()

Node * v8::internal::compiler::SimplifiedLowering::Int32Sign ( Node *const node)
private

Definition at line 5596 of file simplified-lowering.cc.

Here is the call graph for this function:

◆ isolate()

Isolate * v8::internal::compiler::SimplifiedLowering::isolate ( )
inlineprivate

Definition at line 111 of file simplified-lowering.h.

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

◆ jsgraph()

JSGraph * v8::internal::compiler::SimplifiedLowering::jsgraph ( )
inlineprivate

Definition at line 113 of file simplified-lowering.h.

Here is the caller graph for this function:

◆ linkage()

Linkage * v8::internal::compiler::SimplifiedLowering::linkage ( )
inlineprivate

Definition at line 118 of file simplified-lowering.h.

◆ LowerAllNodes()

void v8::internal::compiler::SimplifiedLowering::LowerAllNodes ( )

Definition at line 5153 of file simplified-lowering.cc.

Here is the call graph for this function:

◆ machine()

MachineOperatorBuilder * v8::internal::compiler::SimplifiedLowering::machine ( )
inlineprivate

Definition at line 116 of file simplified-lowering.h.

Here is the caller graph for this function:

◆ simplified()

SimplifiedOperatorBuilder * v8::internal::compiler::SimplifiedLowering::simplified ( )
inlineprivate

Definition at line 117 of file simplified-lowering.h.

Here is the caller graph for this function:

◆ ToNumberCode()

Node * v8::internal::compiler::SimplifiedLowering::ToNumberCode ( )
private

Definition at line 5805 of file simplified-lowering.cc.

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

◆ ToNumberConvertBigIntCode()

Node * v8::internal::compiler::SimplifiedLowering::ToNumberConvertBigIntCode ( )
private

Definition at line 5813 of file simplified-lowering.cc.

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

◆ ToNumberConvertBigIntOperator()

Operator const * v8::internal::compiler::SimplifiedLowering::ToNumberConvertBigIntOperator ( )
private

Definition at line 5844 of file simplified-lowering.cc.

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

◆ ToNumberOperator()

Operator const * v8::internal::compiler::SimplifiedLowering::ToNumberOperator ( )
private

Definition at line 5831 of file simplified-lowering.cc.

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

◆ ToNumericCode()

Node * v8::internal::compiler::SimplifiedLowering::ToNumericCode ( )
private

Definition at line 5823 of file simplified-lowering.cc.

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

◆ ToNumericOperator()

Operator const * v8::internal::compiler::SimplifiedLowering::ToNumericOperator ( )
private

Definition at line 5858 of file simplified-lowering.cc.

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

◆ Uint32Div()

Node * v8::internal::compiler::SimplifiedLowering::Uint32Div ( Node *const node)
private

Definition at line 5612 of file simplified-lowering.cc.

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

◆ Uint32Mod()

Node * v8::internal::compiler::SimplifiedLowering::Uint32Mod ( Node *const node)
private

Definition at line 5631 of file simplified-lowering.cc.

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

◆ zone()

Zone * v8::internal::compiler::SimplifiedLowering::zone ( )
inlineprivate

Definition at line 112 of file simplified-lowering.h.

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

Friends And Related Symbol Documentation

◆ RepresentationSelector

friend class RepresentationSelector
friend

Definition at line 109 of file simplified-lowering.h.

Member Data Documentation

◆ broker_

JSHeapBroker* v8::internal::compiler::SimplifiedLowering::broker_
private

Definition at line 67 of file simplified-lowering.h.

◆ info_

OptimizedCompilationInfo* v8::internal::compiler::SimplifiedLowering::info_
private

Definition at line 87 of file simplified-lowering.h.

◆ jsgraph_

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

Definition at line 66 of file simplified-lowering.h.

◆ linkage_

Linkage* const v8::internal::compiler::SimplifiedLowering::linkage_
private

Definition at line 86 of file simplified-lowering.h.

◆ node_origins_

NodeOriginTable* v8::internal::compiler::SimplifiedLowering::node_origins_
private

Definition at line 83 of file simplified-lowering.h.

◆ observe_node_manager_

ObserveNodeManager* const v8::internal::compiler::SimplifiedLowering::observe_node_manager_
private

Definition at line 89 of file simplified-lowering.h.

◆ source_positions_

SourcePositionTable* v8::internal::compiler::SimplifiedLowering::source_positions_
private

Definition at line 82 of file simplified-lowering.h.

◆ tick_counter_

TickCounter* const v8::internal::compiler::SimplifiedLowering::tick_counter_
private

Definition at line 85 of file simplified-lowering.h.

◆ to_number_code_

SetOncePointer<Node> v8::internal::compiler::SimplifiedLowering::to_number_code_
private

Definition at line 70 of file simplified-lowering.h.

◆ to_number_convert_big_int_code_

SetOncePointer<Node> v8::internal::compiler::SimplifiedLowering::to_number_convert_big_int_code_
private

Definition at line 71 of file simplified-lowering.h.

◆ to_number_convert_big_int_operator_

SetOncePointer<Operator const> v8::internal::compiler::SimplifiedLowering::to_number_convert_big_int_operator_
private

Definition at line 74 of file simplified-lowering.h.

◆ to_number_operator_

SetOncePointer<Operator const> v8::internal::compiler::SimplifiedLowering::to_number_operator_
private

Definition at line 73 of file simplified-lowering.h.

◆ to_numeric_code_

SetOncePointer<Node> v8::internal::compiler::SimplifiedLowering::to_numeric_code_
private

Definition at line 72 of file simplified-lowering.h.

◆ to_numeric_operator_

SetOncePointer<Operator const> v8::internal::compiler::SimplifiedLowering::to_numeric_operator_
private

Definition at line 75 of file simplified-lowering.h.

◆ type_cache_

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

Definition at line 69 of file simplified-lowering.h.

◆ zone_

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

Definition at line 68 of file simplified-lowering.h.


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