[all-commits] [llvm/llvm-project] 1d94f5: [clang][OpenMP] Emit lastprivate final copies in n...

Nicole Aschenbrenner via All-commits all-commits at lists.llvm.org
Wed Sep 16 07:55:49 PDT 2026


  Branch: refs/heads/users/nicebert/clang-openmp-no-loop-lastprivate
  Home:   https://github.com/llvm/llvm-project
  Commit: 1d94f59e9b9f5bf50d1ae443f88c907c0319a0fa
      https://github.com/llvm/llvm-project/commit/1d94f59e9b9f5bf50d1ae443f88c907c0319a0fa
  Author: Nicole Aschenbrenner <nicole.aschenbrenner at amd.com>
  Date:   2026-09-16 (Wed, 16 Sep 2026)

  Changed paths:
    M clang/lib/CodeGen/CGOpenMPRuntimeGPU.cpp
    M clang/lib/CodeGen/CGStmtOpenMP.cpp
    M clang/test/OpenMP/target_no_loop.c
    M offload/test/offloading/target-no-loop.c

  Log Message:
  -----------
  [clang][OpenMP] Emit lastprivate final copies in no-loop kernels

Promotion rejected lastprivate because the no-loop branch leaves the
worksharing path before it privatizes or copies out, so the clause would
have been silently dropped.

Privatize the non-counter variables in the parallel region and copy them
out under the last iteration that applyWorkshareLoop publishes, forcing
the exit barrier the copy reads through. Loop counters stay at the
distribute level and reach EmitOMPSimdFinal.



To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications


More information about the All-commits mailing list