LLVM: llvm::LiveIntervalUnion Class Reference (original) (raw)

Union of live intervals that are strong candidates for coalescing into a single register (either physical or virtual depending on the context). More...

#include "[llvm/CodeGen/LiveIntervalUnion.h](LiveIntervalUnion%5F8h%5Fsource.html)"

Classes
class Array
class Query
Query interferences between a single live virtual register and a live interval union. More...
Public Types
using SegmentIter = LiveSegments::iterator
using ConstSegmentIter = LiveSegments::const_iterator
Const version of SegmentIter.
using Allocator = LiveSegments::Allocator
using Map = LiveSegments
Public Member Functions
LiveIntervalUnion (Allocator &a)
SegmentIter begin ()
SegmentIter end ()
SegmentIter find (SlotIndex x)
ConstSegmentIter begin () const
ConstSegmentIter end () const
ConstSegmentIter find (SlotIndex x) const
bool empty () const
SlotIndex startIndex () const
SlotIndex endIndex () const
const Map & getMap () const
unsigned getTag () const
getTag - Return an opaque tag representing the current state of the union.
bool changedSince (unsigned tag) const
changedSince - Return true if the union change since getTag returned tag.
void unify (const LiveInterval &VirtReg, const LiveRange &Range)
void extract (const LiveInterval &VirtReg, const LiveRange &Range)
void clear ()
void print (raw_ostream &OS, const TargetRegisterInfo *TRI) const
void verify (LiveVirtRegBitSet &VisitedVRegs)
const LiveInterval * getOneVReg () const
NDEBUG.

Union of live intervals that are strong candidates for coalescing into a single register (either physical or virtual depending on the context).

We expect the constituent live intervals to be disjoint, although we may eventually make exceptions to handle value-based interference.

Definition at line 42 of file LiveIntervalUnion.h.

Allocator

using llvm::LiveIntervalUnion::Allocator = LiveSegments::Allocator

ConstSegmentIter

Map

SegmentIter

llvm::LiveIntervalUnion::LiveIntervalUnion ( Allocator & a) inlineexplicit

begin() [1/2]

SegmentIter llvm::LiveIntervalUnion::begin ( ) inline

begin() [2/2]

ConstSegmentIter llvm::LiveIntervalUnion::begin ( ) const inline

changedSince()

bool llvm::LiveIntervalUnion::changedSince ( unsigned tag) const inline

clear()

void llvm::LiveIntervalUnion::clear ( ) inline

empty()

bool llvm::LiveIntervalUnion::empty ( ) const inline

end() [1/2]

SegmentIter llvm::LiveIntervalUnion::end ( ) inline

end() [2/2]

ConstSegmentIter llvm::LiveIntervalUnion::end ( ) const inline

endIndex()

SlotIndex llvm::LiveIntervalUnion::endIndex ( ) const inline

extract()

find() [1/2]

SegmentIter llvm::LiveIntervalUnion::find ( SlotIndex x) inline

find() [2/2]

ConstSegmentIter llvm::LiveIntervalUnion::find ( SlotIndex x) const inline

getMap()

const Map & llvm::LiveIntervalUnion::getMap ( ) const inline

getOneVReg()

getTag()

unsigned llvm::LiveIntervalUnion::getTag ( ) const inline

print()

startIndex()

SlotIndex llvm::LiveIntervalUnion::startIndex ( ) const inline

unify()

verify()


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