Lines Matching defs:PHIs
616 /// value will trap if the value is dynamically null. PHIs keeps track of any
619 SmallPtrSetImpl<const PHINode*> &PHIs) {
639 if (!AllUsesOfValueWillTrapIfNull(CI, PHIs)) return false;
641 if (!AllUsesOfValueWillTrapIfNull(GEPI, PHIs)) return false;
645 if (PHIs.insert(PN).second && !AllUsesOfValueWillTrapIfNull(PN, PHIs))
664 SmallPtrSet<const PHINode*, 8> PHIs;
665 if (!AllUsesOfValueWillTrapIfNull(LI, PHIs))
962 SmallPtrSetImpl<const PHINode*> &PHIs) {
978 if (!ValueIsOnlyUsedLocallyOrStoredToOneGlobal(Inst, GV, PHIs))
984 // PHIs are ok if all uses are ok. Don't infinitely recurse through PHI
986 if (PHIs.insert(PN).second)
987 if (!ValueIsOnlyUsedLocallyOrStoredToOneGlobal(PN, GV, PHIs))
993 if (!ValueIsOnlyUsedLocallyOrStoredToOneGlobal(BCI, GV, PHIs))
1050 /// that index through the array and struct field, icmps of null, and PHIs.
1118 // 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.
1235 // PHIs that are needed for individual elements. Keep track of what PHIs we
1415 // While we have PHIs that are interesting to rewrite, do it.
1423 // Add all the incoming values. This can materialize more phis.
1442 // Delete all the phis and loads now that inter-references are dead.
1486 SmallPtrSet<const PHINode*, 8> PHIs;
1487 if (!ValueIsOnlyUsedLocallyOrStoredToOneGlobal(CI, GV, PHIs))