diff mbox series

libffi: upgrade to 3.4.5

Message ID 20240216104649.2127572-1-ross.burton@arm.com
State Accepted, archived
Commit e3ea7c0ae99171ebaa273f0a1f6d4fa49ed1b257
Headers show
Series libffi: upgrade to 3.4.5 | expand

Commit Message

Ross Burton Feb. 16, 2024, 10:46 a.m. UTC
From: Ross Burton <ross.burton@arm.com>

Drop the clang/VFP patch, merged in 00116b6.

Drop the FILES for ${libdir}/libffi-${PV}, this file isn't installed.

License-Update: Copyright year updated to 2024.

Signed-off-by: Ross Burton <ross.burton@arm.com>
---
 ...m-sysv-reverted-clang-VFP-mitigation.patch | 102 ------------------
 .../{libffi_3.4.4.bb => libffi_3.4.5.bb}      |   8 +-
 2 files changed, 3 insertions(+), 107 deletions(-)
 delete mode 100644 meta/recipes-support/libffi/libffi/0001-arm-sysv-reverted-clang-VFP-mitigation.patch
 rename meta/recipes-support/libffi/{libffi_3.4.4.bb => libffi_3.4.5.bb} (82%)
diff mbox series

Patch

diff --git a/meta/recipes-support/libffi/libffi/0001-arm-sysv-reverted-clang-VFP-mitigation.patch b/meta/recipes-support/libffi/libffi/0001-arm-sysv-reverted-clang-VFP-mitigation.patch
deleted file mode 100644
index 3ffcb3e128e..00000000000
--- a/meta/recipes-support/libffi/libffi/0001-arm-sysv-reverted-clang-VFP-mitigation.patch
+++ /dev/null
@@ -1,102 +0,0 @@ 
-From 000f1500b693a84880d2da49b77b1113f98dde35 Mon Sep 17 00:00:00 2001
-From: Brett Warren <brett.warren@arm.com>
-Date: Fri, 27 Nov 2020 15:28:42 +0000
-Subject: [PATCH] arm/sysv: reverted clang VFP mitigation
-
-Since commit e3d2812ce43940aacae5bab2d0e965278cb1e7ea,
-seperate instructions were used when compiling under clang,
-as clang didn't allow the directives at the time. This mitigation
-now causes compilation to fail under clang 10, as described by
-https://github.com/libffi/libffi/issues/607. Now that
-clang supports the LDC and SDC instructions, this mitigation
-has been reverted.
-
-Upstream-Status: Submitted [https://github.com/libffi/libffi/pull/747]
-Signed-off-by: Brett Warren <brett.warren@arm.com>
-
----
- src/arm/sysv.S | 33 ---------------------------------
- 1 file changed, 33 deletions(-)
-
-diff --git a/src/arm/sysv.S b/src/arm/sysv.S
-index fb36213..e4272a1 100644
---- a/src/arm/sysv.S
-+++ b/src/arm/sysv.S
-@@ -142,13 +142,8 @@ ARM_FUNC_START(ffi_call_VFP)
- 
- 	cmp	r3, #3			@ load only d0 if possible
- 	ite	le
--#ifdef __clang__
--	vldrle d0, [r0]
--	vldmgt r0, {d0-d7}
--#else
- 	ldcle	p11, cr0, [r0]		@ vldrle d0, [r0]
- 	ldcgt	p11, cr0, [r0], {16}	@ vldmgt r0, {d0-d7}
--#endif
- 	add	r0, r0, #64		@ discard the vfp register args
- 	/* FALLTHRU */
- ARM_FUNC_END(ffi_call_VFP)
-@@ -193,25 +188,13 @@ ARM_FUNC_START(ffi_call_SYSV)
- #endif
- 0:
- E(ARM_TYPE_VFP_S)
--#ifdef __clang__
--	vstr s0, [r2]
--#else
- 	stc	p10, cr0, [r2]		@ vstr s0, [r2]
--#endif
- 	pop	{fp,pc}
- E(ARM_TYPE_VFP_D)
--#ifdef __clang__
--	vstr d0, [r2]
--#else
- 	stc	p11, cr0, [r2]		@ vstr d0, [r2]
--#endif
- 	pop	{fp,pc}
- E(ARM_TYPE_VFP_N)
--#ifdef __clang__
--	vstm r2, {d0-d3}
--#else
- 	stc	p11, cr0, [r2], {8}	@ vstm r2, {d0-d3}
--#endif
- 	pop	{fp,pc}
- E(ARM_TYPE_INT64)
- 	str	r1, [r2, #4]
-@@ -320,11 +303,7 @@ ARM_FUNC_START(ffi_closure_VFP)
- 	add	ip, sp, #16
- 	sub	sp, sp, #64+32			@ allocate frame
- 	cfi_adjust_cfa_offset(64+32)
--#ifdef __clang__
--	vstm sp, {d0-d7}
--#else
- 	stc	p11, cr0, [sp], {16}		@ vstm sp, {d0-d7}
--#endif
- 	stmdb	sp!, {ip,lr}
- 
- 	/* See above.  */
-@@ -358,25 +337,13 @@ ARM_FUNC_START_LOCAL(ffi_closure_ret)
- 	cfi_rel_offset(lr, 4)
- 0:
- E(ARM_TYPE_VFP_S)
--#ifdef __clang__
--	vldr s0, [r2]
--#else
- 	ldc	p10, cr0, [r2]			@ vldr s0, [r2]
--#endif
- 	b	call_epilogue
- E(ARM_TYPE_VFP_D)
--#ifdef __clang__
--	vldr d0, [r2]
--#else
- 	ldc	p11, cr0, [r2]			@ vldr d0, [r2]
--#endif
- 	b	call_epilogue
- E(ARM_TYPE_VFP_N)
--#ifdef __clang__
--	vldm r2, {d0-d3}
--#else
- 	ldc	p11, cr0, [r2], {8}		@ vldm r2, {d0-d3}
--#endif
- 	b	call_epilogue
- E(ARM_TYPE_INT64)
- 	ldr	r1, [r2, #4]
diff --git a/meta/recipes-support/libffi/libffi_3.4.4.bb b/meta/recipes-support/libffi/libffi_3.4.5.bb
similarity index 82%
rename from meta/recipes-support/libffi/libffi_3.4.4.bb
rename to meta/recipes-support/libffi/libffi_3.4.5.bb
index 15d974c83e8..be96c894e2d 100644
--- a/meta/recipes-support/libffi/libffi_3.4.4.bb
+++ b/meta/recipes-support/libffi/libffi_3.4.5.bb
@@ -8,25 +8,23 @@  library really only provides the lowest, machine dependent layer of a fully feat
 A layer must exist above `libffi' that handles type conversions for values passed between the two languages."
 
 LICENSE = "MIT"
-LIC_FILES_CHKSUM = "file://LICENSE;md5=32c0d09a0641daf4903e5d61cc8f23a8"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=1db54c9fd307a12218766c3c7f650ca7"
 
 SRC_URI = "${GITHUB_BASE_URI}/download/v${PV}/${BPN}-${PV}.tar.gz \
            file://not-win32.patch \
-           file://0001-arm-sysv-reverted-clang-VFP-mitigation.patch \
            "
-SRC_URI[sha256sum] = "d66c56ad259a82cf2a9dfc408b32bf5da52371500b84745f7fb8b645712df676"
+SRC_URI[sha256sum] = "96fff4e589e3b239d888d9aa44b3ff30693c2ba1617f953925a70ddebcc102b2"
 
 EXTRA_OECONF += "--disable-builddir --disable-exec-static-tramp"
 EXTRA_OECONF:class-native += "--with-gcc-arch=generic"
 EXTRA_OEMAKE:class-target = "LIBTOOLFLAGS='--tag=CC'"
+
 inherit autotools texinfo multilib_header github-releases
 
 do_install:append() {
 	oe_multilib_header ffi.h ffitarget.h
 }
 
-FILES:${PN}-dev += "${libdir}/libffi-${PV}"
-
 # Doesn't compile in MIPS16e mode due to use of hand-written
 # assembly
 MIPS_INSTRUCTION_SET = "mips"