================
@@ -0,0 +1,30 @@
+! RUN: bbc -emit-hlfir -fopenmp -fopenmp-version=50 -o - %s 2>&1 | FileCheck %s
+! RUN: %flang_fc1 -emit-hlfir -fopenmp -fopenmp-version=50 -o - %s 2>&1 | 
FileCheck %s
----------------
MattPD wrote:

Both new `.f90` tests stop at `-emit-hlfir`, and the MLIR-translation tests use 
the same SSA value for both the `in_reduction` operand and the map `var_ptr`. 
As a result, the Flang -> translation seam this PR adds isn't covered end to 
end. Real Flang emits the `in_reduction` operand from `hlfir.declare ...#0` and 
the map from `var_ptr(...#1)` (CHECK lines 17-18), and `convertOmpTarget` pairs 
them by exact SSA-value identity. That works today only because the two 
`hlfir.declare` results collapse to one value for trivial scalars. If that 
collapse stops holding, or support widens past scalars, valid Fortran would 
become a hard `... must also be captured by a matching map_entries entry` error 
with no test to catch the regression. Would it be worth adding a `%flang_fc1 
-emit-llvm -fopenmp -fopenmp-version=50` RUN, nested in a `taskgroup 
task_reduction`, that checks the `__kmpc_task_reduction_get_th_data(..., ptr 
null, ...)` call and the redirected load/store?

https://github.com/llvm/llvm-project/pull/199967
_______________________________________________
llvm-branch-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits

Reply via email to