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 345 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 416 of file DependencyGraph.h.

References I.

◆ ~DependencyGraph()

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

Definition at line 429 of file DependencyGraph.h.

Member Function Documentation

◆ clear()

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

Definition at line 465 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 471 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 464 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 445 of file DependencyGraph.h.

References getNode(), and I.

◆ getOrCreateNode()

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

Definition at line 450 of file DependencyGraph.h.

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

◆ print()


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