Home | History | Annotate | Download | only in Analysis

Lines Matching refs:Ph

61     if (Phi* Ph = dyn_cast<Phi>(E)) {
62 Ph->values().reserveCheck(1, Arena);
63 Ph->values().push_back(nullptr);
73 if (Phi* Ph = dyn_cast<Phi>(E)) {
74 Ph->values().reserve(NumPreds, Arena);
90 if (const Phi *Ph = dyn_cast<Phi>(E)) {
91 if (Ph->status() == Phi::PH_SingleVal) {
92 E = Ph->values()[0];
118 if (auto *Ph = dyn_cast<Phi>(E)) {
119 if (Ph->status() == Phi::PH_Incomplete)
120 simplifyIncompleteArg(Ph);
122 if (Ph->status() == Phi::PH_SingleVal) {
123 E = Ph->values()[0];
135 void til::simplifyIncompleteArg(til::Phi *Ph) {
136 assert(Ph && Ph->status() == Phi::PH_Incomplete);
139 Ph->setStatus(Phi::PH_MultiVal);
141 SExpr *E0 = simplifyToCanonicalVal(Ph->values()[0]);
142 for (unsigned i=1, n=Ph->values().size(); i<n; ++i) {
143 SExpr *Ei = simplifyToCanonicalVal(Ph->values()[i]);
144 if (Ei == Ph)
150 Ph->setStatus(Phi::PH_SingleVal);