LLVM 20.0.0git
Public Member Functions | List of all members
llvm::sandboxir::DependencyGraph Class Reference

#include "llvm/Transforms/Vectorize/SandboxVectorizer/DependencyGraph.h"

Public Member Functions

 DependencyGraph (AAResults &AA, Context &Ctx)
 This constructor also registers callbacks.
 
 ~DependencyGraph ()
 
DGNodegetNode (Instruction *I) const
 
DGNodegetNodeOrNull (Instruction *I) const
 Like getNode() but returns nullptr if I is nullptr.
 
DGNodegetOrCreateNode (Instruction *I)
 
Interval< Instructionextend (ArrayRef< Instruction * > Instrs)
 Build/extend the dependency graph such that it includes Instrs.
 
Interval< InstructiongetInterval () const
 \Returns the range of instructions included in the DAG.
 
void clear ()
 
void print (raw_ostream &OS) const
 
LLVM_DUMP_METHOD void dump () const
 

Detailed Description

Definition at line 295 of file DependencyGraph.h.

Constructor & Destructor Documentation

◆ DependencyGraph()

llvm::sandboxir::DependencyGraph::DependencyGraph ( AAResults AA,
Context Ctx 
)
inline

◆ ~DependencyGraph()

llvm::sandboxir::DependencyGraph::~DependencyGraph ( )
inline

Member Function Documentation

◆ clear()

void llvm::sandboxir::DependencyGraph::clear ( )
inline

◆ dump()

void llvm::sandboxir::DependencyGraph::dump ( ) const

Definition at line 555 of file DependencyGraph.cpp.

References llvm::dbgs(), and print().

◆ extend()

Interval< Instruction > llvm::sandboxir::DependencyGraph::extend ( ArrayRef< Instruction * >  Instrs)

Build/extend the dependency graph such that it includes Instrs.

Returns the range of instructions added to the DAG.

Definition at line 435 of file DependencyGraph.cpp.

References assert(), llvm::drop_begin(), llvm::ArrayRef< T >::empty(), llvm_unreachable, and llvm::sandboxir::MemDGNodeIntervalBuilder::make().

Referenced by llvm::sandboxir::Scheduler::trySchedule().

◆ getInterval()

Interval< Instruction > llvm::sandboxir::DependencyGraph::getInterval ( ) const
inline

\Returns the range of instructions included in the DAG.

Definition at line 405 of file DependencyGraph.h.

◆ getNode()

DGNode * llvm::sandboxir::DependencyGraph::getNode ( Instruction I) const
inline

◆ getNodeOrNull()

DGNode * llvm::sandboxir::DependencyGraph::getNodeOrNull ( Instruction I) const
inline

Like getNode() but returns nullptr if I is nullptr.

Definition at line 386 of file DependencyGraph.h.

References getNode(), and I.

◆ getOrCreateNode()

DGNode * llvm::sandboxir::DependencyGraph::getOrCreateNode ( Instruction I)
inline

◆ print()

void llvm::sandboxir::DependencyGraph::print ( raw_ostream OS) const

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