[clang] [llvm] [OpenMP] Introduce the ompx_name clause for kernel naming (PR #200301)

via cfe-commits cfe-commits at lists.llvm.org
Fri May 29 18:49:37 PDT 2026


github-actions[bot] wrote:

<!--LLVM CODE FORMAT COMMENT: {clang-format}-->


:warning: C/C++ code formatter, clang-format found issues in your code. :warning:

<details>
<summary>
You can test this locally with the following command:
</summary>

``````````bash
git-clang-format --diff origin/main HEAD --extensions h,c,cpp -- clang/test/OpenMP/ompx_name_codegen.cpp clang/test/OpenMP/ompx_name_messages_errors.cpp offload/test/offloading/ompx_name.c offload/test/offloading/ompx_name_duplicate_link.c clang/include/clang/AST/OpenMPClause.h clang/include/clang/AST/RecursiveASTVisitor.h clang/include/clang/Sema/SemaOpenMP.h clang/lib/AST/OpenMPClause.cpp clang/lib/AST/StmtProfile.cpp clang/lib/CodeGen/CGOpenMPRuntime.cpp clang/lib/Parse/ParseOpenMP.cpp clang/lib/Sema/SemaOpenMP.cpp clang/lib/Sema/TreeTransform.h clang/lib/Serialization/ASTReader.cpp clang/lib/Serialization/ASTWriter.cpp clang/test/OpenMP/amdgcn_weak_alias.c clang/test/OpenMP/declare_target_codegen.cpp clang/test/OpenMP/target_codegen.cpp clang/test/OpenMP/target_depend_codegen.cpp clang/test/OpenMP/target_indirect_codegen.cpp clang/test/OpenMP/target_parallel_depend_codegen.cpp clang/test/OpenMP/target_parallel_for_depend_codegen.cpp clang/test/OpenMP/target_parallel_for_simd_depend_codegen.cpp clang/test/OpenMP/target_simd_codegen.cpp clang/test/OpenMP/target_simd_depend_codegen.cpp clang/test/OpenMP/target_teams_depend_codegen.cpp clang/test/OpenMP/target_teams_distribute_depend_codegen.cpp clang/test/OpenMP/target_teams_distribute_parallel_for_depend_codegen.cpp clang/test/OpenMP/target_teams_distribute_parallel_for_simd_depend_codegen.cpp clang/test/OpenMP/target_teams_distribute_simd_depend_codegen.cpp clang/tools/libclang/CIndex.cpp llvm/include/llvm/Frontend/Offloading/Utility.h llvm/include/llvm/Frontend/OpenMP/OMPIRBuilder.h llvm/lib/Frontend/Offloading/Utility.cpp llvm/lib/Frontend/OpenMP/OMPIRBuilder.cpp --diff_from_common_commit
``````````

:warning:
The reproduction instructions above might return results for more than one PR
in a stack if you are using a stacked PR workflow. You can limit the results by
changing `origin/main` to the base branch/commit you want to compare against.
:warning:

</details>

<details>
<summary>
View the diff from clang-format here.
</summary>

``````````diff
diff --git a/llvm/include/llvm/Frontend/Offloading/Utility.h b/llvm/include/llvm/Frontend/Offloading/Utility.h
index 6e8002a2c..b681e8bb5 100644
--- a/llvm/include/llvm/Frontend/Offloading/Utility.h
+++ b/llvm/include/llvm/Frontend/Offloading/Utility.h
@@ -91,11 +91,10 @@ LLVM_ABI StructType *getEntryTy(Module &M);
 LLVM_ABI StringRef getOffloadEntrySection(Module &M);
 
 /// \return The emitted global variable containing the offloading entry.
-LLVM_ABI GlobalVariable *
-emitOffloadingEntry(Module &M, object::OffloadKind Kind, Constant *Addr,
-                    StringRef Name, uint64_t Size, uint32_t Flags,
-                    uint64_t Data, Constant *AuxAddr = nullptr, 
-                    GlobalValue::LinkageTypes Linkage = GlobalValue::WeakAnyLinkage);
+LLVM_ABI GlobalVariable *emitOffloadingEntry(
+    Module &M, object::OffloadKind Kind, Constant *Addr, StringRef Name,
+    uint64_t Size, uint32_t Flags, uint64_t Data, Constant *AuxAddr = nullptr,
+    GlobalValue::LinkageTypes Linkage = GlobalValue::WeakAnyLinkage);
 
 /// Create a constant struct initializer used to register this global at
 /// runtime.
diff --git a/llvm/lib/Frontend/Offloading/Utility.cpp b/llvm/lib/Frontend/Offloading/Utility.cpp
index 3787f0cda..bec13d67b 100644
--- a/llvm/lib/Frontend/Offloading/Utility.cpp
+++ b/llvm/lib/Frontend/Offloading/Utility.cpp
@@ -114,11 +114,11 @@ GlobalVariable *offloading::emitOffloadingEntry(
 
   StringRef Prefix =
       Triple.isNVPTX() ? "$offloading$entry$" : ".offloading.entry.";
-  auto *Entry = new GlobalVariable(
-      M, getEntryTy(M),
-      /*isConstant=*/true, Linkage, EntryInitializer,
-      Prefix + Name, nullptr, GlobalValue::NotThreadLocal,
-      M.getDataLayout().getDefaultGlobalsAddressSpace());
+  auto *Entry =
+      new GlobalVariable(M, getEntryTy(M),
+                         /*isConstant=*/true, Linkage, EntryInitializer,
+                         Prefix + Name, nullptr, GlobalValue::NotThreadLocal,
+                         M.getDataLayout().getDefaultGlobalsAddressSpace());
 
   // The entry has to be created in the section the linker expects it to be.
   if (Triple.isOSBinFormatCOFF())
diff --git a/llvm/lib/Frontend/OpenMP/OMPIRBuilder.cpp b/llvm/lib/Frontend/OpenMP/OMPIRBuilder.cpp
index 1dc9796a1..aab8ec0c5 100644
--- a/llvm/lib/Frontend/OpenMP/OMPIRBuilder.cpp
+++ b/llvm/lib/Frontend/OpenMP/OMPIRBuilder.cpp
@@ -11791,7 +11791,8 @@ void OpenMPIRBuilder::createOffloadEntry(Constant *ID, Constant *Addr,
   if (!Config.isGPU()) {
     llvm::offloading::emitOffloadingEntry(
         M, object::OffloadKind::OFK_OpenMP, ID,
-        Name.empty() ? Addr->getName() : Name, Size, Flags, /*Data=*/0, /*AuxAddr*/nullptr, Linkage);
+        Name.empty() ? Addr->getName() : Name, Size, Flags, /*Data=*/0,
+        /*AuxAddr*/ nullptr, Linkage);
     return;
   }
   // TODO: Add support for global variables on the device after declare target
diff --git a/offload/test/offloading/ompx_name_duplicate_link.c b/offload/test/offloading/ompx_name_duplicate_link.c
index ae80ca3ab..044cb7b80 100644
--- a/offload/test/offloading/ompx_name_duplicate_link.c
+++ b/offload/test/offloading/ompx_name_duplicate_link.c
@@ -1,6 +1,7 @@
 // RUN: %libomptarget-compile-generic -DFIRST -c -o %t.first.o
 // RUN: %libomptarget-compile-generic -DSECOND -c -o %t.second.o
-// RUN: not %clang-generic %t.second.o %t.first.o -o %t 2>&1 | %fcheck-plain-generic %s
+// RUN: not %clang-generic %t.second.o %t.first.o -o %t 2>&1 |
+// %fcheck-plain-generic %s
 //
 // REQUIRES: gpu
 //
@@ -12,7 +13,9 @@
 void first(void) {
   int x = 0;
 #pragma omp target ompx_name("duplicate_link_kernel") map(tofrom : x)
-  { x = 1; }
+  {
+    x = 1;
+  }
   printf("x: %i\n", x);
 }
 #endif
@@ -21,7 +24,9 @@ void first(void) {
 void second(void) {
   int x = 0;
 #pragma omp target ompx_name("duplicate_link_kernel") map(tofrom : x)
-  { x = 2; }
+  {
+    x = 2;
+  }
   printf("x: %i\n", x);
 }
 

``````````

</details>


https://github.com/llvm/llvm-project/pull/200301


More information about the cfe-commits mailing list