Lines Matching defs:Ph
63 if (auto *Ph = dyn_cast<Phi>(E)) {
64 Ph->values().reserveCheck(1, Arena);
65 Ph->values().push_back(nullptr);
74 if (auto *Ph = dyn_cast<Phi>(E)) {
75 Ph->values().reserve(NumPreds, Arena);
90 if (const auto *Ph = dyn_cast<Phi>(E)) {
91 if (Ph->status() == Phi::PH_SingleVal) {
92 E = Ph->values()[0];
117 if (auto *Ph = dyn_cast<Phi>(E)) {
118 if (Ph->status() == Phi::PH_Incomplete)
119 simplifyIncompleteArg(Ph);
121 if (Ph->status() == Phi::PH_SingleVal) {
122 E = Ph->values()[0];
133 void til::simplifyIncompleteArg(til::Phi *Ph) {
134 assert(Ph && Ph->status() == Phi::PH_Incomplete);
137 Ph->setStatus(Phi::PH_MultiVal);
139 SExpr *E0 = simplifyToCanonicalVal(Ph->values()[0]);
140 for (unsigned i = 1, n = Ph->values().size(); i < n; ++i) {
141 SExpr *Ei = simplifyToCanonicalVal(Ph->values()[i]);
142 if (Ei == Ph)
148 Ph->setStatus(Phi::PH_SingleVal);