Lines Matching refs:Exit
95 static std::pair<Type *, bool> computeRecurrenceType(Instruction *Exit, in computeRecurrenceType() argument
100 const DataLayout &DL = Exit->getModule()->getDataLayout(); in computeRecurrenceType()
101 uint64_t MaxBitWidth = DL.getTypeSizeInBits(Exit->getType()); in computeRecurrenceType()
109 auto Mask = DB->getDemandedBits(Exit); in computeRecurrenceType()
113 if (MaxBitWidth == DL.getTypeSizeInBits(Exit->getType()) && AC && DT) { in computeRecurrenceType()
117 auto NumSignBits = ComputeNumSignBits(Exit, DL, 0, AC, nullptr, DT); in computeRecurrenceType()
118 auto NumTypeBits = DL.getTypeSizeInBits(Exit->getType()); in computeRecurrenceType()
120 KnownBits Bits = computeKnownBits(Exit, DL); in computeRecurrenceType()
134 return std::make_pair(Type::getIntNTy(Exit->getContext(), MaxBitWidth), in computeRecurrenceType()
142 static void collectCastInstrs(Loop *TheLoop, Instruction *Exit, in collectCastInstrs() argument
149 Worklist.push_back(Exit); in collectCastInstrs()
185 Instruction *Exit, PHINode *Phi) { in checkOrderedReduction() argument
190 if (Kind == RecurKind::FAdd && Exit->getOpcode() != Instruction::FAdd) in checkOrderedReduction()
194 !RecurrenceDescriptor::isFMulAddIntrinsic(Exit)) in checkOrderedReduction()
198 if (Exit != ExactFPMathInst || Exit->hasNUsesOrMore(3)) in checkOrderedReduction()
203 auto *Op0 = Exit->getOperand(0); in checkOrderedReduction()
204 auto *Op1 = Exit->getOperand(1); in checkOrderedReduction()
207 if (Kind == RecurKind::FMulAdd && Exit->getOperand(2) != Phi) in checkOrderedReduction()
211 << ", ExitInst: " << *Exit << "\n"); in checkOrderedReduction()