Update to libffi-3.4.4

This commit is contained in:
DJ Delorie 2022-11-09 18:14:52 -05:00
parent 94901f4732
commit 09778f4c43
4 changed files with 9 additions and 34 deletions

1
.gitignore vendored
View File

@ -4,3 +4,4 @@ libffi-3.0.9.tar.gz
/libffi-3.0.13.tar.gz
/libffi-3.1.tar.gz
/libffi-3.4.2.tar.gz
/libffi-3.4.4.tar.gz

View File

@ -1,26 +0,0 @@
From 83ce80f3194bbf95c39764d075b070389c0f8522 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Dan=20Hor=C3=A1k?= <dan@danny.cz>
Date: Mon, 31 Jan 2022 09:21:53 +0000
Subject: [PATCH] powerpc64: fix handling of homogeneous float128 structs
If there is a homogeneous struct with float128 members, they should be
copied to vector register save area. The current code incorrectly copies
only the value of the first member, not increasing the pointer with each
iteration. Fix this.
---
src/powerpc/ffi_linux64.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/powerpc/ffi_linux64.c b/src/powerpc/ffi_linux64.c
index 4d50878e4..3454dacd3 100644
--- a/src/powerpc/ffi_linux64.c
+++ b/src/powerpc/ffi_linux64.c
@@ -680,7 +680,7 @@ ffi_prep_args64 (extended_cif *ecif, unsigned long *const stack)
{
if (vecarg_count < NUM_VEC_ARG_REGISTERS64
&& i < nfixedargs)
- memcpy (vec_base.f128++, arg.f128, sizeof (float128));
+ memcpy (vec_base.f128++, arg.f128++, sizeof (float128));
else
memcpy (next_arg.f128, arg.f128++, sizeof (float128));
if (++next_arg.f128 == gpr_end.f128)

View File

@ -3,19 +3,16 @@
%global multilib_arches %{ix86} x86_64
Name: libffi
Version: 3.4.2
Release: 9%{?dist}
Version: 3.4.4
Release: 1%{?dist}
Summary: A portable foreign function interface library
License: MIT
URL: http://sourceware.org/libffi
Source0: https://github.com/libffi/libffi/releases/download/v3.4.2/libffi-3.4.2.tar.gz
Source0: https://github.com/libffi/libffi/releases/download/v3.4.4/libffi-3.4.4.tar.gz
Source1: ffi-multilib.h
Source2: ffitarget-multilib.h
# https://github.com/libffi/libffi/pull/689
Patch0: libffi-3.4.2-ppc.patch
BuildRequires: make
BuildRequires: gcc
%if %{without bootstrap}
@ -106,7 +103,7 @@ install -m644 %{SOURCE2} $RPM_BUILD_ROOT%{_includedir}/ffitarget.h
%license LICENSE
%doc README.md
%{_libdir}/libffi.so.8
%{_libdir}/libffi.so.8.1.0
%{_libdir}/libffi.so.8.1.2
%files devel
%{_libdir}/pkgconfig/*.pc
@ -116,6 +113,9 @@ install -m644 %{SOURCE2} $RPM_BUILD_ROOT%{_includedir}/ffitarget.h
%{_infodir}/libffi.info.*
%changelog
* Fri Oct 28 2022 DJ Delorie <dj@redhat.com> - 3.4.4-1
- Rebase to libffi 3.4.4.
* Thu Jul 21 2022 Fedora Release Engineering <releng@fedoraproject.org> - 3.4.2-9
- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild

View File

@ -1 +1 @@
SHA512 (libffi-3.4.2.tar.gz) = 31bad35251bf5c0adb998c88ff065085ca6105cf22071b9bd4b5d5d69db4fadf16cadeec9baca944c4bb97b619b035bb8279de8794b922531fddeb0779eb7fb1
SHA512 (libffi-3.4.4.tar.gz) = 88680aeb0fa0dc0319e5cd2ba45b4b5a340bc9b4bcf20b1e0613b39cd898f177a3863aa94034d8e23a7f6f44d858a53dcd36d1bb8dee13b751ef814224061889