Lines Matching defs:RAGreedy
9 // This file defines the RAGreedy function pass for register allocation in
149 char RAGreedy::ID = 0;
150 char &llvm::RAGreedyID = RAGreedy::ID;
152 INITIALIZE_PASS_BEGIN(RAGreedy, "greedy",
169 INITIALIZE_PASS_END(RAGreedy, "greedy",
173 const char *const RAGreedy::StageName[] = {
189 return new RAGreedy();
193 return new RAGreedy(Ftor);
196 RAGreedy::RAGreedy(RegAllocFilterFunc F)
199 void RAGreedy::getAnalysisUsage(AnalysisUsage &AU) const {
231 bool RAGreedy::LRE_CanEraseVirtReg(Register VirtReg) {
246 void RAGreedy::LRE_WillShrinkVirtReg(Register VirtReg) {
256 void RAGreedy::LRE_DidCloneVirtReg(Register New, Register Old) {
260 void RAGreedy::ExtraRegInfo::LRE_DidCloneVirtReg(Register New, Register Old) {
274 void RAGreedy::releaseMemory() {
279 void RAGreedy::enqueueImpl(const LiveInterval *LI) { enqueue(Queue, LI); }
281 void RAGreedy::enqueue(PQueue &CurQueue, const LiveInterval *LI) {
385 const LiveInterval *RAGreedy::dequeue() { return dequeue(Queue); }
387 const LiveInterval *RAGreedy::dequeue(PQueue &CurQueue) {
400 MCRegister RAGreedy::tryAssign(const LiveInterval &VirtReg,
484 void RAGreedy::evictInterference(const LiveInterval &VirtReg,
580 MCRegister RAGreedy::tryEvict(const LiveInterval &VirtReg,
604 bool RAGreedy::addSplitConstraints(InterferenceCache::Cursor Intf,
677 bool RAGreedy::addThroughConstraints(InterferenceCache::Cursor Intf,
730 bool RAGreedy::growRegion(GlobalSplitCandidate &Cand) {
809 bool RAGreedy::calcCompactRegion(GlobalSplitCandidate &Cand) {
852 BlockFrequency RAGreedy::calcSpillCost() {
871 BlockFrequency RAGreedy::calcGlobalSplitCost(GlobalSplitCandidate &Cand,
925 void RAGreedy::splitAroundRegion(LiveRangeEdit &LREdit,
1063 MCRegister RAGreedy::tryRegionSplit(const LiveInterval &VirtReg,
1097 RAGreedy::calculateRegionSplitCostAroundReg(MCPhysReg PhysReg,
1174 unsigned RAGreedy::calculateRegionSplitCost(const LiveInterval &VirtReg,
1192 unsigned RAGreedy::doRegionSplit(const LiveInterval &VirtReg, unsigned BestCand,
1234 bool RAGreedy::trySplitAroundHintReg(MCPhysReg Hint,
1296 unsigned RAGreedy::tryBlockSplit(const LiveInterval &VirtReg,
1417 unsigned RAGreedy::tryInstructionSplit(const LiveInterval &VirtReg,
1492 void RAGreedy::calcGapWeights(MCRegister PhysReg,
1570 unsigned RAGreedy::tryLocalSplit(const LiveInterval &VirtReg,
1801 unsigned RAGreedy::trySplit(const LiveInterval &VirtReg, AllocationOrder &Order,
1870 bool RAGreedy::mayRecolorAllInterferences(
1957 unsigned RAGreedy::tryLastChanceRecoloring(const LiveInterval &VirtReg,
2120 bool RAGreedy::tryRecoloringCandidates(PQueue &RecoloringQueue,
2156 MCRegister RAGreedy::selectOrSplit(const LiveInterval &VirtReg,
2188 MCRegister RAGreedy::tryAssignCSRFirstTime(
2222 void RAGreedy::aboutToRemoveInterval(const LiveInterval &LI) {
2227 void RAGreedy::initializeCSRCost() {
2256 void RAGreedy::collectHintInfo(Register Reg, HintsInfo &Out) {
2279 BlockFrequency RAGreedy::getBrokenHintFreq(const HintsInfo &List,
2297 void RAGreedy::tryHintRecoloring(const LiveInterval &VirtReg) {
2410 void RAGreedy::tryHintsRecoloring() {
2422 MCRegister RAGreedy::selectOrSplitImpl(const LiveInterval &VirtReg,
2535 void RAGreedy::RAGreedyStats::report(MachineOptimizationRemarkMissed &R) {
2564 RAGreedy::RAGreedyStats RAGreedy::computeStats(MachineBasicBlock &MBB) {
2656 RAGreedy::RAGreedyStats RAGreedy::reportStats(MachineLoop *L) {
2682 void RAGreedy::reportStats() {
2708 bool RAGreedy::hasVirtRegAlloc() {
2723 bool RAGreedy::runOnMachineFunction(MachineFunction &mf) {