Lines Matching refs:BOI
32 static bool bundleHasArgument(const CallBase::BundleOpInfo &BOI, unsigned Idx) {
33 return BOI.End - BOI.Begin > Idx;
37 const CallBase::BundleOpInfo &BOI,
39 assert(bundleHasArgument(BOI, Idx) && "index out of range");
40 return (Assume.op_begin() + BOI.Begin + Idx)->get();
53 for (auto &BOI : Assume.bundle_op_infos()) {
54 if (BOI.Tag->getKey() != AttrName)
56 if (IsOn && (BOI.End - BOI.Begin <= ABA_WasOn ||
57 IsOn != getValueFromBundleOpInfo(Assume, BOI, ABA_WasOn)))
60 assert(BOI.End - BOI.Begin > ABA_Argument);
62 cast<ConstantInt>(getValueFromBundleOpInfo(Assume, BOI, ABA_Argument))
100 const CallBase::BundleOpInfo &BOI) {
105 Result.AttrKind = Attribute::getAttrKindFromName(BOI.Tag->getKey());
106 if (bundleHasArgument(BOI, ABA_WasOn))
107 Result.WasOn = getValueFromBundleOpInfo(Assume, BOI, ABA_WasOn);
110 getValueFromBundleOpInfo(Assume, BOI, ABA_Argument + Idx)))
114 if (BOI.End - BOI.Begin > ABA_Argument)
117 if (BOI.End - BOI.Begin > ABA_Argument + 1)
124 CallBase::BundleOpInfo BOI = Assume.getBundleOpInfoForOperand(Idx);
125 return getKnowledgeFromBundle(Assume, BOI);
130 [](const CallBase::BundleOpInfo &BOI) {
131 return BOI.Tag->getKey() != IgnoreBundleTag;