[clang] [Driver] Enable outline atomics for OpenBSD/aarch64 (PR #155713)

Brad Smith via cfe-commits cfe-commits at lists.llvm.org
Wed Aug 27 16:09:37 PDT 2025


https://github.com/brad0 updated https://github.com/llvm/llvm-project/pull/155713

>From 13c3479ac3b8b13b2d2829c6ad9b77e736e77b9f Mon Sep 17 00:00:00 2001
From: Brad Smith <brad at comstyle.com>
Date: Wed, 27 Aug 2025 18:50:41 -0400
Subject: [PATCH] [Driver] Enable outline atomics for OpenBSD/aarch64

---
 clang/lib/Driver/ToolChains/OpenBSD.h | 5 +++++
 clang/test/Driver/aarch64-features.c  | 2 +-
 2 files changed, 6 insertions(+), 1 deletion(-)

diff --git a/clang/lib/Driver/ToolChains/OpenBSD.h b/clang/lib/Driver/ToolChains/OpenBSD.h
index 11b873cb30032..ad0f9e6799568 100644
--- a/clang/lib/Driver/ToolChains/OpenBSD.h
+++ b/clang/lib/Driver/ToolChains/OpenBSD.h
@@ -79,6 +79,11 @@ class LLVM_LIBRARY_VISIBILITY OpenBSD : public Generic_ELF {
   void AddCXXStdlibLibArgs(const llvm::opt::ArgList &Args,
                            llvm::opt::ArgStringList &CmdArgs) const override;
 
+  bool IsAArch64OutlineAtomicsDefault(
+      const llvm::opt::ArgList &Args) const override {
+    return true;
+  }
+
   std::string getCompilerRT(const llvm::opt::ArgList &Args, StringRef Component,
                             FileType Type = ToolChain::FT_Static,
                             bool IsFortran = false) const override;
diff --git a/clang/test/Driver/aarch64-features.c b/clang/test/Driver/aarch64-features.c
index d2075c91314a8..05dd3bf39fae3 100644
--- a/clang/test/Driver/aarch64-features.c
+++ b/clang/test/Driver/aarch64-features.c
@@ -45,7 +45,7 @@
 // RUN: -### -c %s 2>&1 | FileCheck -check-prefix=CHECK-OUTLINE-ATOMICS-OFF %s
 
 // RUN: %clang --target=aarch64-unknown-openbsd -rtlib=compiler-rt \
-// RUN: -### -c %s 2>&1 | FileCheck -check-prefix=CHECK-OUTLINE-ATOMICS-OFF %s
+// RUN: -### -c %s 2>&1 | FileCheck -check-prefix=CHECK-OUTLINE-ATOMICS-ON %s
 
 // RUN: %clang --target=aarch64-linux-gnu -rtlib=libgcc \
 // RUN: --gcc-toolchain=%S/Inputs/aarch64-linux-gnu-tree/gcc-10 \



More information about the cfe-commits mailing list