@@ -482,7 +482,7 @@ RECIPE_MAINTAINER:pn-linux-yocto-tiny = "Bruce Ashfield <bruce.ashfield@gmail.co
RECIPE_MAINTAINER:pn-lld = "Khem Raj <raj.khem@gmail.com>"
RECIPE_MAINTAINER:pn-lldb = "Khem Raj <raj.khem@gmail.com>"
RECIPE_MAINTAINER:pn-llvm = "Khem Raj <raj.khem@gmail.com>"
-RECIPE_MAINTAINER:pn-llvm-project-source-23.1.0 = "Khem Raj <raj.khem@gmail.com>"
+RECIPE_MAINTAINER:pn-llvm-project-source-23.1.1 = "Khem Raj <raj.khem@gmail.com>"
RECIPE_MAINTAINER:pn-llvm-tblgen-native = "Khem Raj <raj.khem@gmail.com>"
RECIPE_MAINTAINER:pn-log4cplus = "Unassigned <unassigned@yoctoproject.org>"
RECIPE_MAINTAINER:pn-logrotate = "Yi Zhao <yi.zhao@windriver.com>"
@@ -7,7 +7,7 @@ musl driver will need to add ssp_nonshared for stack_check_local
on the linker cmdline when using stack protector commands on
compiler cmdline
-Upstream-Status: Pending
+Upstream-Status: Backport [https://github.com/llvm/llvm-project/commit/bf9e7e8d773b]
Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
clang/lib/Driver/ToolChains/Gnu.cpp | 6 ++++++
deleted file mode 100644
@@ -1,36 +0,0 @@
-From: Sunil Dora <sunilkumar.dora@windriver.com>
-Date: Fri, 29 Aug 2026 13:55:00 +0530
-Subject: [PATCH] libc: Disable float16 on 32-bit x86 without SSE2
-
-GCC 16 defines __FLT16_MANT_DIG__ when targeting i686 even though
-_Float16 is only usable on x86-32 with SSE2 enabled. The float16
-detection in float16-macros.h keys on that macro, so the shared f16
-math headers are compiled on plain i686 and every use of _Float16
-fails:
-
- libc/src/__support/FPUtil/BasicOperations.h:63:67:
- error: SSE register return with SSE2 disabled
- libc/src/__support/math/acosf16.h:73:14:
- error: invalid conversion from type '_Float16' without option '-msse2'
-
-Since llvm/lib/Support/APFloat.cpp started including shared/math.h,
-this breaks the LLVM build itself for 32-bit x86 baselines older than
-SSE2 (e.g. -march=pentiumpro), as used by Yocto/OpenEmbedded multilib.
-
-Require SSE2 on 32-bit x86 in the guard, matching the existing
-exclusions for 32-bit Arm and RISC-V. Targets with SSE2 are unaffected.
-
-Upstream-Status: Backport [https://github.com/llvm/llvm-project/commit/05da143c63d333420b99eab198e1a89c97480929]
-Signed-off-by: Sunil Dora <sunilkumar.dora@windriver.com>
----
---- a/libc/include/llvm-libc-macros/float16-macros.h 2026-08-29 13:55:04.771442947 +0530
-+++ b/libc/include/llvm-libc-macros/float16-macros.h 2026-08-29 13:55:04.773991812 +0530
-@@ -15,7 +15,7 @@
- (!defined(__GNUC__) || __GNUC__ >= 13 || \
- (defined(__clang__) && __clang_major__ >= 12)) && \
- !defined(__arm__) && !defined(_M_ARM) && !defined(__riscv) && \
-- !defined(_WIN32)
-+ !defined(_WIN32) && (!defined(__i386__) || defined(__SSE2__))
- #define LIBC_TYPES_HAS_FLOAT16
-
- // TODO: This would no longer be required if HdrGen let us guard function
@@ -5,7 +5,7 @@ LLVM_HTTP ?= "https://github.com/llvm"
MAJOR_VER = "23"
MINOR_VER = "1"
-PATCH_VER = "0"
+PATCH_VER = "1"
# could be 'rcX' or 'git' or empty ( for release )
VER_SUFFIX = ""
@@ -17,7 +17,7 @@ BASEURI ?= "${LLVM_HTTP}/llvm-project/releases/download/llvmorg-${PV}${VER_SUFFI
UPSTREAM_CHECK_URI = "${LLVM_HTTP}/llvm-project/releases/"
UPSTREAM_CHECK_REGEX = "releases/tag/llvmorg-?(?P<pver>\d+(\.\d+)+)"
SOURCEDIR ?= "llvm-project-${PV}${VER_SUFFIX}.src"
-SRC_URI[sha256sum] = "ab1f0e3ec52448c33e8782eaf0422504b87c7b016b22514653ee0d8fcee479ff"
+SRC_URI[sha256sum] = "ebe9be46fe8756d58c5b198ffad0fa2a766257add81a4dc52179bfacc7888ee6"
SRC_URI = "\
${BASEURI} \
@@ -55,7 +55,6 @@ SRC_URI = "\
file://0032-llvm-libgcc-Fix-symlink-path-for-libcc-when-LLVM_ENA.patch \
file://0033-Consolidate-and-fix-sysroot-based-compiler-rt-search.patch \
file://0034-guard-clang-tools-extra-test.patch \
- file://0035-libc-Disable-float16-on-32-bit-x86-without-SSE2.patch \
"
# Fallback to no-PIE if not set
GCCPIE ??= ""