LLVM  16.0.0git
Macros | Functions | Variables
RegAllocEvictionAdvisor.cpp File Reference
#include "RegAllocEvictionAdvisor.h"
#include "AllocationOrder.h"
#include "RegAllocGreedy.h"
#include "llvm/CodeGen/LiveRegMatrix.h"
#include "llvm/CodeGen/MachineFunction.h"
#include "llvm/CodeGen/RegisterClassInfo.h"
#include "llvm/CodeGen/VirtRegMap.h"
#include "llvm/InitializePasses.h"
#include "llvm/Pass.h"
#include "llvm/Support/CommandLine.h"
#include "llvm/Support/ErrorHandling.h"
#include "llvm/Target/TargetMachine.h"
Include dependency graph for RegAllocEvictionAdvisor.cpp:

Go to the source code of this file.

Macros

#define DEBUG_TYPE   "regalloc"
 

Functions

 INITIALIZE_PASS (RegAllocEvictionAdvisorAnalysis, "regalloc-evict", "Regalloc eviction policy", false, true) namespace
 

Variables

static cl::opt< RegAllocEvictionAdvisorAnalysis::AdvisorModeMode ("regalloc-enable-advisor", cl::Hidden, cl::init(RegAllocEvictionAdvisorAnalysis::AdvisorMode::Default), cl::desc("Enable regalloc advisor mode"), cl::values(clEnumValN(RegAllocEvictionAdvisorAnalysis::AdvisorMode::Default, "default", "Default"), clEnumValN(RegAllocEvictionAdvisorAnalysis::AdvisorMode::Release, "release", "precompiled"), clEnumValN(RegAllocEvictionAdvisorAnalysis::AdvisorMode::Development, "development", "for training")))
 
static cl::opt< bool > EnableLocalReassignment ("enable-local-reassign", cl::Hidden, cl::desc("Local reassignment can yield better allocation decisions, but " "may be compile time intensive"), cl::init(false))
 
cl::opt< unsigned > EvictInterferenceCutoff ("regalloc-eviction-max-interference-cutoff", cl::Hidden, cl::desc("Number of interferences after which we declare " "an interference unevictable and bail out. This " "is a compilation cost-saving consideration. To " "disable, pass a very large number."), cl::init(10))
 

Macro Definition Documentation

◆ DEBUG_TYPE

#define DEBUG_TYPE   "regalloc"

Definition at line 54 of file RegAllocEvictionAdvisor.cpp.

Function Documentation

◆ INITIALIZE_PASS()

INITIALIZE_PASS ( RegAllocEvictionAdvisorAnalysis  ,
"regalloc-evict"  ,
"Regalloc eviction policy"  ,
false  ,
true   
)

Variable Documentation

◆ EnableLocalReassignment

cl::opt<bool> EnableLocalReassignment("enable-local-reassign", cl::Hidden, cl::desc("Local reassignment can yield better allocation decisions, but " "may be compile time intensive"), cl::init(false))
static

◆ EvictInterferenceCutoff

cl::opt<unsigned> EvictInterferenceCutoff("regalloc-eviction-max-interference-cutoff", cl::Hidden, cl::desc("Number of interferences after which we declare " "an interference unevictable and bail out. This " "is a compilation cost-saving consideration. To " "disable, pass a very large number."), cl::init(10))

◆ Mode

cl::opt<RegAllocEvictionAdvisorAnalysis::AdvisorMode> Mode("regalloc-enable-advisor", cl::Hidden, cl::init(RegAllocEvictionAdvisorAnalysis::AdvisorMode::Default), cl::desc("Enable regalloc advisor mode"), cl::values( clEnumValN(RegAllocEvictionAdvisorAnalysis::AdvisorMode::Default, "default", "Default"), clEnumValN(RegAllocEvictionAdvisorAnalysis::AdvisorMode::Release, "release", "precompiled"), clEnumValN(RegAllocEvictionAdvisorAnalysis::AdvisorMode::Development, "development", "for training")))
static