Lines Matching refs:Assume
36 static Value *getValueFromBundleOpInfo(AssumeInst &Assume, in getValueFromBundleOpInfo() argument
40 return (Assume.op_begin() + BOI.Begin + Idx)->get(); in getValueFromBundleOpInfo()
43 bool llvm::hasAttributeInAssume(AssumeInst &Assume, Value *IsOn, in hasAttributeInAssume() argument
50 if (Assume.bundle_op_infos().empty()) in hasAttributeInAssume()
53 for (auto &BOI : Assume.bundle_op_infos()) { in hasAttributeInAssume()
57 IsOn != getValueFromBundleOpInfo(Assume, BOI, ABA_WasOn))) in hasAttributeInAssume()
62 cast<ConstantInt>(getValueFromBundleOpInfo(Assume, BOI, ABA_Argument)) in hasAttributeInAssume()
70 void llvm::fillMapFromAssume(AssumeInst &Assume, RetainedKnowledgeMap &Result) { in fillMapFromAssume() argument
71 for (auto &Bundles : Assume.bundle_op_infos()) { in fillMapFromAssume()
75 Key.first = getValueFromBundleOpInfo(Assume, Bundles, ABA_WasOn); in fillMapFromAssume()
80 Result[Key][&Assume] = {0, 0}; in fillMapFromAssume()
84 getValueFromBundleOpInfo(Assume, Bundles, ABA_Argument)); in fillMapFromAssume()
89 if (Lookup == Result.end() || !Lookup->second.count(&Assume)) { in fillMapFromAssume()
90 Result[Key][&Assume] = {Val, Val}; in fillMapFromAssume()
93 Lookup->second[&Assume].Min = std::min(Val, Lookup->second[&Assume].Min); in fillMapFromAssume()
94 Lookup->second[&Assume].Max = std::max(Val, Lookup->second[&Assume].Max); in fillMapFromAssume()
99 llvm::getKnowledgeFromBundle(AssumeInst &Assume, in getKnowledgeFromBundle() argument
104 Result.WasOn = getValueFromBundleOpInfo(Assume, BOI, ABA_WasOn); in getKnowledgeFromBundle()
107 getValueFromBundleOpInfo(Assume, BOI, ABA_Argument + Idx))) in getKnowledgeFromBundle()
119 RetainedKnowledge llvm::getKnowledgeFromOperandInAssume(AssumeInst &Assume, in getKnowledgeFromOperandInAssume() argument
121 CallBase::BundleOpInfo BOI = Assume.getBundleOpInfoForOperand(Idx); in getKnowledgeFromOperandInAssume()
122 return getKnowledgeFromBundle(Assume, BOI); in getKnowledgeFromOperandInAssume()
125 bool llvm::isAssumeWithEmptyBundle(AssumeInst &Assume) { in isAssumeWithEmptyBundle() argument
126 return none_of(Assume.bundle_op_infos(), in isAssumeWithEmptyBundle()
165 auto *II = cast_or_null<AssumeInst>(Elem.Assume); in getKnowledgeForValue()