LLVM 20.0.0git
Classes | Public Member Functions | List of all members
llvm::SwingSchedulerDDG Class Reference

Represents dependencies between instructions. More...

#include "llvm/CodeGen/MachinePipeliner.h"

Public Member Functions

 SwingSchedulerDDG (std::vector< SUnit > &SUnits, SUnit *EntrySU, SUnit *ExitSU)
 
const EdgesTypegetInEdges (const SUnit *SU) const
 
const EdgesTypegetOutEdges (const SUnit *SU) const
 

Detailed Description

Represents dependencies between instructions.

This class is a wrapper of SUnits and its dependencies to manipulate back-edges in a natural way. Currently it only supports back-edges via PHI, which are expressed as anti-dependencies in the original DAG. FIXME: Support any other loop-carried dependencies

Definition at line 198 of file MachinePipeliner.h.

Constructor & Destructor Documentation

◆ SwingSchedulerDDG()

SwingSchedulerDDG::SwingSchedulerDDG ( std::vector< SUnit > &  SUnits,
SUnit EntrySU,
SUnit ExitSU 
)

Definition at line 3801 of file MachinePipeliner.cpp.

Member Function Documentation

◆ getInEdges()

const SwingSchedulerDDG::EdgesType & SwingSchedulerDDG::getInEdges ( const SUnit SU) const

◆ getOutEdges()

const SwingSchedulerDDG::EdgesType & SwingSchedulerDDG::getOutEdges ( const SUnit SU) const

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