Lines Matching defs:DestReg

43     unsigned DestReg;
58 PHIInfoElementT *findPHIInfoElement(unsigned DestReg);
65 void addDest(unsigned DestReg, const DebugLoc &DL);
67 void deleteDef(unsigned DestReg);
68 void addSource(unsigned DestReg, unsigned SourceReg,
70 void removeSource(unsigned DestReg, unsigned SourceReg,
73 unsigned &DestReg);
75 unsigned getNumSources(unsigned DestReg);
112 return Info->DestReg;
117 Info->DestReg = NewDef;
159 PHILinearize::findPHIInfoElement(unsigned DestReg) {
161 if (phiInfoElementGetDest(I) == DestReg) {
196 void PHILinearize::addDest(unsigned DestReg, const DebugLoc &DL) {
197 assert(findPHIInfoElement(DestReg) == nullptr && "Dest already exists");
200 NewElement->DestReg = DestReg;
210 void PHILinearize::deleteDef(unsigned DestReg) {
211 PHIInfoElementT *InfoElement = findPHIInfoElement(DestReg);
216 void PHILinearize::addSource(unsigned DestReg, unsigned SourceReg,
218 phiInfoElementAddSource(findPHIInfoElement(DestReg), SourceReg, SourceMBB);
221 void PHILinearize::removeSource(unsigned DestReg, unsigned SourceReg,
223 phiInfoElementRemoveSource(findPHIInfoElement(DestReg), SourceReg, SourceMBB);
227 unsigned &DestReg) {
231 DestReg = phiInfoElementGetDest(InfoElement);
238 unsigned DestReg;
239 return findDest(Reg, SourceMBB, DestReg);
242 unsigned PHILinearize::getNumSources(unsigned DestReg) {
243 return phiInfoElementGetSources(findPHIInfoElement(DestReg)).size();
252 dbgs() << "Dest: " << printReg(Element.DestReg, TRI)
1141 void createEntryPHI(LinearizedRegion *CurrentRegion, unsigned DestReg);
1167 LinearizedRegion *InnerRegion, unsigned DestReg,
1375 unsigned DestReg = getPHIDestReg(PHI);
1377 MRI->createVirtualRegister(MRI->getRegClass(DestReg));
1535 auto DestReg = getPHIDestReg(PHI);
1536 replaceRegisterWith(DestReg, CombinedSourceReg);
1922 unsigned DestReg,
1934 InnerRegion->replaceRegisterInsideRegion(SourceReg, DestReg, true, MRI);
1938 storePHILinearizationInfoDest(DestReg, *DefInstr);
1941 PHIInfo.removeSource(DestReg, SourceReg, CodeBB);
1948 InnerRegion->replaceRegisterOutsideRegion(SourceReg, DestReg, false, MRI);
1950 const TargetRegisterClass *RegClass = MRI->getRegClass(DestReg);
1952 bool IsLastDef = PHIInfo.getNumSources(DestReg) == 1;
1954 insertMergePHI(IfBB, InnerRegion->getExit(), MergeBB, DestReg, NextDestReg,
1957 PHIInfo.removeSource(DestReg, SourceReg, CodeBB);
1962 PHIInfo.deleteDef(DestReg);
1964 PHIInfo.replaceDef(DestReg, NextDestReg);
2033 unsigned DestReg;
2034 PHIInfo.findDest(SI, CodeBB, DestReg);
2035 insertChainedPHI(IfBB, CodeBB, MergeBB, InnerRegion, DestReg, SI);
2051 unsigned DestReg = *DRI;
2052 auto SE = PHIInfo.sources_end(DestReg);
2056 for (auto SRI = PHIInfo.sources_begin(DestReg); SRI != SE; ++SRI) {
2067 for (auto SRI = PHIInfo.sources_begin(DestReg); SRI != SE; ++SRI) {
2073 ElimiatedSources.push_back(std::tuple(DestReg, SourceReg, SourceMBB));
2089 unsigned DestReg) {
2097 auto SE = PHIInfo.sources_end(DestReg);
2099 for (auto SRI = PHIInfo.sources_begin(DestReg); SRI != SE; ++SRI) {
2104 auto SRI = PHIInfo.sources_begin(DestReg);
2106 replaceRegisterWith(DestReg, SourceReg);
2110 TII->get(TargetOpcode::PHI), DestReg);
2111 LLVM_DEBUG(dbgs() << "Entry PHI " << printReg(DestReg, TRI) << " = PHI(");
2115 for (auto SRI = PHIInfo.sources_begin(DestReg); SRI != SE; ++SRI) {
2169 unsigned DestReg = *DRI;
2170 createEntryPHI(CurrentRegion, DestReg);
2213 unsigned DestReg = *DRI;
2214 LLVM_DEBUG(dbgs() << "DestReg: " << printReg(DestReg, TRI) << "\n");
2215 auto SRI = PHIInfo.sources_begin(DestReg);
2217 LLVM_DEBUG(dbgs() << "DestReg: " << printReg(DestReg, TRI)
2220 assert(PHIInfo.sources_end(DestReg) == ++SRI &&
2222 replaceRegisterWith(DestReg, SourceReg);