Lines Matching refs:NarrowDef

1074   void calculatePostIncRange(Instruction *NarrowDef, Instruction *NarrowUser);
1090 Instruction *NarrowDef = nullptr; member
1101 : NarrowDef(ND), NarrowUse(NU), WideDef(WD), in NarrowIVDefUse()
1139 void pushNarrowIVUsers(Instruction *NarrowDef, Instruction *WideDef);
1249 Instruction *NarrowDef = DU.NarrowDef; in cloneBitwiseIVUser() local
1258 bool IsSigned = getExtendKind(NarrowDef) == ExtendKind::Sign; in cloneBitwiseIVUser()
1259 Value *LHS = (NarrowUse->getOperand(0) == NarrowDef) in cloneBitwiseIVUser()
1263 Value *RHS = (NarrowUse->getOperand(1) == NarrowDef) in cloneBitwiseIVUser()
1280 Instruction *NarrowDef = DU.NarrowDef; in cloneArithmeticIVUser() local
1285 unsigned IVOpIdx = (NarrowUse->getOperand(0) == NarrowDef) ? 0 : 1; in cloneArithmeticIVUser()
1323 bool SignExtend = getExtendKind(NarrowDef) == ExtendKind::Sign; in cloneArithmeticIVUser()
1330 Value *LHS = (NarrowUse->getOperand(0) == NarrowDef) in cloneArithmeticIVUser()
1334 Value *RHS = (NarrowUse->getOperand(1) == NarrowDef) in cloneArithmeticIVUser()
1388 DU.NarrowUse->getOperand(0) == DU.NarrowDef ? 1 : 0; in getExtendedOperandRecurrence()
1389 assert(DU.NarrowUse->getOperand(1-ExtendOperIdx) == DU.NarrowDef && "bad DU"); in getExtendedOperandRecurrence()
1393 ExtendKind ExtKind = getExtendKind(DU.NarrowDef); in getExtendedOperandRecurrence()
1468 } else if (getExtendKind(DU.NarrowDef) == ExtendKind::Sign) { in getWideRecurrence()
1485 auto *InsertPt = getInsertPointForUses(DU.NarrowUse, DU.NarrowDef, DT, LI); in truncateIVUse()
1491 Value *Trunc = Builder.CreateTrunc(DU.WideDef, DU.NarrowDef->getType()); in truncateIVUse()
1492 DU.NarrowUse->replaceUsesOfWith(DU.NarrowDef, Trunc); in truncateIVUse()
1517 bool IsSigned = getExtendKind(DU.NarrowDef) == ExtendKind::Sign; in widenLoopCompare()
1521 Value *Op = Cmp->getOperand(Cmp->getOperand(0) == DU.NarrowDef ? 1 : 0); in widenLoopCompare()
1527 DU.NarrowUse->replaceUsesOfWith(DU.NarrowDef, DU.WideDef); in widenLoopCompare()
1559 Instruction *NarrowDef = DU.NarrowDef; in widenWithVariantUse() local
1571 assert((NarrowUse->getOperand(0) == NarrowDef || in widenWithVariantUse()
1572 NarrowUse->getOperand(1) == NarrowDef) && in widenWithVariantUse()
1577 ExtendKind ExtKind = getExtendKind(NarrowDef); in widenWithVariantUse()
1592 if (User == NarrowDef) in widenWithVariantUse()
1644 if (NarrowUse->getOperand(0) != NarrowDef) in widenWithVariantUse()
1667 (NarrowUse->getOperand(0) == NarrowDef) in widenWithVariantUse()
1672 (NarrowUse->getOperand(1) == NarrowDef) in widenWithVariantUse()
1735 assert(ExtendKindMap.count(DU.NarrowDef) && in widenIVUse()
1759 Value *Trunc = Builder.CreateTrunc(WidePhi, DU.NarrowDef->getType()); in widenIVUse()
1772 return DU.NeverNegative || getExtendKind(DU.NarrowDef) == ExtendKind::Sign; in widenIVUse()
1775 return DU.NeverNegative || getExtendKind(DU.NarrowDef) == ExtendKind::Zero; in widenIVUse()
1797 DU.NarrowUse->replaceUsesOfWith(DU.NarrowDef, DU.WideDef); in widenIVUse()
1885 void WidenIV::pushNarrowIVUsers(Instruction *NarrowDef, Instruction *WideDef) { in pushNarrowIVUsers() argument
1886 const SCEV *NarrowSCEV = SE->getSCEV(NarrowDef); in pushNarrowIVUsers()
1890 for (User *U : NarrowDef->users()) { in pushNarrowIVUsers()
1900 if (auto RangeInfo = getPostIncRangeInfo(NarrowDef, NarrowUser)) in pushNarrowIVUsers()
1904 NarrowIVUsers.emplace_back(NarrowDef, NarrowUser, WideDef, in pushNarrowIVUsers()
2013 if (DU.NarrowDef->use_empty()) in createWideIV()
2014 DeadInsts.emplace_back(DU.NarrowDef); in createWideIV()
2025 void WidenIV::calculatePostIncRange(Instruction *NarrowDef, in calculatePostIncRange() argument
2029 if (!match(NarrowDef, m_NSWAdd(m_Value(NarrowDefLHS), in calculatePostIncRange()
2051 updatePostIncRangeInfo(NarrowDef, NarrowUser, NarrowDefRange); in calculatePostIncRange()
2109 Instruction *NarrowDef = Worklist.pop_back_val(); in calculatePostIncRanges() local
2111 for (Use &U : NarrowDef->uses()) { in calculatePostIncRanges()
2124 calculatePostIncRange(NarrowDef, NarrowUser); in calculatePostIncRanges()