- assignSequentialBlockIndices
void assignSequentialBlockIndices()
Undocumented in source. Be warned that the author may not have intended to support it.
- blocks
BlockIterator blocks()
Undocumented in source. Be warned that the author may not have intended to support it.
- blocksArray
IrBasicBlock[] blocksArray()
Undocumented in source. Be warned that the author may not have intended to support it.
- blocksReverse
BlockReverseIterator blocksReverse()
Undocumented in source. Be warned that the author may not have intended to support it.
- byteLength
size_t byteLength()
Undocumented in source. Be warned that the author may not have intended to support it.
- dumpStackSlots
void dumpStackSlots(CompilationContext* context)
Undocumented in source. Be warned that the author may not have intended to support it.
- firstVirtReg
IrIndex firstVirtReg()
Undocumented in source. Be warned that the author may not have intended to support it.
- freeIrArray
void freeIrArray(IrIndex offset, uint capacity)
Undocumented in source. Be warned that the author may not have intended to support it.
- get
T* get(IrIndex index)
Undocumented in source. Be warned that the author may not have intended to support it.
- getArray
IrIndex* getArray(IrIndex index)
Undocumented in source. Be warned that the author may not have intended to support it.
- getCallConv
CallConv* getCallConv(CompilationContext* c)
Undocumented in source. Be warned that the author may not have intended to support it.
- getCallConvEnum
CallConvention getCallConvEnum(CompilationContext* c)
Undocumented in source. Be warned that the author may not have intended to support it.
- getValueType
IrIndex getValueType(CompilationContext* context, IrIndex someIndex)
Undocumented in source. Be warned that the author may not have intended to support it.
- lastBasicBlock
IrIndex lastBasicBlock()
Undocumented in source. Be warned that the author may not have intended to support it.
- lastVirtReg
IrIndex lastVirtReg()
Undocumented in source. Be warned that the author may not have intended to support it.
- nextInstr
IrIndex nextInstr(IrIndex instrIndex)
Undocumented in source. Be warned that the author may not have intended to support it.
- orderBlocks
void orderBlocks()
Undocumented in source. Be warned that the author may not have intended to support it.
- prevInstr
IrIndex prevInstr(IrIndex instrIndex)
Undocumented in source. Be warned that the author may not have intended to support it.
- removeAllPhis
void removeAllPhis()
Undocumented in source. Be warned that the author may not have intended to support it.
- stackSlots
StackSlot[] stackSlots()
Undocumented in source. Be warned that the author may not have intended to support it.
- virtualRegisters
VregIterator virtualRegisters()
Undocumented in source. Be warned that the author may not have intended to support it.
Stores info about single function in IR All data of a function is stored in a number of arenas Every function has its data stored sequentially in each arena, and items in each function have separate indexing Indices are relative to the pointers. All this implies that in order to modify the function's IR it needs to be at the end of each arena. Then we can freely append new items to the end of arenas.