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

Convenience builders for a MemDGNode interval. More...

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

Static Public Member Functions

static MemDGNodegetTopMemDGNode (const Interval< Instruction > &Intvl, const DependencyGraph &DAG)
 Scans the instruction chain in Intvl top-down, returning the top-most MemDGNode, or nullptr.
 
static MemDGNodegetBotMemDGNode (const Interval< Instruction > &Intvl, const DependencyGraph &DAG)
 Scans the instruction chain in Intvl bottom-up, returning the bottom-most MemDGNode, or nullptr.
 
static Interval< MemDGNodemake (const Interval< Instruction > &Instrs, DependencyGraph &DAG)
 Given Instrs it finds their closest mem nodes in the interval and returns the corresponding mem range.
 
static Interval< MemDGNodemakeEmpty ()
 

Detailed Description

Convenience builders for a MemDGNode interval.

Definition at line 269 of file DependencyGraph.h.

Member Function Documentation

◆ getBotMemDGNode()

MemDGNode * llvm::sandboxir::MemDGNodeIntervalBuilder::getBotMemDGNode ( const Interval< Instruction > &  Intvl,
const DependencyGraph DAG 
)
static

Scans the instruction chain in Intvl bottom-up, returning the bottom-most MemDGNode, or nullptr.

Definition at line 98 of file DependencyGraph.cpp.

References llvm::sandboxir::Interval< T >::bottom(), llvm::sandboxir::DependencyGraph::getNode(), I, llvm::sandboxir::DGNode::isMemDepNodeCandidate(), and llvm::sandboxir::Interval< T >::top().

Referenced by make().

◆ getTopMemDGNode()

MemDGNode * llvm::sandboxir::MemDGNodeIntervalBuilder::getTopMemDGNode ( const Interval< Instruction > &  Intvl,
const DependencyGraph DAG 
)
static

Scans the instruction chain in Intvl top-down, returning the top-most MemDGNode, or nullptr.

Definition at line 85 of file DependencyGraph.cpp.

References llvm::sandboxir::Interval< T >::bottom(), llvm::sandboxir::DependencyGraph::getNode(), I, llvm::sandboxir::DGNode::isMemDepNodeCandidate(), and llvm::sandboxir::Interval< T >::top().

Referenced by make().

◆ make()

Interval< MemDGNode > llvm::sandboxir::MemDGNodeIntervalBuilder::make ( const Interval< Instruction > &  Instrs,
DependencyGraph DAG 
)
static

Given Instrs it finds their closest mem nodes in the interval and returns the corresponding mem range.

Note: BotN (or its neighboring mem node) is included in the range.

Definition at line 111 of file DependencyGraph.cpp.

References assert(), getBotMemDGNode(), and getTopMemDGNode().

Referenced by llvm::sandboxir::DependencyGraph::extend().

◆ makeEmpty()

static Interval< MemDGNode > llvm::sandboxir::MemDGNodeIntervalBuilder::makeEmpty ( )
inlinestatic

Definition at line 284 of file DependencyGraph.h.


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