clang 22.0.0git
clang::internal Namespace Reference

Classes

struct  CFGIntervalNode

Typedefs

using CFGIntervalGraph = std::deque<CFGIntervalNode>

Functions

std::vector< const CFGBlock * > buildInterval (const CFGBlock *Header)
CFGIntervalGraph partitionIntoIntervals (const CFG &Cfg)
CFGIntervalGraph partitionIntoIntervals (const CFGIntervalGraph &Graph)
bool anyConflict (const llvm::SmallVectorImpl< FixItHint > &FixIts, const SourceManager &SM)
static unsigned getID (const CFGBlock &B)
static unsigned getID (const CFGIntervalNode &I)
template<typename Node>
static BuildResult< Node > buildInterval (llvm::BitVector &Partitioned, const Node *Header)
template<typename Node>
static void fillIntervalNode (CFGIntervalGraph &Graph, std::vector< CFGIntervalNode * > &Index, std::queue< const Node * > &Successors, llvm::BitVector &Partitioned, const Node *Header)
template<typename Node>
static CFGIntervalGraph partitionIntoIntervalsImpl (unsigned NumBlockIDs, const Node *EntryBlock)

Typedef Documentation

◆ CFGIntervalGraph

Definition at line 108 of file IntervalPartition.h.

Function Documentation

◆ anyConflict()

bool clang::internal::anyConflict ( const llvm::SmallVectorImpl< FixItHint > & FixIts,
const SourceManager & SM )

◆ buildInterval() [1/2]

std::vector< const CFGBlock * > clang::internal::buildInterval ( const CFGBlock * Header)

◆ buildInterval() [2/2]

template<typename Node>
BuildResult< Node > clang::internal::buildInterval ( llvm::BitVector & Partitioned,
const Node * Header )
static

◆ fillIntervalNode()

template<typename Node>
void clang::internal::fillIntervalNode ( CFGIntervalGraph & Graph,
std::vector< CFGIntervalNode * > & Index,
std::queue< const Node * > & Successors,
llvm::BitVector & Partitioned,
const Node * Header )
static

◆ getID() [1/2]

unsigned clang::internal::getID ( const CFGBlock & B)
static

◆ getID() [2/2]

unsigned clang::internal::getID ( const CFGIntervalNode & I)
static

Definition at line 35 of file IntervalPartition.cpp.

References clang::internal::CFGIntervalNode::ID.

◆ partitionIntoIntervals() [1/2]

CFGIntervalGraph clang::internal::partitionIntoIntervals ( const CFG & Cfg)

◆ partitionIntoIntervals() [2/2]

CFGIntervalGraph clang::internal::partitionIntoIntervals ( const CFGIntervalGraph & Graph)

Definition at line 208 of file IntervalPartition.cpp.

References partitionIntoIntervalsImpl().

◆ partitionIntoIntervalsImpl()

template<typename Node>
CFGIntervalGraph clang::internal::partitionIntoIntervalsImpl ( unsigned NumBlockIDs,
const Node * EntryBlock )
static