Home | History | Annotate | Download | only in CodeGen

Lines Matching defs:vreg

138   /// \brief Finds the initial set of vreg intervals to allocate.
158 assert(vregItr != node2VReg.end() && "No vreg for node.");
162 PBQPRAGraph::NodeId PBQPRAProblem::getNodeForVReg(unsigned vreg) const {
163 VReg2Node::const_iterator nodeItr = vreg2Node.find(vreg);
164 assert(nodeItr != vreg2Node.end() && "No node for vreg.");
170 PBQPRAProblem::getAllowedSet(unsigned vreg) const {
171 AllowedSetMap::const_iterator allowedSetItr = allowedSets.find(vreg);
172 assert(allowedSetItr != allowedSets.end() && "No pregs for vreg.");
177 unsigned PBQPRAProblem::getPRegForOption(unsigned vreg, unsigned option) const {
178 assert(isPRegOption(vreg, option) && "Not a preg option.");
180 const AllowedSet& allowedSet = getAllowedSet(vreg);
208 unsigned vreg = *vregItr;
209 const TargetRegisterClass *trc = mri->getRegClass(vreg);
210 LiveInterval *vregLI = &LIS->getInterval(vreg);
216 // Compute an initial allowed set for the current vreg.
255 p->recordVReg(vreg, nId, vrAllowed.begin(), vrAllowed.end());
271 assert(!l2.empty() && "Empty interval in vreg set?");
472 unsigned vreg = problem.getVRegForNode(NId);
475 if (problem.isPRegOption(vreg, alloc)) {
476 unsigned preg = problem.getPRegForOption(vreg, alloc);
477 DEBUG(dbgs() << "VREG " << PrintReg(vreg, tri) << " -> "
480 vrm->assignVirt2Phys(vreg, preg);
481 } else if (problem.isSpillOption(vreg, alloc)) {
482 vregsToAlloc.erase(vreg);
484 LiveRangeEdit LRE(&lis->getInterval(vreg), newSpills, *mf, *lis, vrm);
487 DEBUG(dbgs() << "VREG " << PrintReg(vreg, tri) << " -> SPILLED (Cost: "
562 // Find the vreg intervals in need of allocation.