#include <scheduler.h>
|
| | Scheduler (Zone *zone, TFGraph *graph, Schedule *schedule, Flags flags, size_t node_count_hint_, TickCounter *tick_counter, const ProfileDataFromFile *profile_data) |
| |
| SchedulerData | DefaultSchedulerData () |
| |
| SchedulerData * | GetData (Node *node) |
| |
| Placement | GetPlacement (Node *node) |
| |
| Placement | InitializePlacement (Node *node) |
| |
| void | UpdatePlacement (Node *node, Placement placement) |
| |
| bool | IsLive (Node *node) |
| |
| std::optional< int > | GetCoupledControlEdge (Node *node) |
| |
| void | IncrementUnscheduledUseCount (Node *node, Node *from) |
| |
| void | DecrementUnscheduledUseCount (Node *node, Node *from) |
| |
| BasicBlock * | GetCommonDominator (BasicBlock *b1, BasicBlock *b2) |
| |
| BasicBlock * | GetCommonDominatorIfCached (BasicBlock *b1, BasicBlock *b2) |
| |
| void | BuildCFG () |
| |
| void | ComputeSpecialRPONumbering () |
| |
| void | GenerateDominatorTree () |
| |
| void | PrepareUses () |
| |
| void | ScheduleEarly () |
| |
| void | ScheduleLate () |
| |
| void | SealFinalSchedule () |
| |
| void | FuseFloatingControl (BasicBlock *block, Node *node) |
| |
| void | MovePlannedNodes (BasicBlock *from, BasicBlock *to) |
| |
Definition at line 31 of file scheduler.h.
◆ CommonDominatorCache
◆ Flags
◆ Flag
| Enumerator |
|---|
| kNoFlags | |
| kSplitNodes | |
| kTempSchedule | |
Definition at line 34 of file scheduler.h.
◆ Placement
| Enumerator |
|---|
| kUnknown | |
| kSchedulable | |
| kFixed | |
| kCoupled | |
| kScheduled | |
Definition at line 68 of file scheduler.h.
◆ Scheduler()
◆ BuildCFG()
| void v8::internal::compiler::Scheduler::BuildCFG |
( |
| ) |
|
|
private |
◆ ComputeSchedule()
◆ ComputeSpecialRPO()
◆ ComputeSpecialRPONumbering()
| void v8::internal::compiler::Scheduler::ComputeSpecialRPONumbering |
( |
| ) |
|
|
private |
◆ DecrementUnscheduledUseCount()
| void v8::internal::compiler::Scheduler::DecrementUnscheduledUseCount |
( |
Node * | node, |
|
|
Node * | from ) |
|
private |
◆ DefaultSchedulerData()
◆ FuseFloatingControl()
| void v8::internal::compiler::Scheduler::FuseFloatingControl |
( |
BasicBlock * | block, |
|
|
Node * | node ) |
|
private |
◆ GenerateDominatorTree() [1/2]
| void v8::internal::compiler::Scheduler::GenerateDominatorTree |
( |
| ) |
|
|
private |
◆ GenerateDominatorTree() [2/2]
| void v8::internal::compiler::Scheduler::GenerateDominatorTree |
( |
Schedule * | schedule | ) |
|
|
static |
◆ GetCommonDominator()
◆ GetCommonDominatorIfCached()
◆ GetCoupledControlEdge()
| std::optional< int > v8::internal::compiler::Scheduler::GetCoupledControlEdge |
( |
Node * | node | ) |
|
|
inlineprivate |
◆ GetData()
◆ GetPlacement()
◆ IncrementUnscheduledUseCount()
| void v8::internal::compiler::Scheduler::IncrementUnscheduledUseCount |
( |
Node * | node, |
|
|
Node * | from ) |
|
private |
◆ InitializePlacement()
◆ IsLive()
| bool v8::internal::compiler::Scheduler::IsLive |
( |
Node * | node | ) |
|
|
private |
◆ MovePlannedNodes()
◆ PrepareUses()
| void v8::internal::compiler::Scheduler::PrepareUses |
( |
| ) |
|
|
private |
◆ profile_data()
◆ PropagateImmediateDominators()
| void v8::internal::compiler::Scheduler::PropagateImmediateDominators |
( |
BasicBlock * | block | ) |
|
|
staticprivate |
◆ ScheduleEarly()
| void v8::internal::compiler::Scheduler::ScheduleEarly |
( |
| ) |
|
|
private |
◆ ScheduleLate()
| void v8::internal::compiler::Scheduler::ScheduleLate |
( |
| ) |
|
|
private |
◆ SealFinalSchedule()
| void v8::internal::compiler::Scheduler::SealFinalSchedule |
( |
| ) |
|
|
private |
◆ UpdatePlacement()
| void v8::internal::compiler::Scheduler::UpdatePlacement |
( |
Node * | node, |
|
|
Placement | placement ) |
|
private |
◆ CFGBuilder
◆ PrepareUsesVisitor
◆ ScheduleEarlyNodeVisitor
◆ ScheduleLateNodeVisitor
◆ SpecialRPONumberer
◆ common_dominator_cache_
◆ control_flow_builder_
| CFGBuilder* v8::internal::compiler::Scheduler::control_flow_builder_ |
|
private |
◆ equivalence_
◆ flags_
| Flags v8::internal::compiler::Scheduler::flags_ |
|
private |
◆ graph_
| TFGraph* v8::internal::compiler::Scheduler::graph_ |
|
private |
◆ node_data_
◆ profile_data_
◆ schedule_
| Schedule* v8::internal::compiler::Scheduler::schedule_ |
|
private |
◆ schedule_queue_
| ZoneQueue<Node*> v8::internal::compiler::Scheduler::schedule_queue_ |
|
private |
◆ schedule_root_nodes_
| NodeVector v8::internal::compiler::Scheduler::schedule_root_nodes_ |
|
private |
◆ scheduled_nodes_
◆ special_rpo_
◆ tick_counter_
| TickCounter* const v8::internal::compiler::Scheduler::tick_counter_ |
|
private |
◆ zone_
| Zone* v8::internal::compiler::Scheduler::zone_ |
|
private |
The documentation for this class was generated from the following files: