Lines Matching defs:Domain

57 /// Return a register class equivalent to \p SrcRC, in \p Domain.
59 RegDomain Domain) {
60 assert(Domain == MaskDomain && "add domain");
387 return "X86 Domain Reassignment Pass";
402 bool visitRegister(Closure &, Register Reg, RegDomain &Domain,
405 /// Reassign the closure to \p Domain.
406 void reassign(const Closure &C, RegDomain Domain) const;
412 /// /returns true if it is profitable to reassign the closure to \p Domain.
413 bool isReassignmentProfitable(const Closure &C, RegDomain Domain) const;
415 /// Calculate the total cost of reassigning the closure to \p Domain.
416 double calculateCost(const Closure &C, RegDomain Domain) const;
424 RegDomain &Domain,
443 if (Domain == NoDomain)
444 Domain = RD;
446 if (Domain != RD)
493 RegDomain Domain) const {
494 return calculateCost(C, Domain) < 0.0;
497 void X86DomainReassignment::reassign(const Closure &C, RegDomain Domain) const {
498 assert(C.isLegal(Domain) && "Cannot convert illegal closure");
504 if (Converters.find({Domain, MI->getOpcode()})
511 MRI->setRegClass(Reg, getDstRC(MRI->getRegClass(Reg), Domain));
549 RegDomain Domain = NoDomain;
550 visitRegister(C, Reg, Domain, Worklist);
580 if (!visitRegister(C, Op.getReg(), Domain, Worklist))
604 if (!visitRegister(C, DefReg, Domain, Worklist))
773 dbgs() << "***** Machine Function before Domain Reassignment *****\n");
834 dbgs() << "***** Machine Function after Domain Reassignment *****\n");
841 "X86 Domain Reassignment Pass", false, false)
843 /// Returns an instance of the Domain Reassignment pass.