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

#include <dead-code-elimination.h>

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

Public Member Functions

 DeadCodeElimination (Editor *editor, TFGraph *graph, CommonOperatorBuilder *common, Zone *temp_zone)
 
 ~DeadCodeElimination () final=default
 
 DeadCodeElimination (const DeadCodeElimination &)=delete
 
DeadCodeEliminationoperator= (const DeadCodeElimination &)=delete
 
const char * reducer_name () const override
 
Reduction Reduce (Node *node) final
 

Private Member Functions

Reduction ReduceEnd (Node *node)
 
Reduction ReduceLoopOrMerge (Node *node)
 
Reduction ReduceLoopExit (Node *node)
 
Reduction ReduceNode (Node *node)
 
Reduction ReducePhi (Node *node)
 
Reduction ReduceEffectPhi (Node *node)
 
Reduction ReducePureNode (Node *node)
 
Reduction ReduceUnreachableOrIfException (Node *node)
 
Reduction ReduceEffectNode (Node *node)
 
Reduction ReduceDeoptimizeOrReturnOrTerminateOrTailCall (Node *node)
 
Reduction ReduceBranchOrSwitch (Node *node)
 
Reduction RemoveLoopExit (Node *node)
 
Reduction PropagateDeadControl (Node *node)
 
void TrimMergeOrPhi (Node *node, int size)
 
NodeDeadValue (Node *none_node, MachineRepresentation rep=MachineRepresentation::kNone)
 
TFGraphgraph () const
 
CommonOperatorBuildercommon () const
 
Nodedead () const
 

Private Attributes

TFGraph *const graph_
 
CommonOperatorBuilder *const common_
 
Node *const dead_
 
Zonezone_
 

Detailed Description

Definition at line 38 of file dead-code-elimination.h.

Constructor & Destructor Documentation

◆ DeadCodeElimination() [1/2]

v8::internal::compiler::DeadCodeElimination::DeadCodeElimination ( Editor * editor,
TFGraph * graph,
CommonOperatorBuilder * common,
Zone * temp_zone )

Definition at line 16 of file dead-code-elimination.cc.

Here is the call graph for this function:

◆ ~DeadCodeElimination()

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

◆ DeadCodeElimination() [2/2]

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

Member Function Documentation

◆ common()

CommonOperatorBuilder * v8::internal::compiler::DeadCodeElimination::common ( ) const
inlineprivate

Definition at line 73 of file dead-code-elimination.h.

Here is the caller graph for this function:

◆ dead()

Node * v8::internal::compiler::DeadCodeElimination::dead ( ) const
inlineprivate

Definition at line 74 of file dead-code-elimination.h.

Here is the caller graph for this function:

◆ DeadValue()

Node * v8::internal::compiler::DeadCodeElimination::DeadValue ( Node * none_node,
MachineRepresentation rep = MachineRepresentation::kNone )
private

Definition at line 373 of file dead-code-elimination.cc.

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

◆ graph()

TFGraph * v8::internal::compiler::DeadCodeElimination::graph ( ) const
inlineprivate

Definition at line 72 of file dead-code-elimination.h.

Here is the caller graph for this function:

◆ operator=()

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

◆ PropagateDeadControl()

Reduction v8::internal::compiler::DeadCodeElimination::PropagateDeadControl ( Node * node)
private

Definition at line 79 of file dead-code-elimination.cc.

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

◆ Reduce()

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

Definition at line 47 of file dead-code-elimination.cc.

Here is the call graph for this function:

◆ ReduceBranchOrSwitch()

Reduction v8::internal::compiler::DeadCodeElimination::ReduceBranchOrSwitch ( Node * node)
private

Definition at line 346 of file dead-code-elimination.cc.

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

◆ ReduceDeoptimizeOrReturnOrTerminateOrTailCall()

Reduction v8::internal::compiler::DeadCodeElimination::ReduceDeoptimizeOrReturnOrTerminateOrTailCall ( Node * node)
private

Definition at line 309 of file dead-code-elimination.cc.

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

◆ ReduceEffectNode()

Reduction v8::internal::compiler::DeadCodeElimination::ReduceEffectNode ( Node * node)
private

Definition at line 284 of file dead-code-elimination.cc.

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

◆ ReduceEffectPhi()

Reduction v8::internal::compiler::DeadCodeElimination::ReduceEffectPhi ( Node * node)
private

Definition at line 233 of file dead-code-elimination.cc.

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

◆ ReduceEnd()

Reduction v8::internal::compiler::DeadCodeElimination::ReduceEnd ( Node * node)
private

Definition at line 86 of file dead-code-elimination.cc.

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

◆ ReduceLoopExit()

Reduction v8::internal::compiler::DeadCodeElimination::ReduceLoopExit ( Node * node)
private

Definition at line 336 of file dead-code-elimination.cc.

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

◆ ReduceLoopOrMerge()

Reduction v8::internal::compiler::DeadCodeElimination::ReduceLoopOrMerge ( Node * node)
private

Definition at line 110 of file dead-code-elimination.cc.

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

◆ ReduceNode()

Reduction v8::internal::compiler::DeadCodeElimination::ReduceNode ( Node * node)
private

Definition at line 194 of file dead-code-elimination.cc.

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

◆ ReducePhi()

Reduction v8::internal::compiler::DeadCodeElimination::ReducePhi ( Node * node)
private

Definition at line 213 of file dead-code-elimination.cc.

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

◆ ReducePureNode()

Reduction v8::internal::compiler::DeadCodeElimination::ReducePureNode ( Node * node)
private

Definition at line 260 of file dead-code-elimination.cc.

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

◆ reducer_name()

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

Definition at line 47 of file dead-code-elimination.h.

◆ ReduceUnreachableOrIfException()

Reduction v8::internal::compiler::DeadCodeElimination::ReduceUnreachableOrIfException ( Node * node)
private

Definition at line 269 of file dead-code-elimination.cc.

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

◆ RemoveLoopExit()

Reduction v8::internal::compiler::DeadCodeElimination::RemoveLoopExit ( Node * node)
private

Definition at line 181 of file dead-code-elimination.cc.

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

◆ TrimMergeOrPhi()

void v8::internal::compiler::DeadCodeElimination::TrimMergeOrPhi ( Node * node,
int size )
private

Definition at line 367 of file dead-code-elimination.cc.

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

Member Data Documentation

◆ common_

CommonOperatorBuilder* const v8::internal::compiler::DeadCodeElimination::common_
private

Definition at line 77 of file dead-code-elimination.h.

◆ dead_

Node* const v8::internal::compiler::DeadCodeElimination::dead_
private

Definition at line 78 of file dead-code-elimination.h.

◆ graph_

TFGraph* const v8::internal::compiler::DeadCodeElimination::graph_
private

Definition at line 76 of file dead-code-elimination.h.

◆ zone_

Zone* v8::internal::compiler::DeadCodeElimination::zone_
private

Definition at line 79 of file dead-code-elimination.h.


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