LLVM 23.0.0git
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)
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 332 of file DependencyGraph.h.

Constructor & Destructor Documentation

◆ DependencyGraph()

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

This constructor also registers callbacks.

Definition at line 403 of file DependencyGraph.h.

References I.

◆ ~DependencyGraph()

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

Definition at line 416 of file DependencyGraph.h.

Member Function Documentation

◆ clear()

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

Definition at line 452 of file DependencyGraph.h.

◆ dump()

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

Definition at line 673 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 458 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 554 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 451 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 432 of file DependencyGraph.h.

References getNode(), and I.

◆ getOrCreateNode()

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

Definition at line 437 of file DependencyGraph.h.

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

◆ print()


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