================
@@ -11899,6 +11899,9 @@ def err_omp_clause_requires_dispatch_construct : Error<
"'%0' clause requires 'dispatch' context selector">;
def err_omp_append_args_with_varargs : Error<
"'append_args' is not allowed with varargs functions">;
+def warn_omp_dispatch_clause_novariants_nocontext : Warning<
----------------
SunilKuravinakop wrote:
In case of :
```
#pragma omp declare variant(foo_variant2) match(user={condition(1)})
#pragma omp declare variant(foo_variant) match(construct={dispatch})
void foo(int x) {
}
#pragma omp dispatch nocontext(c1)
```
the code generated in the if-else is:
```
if(c1) {
foo_variant2(x)
} else {
foo_variant(x)
}
```
whereas for `#pragma omp dispatch novariantc2)` it is
```
if(c2) {
foo(x)
} else {
foo_variant(x)
}
```
There is a difference in the code generate at `if` . Hence I cannot use `c1 ||
c2`.
https://github.com/llvm/llvm-project/pull/131838
_______________________________________________
cfe-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits