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

#include <loop-peeling.h>

Collaboration diagram for v8::internal::compiler::LoopPeeler:

Public Member Functions

 LoopPeeler (TFGraph *graph, CommonOperatorBuilder *common, LoopTree *loop_tree, Zone *tmp_zone, SourcePositionTable *source_positions, NodeOriginTable *node_origins)
 
bool CanPeel (LoopTree::Loop *loop)
 
PeeledIterationPeel (LoopTree::Loop *loop)
 
void PeelInnerLoopsOfTree ()
 

Static Public Member Functions

static void EliminateLoopExits (TFGraph *graph, Zone *tmp_zone)
 
static void EliminateLoopExit (Node *loop)
 

Static Public Attributes

static const size_t kMaxPeeledNodes = 1000
 

Private Member Functions

void PeelInnerLoops (LoopTree::Loop *loop)
 

Private Attributes

TFGraph *const graph_
 
CommonOperatorBuilder *const common_
 
LoopTree *const loop_tree_
 
Zone *const tmp_zone_
 
SourcePositionTable *const source_positions_
 
NodeOriginTable *const node_origins_
 

Detailed Description

Definition at line 35 of file loop-peeling.h.

Constructor & Destructor Documentation

◆ LoopPeeler()

v8::internal::compiler::LoopPeeler::LoopPeeler ( TFGraph * graph,
CommonOperatorBuilder * common,
LoopTree * loop_tree,
Zone * tmp_zone,
SourcePositionTable * source_positions,
NodeOriginTable * node_origins )
inline

Definition at line 37 of file loop-peeling.h.

Member Function Documentation

◆ CanPeel()

bool v8::internal::compiler::LoopPeeler::CanPeel ( LoopTree::Loop * loop)
inline

Definition at line 46 of file loop-peeling.h.

Here is the caller graph for this function:

◆ EliminateLoopExit()

void v8::internal::compiler::LoopPeeler::EliminateLoopExit ( Node * loop)
static

Definition at line 239 of file loop-peeling.cc.

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

◆ EliminateLoopExits()

void v8::internal::compiler::LoopPeeler::EliminateLoopExits ( TFGraph * graph,
Zone * tmp_zone )
static

Definition at line 270 of file loop-peeling.cc.

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

◆ Peel()

PeeledIteration * v8::internal::compiler::LoopPeeler::Peel ( LoopTree::Loop * loop)

Definition at line 125 of file loop-peeling.cc.

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

◆ PeelInnerLoops()

void v8::internal::compiler::LoopPeeler::PeelInnerLoops ( LoopTree::Loop * loop)
private

Definition at line 218 of file loop-peeling.cc.

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

◆ PeelInnerLoopsOfTree()

void v8::internal::compiler::LoopPeeler::PeelInnerLoopsOfTree ( )

Definition at line 261 of file loop-peeling.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::LoopPeeler::common_
private

Definition at line 58 of file loop-peeling.h.

◆ graph_

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

Definition at line 57 of file loop-peeling.h.

◆ kMaxPeeledNodes

const size_t v8::internal::compiler::LoopPeeler::kMaxPeeledNodes = 1000
static

Definition at line 54 of file loop-peeling.h.

◆ loop_tree_

LoopTree* const v8::internal::compiler::LoopPeeler::loop_tree_
private

Definition at line 59 of file loop-peeling.h.

◆ node_origins_

NodeOriginTable* const v8::internal::compiler::LoopPeeler::node_origins_
private

Definition at line 62 of file loop-peeling.h.

◆ source_positions_

SourcePositionTable* const v8::internal::compiler::LoopPeeler::source_positions_
private

Definition at line 61 of file loop-peeling.h.

◆ tmp_zone_

Zone* const v8::internal::compiler::LoopPeeler::tmp_zone_
private

Definition at line 60 of file loop-peeling.h.


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