Lines Matching defs:Domain

65 /// Return a register class equivalent to \p SrcRC, in \p Domain.
67 RegDomain Domain) {
68 assert(Domain == MaskDomain && "add domain");
395 return "X86 Domain Reassignment Pass";
409 void visitRegister(Closure &, Register Reg, RegDomain &Domain,
412 /// Reassign the closure to \p Domain.
413 void reassign(const Closure &C, RegDomain Domain) const;
418 /// /returns true if it is profitable to reassign the closure to \p Domain.
419 bool isReassignmentProfitable(const Closure &C, RegDomain Domain) const;
421 /// Calculate the total cost of reassigning the closure to \p Domain.
422 double calculateCost(const Closure &C, RegDomain Domain) const;
430 RegDomain &Domain,
443 if (Domain == NoDomain)
444 Domain = RD;
446 if (Domain != RD)
489 RegDomain Domain) const {
490 return calculateCost(C, Domain) < 0.0;
493 void X86DomainReassignment::reassign(const Closure &C, RegDomain Domain) const {
494 assert(C.isLegal(Domain) && "Cannot convert illegal closure");
500 if (Converters.find({Domain, MI->getOpcode()})
507 MRI->setRegClass(Reg, getDstRC(MRI->getRegClass(Reg), Domain));
545 RegDomain Domain = NoDomain;
546 visitRegister(C, Reg, Domain, Worklist);
575 visitRegister(C, Op.getReg(), Domain, Worklist);
597 visitRegister(C, DefReg, Domain, Worklist);
765 dbgs() << "***** Machine Function before Domain Reassignment *****\n");
826 dbgs() << "***** Machine Function after Domain Reassignment *****\n");
833 "X86 Domain Reassignment Pass", false, false)
835 /// Returns an instance of the Domain Reassignment pass.