class SlotIndex
Declaration
class SlotIndex { /* full declaration omitted */ };
Description
SlotIndex - An opaque wrapper around machine indexes.
Declared at: llvm/include/llvm/CodeGen/SlotIndexes.h:83
Method Overview
- public SlotIndex(const llvm::SlotIndex & li, llvm::SlotIndex::Slot s)
- public SlotIndex()
- public int distance(llvm::SlotIndex other) const
- public void dump() const
- public llvm::SlotIndex getBaseIndex() const
- public llvm::SlotIndex getBoundaryIndex() const
- public llvm::SlotIndex getDeadSlot() const
- public int getInstrDistance(llvm::SlotIndex other) const
- public llvm::SlotIndex getNextIndex() const
- public llvm::SlotIndex getNextSlot() const
- public llvm::SlotIndex getPrevIndex() const
- public llvm::SlotIndex getPrevSlot() const
- public llvm::SlotIndex getRegSlot(bool EC = false) const
- public bool isBlock() const
- public bool isDead() const
- public static bool isEarlierEqualInstr(llvm::SlotIndex A, llvm::SlotIndex B)
- public static bool isEarlierInstr(llvm::SlotIndex A, llvm::SlotIndex B)
- public bool isEarlyClobber() const
- public bool isRegister() const
- public static bool isSameInstr(llvm::SlotIndex A, llvm::SlotIndex B)
- public bool isValid() const
- public bool operator bool() const
- public void print(llvm::raw_ostream & os) const
Methods
¶SlotIndex(const llvm::SlotIndex& li,
llvm::SlotIndex::Slot s)
SlotIndex(const llvm::SlotIndex& li,
llvm::SlotIndex::Slot s)
Declared at: llvm/include/llvm/CodeGen/SlotIndexes.h:144
Parameters
- const llvm::SlotIndex& li
- llvm::SlotIndex::Slot s
¶SlotIndex()
SlotIndex()
Description
Construct an invalid index.
Declared at: llvm/include/llvm/CodeGen/SlotIndexes.h:141
¶int distance(llvm::SlotIndex other) const
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:214
Parameters
- llvm::SlotIndex other
¶void dump() const
void dump() const
Description
Dump this index to stderr.
Declared at: llvm/include/llvm/CodeGen/SlotIndexes.h:162
¶llvm::SlotIndex getBaseIndex() const
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:241
¶llvm::SlotIndex getBoundaryIndex() const
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:248
¶llvm::SlotIndex getDeadSlot() const
llvm::SlotIndex getDeadSlot() const
Description
Returns the dead def kill slot for the current instruction.
Declared at: llvm/include/llvm/CodeGen/SlotIndexes.h:259
¶int getInstrDistance(llvm::SlotIndex other) const
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:220
Parameters
- llvm::SlotIndex other
¶llvm::SlotIndex getNextIndex() const
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:279
¶llvm::SlotIndex getNextSlot() const
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:269
¶llvm::SlotIndex getPrevIndex() const
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:299
¶llvm::SlotIndex getPrevSlot() const
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:289
¶llvm::SlotIndex getRegSlot(bool EC = false) const
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:254
Parameters
- bool EC = false
¶bool isBlock() const
bool isBlock() const
Description
isBlock - Returns true if this is a block boundary slot.
Declared at: llvm/include/llvm/CodeGen/SlotIndexes.h:226
¶bool isDead() const
bool isDead() const
Description
isDead - Returns true if this is a dead def kill slot.
Declared at: llvm/include/llvm/CodeGen/SlotIndexes.h:236
¶static bool isEarlierEqualInstr(llvm::SlotIndex A,
llvm::SlotIndex B)
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:209
Parameters
¶static bool isEarlierInstr(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:203
Parameters
¶bool isEarlyClobber() const
bool isEarlyClobber() const
Description
isEarlyClobber - Returns true if this is an early-clobber slot.
Declared at: llvm/include/llvm/CodeGen/SlotIndexes.h:229
¶bool isRegister() const
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:233
¶static bool isSameInstr(llvm::SlotIndex A,
llvm::SlotIndex B)
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:197
Parameters
¶bool isValid() const
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:151
¶bool operator bool() const
bool operator bool() const
Description
Return true for a valid index.
Declared at: llvm/include/llvm/CodeGen/SlotIndexes.h:156
¶void print(llvm::raw_ostream& os) const
void print(llvm::raw_ostream& os) const
Description
Print this index to the given raw_ostream.
Declared at: llvm/include/llvm/CodeGen/SlotIndexes.h:159