diff mbox series

[1/4] libffi: upgrade 3.7.1 -> 3.8.0

Message ID 20260809202935.1904858-1-richard.purdie@linuxfoundation.org
State Under Review
Headers show
Series [1/4] libffi: upgrade 3.7.1 -> 3.8.0 | expand

Commit Message

Richard Purdie Aug. 9, 2026, 8:29 p.m. UTC
3.8.0 August-8-2026
    Add FFI_TYPE_VECTOR (SIMD) type support with libffi-computed
      layout, for aarch64 and x86-64 (#1000, closes #773).
    Add ffi_call_plan_size to report the total memory a reusable call
      plan owns, for embedders that account for the memory held by
      long-lived plans.
    Add powerpc64 ELFv2 _Complex long double support for both
      IBM-128 (double-double) and IEEE-128 formats (#1003, closes #1001).
    Fix powerpc64 big-endian ELFv2 closures returning 5-, 6-, or
      7-byte structs: missing return jump-table entries produced a
      wrong result and leaked a libffi code pointer.
    Fix ia64 return-value jump-table desync after the FFI_TYPE_LAST
      bump, which corrupted small-struct and HFA returns.
    Fix powerpc Darwin closure returns broken by #951 (#1002).
    Return small (1, 2, 4 or 8 byte) structs in registers on the i386
      FreeBSD and OpenBSD targets, matching the platform ABI and
      fixing a segfault on struct returns through ffi_call and closures.
    Cache the static trampoline "unsupported" result on hosts whose
      page size exceeds the trampoline table mapping, avoiding
      redundant re-initialization on every closure allocation
      (e.g. 64K-page aarch64).

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
---
 meta/recipes-support/libffi/libffi/not-win32.patch            | 4 ++--
 .../libffi/{libffi_3.7.1.bb => libffi_3.8.0.bb}               | 2 +-
 2 files changed, 3 insertions(+), 3 deletions(-)
 rename meta/recipes-support/libffi/{libffi_3.7.1.bb => libffi_3.8.0.bb} (94%)
diff mbox series

Patch

diff --git a/meta/recipes-support/libffi/libffi/not-win32.patch b/meta/recipes-support/libffi/libffi/not-win32.patch
index 1f77db2fe03..8808f502fba 100644
--- a/meta/recipes-support/libffi/libffi/not-win32.patch
+++ b/meta/recipes-support/libffi/libffi/not-win32.patch
@@ -1,4 +1,4 @@ 
-From 3b0ec51416b341cdb681796bd52dfe86d0d9bea0 Mon Sep 17 00:00:00 2001
+From 4f0da02754f86ec1aa38b2207872386b19605ec1 Mon Sep 17 00:00:00 2001
 From: Ross Burton <ross.burton@intel.com>
 Date: Thu, 4 Feb 2016 16:22:50 +0000
 Subject: [PATCH] libffi: ensure sysroot paths are not in libffi.pc
@@ -20,7 +20,7 @@  Signed-off-by: Ross Burton <ross.burton@intel.com>
  1 file changed, 1 insertion(+), 1 deletion(-)
 
 diff --git a/configure.ac b/configure.ac
-index 3370acc..2f96c6f 100644
+index 826b453..54a41d8 100644
 --- a/configure.ac
 +++ b/configure.ac
 @@ -429,7 +429,7 @@ AC_ARG_ENABLE(multi-os-directory,
diff --git a/meta/recipes-support/libffi/libffi_3.7.1.bb b/meta/recipes-support/libffi/libffi_3.8.0.bb
similarity index 94%
rename from meta/recipes-support/libffi/libffi_3.7.1.bb
rename to meta/recipes-support/libffi/libffi_3.8.0.bb
index e9afb7eb7c5..583b1431579 100644
--- a/meta/recipes-support/libffi/libffi_3.7.1.bb
+++ b/meta/recipes-support/libffi/libffi_3.8.0.bb
@@ -13,7 +13,7 @@  LIC_FILES_CHKSUM = "file://LICENSE;md5=5e9a8df556846bb3d1edec0d968a2311"
 SRC_URI = "${GITHUB_BASE_URI}/download/v${PV}/${BPN}-${PV}.tar.gz \
            file://not-win32.patch \
            "
-SRC_URI[sha256sum] = "d5e9a6638ddbd2513ddb54518eb67e4bbe6fa707bcc01c10f6212f0a088d819d"
+SRC_URI[sha256sum] = "7da3e2d9a171eb0a038f592ecad3ff2bb2550f3496d87b3b29ad0cf4430c0db4"
 
 EXTRA_OECONF = "--disable-builddir"
 EXTRA_OECONF:class-native += "--with-gcc-arch=generic"