LLVM 22.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 331 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 402 of file DependencyGraph.h.

References I.

◆ ~DependencyGraph()

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

Definition at line 415 of file DependencyGraph.h.

Member Function Documentation

◆ clear()

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

Definition at line 451 of file DependencyGraph.h.

◆ dump()

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

Definition at line 659 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 457 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 540 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 450 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 431 of file DependencyGraph.h.

References getNode(), and I.

◆ getOrCreateNode()

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

Definition at line 436 of file DependencyGraph.h.

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

◆ print()


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