class SlotIndex

Declaration

class SlotIndex { /* full declaration omitted */ };

Description

SlotIndex - An opaque wrapper around machine indexes.

Declared at: llvm/include/llvm/CodeGen/SlotIndexes.h:82

Member Variables

private PointerIntPair<llvm::IndexListEntry*, 2, unsigned int> lie

Method Overview

Methods

SlotIndex(llvm::IndexListEntry* entry,
          unsigned int slot)

Declared at: llvm/include/llvm/CodeGen/SlotIndexes.h:111

Parameters

llvm::IndexListEntry* entry
unsigned int slot

SlotIndex()

Description

Construct an invalid index.

Declared at: llvm/include/llvm/CodeGen/SlotIndexes.h:140

SlotIndex(const llvm::SlotIndex& li,
          llvm::SlotIndex::Slot s)

Declared at: llvm/include/llvm/CodeGen/SlotIndexes.h:143

Parameters

const llvm::SlotIndex& li
llvm::SlotIndex::Slot s

int distance(llvm::SlotIndex other) const

Description

Return the distance from this index to the given one.

Declared at: llvm/include/llvm/CodeGen/SlotIndexes.h:213

Parameters

llvm::SlotIndex other

void dump() const

Description

Dump this index to stderr.

Declared at: llvm/include/llvm/CodeGen/SlotIndexes.h:161

llvm::SlotIndex getBaseIndex() const

Description

Returns the base index for associated with this index. The base index is the one associated with the Slot_Block slot for the instruction pointed to by this index.

Declared at: llvm/include/llvm/CodeGen/SlotIndexes.h:240

llvm::SlotIndex getBoundaryIndex() const

Description

Returns the boundary index for associated with this index. The boundary index is the one associated with the Slot_Block slot for the instruction pointed to by this index.

Declared at: llvm/include/llvm/CodeGen/SlotIndexes.h:247

llvm::SlotIndex getDeadSlot() const

Description

Returns the dead def kill slot for the current instruction.

Declared at: llvm/include/llvm/CodeGen/SlotIndexes.h:258

unsigned int getIndex() const

Declared at: llvm/include/llvm/CodeGen/SlotIndexes.h:123

int getInstrDistance(llvm::SlotIndex other) const

Description

Return the scaled distance from this index to the given one, where all slots on the same instruction have zero distance.

Declared at: llvm/include/llvm/CodeGen/SlotIndexes.h:219

Parameters

llvm::SlotIndex other

llvm::SlotIndex getNextIndex() const

Description

Returns the next index. This is the index corresponding to the this index's slot, but for the next instruction.

Declared at: llvm/include/llvm/CodeGen/SlotIndexes.h:278

llvm::SlotIndex getNextSlot() const

Description

Returns the next slot in the index list. This could be either the next slot for the instruction pointed to by this index or, if this index is a STORE, the first slot for the next instruction. WARNING: This method is considerably more expensive than the methods that return specific slots (getUseIndex(), etc). If you can - please use one of those methods.

Declared at: llvm/include/llvm/CodeGen/SlotIndexes.h:268

llvm::SlotIndex getPrevIndex() const

Description

Returns the previous index. This is the index corresponding to this index's slot, but for the previous instruction.

Declared at: llvm/include/llvm/CodeGen/SlotIndexes.h:298

llvm::SlotIndex getPrevSlot() const

Description

Returns the previous slot in the index list. This could be either the previous slot for the instruction pointed to by this index or, if this index is a Slot_Block, the last slot for the previous instruction. WARNING: This method is considerably more expensive than the methods that return specific slots (getUseIndex(), etc). If you can - please use one of those methods.

Declared at: llvm/include/llvm/CodeGen/SlotIndexes.h:288

llvm::SlotIndex getRegSlot(bool EC = false) const

Description

Returns the register use/def slot in the current instruction for a normal or early-clobber def.

Declared at: llvm/include/llvm/CodeGen/SlotIndexes.h:253

Parameters

bool EC = false

llvm::SlotIndex::Slot getSlot() const

Description

Returns the slot for this SlotIndex.

Declared at: llvm/include/llvm/CodeGen/SlotIndexes.h:128

bool isBlock() const

Description

isBlock - Returns true if this is a block boundary slot.

Declared at: llvm/include/llvm/CodeGen/SlotIndexes.h:225

bool isDead() const

Description

isDead - Returns true if this is a dead def kill slot.

Declared at: llvm/include/llvm/CodeGen/SlotIndexes.h:235

static bool isEarlierEqualInstr(llvm::SlotIndex A,
                                llvm::SlotIndex B)

Description

Return true if A refers to the same instruction as B or an earlier one. This is equivalent to !isEarlierInstr(B, A).

Declared at: llvm/include/llvm/CodeGen/SlotIndexes.h:208

Parameters

llvm::SlotIndex A
llvm::SlotIndex B

static bool isEarlierInstr(llvm::SlotIndex A,
                           llvm::SlotIndex B)

Description

isEarlierInstr - Return true if A refers to an instruction earlier than B. This is equivalent to A < B & & !isSameInstr(A, B).

Declared at: llvm/include/llvm/CodeGen/SlotIndexes.h:202

Parameters

llvm::SlotIndex A
llvm::SlotIndex B

bool isEarlyClobber() const

Description

isEarlyClobber - Returns true if this is an early-clobber slot.

Declared at: llvm/include/llvm/CodeGen/SlotIndexes.h:228

bool isRegister() const

Description

isRegister - Returns true if this is a normal register use/def slot. Note that early-clobber slots may also be used for uses and defs.

Declared at: llvm/include/llvm/CodeGen/SlotIndexes.h:232

static bool isSameInstr(llvm::SlotIndex A,
                        llvm::SlotIndex B)

Description

isSameInstr - Return true if A and B refer to the same instruction.

Declared at: llvm/include/llvm/CodeGen/SlotIndexes.h:196

Parameters

llvm::SlotIndex A
llvm::SlotIndex B

bool isValid() const

Description

Returns true if this is a valid index. Invalid indices do not point into an index table, and cannot be compared.

Declared at: llvm/include/llvm/CodeGen/SlotIndexes.h:150

llvm::IndexListEntry* listEntry() const

Declared at: llvm/include/llvm/CodeGen/SlotIndexes.h:114

bool operator bool() const

Description

Return true for a valid index.

Declared at: llvm/include/llvm/CodeGen/SlotIndexes.h:155

void print(llvm::raw_ostream& os) const

Description

Print this index to the given raw_ostream.

Declared at: llvm/include/llvm/CodeGen/SlotIndexes.h:158

Parameters

llvm::raw_ostream& os