Lines Matching defs:RAGreedy
9 // This file defines the RAGreedy function pass for register allocation in
152 char RAGreedy::ID = 0;
153 char &llvm::RAGreedyID = RAGreedy::ID;
155 INITIALIZE_PASS_BEGIN(RAGreedy, "greedy",
172 INITIALIZE_PASS_END(RAGreedy, "greedy",
176 const char *const RAGreedy::StageName[] = {
192 return new RAGreedy();
196 return new RAGreedy(Ftor);
199 RAGreedy::RAGreedy(RegAllocFilterFunc F)
202 void RAGreedy::getAnalysisUsage(AnalysisUsage &AU) const {
234 bool RAGreedy::LRE_CanEraseVirtReg(Register VirtReg) {
249 void RAGreedy::LRE_WillShrinkVirtReg(Register VirtReg) {
259 void RAGreedy::LRE_DidCloneVirtReg(Register New, Register Old) {
263 void RAGreedy::ExtraRegInfo::LRE_DidCloneVirtReg(Register New, Register Old) {
277 void RAGreedy::releaseMemory() {
282 void RAGreedy::enqueueImpl(const LiveInterval *LI) { enqueue(Queue, LI); }
284 void RAGreedy::enqueue(PQueue &CurQueue, const LiveInterval *LI) {
382 const LiveInterval *RAGreedy::dequeue() { return dequeue(Queue); }
384 const LiveInterval *RAGreedy::dequeue(PQueue &CurQueue) {
397 MCRegister RAGreedy::tryAssign(const LiveInterval &VirtReg,
481 void RAGreedy::evictInterference(const LiveInterval &VirtReg,
577 MCRegister RAGreedy::tryEvict(const LiveInterval &VirtReg,
601 bool RAGreedy::addSplitConstraints(InterferenceCache::Cursor Intf,
674 bool RAGreedy::addThroughConstraints(InterferenceCache::Cursor Intf,
727 bool RAGreedy::growRegion(GlobalSplitCandidate &Cand) {
806 bool RAGreedy::calcCompactRegion(GlobalSplitCandidate &Cand) {
849 BlockFrequency RAGreedy::calcSpillCost() {
868 BlockFrequency RAGreedy::calcGlobalSplitCost(GlobalSplitCandidate &Cand,
922 void RAGreedy::splitAroundRegion(LiveRangeEdit &LREdit,
1060 MCRegister RAGreedy::tryRegionSplit(const LiveInterval &VirtReg,
1094 RAGreedy::calculateRegionSplitCostAroundReg(MCPhysReg PhysReg,
1171 unsigned RAGreedy::calculateRegionSplitCost(const LiveInterval &VirtReg,
1189 unsigned RAGreedy::doRegionSplit(const LiveInterval &VirtReg, unsigned BestCand,
1231 bool RAGreedy::trySplitAroundHintReg(MCPhysReg Hint,
1293 unsigned RAGreedy::tryBlockSplit(const LiveInterval &VirtReg,
1414 unsigned RAGreedy::tryInstructionSplit(const LiveInterval &VirtReg,
1489 void RAGreedy::calcGapWeights(MCRegister PhysReg,
1567 unsigned RAGreedy::tryLocalSplit(const LiveInterval &VirtReg,
1798 unsigned RAGreedy::trySplit(const LiveInterval &VirtReg, AllocationOrder &Order,
1867 bool RAGreedy::mayRecolorAllInterferences(
1954 unsigned RAGreedy::tryLastChanceRecoloring(const LiveInterval &VirtReg,
2106 bool RAGreedy::tryRecoloringCandidates(PQueue &RecoloringQueue,
2142 MCRegister RAGreedy::selectOrSplit(const LiveInterval &VirtReg,
2174 MCRegister RAGreedy::tryAssignCSRFirstTime(
2208 void RAGreedy::aboutToRemoveInterval(const LiveInterval &LI) {
2213 void RAGreedy::initializeCSRCost() {
2242 void RAGreedy::collectHintInfo(Register Reg, HintsInfo &Out) {
2265 BlockFrequency RAGreedy::getBrokenHintFreq(const HintsInfo &List,
2283 void RAGreedy::tryHintRecoloring(const LiveInterval &VirtReg) {
2396 void RAGreedy::tryHintsRecoloring() {
2408 MCRegister RAGreedy::selectOrSplitImpl(const LiveInterval &VirtReg,
2518 void RAGreedy::RAGreedyStats::report(MachineOptimizationRemarkMissed &R) {
2547 RAGreedy::RAGreedyStats RAGreedy::computeStats(MachineBasicBlock &MBB) {
2639 RAGreedy::RAGreedyStats RAGreedy::reportStats(MachineLoop *L) {
2665 void RAGreedy::reportStats() {
2691 bool RAGreedy::hasVirtRegAlloc() {
2706 bool RAGreedy::runOnMachineFunction(MachineFunction &mf) {