Lines Matching refs:CanonicalIV
1220 PHINode *CanonicalIV = nullptr; in visitAddRecExpr() local
1223 CanonicalIV = PN; in visitAddRecExpr()
1227 if (CanonicalIV && in visitAddRecExpr()
1228 SE.getTypeSizeInBits(CanonicalIV->getType()) > SE.getTypeSizeInBits(Ty) && in visitAddRecExpr()
1232 NewOps[i] = SE.getAnyExtendExpr(S->getOperand(i), CanonicalIV->getType()); in visitAddRecExpr()
1263 if (!CanonicalIV) { in visitAddRecExpr()
1268 CanonicalIV = PHINode::Create(Ty, std::distance(HPB, HPE), "indvar"); in visitAddRecExpr()
1269 CanonicalIV->insertBefore(Header->begin()); in visitAddRecExpr()
1270 rememberInstruction(CanonicalIV); in visitAddRecExpr()
1279 CanonicalIV->addIncoming(CanonicalIV->getIncomingValueForBlock(HP), HP); in visitAddRecExpr()
1286 Instruction *Add = BinaryOperator::CreateAdd(CanonicalIV, One, in visitAddRecExpr()
1291 CanonicalIV->addIncoming(Add, HP); in visitAddRecExpr()
1293 CanonicalIV->addIncoming(Constant::getNullValue(Ty), HP); in visitAddRecExpr()
1300 assert(Ty == SE.getEffectiveSCEVType(CanonicalIV->getType()) && in visitAddRecExpr()
1303 return CanonicalIV; in visitAddRecExpr()
1312 SE.getMulExpr(SE.getUnknown(CanonicalIV), in visitAddRecExpr()
1314 CanonicalIV->getType())), in visitAddRecExpr()
1321 const SCEV *IH = SE.getUnknown(CanonicalIV); // Get I as a "symbolic" SCEV. in visitAddRecExpr()
1325 const SCEV *Ext = SE.getNoopOrAnyExtend(S, CanonicalIV->getType()); in visitAddRecExpr()