From c652ec939740c1a1166efe041a89b70eee18eabb Mon Sep 17 00:00:00 2001 From: Sam Fuller Date: Thu, 7 May 2026 17:13:48 +0000 Subject: [PATCH] Include AArch64 SME builtins to compiler-rt for Bazel. Include the AArch64 SME (Scalable Matrix Extension) source files in the compiler-rt builtins library when targeting aarch64. --- utils/bazel/llvm-project-overlay/compiler-rt/BUILD.bazel | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/utils/bazel/llvm-project-overlay/compiler-rt/BUILD.bazel b/utils/bazel/llvm-project-overlay/compiler-rt/BUILD.bazel index 946f23e1c2ed9..67e179fd60179 100644 --- a/utils/bazel/llvm-project-overlay/compiler-rt/BUILD.bazel +++ b/utils/bazel/llvm-project-overlay/compiler-rt/BUILD.bazel @@ -242,6 +242,14 @@ filegroup( ] + glob(["lib/builtins/aarch64/sme-libc-opt-*.S"]), ) +filegroup( + name = "builtins_aarch64_sme_os_srcs", + srcs = select({ + "@platforms//os:macos": [":builtins_aarch64_apple_sme_srcs"], + "//conditions:default": [":builtins_aarch64_sme_srcs"], + }), +) + # A list of (pat, size, model) tuples for AArch64's outline atomics. AARCH64_OUTLINE_ATOMICS = [ (pat, size, model) @@ -292,6 +300,7 @@ filegroup( srcs = [ "lib/builtins/cpu_model/aarch64.c", "lib/builtins/cpu_model/aarch64.h", + ":builtins_aarch64_sme_os_srcs", ] + [ AARCH64_OUTLINE_ATOMICS_FMT.format(pat, size, model) for (pat, size, model) in AARCH64_OUTLINE_ATOMICS