Interface to the eviction advisor for choosing live ranges to evict.
Declared in <llvm/CodeGen/RegAllocEvictionAdvisor.h>
class RegAllocEvictionAdvisor;
| Name | Description |
|---|---|
RegAllocEvictionAdvisor [constructor] | Constructors |
~RegAllocEvictionAdvisor [destructor] [virtual] | Destroy this eviction advisor. |
canEvictHintInterference [virtual] | Find out if we can evict the live ranges occupying the given PhysReg, which is a hint (preferred register) for VirtReg. |
isUnusedCalleeSavedReg | Returns true if the given PhysReg is a callee saved register and has not been used for allocation yet. |
isUrgentEviction | Returns true if this is an urgent eviction. |
tryFindEvictionCandidate [virtual] | Find a physical register that can be freed by eviction, or NoRegister. |
| Name | Description |
|---|---|
RegAllocEvictionAdvisor [constructor] | Construct an advisor for MF backed by greedy allocator RA. |
canAllocatePhysReg | Return true if allocating PhysReg is worthwhile under the cost limit. |
canReassign | Return true if VirtReg can be reassigned away from FromReg. |
getOrderLimit | Get the upper limit of elements in Order that need to be analyzed. |
| Name | Description |
|---|---|
EnableLocalReassign | Run or not the local reassignment heuristic. This information is obtained from the TargetSubtargetInfo. |
LIS | Live interval analysis for the current function. |
MF | Machine function currently being allocated. |
MRI | Machine register info for the current function. |
Matrix | Live register matrix used to query interference. |
RA | Greedy register allocator that owns related analyses. |
RegClassInfo | Cached register class information for the current function. |
RegCosts | Per-physical-register cost-per-use values. |
TRI | Target register info for the current subtarget. |
VRM | Mapping from virtual to physical registers. |
| Name | Description |
|---|---|
DefaultEvictionAdvisor | Default heuristic eviction advisor used by greedy register allocation. |