LLVM: llvm::RegAllocPriorityAdvisorProvider Class Reference (original) (raw)

Common provider for getting the priority advisor and logging rewards. More...

#include "[llvm/CodeGen/RegAllocPriorityAdvisor.h](RegAllocPriorityAdvisor%5F8h%5Fsource.html)"

Public Types
enum class AdvisorMode : int { Default, Release, Development, Dummy }
Public Member Functions
RegAllocPriorityAdvisorProvider (AdvisorMode Mode)
virtual ~RegAllocPriorityAdvisorProvider ()=default
virtual void logRewardIfNeeded (const MachineFunction &MF, function_ref< float()> GetReward)
virtual std::unique_ptr< RegAllocPriorityAdvisor > getAdvisor (const MachineFunction &MF, const RAGreedy &RA, SlotIndexes &SI)=0
AdvisorMode getAdvisorMode () const

Common provider for getting the priority advisor and logging rewards.

Legacy analysis forwards all calls to this provider. New analysis serves the provider as the analysis result. Expensive setup is done in the constructor, so that the advisor can be created quickly for every machine function. TODO: Remove once legacy PM support is dropped.

Definition at line 79 of file RegAllocPriorityAdvisor.h.

AdvisorMode

llvm::RegAllocPriorityAdvisorProvider::RegAllocPriorityAdvisorProvider ( AdvisorMode Mode) inline

~RegAllocPriorityAdvisorProvider()

virtual llvm::RegAllocPriorityAdvisorProvider::~RegAllocPriorityAdvisorProvider ( ) virtualdefault

getAdvisor()

getAdvisorMode()

AdvisorMode llvm::RegAllocPriorityAdvisorProvider::getAdvisorMode ( ) const inline

logRewardIfNeeded()


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