LLVM 22.0.0git
llvm::RegAllocEvictionAdvisorAnalysis Class Reference

A MachineFunction analysis for fetching the Eviction Advisor. More...

#include "llvm/CodeGen/RegAllocEvictionAdvisor.h"

Inheritance diagram for llvm::RegAllocEvictionAdvisorAnalysis:
[legend]

Classes

struct  Result

Public Member Functions

Result run (MachineFunction &MF, MachineFunctionAnalysisManager &MAM)
Public Member Functions inherited from llvm::PassInfoMixin< RegAllocEvictionAdvisorAnalysis >
void printPipeline (raw_ostream &OS, function_ref< StringRef(StringRef)> MapClassName2PassName)

Additional Inherited Members

Static Public Member Functions inherited from llvm::AnalysisInfoMixin< RegAllocEvictionAdvisorAnalysis >
static AnalysisKeyID ()
 Returns an opaque, unique ID for this analysis type.
Static Public Member Functions inherited from llvm::PassInfoMixin< RegAllocEvictionAdvisorAnalysis >
static StringRef name ()
 Gets the name of the pass we are mixed into.

Detailed Description

A MachineFunction analysis for fetching the Eviction Advisor.

This sets up the Provider lazily and caches it.

  • in the ML implementation case, the evaluator is stateless but (especially in the development mode) expensive to set up. With a Module Analysis, we require it and set it up once.
  • in the 'development' mode ML case, we want to capture the training log during allocation (this is a log of features encountered and decisions made), and then measure a score, potentially a few steps after allocation completes. So we need a Module analysis to keep the logger state around until we can make that measurement.

Definition at line 237 of file RegAllocEvictionAdvisor.h.

Member Function Documentation

◆ run()


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