class DefaultVLIWScheduler

Declaration

class DefaultVLIWScheduler : public ScheduleDAGInstrs { /* full declaration omitted */ };

Description

A ScheduleDAG for scheduling lists of MachineInstr.

Declared at: llvm/lib/CodeGen/DFAPacketizer.cpp:105

Inherits from: ScheduleDAGInstrs

Member Variables

Inherited from ScheduleDAGInstrs:

protected MLI
protected MFI
protected SchedModel
protected RemoveKillFlags
protected CanHandleTerminators = false
protected TrackLaneMasks = false
protected BB
protected RegionBegin
protected RegionEnd
protected NumRegionInstrs
protected MISUnitMap
protected Defs
protected Uses
protected CurrentVRegDefs
protected CurrentVRegUses
protected AAForDep = nullptr
protected BarrierChain = nullptr
protected UnknownValue
protected Topo
protected DbgValues
protected FirstDbgValue = nullptr
protected LiveRegs

Inherited from ScheduleDAG:

public TM
public TII
public TRI
public MF
public MRI
public SUnits
public EntrySU
public ExitSU
public StressSched

Method Overview

Inherited from ScheduleDAGInstrs:

Inherited from ScheduleDAG:

Methods

DefaultVLIWScheduler(llvm::MachineFunction& MF,
                     llvm::MachineLoopInfo& MLI,
                     llvm::AAResults* AA)

Declared at: llvm/lib/CodeGen/DFAPacketizer.cpp:112

Parameters

llvm::MachineFunction& MF
llvm::MachineLoopInfo& MLI
llvm::AAResults* AA

void addMutation(
    std::unique_ptr<ScheduleDAGMutation> Mutation)

Description

DefaultVLIWScheduler takes ownership of the Mutation object.

Declared at: llvm/lib/CodeGen/DFAPacketizer.cpp:119

Parameters

std::unique_ptr<ScheduleDAGMutation> Mutation

void postprocessDAG()

Description

Apply each ScheduleDAGMutation step in order.

Declared at: llvm/lib/CodeGen/DFAPacketizer.cpp:124

void schedule()

Description

Orders nodes according to selected style. Typically, a scheduling algorithm will implement schedule() without overriding enterRegion() or exitRegion().

Declared at: llvm/lib/CodeGen/DFAPacketizer.cpp:116