Lines Matching refs:VMI
146 const VariantMatchInfo &VMI, const OMPContext &Ctx, in isVariantApplicableInContextHelper() argument
156 if (VMI.RequiredTraits.test( in isVariantApplicableInContextHelper()
159 if (VMI.RequiredTraits.test( in isVariantApplicableInContextHelper()
195 for (unsigned Bit : VMI.RequiredTraits.set_bits()) { in isVariantApplicableInContextHelper()
212 IsActiveTrait = llvm::all_of(VMI.ISATraits, [&](StringRef RawString) { in isVariantApplicableInContextHelper()
224 for (TraitProperty Property : VMI.ConstructTraits) { in isVariantApplicableInContextHelper()
249 assert(isSubset<TraitProperty>(VMI.ConstructTraits, Ctx.ConstructTraits) && in isVariantApplicableInContextHelper()
263 bool llvm::omp::isVariantApplicableInContext(const VariantMatchInfo &VMI, in isVariantApplicableInContext() argument
267 VMI, Ctx, /* ConstructMatches */ nullptr, DeviceSetOnly); in isVariantApplicableInContext()
270 static APInt getVariantMatchScore(const VariantMatchInfo &VMI, in getVariantMatchScore() argument
275 unsigned NoConstructTraits = VMI.ConstructTraits.size(); in getVariantMatchScore()
276 for (unsigned Bit : VMI.RequiredTraits.set_bits()) { in getVariantMatchScore()
279 if (VMI.ScoreMap.count(Property)) { in getVariantMatchScore()
280 const APInt &UserScore = VMI.ScoreMap.lookup(Property); in getVariantMatchScore()
326 for (TraitProperty Property : VMI.ConstructTraits) { in getVariantMatchScore()
348 const VariantMatchInfo &VMI = VMIs[u]; in getBestVariantMatchForContext() local
352 if (!isVariantApplicableInContextHelper(VMI, Ctx, &ConstructMatches, in getBestVariantMatchForContext()
356 APInt Score = getVariantMatchScore(VMI, Ctx, ConstructMatches); in getBestVariantMatchForContext()
362 if (isStrictSubset(VMI, *BestVMI)) in getBestVariantMatchForContext()
365 if (!isStrictSubset(*BestVMI, VMI)) in getBestVariantMatchForContext()
369 BestVMI = &VMI; in getBestVariantMatchForContext()