LLVM 24.0.0git
llvm::sandboxir::DependencyGraph Class Reference

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

Public Member Functions

 DependencyGraph (SchedDirection Dir, 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)
LLVM_ABI 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 ()
bool empty () const
 \Returns true if the DAG's state is clear. Used in assertions.
void print (raw_ostream &OS) const
LLVM_DUMP_METHOD void dump () const

Detailed Description

Definition at line 452 of file DependencyGraph.h.

Constructor & Destructor Documentation

◆ DependencyGraph()

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

This constructor also registers callbacks.

Definition at line 525 of file DependencyGraph.h.

References I.

◆ ~DependencyGraph()

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

Definition at line 538 of file DependencyGraph.h.

Member Function Documentation

◆ clear()

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

Definition at line 574 of file DependencyGraph.h.

◆ dump()

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

Definition at line 772 of file DependencyGraph.cpp.

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

◆ empty()

bool llvm::sandboxir::DependencyGraph::empty ( ) const
inline

\Returns true if the DAG's state is clear. Used in assertions.

Definition at line 580 of file DependencyGraph.h.

References assert().

◆ 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 653 of file DependencyGraph.cpp.

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

◆ getInterval()

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

\Returns the range of instructions included in the DAG.

Definition at line 573 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 554 of file DependencyGraph.h.

References getNode(), and I.

◆ getOrCreateNode()

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

Definition at line 559 of file DependencyGraph.h.

References I, and llvm::sandboxir::DGNode::isMemDepNodeCandidate().

◆ print()


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