Lines Matching refs:ArgumentConstants
86 SmallVector<std::pair<Constant*, bool>, 16> ArgumentConstants; in PropagateConstantsIntoArguments() local
87 ArgumentConstants.resize(F.arg_size()); in PropagateConstantsIntoArguments()
108 for (unsigned i = 0, e = ArgumentConstants.size(); i != e; in PropagateConstantsIntoArguments()
112 if (ArgumentConstants[i].second) in PropagateConstantsIntoArguments()
116 if (C && ArgumentConstants[i].first == nullptr) { in PropagateConstantsIntoArguments()
117 ArgumentConstants[i].first = C; // First constant seen. in PropagateConstantsIntoArguments()
118 } else if (C && ArgumentConstants[i].first == C) { in PropagateConstantsIntoArguments()
125 if (++NumNonconstant == ArgumentConstants.size()) in PropagateConstantsIntoArguments()
127 ArgumentConstants[i].second = true; in PropagateConstantsIntoArguments()
133 assert(NumNonconstant != ArgumentConstants.size()); in PropagateConstantsIntoArguments()
136 for (unsigned i = 0, e = ArgumentConstants.size(); i != e; ++i, ++AI) { in PropagateConstantsIntoArguments()
138 if (ArgumentConstants[i].second || AI->use_empty() || in PropagateConstantsIntoArguments()
142 Value *V = ArgumentConstants[i].first; in PropagateConstantsIntoArguments()