[llvm-branch-commits] [flang] [llvm] [flang][OpenMP] Don't treat different runtime conditions as subsets (PR #233493)
via llvm-branch-commits
llvm-branch-commits at lists.llvm.org
Wed Oct 21 19:47:52 PDT 2026
================
@@ -2579,6 +2585,24 @@ std::optional<MetadirectiveCandidateSet> BuildMetadirectiveCandidateSet(
return spec.DirId() == llvm::omp::Directive::OMPD_nothing ? nullptr : &spec;
};
+ // Identify each distinct runtime condition, so that different conditions
+ // are not strict subsets of each other.
+ llvm::SmallVector<SomeExpr, 4> runtimeConditions;
+ auto getConditionKey = [&](const DynamicUserCondition &condition) {
+ const SomeExpr *expr{GetExpr(context, *condition.expr)};
+ if (!expr ||
+ evaluate::IsActuallyConstant(
----------------
MattPD wrote:
I confirmed that Flang now selects unconditional TASKYIELD for both examples.
https://github.com/llvm/llvm-project/pull/233493
More information about the llvm-branch-commits
mailing list