search for: fixupdefs

Displaying 6 results from an estimated 6 matches for "fixupdefs".

2017 Sep 23
0
Potential infinite loop in MemorySSAUpdater
...t lists.llvm.org> wrote: > Hi, > > Can some one explain the intended behaviour of following loop in void > MemorySSAUpdater::insertDef(MemoryDef *MD, bool RenameUses) function. > > while (!FixupList.empty()) { > unsigned StartingPHISize = InsertedPHIs.size(); > fixupDefs(FixupList); > FixupList.clear(); > // Put any new phis on the fixup list, and process them > FixupList.append(InsertedPHIs.end() - StartingPHISize, > InsertedPHIs.end()); > } > > With the latest code on trunk compilation of perlbench SPEC CPU 2017 INT > benchma...
2017 Sep 23
2
Potential infinite loop in MemorySSAUpdater
Hi, Can some one explain the intended behaviour of following loop in void MemorySSAUpdater::insertDef(MemoryDef *MD, bool RenameUses) function. while (!FixupList.empty()) { unsigned StartingPHISize = InsertedPHIs.size(); fixupDefs(FixupList); FixupList.clear(); // Put any new phis on the fixup list, and process them FixupList.append(InsertedPHIs.end() - StartingPHISize, InsertedPHIs.end()); } With the latest code on trunk compilation of perlbench SPEC CPU 2017 INT benchmark with “-O3 -inline-threshold=1000 and...
2017 Sep 23
2
Potential infinite loop in MemorySSAUpdater
...lists.llvm.org<mailto:llvm-dev at lists.llvm.org>> wrote: Hi, Can some one explain the intended behaviour of following loop in void MemorySSAUpdater::insertDef(MemoryDef *MD, bool RenameUses) function. while (!FixupList.empty()) { unsigned StartingPHISize = InsertedPHIs.size(); fixupDefs(FixupList); FixupList.clear(); // Put any new phis on the fixup list, and process them FixupList.append(InsertedPHIs.end() - StartingPHISize, InsertedPHIs.end()); } With the latest code on trunk compilation of perlbench SPEC CPU 2017 INT benchmark with “-O3 -inline-threshold=1000 and...
2017 Sep 25
2
Potential infinite loop in MemorySSAUpdater
I understand that changing the starting element to “InsertedPHIs.being() + StartingPHISize” it will be finite but given that InsrtedPHIs is finite. I have a case where one element(same element is appened to InsertedPHIs) is added to InsertedPHIs every time fixupDefs is invoked. I traced the issue why this was happening. template <class RangeType> MemoryAccess *MemorySSAUpdater::tryRemoveTrivialPhi(MemoryPhi *Phi, RangeType &Operands) { // Detect equal or self arguments MemoryAccess *Same = null...
2017 Sep 23
0
Potential infinite loop in MemorySSAUpdater
...;> Hi, >> >> Can some one explain the intended behaviour of following loop in void >> MemorySSAUpdater::insertDef(MemoryDef *MD, bool RenameUses) function. >> >> while (!FixupList.empty()) { >> unsigned StartingPHISize = InsertedPHIs.size(); >> fixupDefs(FixupList); >> FixupList.clear(); >> // Put any new phis on the fixup list, and process them >> FixupList.append(InsertedPHIs.end() - StartingPHISize, >> InsertedPHIs.end()); >> } >> >> With the latest code on trunk compilation of perlbench SP...
2017 Sep 25
0
Potential infinite loop in MemorySSAUpdater
...: > I understand that changing the starting element to “InsertedPHIs.being() > + StartingPHISize” it will be finite but given that InsrtedPHIs is > finite. > > > > I have a case where one element(same element is appened to InsertedPHIs) > is added to InsertedPHIs every time fixupDefs is invoked. I traced the > issue why this was happening. > > > > template <class RangeType> > > MemoryAccess *MemorySSAUpdater::tryRemoveTrivialPhi(MemoryPhi *Phi, > > RangeType &Operands) { > > // Dete...