Home | History | Annotate | Download | only in CodeGen

Lines Matching refs:vreg

142   /// \brief Finds the initial set of vreg intervals to allocate.
162 assert(vregItr != node2VReg.end() && "No vreg for node.");
166 PBQP::Graph::NodeItr PBQPRAProblem::getNodeForVReg(unsigned vreg) const {
167 VReg2Node::const_iterator nodeItr = vreg2Node.find(vreg);
168 assert(nodeItr != vreg2Node.end() && "No node for vreg.");
174 PBQPRAProblem::getAllowedSet(unsigned vreg) const {
175 AllowedSetMap::const_iterator allowedSetItr = allowedSets.find(vreg);
176 assert(allowedSetItr != allowedSets.end() && "No pregs for vreg.");
181 unsigned PBQPRAProblem::getPRegForOption(unsigned vreg, unsigned option) const {
182 assert(isPRegOption(vreg, option) && "Not a preg option.");
184 const AllowedSet& allowedSet = getAllowedSet(vreg);
213 unsigned vreg = *vregItr;
214 const TargetRegisterClass *trc = mri->getRegClass(vreg);
215 LiveInterval *vregLI = &LIS->getInterval(vreg);
221 // Compute an initial allowed set for the current vreg.
254 p->recordVReg(vreg, node, vrAllowed.begin(), vrAllowed.end());
274 assert(!l2.empty() && "Empty interval in vreg set?");
482 unsigned vreg = problem.getVRegForNode(node);
485 if (problem.isPRegOption(vreg, alloc)) {
486 unsigned preg = problem.getPRegForOption(vreg, alloc);
487 DEBUG(dbgs() << "VREG " << PrintReg(vreg, tri) << " -> "
490 vrm->assignVirt2Phys(vreg, preg);
491 } else if (problem.isSpillOption(vreg, alloc)) {
492 vregsToAlloc.erase(vreg);
494 LiveRangeEdit LRE(&lis->getInterval(vreg), newSpills, *mf, *lis, vrm);
497 DEBUG(dbgs() << "VREG " << PrintReg(vreg, tri) << " -> SPILLED (Cost: "
568 // Find the vreg intervals in need of allocation.