public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
* [gentoo-commits] repo/gentoo:master commit in: dev-libs/libffi/files/
@ 2020-05-21  8:22 Sergei Trofimovich
  0 siblings, 0 replies; 4+ messages in thread
From: Sergei Trofimovich @ 2020-05-21  8:22 UTC (permalink / raw
  To: gentoo-commits

commit:     e565f33ed9589a3711de4e2112cee40391c9ee9d
Author:     Michael Mair-Keimberger <m.mairkeimberger <AT> gmail <DOT> com>
AuthorDate: Wed May 20 15:32:38 2020 +0000
Commit:     Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
CommitDate: Thu May 21 08:22:43 2020 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e565f33e

dev-libs/libffi: remove unused patches

Package-Manager: Portage-2.3.99, Repoman-2.3.22
Signed-off-by: Michael Mair-Keimberger <m.mairkeimberger <AT> gmail.com>
Signed-off-by: Sergei Trofimovich <slyfox <AT> gentoo.org>

 dev-libs/libffi/files/libffi-3.1-darwin-x32.patch  | 22 -----
 .../libffi/files/libffi-3.2.1-complex-ia64.patch   | 41 ----------
 .../libffi/files/libffi-3.2.1-complex_alpha.patch  | 20 -----
 .../files/libffi-3.2.1-ia64-small-struct.patch     | 74 -----------------
 .../files/libffi-3.2.1-include-path-autogen.patch  | 56 -------------
 .../libffi/files/libffi-3.2.1-include-path.patch   | 39 ---------
 .../libffi/files/libffi-3.2.1-musl-emutramp.patch  | 31 --------
 .../files/libffi-3.3_rc0-hppa-no-TEXTREL.patch     | 93 ----------------------
 8 files changed, 376 deletions(-)

diff --git a/dev-libs/libffi/files/libffi-3.1-darwin-x32.patch b/dev-libs/libffi/files/libffi-3.1-darwin-x32.patch
deleted file mode 100644
index e5f100e5672..00000000000
--- a/dev-libs/libffi/files/libffi-3.1-darwin-x32.patch
+++ /dev/null
@@ -1,22 +0,0 @@
-https://bugs.gentoo.org/show_bug.cgi?id=513428
-https://bugs.gentoo.org/show_bug.cgi?id=536764
-https://trac.macports.org/ticket/44170
-
---- libffi-3.2.1/src/x86/win32.S
-+++ libffi-3.2.1/src/x86/win32.S
-@@ -1184,7 +1184,6 @@
- 
- #if defined(X86_WIN32) && !defined(__OS2__)
-         .section	.eh_frame,"w"
--#endif
- .Lframe1:
- .LSCIE1:
-         .long	.LECIE1-.LASCIE1  /* Length of Common Information Entry */
-@@ -1343,6 +1342,7 @@
-         /* End of DW_CFA_xxx CFI instructions.  */
-         .align 4
- .LEFDE5:
-+#endif /* defined(X86_WIN32) && !defined(__OS2__), for the eh_frame */
- 
- #endif /* !_MSC_VER */
- 

diff --git a/dev-libs/libffi/files/libffi-3.2.1-complex-ia64.patch b/dev-libs/libffi/files/libffi-3.2.1-complex-ia64.patch
deleted file mode 100644
index fd5c1ea4b28..00000000000
--- a/dev-libs/libffi/files/libffi-3.2.1-complex-ia64.patch
+++ /dev/null
@@ -1,41 +0,0 @@
-ia64: fix small struct handling (missing complex type entry)
-
-commit 6e8a4460833594d5af1b4539178025da0077df19
-added FFI_TYPE_COMPLEX value type (comes after FFI_TYPE_POINTER)
-
-ia64 ffi_closure_unix reiles on the ordering of
-types as ia64 has ia64-specific FFI types:
-small struct and others.
-
-As a result all tests handling small structs broke.
-
-The change fixes dispatch table by ignoring FFI_TYPE_COMPLEX.
-This has positive effect of unbreaking most tests:
-
-                 === libffi Summary ===
- 
--# of expected passes            1595
--# of unexpected failures        295
-+# of expected passes            1930
-+# of unexpected failures        10
- # of unsupported tests          30
-
-Bug: https://bugs.gentoo.org/634190
---- a/src/ia64/unix.S
-+++ b/src/ia64/unix.S
-@@ -529,6 +529,7 @@ ffi_closure_unix:
- 	data8	@pcrel(.Lst_int64)		// FFI_TYPE_SINT64
- 	data8	@pcrel(.Lst_void)		// FFI_TYPE_STRUCT
- 	data8	@pcrel(.Lst_int64)		// FFI_TYPE_POINTER
-+	data8	@pcrel(.Lst_void)		// FFI_TYPE_COMPLEX (not implemented)
- 	data8 	@pcrel(.Lst_small_struct)	// FFI_IA64_TYPE_SMALL_STRUCT
- 	data8	@pcrel(.Lst_hfa_float)		// FFI_IA64_TYPE_HFA_FLOAT
- 	data8	@pcrel(.Lst_hfa_double)		// FFI_IA64_TYPE_HFA_DOUBLE
-@@ -550,6 +551,7 @@ ffi_closure_unix:
- 	data8	@pcrel(.Lld_int)		// FFI_TYPE_SINT64
- 	data8	@pcrel(.Lld_void)		// FFI_TYPE_STRUCT
- 	data8	@pcrel(.Lld_int)		// FFI_TYPE_POINTER
-+	data8	@pcrel(.Lld_void)		// FFI_TYPE_COMPLEX (not implemented)
- 	data8 	@pcrel(.Lld_small_struct)	// FFI_IA64_TYPE_SMALL_STRUCT
- 	data8	@pcrel(.Lld_hfa_float)		// FFI_IA64_TYPE_HFA_FLOAT
- 	data8	@pcrel(.Lld_hfa_double)		// FFI_IA64_TYPE_HFA_DOUBLE

diff --git a/dev-libs/libffi/files/libffi-3.2.1-complex_alpha.patch b/dev-libs/libffi/files/libffi-3.2.1-complex_alpha.patch
deleted file mode 100644
index 5e8c943eee3..00000000000
--- a/dev-libs/libffi/files/libffi-3.2.1-complex_alpha.patch
+++ /dev/null
@@ -1,20 +0,0 @@
---- a/src/alpha/osf.S.orig	2015-01-16 10:46:15.000000000 +0100
-+++ b/src/alpha/osf.S	2015-01-16 10:46:24.000000000 +0100
-@@ -279,6 +279,7 @@
- 	.gprel32 $load_64	# FFI_TYPE_SINT64
- 	.gprel32 $load_none	# FFI_TYPE_STRUCT
- 	.gprel32 $load_64	# FFI_TYPE_POINTER
-+	.gprel32 $load_none	# FFI_TYPE_COMPLEX
- 
- /* Assert that the table above is in sync with ffi.h.  */
- 
-@@ -294,7 +295,8 @@
- 	|| FFI_TYPE_SINT64 != 12	\
- 	|| FFI_TYPE_STRUCT != 13	\
- 	|| FFI_TYPE_POINTER != 14	\
--	|| FFI_TYPE_LAST != 14
-+	|| FFI_TYPE_COMPLEX != 15       \
-+	|| FFI_TYPE_LAST != 15
- #error "osf.S out of sync with ffi.h"
- #endif
- 

diff --git a/dev-libs/libffi/files/libffi-3.2.1-ia64-small-struct.patch b/dev-libs/libffi/files/libffi-3.2.1-ia64-small-struct.patch
deleted file mode 100644
index 6e21f3566bc..00000000000
--- a/dev-libs/libffi/files/libffi-3.2.1-ia64-small-struct.patch
+++ /dev/null
@@ -1,74 +0,0 @@
-From b58caef7fd620408be9239ac24ea89d5bc84f30b Mon Sep 17 00:00:00 2001
-From: Sergei Trofimovich <slyfox@gentoo.org>
-Date: Sat, 17 Feb 2018 19:00:40 +0000
-Subject: [PATCH 2/2] ia64: fix small struct return
-
-This change fixes libffi.call/struct10.c failure on ia64:
-FAIL: libffi.call/struct10.c -W -Wall -Wno-psabi -O0 execution test
-
-.Lst_small_struct handles returns for structs less than 32 bytes
-(following ia64 return value ABI [1]). Subroutine does roughly the
-following:
-
-```
-    mov [sp+0]  = r8
-    mov [sp+8]  = r9
-    mov [sp+16] = r10
-    mov [sp+24] = r11
-    memcpy(destination, source=sp, 12);
-```
-
-The problem: ia64 ABI guarantees that top 16 bytes of stack are
-scratch space for callee function. Thus it can clobber it. [1]
-says (7.1 Procedure Frames):
-"""
-* Scratch area. This 16-byte region is provided as scratch storage
-  for procedures that are called by the current procedure. Leaf
-  procedures do not need to allocate this region. A procedure may
-  use the 16 bytes at the top of its own frame as scratch memory,
-  but the contents of this area are not preserved by a procedure call.
-"""
-
-In our case 16 top bytes are clobbered by a PLT resolver when memcpy()
-is called for the first time. As a result memcpy implementation reads
-already clobbered data frop top of stack.
-
-The fix is simple: allocate 16 bytes of scrats space prior to memcpy()
-call.
-
-[1]: https://www.intel.com/content/dam/www/public/us/en/documents/guides/itanium-software-runtime-architecture-guide.pdf
-
-Bug: https://bugs.gentoo.org/634190
-Signed-off-by: Sergei Trofimovich <slyfox@gentoo.org>
----
- src/ia64/unix.S | 7 ++++++-
- 1 file changed, 6 insertions(+), 1 deletion(-)
-
-diff --git a/src/ia64/unix.S b/src/ia64/unix.S
-index 4733377..e2547e0 100644
---- a/src/ia64/unix.S
-+++ b/src/ia64/unix.S
-@@ -175,7 +175,6 @@ ffi_call_unix:
- 	;;
- 
- .Lst_small_struct:
--	add	sp = -16, sp
- 	cmp.lt	p6, p0 = 8, in3
- 	cmp.lt	p7, p0 = 16, in3
- 	cmp.lt	p8, p0 = 24, in3
-@@ -191,6 +190,12 @@ ffi_call_unix:
- (p8)	st8	[r18] = r11
- 	mov	out1 = sp
- 	mov	out2 = in3
-+	;;
-+	// ia64 software calling convention requires
-+	// top 16 bytes of stack to be scratch space
-+	// PLT resolver uses that scratch space at
-+	// 'memcpy' symbol reolution time
-+	add	sp = -16, sp
- 	br.call.sptk.many b0 = memcpy#
- 	;;
- 	mov	ar.pfs = loc0
--- 
-2.16.1
-

diff --git a/dev-libs/libffi/files/libffi-3.2.1-include-path-autogen.patch b/dev-libs/libffi/files/libffi-3.2.1-include-path-autogen.patch
deleted file mode 100644
index 522e1fa9c48..00000000000
--- a/dev-libs/libffi/files/libffi-3.2.1-include-path-autogen.patch
+++ /dev/null
@@ -1,56 +0,0 @@
-Autogenerated part of libffi-3.2.1-include-path.patch
-
-https://bugs.gentoo.org/643582
-diff --git a/include/Makefile.in b/include/Makefile.in
-index 9d747e8..99ecfd7 100644
---- a/include/Makefile.in
-+++ b/include/Makefile.in
-@@ -152,2 +152,2 @@ am__uninstall_files_from_dir = { \
--am__installdirs = "$(DESTDIR)$(includesdir)"
--HEADERS = $(nodist_includes_HEADERS)
-+am__installdirs = "$(DESTDIR)$(includedir)"
-+HEADERS = $(nodist_include_HEADERS)
-@@ -317,2 +317 @@ EXTRA_DIST = ffi.h.in ffi_common.h
--includesdir = $(libdir)/@PACKAGE_NAME@-@PACKAGE_VERSION@/include
--nodist_includes_HEADERS = ffi.h ffitarget.h
-+nodist_include_HEADERS = ffi.h ffitarget.h
-@@ -360 +359 @@ clean-libtool:
--install-nodist_includesHEADERS: $(nodist_includes_HEADERS)
-+install-nodist_includeHEADERS: $(nodist_include_HEADERS)
-@@ -362 +361 @@ install-nodist_includesHEADERS: $(nodist_includes_HEADERS)
--	@list='$(nodist_includes_HEADERS)'; test -n "$(includesdir)" || list=; \
-+	@list='$(nodist_include_HEADERS)'; test -n "$(includedir)" || list=; \
-@@ -364,2 +363,2 @@ install-nodist_includesHEADERS: $(nodist_includes_HEADERS)
--	  echo " $(MKDIR_P) '$(DESTDIR)$(includesdir)'"; \
--	  $(MKDIR_P) "$(DESTDIR)$(includesdir)" || exit 1; \
-+	  echo " $(MKDIR_P) '$(DESTDIR)$(includedir)'"; \
-+	  $(MKDIR_P) "$(DESTDIR)$(includedir)" || exit 1; \
-@@ -372,2 +371,2 @@ install-nodist_includesHEADERS: $(nodist_includes_HEADERS)
--	  echo " $(INSTALL_HEADER) $$files '$(DESTDIR)$(includesdir)'"; \
--	  $(INSTALL_HEADER) $$files "$(DESTDIR)$(includesdir)" || exit $$?; \
-+	  echo " $(INSTALL_HEADER) $$files '$(DESTDIR)$(includedir)'"; \
-+	  $(INSTALL_HEADER) $$files "$(DESTDIR)$(includedir)" || exit $$?; \
-@@ -376 +375 @@ install-nodist_includesHEADERS: $(nodist_includes_HEADERS)
--uninstall-nodist_includesHEADERS:
-+uninstall-nodist_includeHEADERS:
-@@ -378 +377 @@ uninstall-nodist_includesHEADERS:
--	@list='$(nodist_includes_HEADERS)'; test -n "$(includesdir)" || list=; \
-+	@list='$(nodist_include_HEADERS)'; test -n "$(includedir)" || list=; \
-@@ -380 +379 @@ uninstall-nodist_includesHEADERS:
--	dir='$(DESTDIR)$(includesdir)'; $(am__uninstall_files_from_dir)
-+	dir='$(DESTDIR)$(includedir)'; $(am__uninstall_files_from_dir)
-@@ -468 +467 @@ installdirs:
--	for dir in "$(DESTDIR)$(includesdir)"; do \
-+	for dir in "$(DESTDIR)$(includedir)"; do \
-@@ -522 +521 @@ info-am:
--install-data-am: install-nodist_includesHEADERS
-+install-data-am: install-nodist_includeHEADERS
-@@ -566 +565 @@ ps-am:
--uninstall-am: uninstall-nodist_includesHEADERS
-+uninstall-am: uninstall-nodist_includeHEADERS
-@@ -577 +576 @@ uninstall-am: uninstall-nodist_includesHEADERS
--	install-nodist_includesHEADERS install-pdf install-pdf-am \
-+	install-nodist_includeHEADERS install-pdf install-pdf-am \
-@@ -582 +581 @@ uninstall-am: uninstall-nodist_includesHEADERS
--	uninstall-am uninstall-nodist_includesHEADERS
-+	uninstall-am uninstall-nodist_includeHEADERS

diff --git a/dev-libs/libffi/files/libffi-3.2.1-include-path.patch b/dev-libs/libffi/files/libffi-3.2.1-include-path.patch
deleted file mode 100644
index e1269b2398a..00000000000
--- a/dev-libs/libffi/files/libffi-3.2.1-include-path.patch
+++ /dev/null
@@ -1,39 +0,0 @@
-https://bugs.gentoo.org/643582
-
-From 982b89c01aca99c7bc229914fc1521f96930919b Mon Sep 17 00:00:00 2001
-From: Yen Chi Hsuan <yan12125@gmail.com>
-Date: Sun, 13 Nov 2016 19:17:19 +0800
-Subject: [PATCH] Install public headers in the standard path
-
----
- include/Makefile.am | 3 +--
- libffi.pc.in        | 2 +-
- 2 files changed, 2 insertions(+), 3 deletions(-)
-
-diff --git a/include/Makefile.am b/include/Makefile.am
-index bb241e8..c59df9f 100644
---- a/include/Makefile.am
-+++ b/include/Makefile.am
-@@ -6,5 +6,4 @@ DISTCLEANFILES=ffitarget.h
- noinst_HEADERS=ffi_common.h ffi_cfi.h
- EXTRA_DIST=ffi.h.in
- 
--includesdir = $(libdir)/@PACKAGE_NAME@-@PACKAGE_VERSION@/include
--nodist_includes_HEADERS = ffi.h ffitarget.h
-+nodist_include_HEADERS = ffi.h ffitarget.h
-diff --git a/libffi.pc.in b/libffi.pc.in
-index edf6fde..6fad83b 100644
---- a/libffi.pc.in
-+++ b/libffi.pc.in
-@@ -2,7 +2,7 @@ prefix=@prefix@
- exec_prefix=@exec_prefix@
- libdir=@libdir@
- toolexeclibdir=@toolexeclibdir@
--includedir=${libdir}/@PACKAGE_NAME@-@PACKAGE_VERSION@/include
-+includedir=@includedir@
- 
- Name: @PACKAGE_NAME@
- Description: Library supporting Foreign Function Interfaces
--- 
-2.15.1
-

diff --git a/dev-libs/libffi/files/libffi-3.2.1-musl-emutramp.patch b/dev-libs/libffi/files/libffi-3.2.1-musl-emutramp.patch
deleted file mode 100644
index 7c011d2b6d0..00000000000
--- a/dev-libs/libffi/files/libffi-3.2.1-musl-emutramp.patch
+++ /dev/null
@@ -1,31 +0,0 @@
-https://github.com/libffi/libffi/commit/e169ba2b83c780058fe626856cfdb5903a85cb97.patch
-https://bugs.gentoo.org/694916
-
-From e169ba2b83c780058fe626856cfdb5903a85cb97 Mon Sep 17 00:00:00 2001
-From: Kylie McClain <somasis@exherbo.org>
-Date: Fri, 29 Apr 2016 21:04:07 -0400
-Subject: [PATCH] Fix usage on musl libc
-
-A gcc compiled on musl does not define __gnu_linux__, it defines __linux__.
-Only on glibc does __gnu_linux__ get defined, but both define __linux__, so
-we should check for that instead.
-
-With this patch, libffi works perfectly, and passes its testsuite entirely
-on musl libc systems.
----
- src/closures.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/src/closures.c b/src/closures.c
-index 3dec0e31..05849e06 100644
---- a/src/closures.c
-+++ b/src/closures.c
-@@ -35,7 +35,7 @@
- #include <ffi_common.h>
- 
- #if !FFI_MMAP_EXEC_WRIT && !FFI_EXEC_TRAMPOLINE_TABLE
--# if __gnu_linux__ && !defined(__ANDROID__)
-+# if __linux__ && !defined(__ANDROID__)
- /* This macro indicates it may be forbidden to map anonymous memory
-    with both write and execute permission.  Code compiled when this
-    option is defined will attempt to map such pages once, but if it

diff --git a/dev-libs/libffi/files/libffi-3.3_rc0-hppa-no-TEXTREL.patch b/dev-libs/libffi/files/libffi-3.3_rc0-hppa-no-TEXTREL.patch
deleted file mode 100644
index c6286f34990..00000000000
--- a/dev-libs/libffi/files/libffi-3.3_rc0-hppa-no-TEXTREL.patch
+++ /dev/null
@@ -1,93 +0,0 @@
-From 955e3c56459556284cf4a7fb23c51f9d310be80c Mon Sep 17 00:00:00 2001
-From: Sergei Trofimovich <slyfox@gentoo.org>
-Date: Sat, 19 May 2018 10:49:07 +0100
-Subject: [PATCH] hppa: avoid TEXTREL in .eh_frame section
-
-Before the change hand-crafted .eh_frame section contained
-ABS relocation and caused TEXTREL tag to be emitted:
-
-```
-$ ./configure --host=hppa2.0-unknown-linux-gnu LDFLAGS=-Wl,-z,text
-$ make
-...
-/usr/libexec/gcc/hppa2.0-unknown-linux-gnu/ld:
-    read-only segment has dynamic relocations.
-```
-
-Link failure is caused by absolute address of FDEs
-encoded into .eh_frame entries.
-
-Fixed TEXTREL by using pcrel (instead of ABS) encoding
-for absolute addresses (__PIC__ code) by adding augmentation
-information ("zR" CIE type).
-
-All tests still pass on hppa2.0. The specific tests that still pass
-and exercise this code path:
-    testsuite/libffi.call/unwindtest.cc
-    testsuite/libffi.call/unwindtest_ffi_call.cc
-
-Signed-off-by: Sergei Trofimovich <slyfox@gentoo.org>
----
- src/pa/linux.S | 25 +++++++++++++++++++++++--
- 1 file changed, 23 insertions(+), 2 deletions(-)
-
-diff --git a/src/pa/linux.S b/src/pa/linux.S
-index f11ae76..ab04c75 100644
---- a/src/pa/linux.S
-+++ b/src/pa/linux.S
-@@ -297,10 +297,18 @@ ffi_closure_pa32:
- .LSCIE1:
- 	.word   0x0     ;# CIE Identifier Tag
- 	.byte   0x1     ;# CIE Version
-+#ifdef __PIC__
-+	.ascii  "zR\0"  ;# CIE Augmentation: 'z' - data, 'R' - DW_EH_PE_... data
-+#else
- 	.ascii "\0"     ;# CIE Augmentation
-+#endif
- 	.uleb128 0x1    ;# CIE Code Alignment Factor
- 	.sleb128 4      ;# CIE Data Alignment Factor
- 	.byte   0x2     ;# CIE RA Column
-+#ifdef __PIC__
-+	.uleb128 0x1    ;# Augmentation size
-+	.byte	0x1b    ;# FDE Encoding (DW_EH_PE_pcrel|DW_EH_PE_sdata4)
-+#endif
- 	.byte   0xc     ;# DW_CFA_def_cfa
- 	.uleb128 0x1e
- 	.uleb128 0x0
-@@ -310,9 +318,15 @@ ffi_closure_pa32:
- 	.word   .LEFDE1-.LASFDE1        ;# FDE Length
- .LASFDE1:
- 	.word   .LASFDE1-.Lframe1       ;# FDE CIE offset
--	.word   .LFB1   ;# FDE initial location
-+#ifdef __PIC__
-+	.word	.LFB1-. ;# FDE initial location
-+#else
-+	.word	.LFB1   ;# FDE initial location
-+#endif
- 	.word   .LFE1-.LFB1     ;# FDE address range
--
-+#ifdef __PIC__
-+	.uleb128 0x0	;# Augmentation size: no data
-+#endif
- 	.byte   0x4     ;# DW_CFA_advance_loc4
- 	.word   .LCFI11-.LFB1
- 	.byte	0x83	;# DW_CFA_offset, column 0x3
-@@ -338,8 +352,15 @@ ffi_closure_pa32:
- 	.word   .LEFDE2-.LASFDE2        ;# FDE Length
- .LASFDE2:
- 	.word   .LASFDE2-.Lframe1       ;# FDE CIE offset
-+#ifdef __PIC__
-+	.word   .LFB2-. ;# FDE initial location
-+#else
- 	.word   .LFB2   ;# FDE initial location
-+#endif
- 	.word   .LFE2-.LFB2     ;# FDE address range
-+#ifdef __PIC__
-+	.uleb128 0x0	;# Augmentation size: no data
-+#endif
- 	.byte   0x4     ;# DW_CFA_advance_loc4
- 	.word   .LCFI21-.LFB2
- 	.byte   0x83    ;# DW_CFA_offset, column 0x3
--- 
-2.19.0
-


^ permalink raw reply related	[flat|nested] 4+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: dev-libs/libffi/files/
@ 2024-10-16  4:52 Sam James
  0 siblings, 0 replies; 4+ messages in thread
From: Sam James @ 2024-10-16  4:52 UTC (permalink / raw
  To: gentoo-commits

commit:     bd856278b49657fe47f8404af7775f20e523fc2b
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Wed Oct 16 04:51:30 2024 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Wed Oct 16 04:51:30 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=bd856278

dev-libs/libffi: add bug reference to BTI patch

Added in 6521e1f5d4cceb00f082def621d7e28b7788b7f5. We backported
those patches as Fedora has to fix it.

Bug: https://github.com/libffi/libffi/issues/855
Signed-off-by: Sam James <sam <AT> gentoo.org>

 dev-libs/libffi/files/libffi-3.4.6-arm64-bti.patch | 1 +
 1 file changed, 1 insertion(+)

diff --git a/dev-libs/libffi/files/libffi-3.4.6-arm64-bti.patch b/dev-libs/libffi/files/libffi-3.4.6-arm64-bti.patch
index 66dc9f181b79..ad8a95ae506d 100644
--- a/dev-libs/libffi/files/libffi-3.4.6-arm64-bti.patch
+++ b/dev-libs/libffi/files/libffi-3.4.6-arm64-bti.patch
@@ -1,3 +1,4 @@
+https://github.com/libffi/libffi/issues/855
 https://github.com/libffi/libffi/commit/f64141ee3f9e455a060bd09e9ab72b6c94653d7c
 
 From f64141ee3f9e455a060bd09e9ab72b6c94653d7c Mon Sep 17 00:00:00 2001


^ permalink raw reply related	[flat|nested] 4+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: dev-libs/libffi/files/
@ 2024-10-16  4:54 Sam James
  0 siblings, 0 replies; 4+ messages in thread
From: Sam James @ 2024-10-16  4:54 UTC (permalink / raw
  To: gentoo-commits

commit:     d0aee3cb52376dfc0731ffb97e8d79716edf8313
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Wed Oct 16 04:52:36 2024 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Wed Oct 16 04:52:47 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=d0aee3cb

dev-libs/libffi: add bug ref for sparc patch

Bug: https://github.com/libffi/libffi/issues/841
Signed-off-by: Sam James <sam <AT> gentoo.org>

 dev-libs/libffi/files/libffi-3.4.6-sparc-struct-targs.patch | 1 +
 1 file changed, 1 insertion(+)

diff --git a/dev-libs/libffi/files/libffi-3.4.6-sparc-struct-targs.patch b/dev-libs/libffi/files/libffi-3.4.6-sparc-struct-targs.patch
index f5eebad9edd7..592e543f88ee 100644
--- a/dev-libs/libffi/files/libffi-3.4.6-sparc-struct-targs.patch
+++ b/dev-libs/libffi/files/libffi-3.4.6-sparc-struct-targs.patch
@@ -1,3 +1,4 @@
+https://github.com/libffi/libffi/issues/841
 https://github.com/libffi/libffi/commit/8e3ef965c2d0015ed129a06d0f11f30c2120a413
 
 From 8e3ef965c2d0015ed129a06d0f11f30c2120a413 Mon Sep 17 00:00:00 2001


^ permalink raw reply related	[flat|nested] 4+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: dev-libs/libffi/files/
@ 2025-06-03  1:32 Sam James
  0 siblings, 0 replies; 4+ messages in thread
From: Sam James @ 2025-06-03  1:32 UTC (permalink / raw
  To: gentoo-commits

commit:     e2c1356661ad67b2362703a7592451cbdfda9c11
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Tue Jun  3 00:50:19 2025 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Tue Jun  3 01:31:36 2025 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e2c13566

dev-libs/libffi: drop unused patches

Signed-off-by: Sam James <sam <AT> gentoo.org>

 dev-libs/libffi/files/libffi-3.4.6-tests.patch   | 104 -------------------
 dev-libs/libffi/files/libffi-3.4.6-x86-sse.patch | 124 -----------------------
 2 files changed, 228 deletions(-)

diff --git a/dev-libs/libffi/files/libffi-3.4.6-tests.patch b/dev-libs/libffi/files/libffi-3.4.6-tests.patch
deleted file mode 100644
index e24d01f4c028..000000000000
--- a/dev-libs/libffi/files/libffi-3.4.6-tests.patch
+++ /dev/null
@@ -1,104 +0,0 @@
-https://github.com/libffi/libffi/commit/efb98a72d8b9bdb71b4f972efced073bee3b30fc
-https://github.com/libffi/libffi/commit/92d384df196a099fde384f9178864dbfe8c6b0fc
-
-From efb98a72d8b9bdb71b4f972efced073bee3b30fc Mon Sep 17 00:00:00 2001
-From: Anthony Green <green@moxielogic.com>
-Date: Sun, 15 Sep 2024 07:31:33 -0400
-Subject: [PATCH] Robustify floating point comparison in test
-
----
- testsuite/libffi.call/struct_int_float.c | 24 ++++++++++++------------
- 1 file changed, 12 insertions(+), 12 deletions(-)
-
-diff --git a/testsuite/libffi.call/struct_int_float.c b/testsuite/libffi.call/struct_int_float.c
-index dab1d1fed..82685814c 100644
---- a/testsuite/libffi.call/struct_int_float.c
-+++ b/testsuite/libffi.call/struct_int_float.c
-@@ -54,35 +54,35 @@ int main (void)
-   values[4] = &ts_arg[4];
-   args[5] = &ts_type;
-   values[5] = &ts_arg[5];
--  
-+
-   /* Initialize the cif */
-   CHECK(ffi_prep_cif(&cif, ABI_NUM, 6, &ffi_type_float, args) == FFI_OK);
--  
-+
-   ts_arg[0].i = 1;
--  ts_arg[0].f = 1.11f;
-+  ts_arg[0].f = 11.11f;
-   ts_arg[1].i = 2;
--  ts_arg[1].f = 2.22f;
-+  ts_arg[1].f = 22.22f;
-   ts_arg[2].i = 3;
--  ts_arg[2].f = 3.33f;
-+  ts_arg[2].f = 33.33f;
-   ts_arg[3].i = 4;
--  ts_arg[3].f = 4.44f;
-+  ts_arg[3].f = 44.44f;
-   ts_arg[4].i = 5;
--  ts_arg[4].f = 5.55f;
-+  ts_arg[4].f = 55.55f;
-   ts_arg[5].i = 6;
--  ts_arg[5].f = 6.66f;
--  
-+  ts_arg[5].f = 66.66f;
-+
-   printf ("%g\n", ts_arg[0].f);
-   printf ("%g\n", ts_arg[1].f);
-   printf ("%g\n", ts_arg[2].f);
-   printf ("%g\n", ts_arg[3].f);
-   printf ("%g\n", ts_arg[4].f);
-   printf ("%g\n", ts_arg[5].f);
--  
-+
-   ffi_call(&cif, FFI_FN(struct_int_float), &rfloat, values);
- 
-   printf ("%g\n", rfloat);
--  
--  CHECK(rfloat == 1.11f);
-+
-+  CHECK(fabs(rfloat - 11.11) < FLT_EPSILON);
- 
-   exit(0);
- }
-
-From 92d384df196a099fde384f9178864dbfe8c6b0fc Mon Sep 17 00:00:00 2001
-From: Anthony Green <green@moxielogic.com>
-Date: Sun, 15 Sep 2024 12:32:29 -0400
-Subject: [PATCH] Fix floating point compare
-
----
- testsuite/libffi.call/struct_int_float.c | 12 ++++++------
- 1 file changed, 6 insertions(+), 6 deletions(-)
-
-diff --git a/testsuite/libffi.call/struct_int_float.c b/testsuite/libffi.call/struct_int_float.c
-index 82685814..66ef6c45 100644
---- a/testsuite/libffi.call/struct_int_float.c
-+++ b/testsuite/libffi.call/struct_int_float.c
-@@ -14,11 +14,11 @@ typedef struct
- } test_structure_int_float;
- 
- static float ABI_ATTR struct_int_float(test_structure_int_float ts1,
--                                       test_structure_int_float ts2,
--                                       test_structure_int_float ts3,
--                                       test_structure_int_float ts4,
--                                       test_structure_int_float ts5,
--                                       test_structure_int_float ts6)
-+                                       test_structure_int_float ts2 __UNUSED__,
-+                                       test_structure_int_float ts3 __UNUSED__,
-+                                       test_structure_int_float ts4 __UNUSED__,
-+                                       test_structure_int_float ts5 __UNUSED__,
-+                                       test_structure_int_float ts6 __UNUSED__)
- {
-   return ts1.f;
- }
-@@ -82,7 +82,7 @@ int main (void)
- 
-   printf ("%g\n", rfloat);
- 
--  CHECK(fabs(rfloat - 11.11) < FLT_EPSILON);
-+  CHECK(fabs(rfloat - 11.11) < 3 * FLT_EPSILON);
- 
-   exit(0);
- }

diff --git a/dev-libs/libffi/files/libffi-3.4.6-x86-sse.patch b/dev-libs/libffi/files/libffi-3.4.6-x86-sse.patch
deleted file mode 100644
index 75c0e892ef3a..000000000000
--- a/dev-libs/libffi/files/libffi-3.4.6-x86-sse.patch
+++ /dev/null
@@ -1,124 +0,0 @@
-https://github.com/libffi/libffi/commit/d21881f55ed4a44d464c9091871e69b0bb47611a
-
-From d21881f55ed4a44d464c9091871e69b0bb47611a Mon Sep 17 00:00:00 2001
-From: kellda <59569234+kellda@users.noreply.github.com>
-Date: Sun, 15 Sep 2024 13:29:42 +0200
-Subject: [PATCH] Fix x86/ffi64 calls with 6 gp and some sse registers (#848)
-
-* Fix x86/ffi64 calls with 6 gp and some sse registers
-
-* Add test demonstating issue when mixing gp and sse registers
----
- src/x86/ffi64.c                          |  2 +-
- testsuite/libffi.call/struct_int_float.c | 88 ++++++++++++++++++++++++
- 2 files changed, 89 insertions(+), 1 deletion(-)
- create mode 100644 testsuite/libffi.call/struct_int_float.c
-
-diff --git a/src/x86/ffi64.c b/src/x86/ffi64.c
-index 6a8e37fc5..39f0bfd33 100644
---- a/src/x86/ffi64.c
-+++ b/src/x86/ffi64.c
-@@ -651,7 +651,7 @@ ffi_call_int (ffi_cif *cif, void (*fn)(void), void *rvalue,
- 		      break;
- 		    default:
- 		      reg_args->gpr[gprcount] = 0;
--		      memcpy (&reg_args->gpr[gprcount], a, size);
-+		      memcpy (&reg_args->gpr[gprcount], a, sizeof(UINT64));
- 		    }
- 		  gprcount++;
- 		  break;
-diff --git a/testsuite/libffi.call/struct_int_float.c b/testsuite/libffi.call/struct_int_float.c
-new file mode 100644
-index 000000000..dab1d1fed
---- /dev/null
-+++ b/testsuite/libffi.call/struct_int_float.c
-@@ -0,0 +1,88 @@
-+/* Area:	ffi_call
-+   Purpose:	Demonstrate structures with integers corrupting earlier floats
-+   Limitations:	none.
-+   PR:		#848
-+   Originator:	kellda  */
-+
-+/* { dg-do run } */
-+#include "ffitest.h"
-+
-+typedef struct
-+{
-+  unsigned long i;
-+  float f;
-+} test_structure_int_float;
-+
-+static float ABI_ATTR struct_int_float(test_structure_int_float ts1,
-+                                       test_structure_int_float ts2,
-+                                       test_structure_int_float ts3,
-+                                       test_structure_int_float ts4,
-+                                       test_structure_int_float ts5,
-+                                       test_structure_int_float ts6)
-+{
-+  return ts1.f;
-+}
-+
-+int main (void)
-+{
-+  ffi_cif cif;
-+  ffi_type *args[MAX_ARGS];
-+  void *values[MAX_ARGS];
-+  ffi_type ts_type;
-+  ffi_type *ts_type_elements[3];
-+  float rfloat;
-+
-+  test_structure_int_float ts_arg[6];
-+
-+  ts_type.size = 0;
-+  ts_type.alignment = 0;
-+  ts_type.type = FFI_TYPE_STRUCT;
-+  ts_type.elements = ts_type_elements;
-+  ts_type_elements[0] = &ffi_type_ulong;
-+  ts_type_elements[1] = &ffi_type_float;
-+  ts_type_elements[2] = NULL;
-+
-+  args[0] = &ts_type;
-+  values[0] = &ts_arg[0];
-+  args[1] = &ts_type;
-+  values[1] = &ts_arg[1];
-+  args[2] = &ts_type;
-+  values[2] = &ts_arg[2];
-+  args[3] = &ts_type;
-+  values[3] = &ts_arg[3];
-+  args[4] = &ts_type;
-+  values[4] = &ts_arg[4];
-+  args[5] = &ts_type;
-+  values[5] = &ts_arg[5];
-+  
-+  /* Initialize the cif */
-+  CHECK(ffi_prep_cif(&cif, ABI_NUM, 6, &ffi_type_float, args) == FFI_OK);
-+  
-+  ts_arg[0].i = 1;
-+  ts_arg[0].f = 1.11f;
-+  ts_arg[1].i = 2;
-+  ts_arg[1].f = 2.22f;
-+  ts_arg[2].i = 3;
-+  ts_arg[2].f = 3.33f;
-+  ts_arg[3].i = 4;
-+  ts_arg[3].f = 4.44f;
-+  ts_arg[4].i = 5;
-+  ts_arg[4].f = 5.55f;
-+  ts_arg[5].i = 6;
-+  ts_arg[5].f = 6.66f;
-+  
-+  printf ("%g\n", ts_arg[0].f);
-+  printf ("%g\n", ts_arg[1].f);
-+  printf ("%g\n", ts_arg[2].f);
-+  printf ("%g\n", ts_arg[3].f);
-+  printf ("%g\n", ts_arg[4].f);
-+  printf ("%g\n", ts_arg[5].f);
-+  
-+  ffi_call(&cif, FFI_FN(struct_int_float), &rfloat, values);
-+
-+  printf ("%g\n", rfloat);
-+  
-+  CHECK(rfloat == 1.11f);
-+
-+  exit(0);
-+}
-


^ permalink raw reply related	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2025-06-03  1:32 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-06-03  1:32 [gentoo-commits] repo/gentoo:master commit in: dev-libs/libffi/files/ Sam James
  -- strict thread matches above, loose matches on Subject: below --
2024-10-16  4:54 Sam James
2024-10-16  4:52 Sam James
2020-05-21  8:22 Sergei Trofimovich

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox