[all-commits] [llvm/llvm-project] 56c523: [OpenMP] Use ext linkage for kernels handles and g...

Johannes Doerfert via All-commits all-commits at lists.llvm.org
Tue Jun 9 15:27:28 PDT 2026


  Branch: refs/heads/users/jdoerfert/openmp_handle_linkage
  Home:   https://github.com/llvm/llvm-project
  Commit: 56c523e296c47c8eb92b35801956382f2763928c
      https://github.com/llvm/llvm-project/commit/56c523e296c47c8eb92b35801956382f2763928c
  Author: Johannes Doerfert <johannes at jdoerfert.de>
  Date:   2026-06-09 (Tue, 09 Jun 2026)

  Changed paths:
    M clang/test/OpenMP/amdgcn_weak_alias.c
    M clang/test/OpenMP/declare_target_codegen.cpp
    M clang/test/OpenMP/target_codegen.cpp
    M clang/test/OpenMP/target_depend_codegen.cpp
    M clang/test/OpenMP/target_indirect_codegen.cpp
    M clang/test/OpenMP/target_parallel_depend_codegen.cpp
    M clang/test/OpenMP/target_parallel_for_depend_codegen.cpp
    M clang/test/OpenMP/target_parallel_for_simd_depend_codegen.cpp
    M clang/test/OpenMP/target_simd_codegen.cpp
    M clang/test/OpenMP/target_simd_depend_codegen.cpp
    M clang/test/OpenMP/target_teams_depend_codegen.cpp
    M clang/test/OpenMP/target_teams_distribute_depend_codegen.cpp
    M clang/test/OpenMP/target_teams_distribute_parallel_for_depend_codegen.cpp
    M clang/test/OpenMP/target_teams_distribute_parallel_for_simd_depend_codegen.cpp
    M clang/test/OpenMP/target_teams_distribute_simd_depend_codegen.cpp
    M llvm/include/llvm/Frontend/Offloading/Utility.h
    M llvm/lib/Frontend/Offloading/Utility.cpp
    M llvm/lib/Frontend/OpenMP/OMPIRBuilder.cpp
    M mlir/test/Target/LLVMIR/omptarget-declare-target-llvm-host.mlir
    M mlir/test/Target/LLVMIR/omptarget-declare-target-to-host.mlir

  Log Message:
  -----------
  [OpenMP] Use ext linkage for kernels handles and globals handles keep linkage

Host handles are now emmitted with external linkage to clash if two
kernels with the same name are registered. This could have happen right
now and silently corrupt the program, but it can happen more easily once
we allow users to name their kernels.

In the same patch we make global variable handles retain the linkage of
the global variable, forcing clashes for external ones and continue to
support weak use cases. The exception is common linkage, which we
transform into weak for the entry as there is no zero initialization.



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