Lines Matching defs:PHIs
612 /// value will trap if the value is dynamically null. PHIs keeps track of any
615 SmallPtrSet<const PHINode*, 8> &PHIs) {
635 if (!AllUsesOfValueWillTrapIfNull(CI, PHIs)) return false;
637 if (!AllUsesOfValueWillTrapIfNull(GEPI, PHIs)) return false;
641 if (PHIs.insert(PN) && !AllUsesOfValueWillTrapIfNull(PN, PHIs))
660 SmallPtrSet<const PHINode*, 8> PHIs;
661 if (!AllUsesOfValueWillTrapIfNull(LI, PHIs))
960 SmallPtrSet<const PHINode*, 8> &PHIs) {
976 if (!ValueIsOnlyUsedLocallyOrStoredToOneGlobal(Inst, GV, PHIs))
982 // PHIs are ok if all uses are ok. Don't infinitely recurse through PHI
984 if (PHIs.insert(PN))
985 if (!ValueIsOnlyUsedLocallyOrStoredToOneGlobal(PN, GV, PHIs))
991 if (!ValueIsOnlyUsedLocallyOrStoredToOneGlobal(BCI, GV, PHIs))
1048 /// that index through the array and struct field, icmps of null, and PHIs.
1116 // Check to verify that all operands of the PHIs are either PHIS that can be
1128 // One of the PHIs in our set is (optimistically) ok.
1236 // PHIs that are needed for individual elements. Keep track of what PHIs we
1416 // While we have PHIs that are interesting to rewrite, do it.
1424 // Add all the incoming values. This can materialize more phis.
1443 // Delete all the phis and loads now that inter-references are dead.
1491 SmallPtrSet<const PHINode*, 8> PHIs;
1492 if (!ValueIsOnlyUsedLocallyOrStoredToOneGlobal(CI, GV, PHIs))