LLVM 18.0.0git
Public Member Functions | List of all members
llvm::DefaultEvictionAdvisor Class Reference

#include "CodeGen/RegAllocEvictionAdvisor.h"

Inheritance diagram for llvm::DefaultEvictionAdvisor:
Inheritance graph
[legend]

Public Member Functions

 DefaultEvictionAdvisor (const MachineFunction &MF, const RAGreedy &RA)
 
- Public Member Functions inherited from llvm::RegAllocEvictionAdvisor
 RegAllocEvictionAdvisor (const RegAllocEvictionAdvisor &)=delete
 
 RegAllocEvictionAdvisor (RegAllocEvictionAdvisor &&)=delete
 
virtual ~RegAllocEvictionAdvisor ()=default
 
virtual MCRegister tryFindEvictionCandidate (const LiveInterval &VirtReg, const AllocationOrder &Order, uint8_t CostPerUseLimit, const SmallVirtRegSet &FixedRegisters) const =0
 Find a physical register that can be freed by evicting the FixedRegisters, or return NoRegister.
 
virtual bool canEvictHintInterference (const LiveInterval &VirtReg, MCRegister PhysReg, const SmallVirtRegSet &FixedRegisters) const =0
 Find out if we can evict the live ranges occupying the given PhysReg, which is a hint (preferred register) for VirtReg.
 
bool isUnusedCalleeSavedReg (MCRegister PhysReg) const
 Returns true if the given PhysReg is a callee saved register and has not been used for allocation yet.
 

Additional Inherited Members

- Protected Member Functions inherited from llvm::RegAllocEvictionAdvisor
 RegAllocEvictionAdvisor (const MachineFunction &MF, const RAGreedy &RA)
 
bool canReassign (const LiveInterval &VirtReg, MCRegister FromReg) const
 
std::optional< unsignedgetOrderLimit (const LiveInterval &VirtReg, const AllocationOrder &Order, unsigned CostPerUseLimit) const
 
bool canAllocatePhysReg (unsigned CostPerUseLimit, MCRegister PhysReg) const
 
- Protected Attributes inherited from llvm::RegAllocEvictionAdvisor
const MachineFunctionMF
 
const RAGreedyRA
 
LiveRegMatrix *const Matrix
 
LiveIntervals *const LIS
 
VirtRegMap *const VRM
 
MachineRegisterInfo *const MRI
 
const TargetRegisterInfo *const TRI
 
const RegisterClassInfoRegClassInfo
 
const ArrayRef< uint8_t > RegCosts
 
const bool EnableLocalReassign
 Run or not the local reassignment heuristic.
 

Detailed Description

Definition at line 204 of file RegAllocEvictionAdvisor.h.

Constructor & Destructor Documentation

◆ DefaultEvictionAdvisor()

llvm::DefaultEvictionAdvisor::DefaultEvictionAdvisor ( const MachineFunction MF,
const RAGreedy RA 
)
inline

Definition at line 206 of file RegAllocEvictionAdvisor.h.


The documentation for this class was generated from the following files: