[llvm] [LLVM-C] Upstream `LLVMBuildAtomicLoad/Store` from rustc (PR #162450)

via llvm-commits llvm-commits at lists.llvm.org
Wed Oct 8 03:20:47 PDT 2025


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,cpp -- llvm/include/llvm-c/Core.h llvm/lib/IR/Core.cpp llvm/unittests/IR/InstructionsTest.cpp
``````````

: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-c/Core.h b/llvm/include/llvm-c/Core.h
index b0f7b4c40..941875509 100644
--- a/llvm/include/llvm-c/Core.h
+++ b/llvm/include/llvm-c/Core.h
@@ -4914,9 +4914,11 @@ LLVM_C_ABI LLVMValueRef LLVMBuildAtomicCmpXchgSyncScope(
  * @see llvm::IRBuilder::CreateLoad()
  * @see llvm::LoadInst::setAtomic()
  */
-LLVM_C_ABI LLVMValueRef LLVMBuildAtomicLoad(
-    LLVMBuilderRef B, LLVMTypeRef Ty, LLVMValueRef Source, const char *Name,
-    LLVMAtomicOrdering Order, LLVMBool SingleThread);
+LLVM_C_ABI LLVMValueRef LLVMBuildAtomicLoad(LLVMBuilderRef B, LLVMTypeRef Ty,
+                                            LLVMValueRef Source,
+                                            const char *Name,
+                                            LLVMAtomicOrdering Order,
+                                            LLVMBool SingleThread);
 
 /**
  * Builds an atomic store instruction.
@@ -4927,11 +4929,10 @@ LLVM_C_ABI LLVMValueRef LLVMBuildAtomicLoad(
  * @see llvm::IRBuilder::CreateStore()
  * @see llvm::StoreInst::setAtomic()
  */
-LLVM_C_ABI LLVMValueRef LLVMBuildAtomicStore(LLVMBuilderRef B,
-                                                 LLVMValueRef V,
-                                                 LLVMValueRef Target,
-                                                 LLVMAtomicOrdering Order,
-                                                 LLVMBool SingleThread);
+LLVM_C_ABI LLVMValueRef LLVMBuildAtomicStore(LLVMBuilderRef B, LLVMValueRef V,
+                                             LLVMValueRef Target,
+                                             LLVMAtomicOrdering Order,
+                                             LLVMBool SingleThread);
 
 /**
  * Get the number of elements in the mask of a ShuffleVector instruction.
diff --git a/llvm/lib/IR/Core.cpp b/llvm/lib/IR/Core.cpp
index 7fcc7ae63..aaccdd4a4 100644
--- a/llvm/lib/IR/Core.cpp
+++ b/llvm/lib/IR/Core.cpp
@@ -4451,9 +4451,8 @@ LLVMValueRef LLVMBuildAtomicLoad(LLVMBuilderRef B, LLVMTypeRef Ty,
 }
 
 LLVMValueRef LLVMBuildAtomicStore(LLVMBuilderRef B, LLVMValueRef V,
-                                      LLVMValueRef Target,
-                                      LLVMAtomicOrdering Order,
-                                      LLVMBool SingleThread) {
+                                  LLVMValueRef Target, LLVMAtomicOrdering Order,
+                                  LLVMBool SingleThread) {
   StoreInst *SI = unwrap(B)->CreateStore(unwrap(V), unwrap(Target));
   SI->setAtomic(mapFromLLVMOrdering(Order),
                 SingleThread ? SyncScope::SingleThread : SyncScope::System);

``````````

</details>


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


More information about the llvm-commits mailing list