[llvm-branch-commits] [clang] release/21.x: [Driver] Enable outline atomics for OpenBSD/aarch64 (#155713) (PR #155759)

via llvm-branch-commits llvm-branch-commits at lists.llvm.org
Thu Aug 28 07:53:44 PDT 2025


https://github.com/llvmbot updated https://github.com/llvm/llvm-project/pull/155759

>From 48fec617d6ff956599707f5742887197f30d826e Mon Sep 17 00:00:00 2001
From: Brad Smith <brad at comstyle.com>
Date: Thu, 28 Aug 2025 02:02:25 -0400
Subject: [PATCH] [Driver] Enable outline atomics for OpenBSD/aarch64 (#155713)

(cherry picked from commit 5d774ec8d183cbbb243c57f50d891822211d3ec2)
---
 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 llvm-branch-commits mailing list