IrVirtualRegister

Undocumented in source.
@IrValueKind.virtualRegister
struct IrVirtualRegister {}

Members

Functions

isRemoved
bool isRemoved()
Undocumented in source. Be warned that the author may not have intended to support it.

Variables

definition
IrIndex definition;

Index of instruction or phi that defines this register

type
IrIndex type;
users
IrSmallSet users;

Instruction or phi indices that use this register This cannot be regular array because deletion is O(n), and it can cause O(n^2) time in DCE pass when lots of instructions are dead. This must store precise count of users, because this number is used for liveness info allocation If number is inacurate then it will result in insufficient storage allocated when user occurs multiple times As a result this must be multiset, not regular set.

Meta