Hi! On 2023-06-13T23:52:25+0800, Chung-Lin Tang via Gcc-patches wrote: > This patch implements the compiler side for the 'self' clause for compute constructs: > parallel, kernels, and serial. > > As you know, the actual "local device" device type for libgomp is not yet implemented, > so the libgomp side is basically just a simple duplicate of what host-fallback is doing, Thanks, and ACK. > though everything else should be completed by this patch. What also is missing is allowing nested OpenACC compute constructs, which GCC currently rejects. (Just removing the nesting restriction isn't sufficient, I think: will also have to think about explicit/implicit data (and other?) clauses in nested compute constructs, for example, so this doesn't seem entirely trivial to implement.) I'm fine to defer that item until actual multicore CPU "device" support emerges (for avoidance of doubt: we're not currently working on that). > Tested on powerpc64le-linux/nvptx, x64_64-linux/amdgcn tests pending. > Is this okay for trunk? With minor textual conflicts resolved, I've pushed this to master branch in commit 3a3596389c2e539cb8fd5dc5784a4e2afe193a2a "OpenACC 2.7: Implement self clause for compute constructs", see attached. I'll then apply/submit a number of follow-on commits. Grüße Thomas ----------------- Siemens Electronic Design Automation GmbH; Anschrift: Arnulfstraße 201, 80634 München; Gesellschaft mit beschränkter Haftung; Geschäftsführer: Thomas Heurung, Frank Thürauf; Sitz der Gesellschaft: München; Registergericht München, HRB 106955