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

Public Member Functions

 ScheduleLateNodeVisitor (Zone *zone, Scheduler *scheduler)
 
void Run (NodeVector *roots)
 

Private Member Functions

void ProcessQueue (Node *root)
 
void VisitNode (Node *node)
 
bool IsMarked (BasicBlock *block) const
 
void Mark (BasicBlock *block)
 
void MarkBlock (BasicBlock *block)
 
BasicBlockSplitNode (BasicBlock *block, Node *node)
 
BasicBlockGetHoistBlock (BasicBlock *block)
 
BasicBlockGetCommonDominatorOfUses (Node *node)
 
BasicBlockFindPredecessorBlock (Node *node)
 
BasicBlockGetBlockForUse (Edge edge)
 
void ScheduleFloatingControl (BasicBlock *block, Node *node)
 
void ScheduleRegion (BasicBlock *block, Node *region_end)
 
void ScheduleNode (BasicBlock *block, Node *node)
 
NodeCloneNode (Node *node)
 

Private Attributes

Zonezone_
 
Schedulerscheduler_
 
Scheduleschedule_
 
BitVector marked_
 
ZoneDeque< BasicBlock * > marking_queue_
 

Detailed Description

Definition at line 1500 of file scheduler.cc.

Constructor & Destructor Documentation

◆ ScheduleLateNodeVisitor()

v8::internal::compiler::ScheduleLateNodeVisitor::ScheduleLateNodeVisitor ( Zone * zone,
Scheduler * scheduler )
inline

Definition at line 1502 of file scheduler.cc.

Member Function Documentation

◆ CloneNode()

Node * v8::internal::compiler::ScheduleLateNodeVisitor::CloneNode ( Node * node)
inlineprivate

Definition at line 1820 of file scheduler.cc.

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

◆ FindPredecessorBlock()

BasicBlock * v8::internal::compiler::ScheduleLateNodeVisitor::FindPredecessorBlock ( Node * node)
inlineprivate

Definition at line 1734 of file scheduler.cc.

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

◆ GetBlockForUse()

BasicBlock * v8::internal::compiler::ScheduleLateNodeVisitor::GetBlockForUse ( Edge edge)
inlineprivate

Definition at line 1738 of file scheduler.cc.

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

◆ GetCommonDominatorOfUses()

BasicBlock * v8::internal::compiler::ScheduleLateNodeVisitor::GetCommonDominatorOfUses ( Node * node)
inlineprivate

Definition at line 1720 of file scheduler.cc.

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

◆ GetHoistBlock()

BasicBlock * v8::internal::compiler::ScheduleLateNodeVisitor::GetHoistBlock ( BasicBlock * block)
inlineprivate

Definition at line 1700 of file scheduler.cc.

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

◆ IsMarked()

bool v8::internal::compiler::ScheduleLateNodeVisitor::IsMarked ( BasicBlock * block) const
inlineprivate

Definition at line 1592 of file scheduler.cc.

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

◆ Mark()

void v8::internal::compiler::ScheduleLateNodeVisitor::Mark ( BasicBlock * block)
inlineprivate

Definition at line 1596 of file scheduler.cc.

Here is the call graph for this function:

◆ MarkBlock()

void v8::internal::compiler::ScheduleLateNodeVisitor::MarkBlock ( BasicBlock * block)
inlineprivate

Definition at line 1599 of file scheduler.cc.

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

◆ ProcessQueue()

void v8::internal::compiler::ScheduleLateNodeVisitor::ProcessQueue ( Node * root)
inlineprivate

Definition at line 1516 of file scheduler.cc.

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

◆ Run()

void v8::internal::compiler::ScheduleLateNodeVisitor::Run ( NodeVector * roots)
inline

Definition at line 1509 of file scheduler.cc.

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

◆ ScheduleFloatingControl()

void v8::internal::compiler::ScheduleLateNodeVisitor::ScheduleFloatingControl ( BasicBlock * block,
Node * node )
inlineprivate

Definition at line 1778 of file scheduler.cc.

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

◆ ScheduleNode()

void v8::internal::compiler::ScheduleLateNodeVisitor::ScheduleNode ( BasicBlock * block,
Node * node )
inlineprivate

Definition at line 1810 of file scheduler.cc.

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

◆ ScheduleRegion()

void v8::internal::compiler::ScheduleLateNodeVisitor::ScheduleRegion ( BasicBlock * block,
Node * region_end )
inlineprivate

Definition at line 1782 of file scheduler.cc.

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

◆ SplitNode()

BasicBlock * v8::internal::compiler::ScheduleLateNodeVisitor::SplitNode ( BasicBlock * block,
Node * node )
inlineprivate

Definition at line 1607 of file scheduler.cc.

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

◆ VisitNode()

void v8::internal::compiler::ScheduleLateNodeVisitor::VisitNode ( Node * node)
inlineprivate

Definition at line 1540 of file scheduler.cc.

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

Member Data Documentation

◆ marked_

BitVector v8::internal::compiler::ScheduleLateNodeVisitor::marked_
private

Definition at line 1842 of file scheduler.cc.

◆ marking_queue_

ZoneDeque<BasicBlock*> v8::internal::compiler::ScheduleLateNodeVisitor::marking_queue_
private

Definition at line 1843 of file scheduler.cc.

◆ schedule_

Schedule* v8::internal::compiler::ScheduleLateNodeVisitor::schedule_
private

Definition at line 1841 of file scheduler.cc.

◆ scheduler_

Scheduler* v8::internal::compiler::ScheduleLateNodeVisitor::scheduler_
private

Definition at line 1840 of file scheduler.cc.

◆ zone_

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

Definition at line 1839 of file scheduler.cc.


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