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>
-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
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,
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"