update code
This commit is contained in:
parent
a2aa1fabca
commit
b6f9a77f1d
@ -1,43 +0,0 @@
|
||||
From 0f4e09d27dc175ce3e95d070b794351663c7220e Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Ole=20Andr=C3=A9=20Vadla=20Ravn=C3=A5s?=
|
||||
<ole.andre.ravnas@tillitech.com>
|
||||
Date: Sat, 26 Jul 2014 00:11:06 +0200
|
||||
Subject: [PATCH 012/415] Fix non-variadic CIF initialization for Apple/ARM64
|
||||
|
||||
Turns out `aarch64_nfixedargs` wasn't initialized in the non-variadic
|
||||
case, resulting in undefined behavior when allocating arguments.
|
||||
---
|
||||
src/aarch64/ffi.c | 8 +++++++-
|
||||
1 file changed, 7 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/src/aarch64/ffi.c b/src/aarch64/ffi.c
|
||||
index b807a2d..05f1a13 100644
|
||||
--- a/src/aarch64/ffi.c
|
||||
+++ b/src/aarch64/ffi.c
|
||||
@@ -779,6 +779,8 @@ ffi_prep_cif_machdep (ffi_cif *cif)
|
||||
}
|
||||
}
|
||||
|
||||
+ cif->aarch64_nfixedargs = 0;
|
||||
+
|
||||
return FFI_OK;
|
||||
}
|
||||
|
||||
@@ -789,9 +791,13 @@ ffi_status ffi_prep_cif_machdep_var(ffi_cif *cif,
|
||||
unsigned int nfixedargs,
|
||||
unsigned int ntotalargs)
|
||||
{
|
||||
+ ffi_status status;
|
||||
+
|
||||
+ status = ffi_prep_cif_machdep (cif);
|
||||
+
|
||||
cif->aarch64_nfixedargs = nfixedargs;
|
||||
|
||||
- return ffi_prep_cif_machdep(cif);
|
||||
+ return status;
|
||||
}
|
||||
|
||||
#endif
|
||||
--
|
||||
2.7.4.huawei.3
|
||||
|
||||
@ -1,27 +0,0 @@
|
||||
From aebf2c3023b5ff056a708dc34169f7b549b2ec4f Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Ole=20Andr=C3=A9=20Vadla=20Ravn=C3=A5s?=
|
||||
<ole.andre.ravnas@tillitech.com>
|
||||
Date: Fri, 25 Jul 2014 21:40:50 +0200
|
||||
Subject: [PATCH 013/415] Fix alignment of FFI_TYPE_FLOAT for Apple's ARM64 ABI
|
||||
|
||||
---
|
||||
src/aarch64/ffi.c | 3 +++
|
||||
1 file changed, 3 insertions(+)
|
||||
|
||||
diff --git a/src/aarch64/ffi.c b/src/aarch64/ffi.c
|
||||
index b807a2d..10e95db 100644
|
||||
--- a/src/aarch64/ffi.c
|
||||
+++ b/src/aarch64/ffi.c
|
||||
@@ -146,6 +146,9 @@ get_basic_type_alignment (unsigned short type)
|
||||
switch (type)
|
||||
{
|
||||
case FFI_TYPE_FLOAT:
|
||||
+#if defined (__APPLE__)
|
||||
+ return sizeof (UINT32);
|
||||
+#endif
|
||||
case FFI_TYPE_DOUBLE:
|
||||
return sizeof (UINT64);
|
||||
#if FFI_TYPE_DOUBLE != FFI_TYPE_LONGDOUBLE
|
||||
--
|
||||
2.7.4.huawei.3
|
||||
|
||||
@ -1,36 +0,0 @@
|
||||
From aaf3101ba81af8f488502881648e3f687721671e Mon Sep 17 00:00:00 2001
|
||||
From: Matthias Klose <doko@ubuntu.com>
|
||||
Date: Sat, 20 Sep 2014 06:37:04 -0400
|
||||
Subject: [PATCH 020/411] Fix -Werror=declaration-after-statement problem
|
||||
|
||||
---
|
||||
src/arm/ffi.c | 6 +++---
|
||||
1 file changed, 3 insertions(+), 3 deletions(-)
|
||||
|
||||
diff --git a/src/arm/ffi.c b/src/arm/ffi.c
|
||||
index 7cd9289..6691ab5 100644
|
||||
--- a/src/arm/ffi.c
|
||||
+++ b/src/arm/ffi.c
|
||||
@@ -154,9 +154,6 @@ int ffi_prep_args_SYSV(char *stack, extended_cif *ecif, float *vfp_space)
|
||||
|
||||
int ffi_prep_args_VFP(char *stack, extended_cif *ecif, float *vfp_space)
|
||||
{
|
||||
- // make sure we are using FFI_VFP
|
||||
- FFI_ASSERT(ecif->cif->abi == FFI_VFP);
|
||||
-
|
||||
register unsigned int i, vi = 0;
|
||||
register void **p_argv;
|
||||
register char *argp, *regp, *eo_regp;
|
||||
@@ -165,6 +162,9 @@ int ffi_prep_args_VFP(char *stack, extended_cif *ecif, float *vfp_space)
|
||||
char done_with_regs = 0;
|
||||
char is_vfp_type;
|
||||
|
||||
+ // make sure we are using FFI_VFP
|
||||
+ FFI_ASSERT(ecif->cif->abi == FFI_VFP);
|
||||
+
|
||||
/* the first 4 words on the stack are used for values passed in core
|
||||
* registers. */
|
||||
regp = stack;
|
||||
--
|
||||
1.8.3.1
|
||||
|
||||
@ -1,26 +0,0 @@
|
||||
From 18b74ce54afab45fcf2a7d4eb86bb2ce9db8cec8 Mon Sep 17 00:00:00 2001
|
||||
From: Richard Henderson <rth@redhat.com>
|
||||
Date: Tue, 21 Oct 2014 13:00:34 -0400
|
||||
Subject: [PATCH 052/415] aarch64: Fix non-apple compilation
|
||||
|
||||
---
|
||||
src/aarch64/ffi.c | 2 ++
|
||||
1 file changed, 2 insertions(+)
|
||||
|
||||
diff --git a/src/aarch64/ffi.c b/src/aarch64/ffi.c
|
||||
index 5369ea4..cdb7816 100644
|
||||
--- a/src/aarch64/ffi.c
|
||||
+++ b/src/aarch64/ffi.c
|
||||
@@ -782,7 +782,9 @@ ffi_prep_cif_machdep (ffi_cif *cif)
|
||||
}
|
||||
}
|
||||
|
||||
+#if defined (__APPLE__)
|
||||
cif->aarch64_nfixedargs = 0;
|
||||
+#endif
|
||||
|
||||
return FFI_OK;
|
||||
}
|
||||
--
|
||||
2.7.4.huawei.3
|
||||
|
||||
@ -1,31 +0,0 @@
|
||||
From 978c9540154d320525488db1b7049277122f736d Mon Sep 17 00:00:00 2001
|
||||
From: Samuli Suominen <ssuominen@gentoo.org>
|
||||
Date: Sat, 31 May 2014 08:53:10 -0400
|
||||
Subject: [PATCH] Add missing GNU stack markings in win32.S
|
||||
|
||||
---
|
||||
src/x86/win32.S | 6 +++++-
|
||||
1 file changed, 5 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/src/x86/win32.S b/src/x86/win32.S
|
||||
index daf0e79..e42baf2 100644
|
||||
--- a/src/x86/win32.S
|
||||
+++ b/src/x86/win32.S
|
||||
@@ -1,5 +1,6 @@
|
||||
/* -----------------------------------------------------------------------
|
||||
- win32.S - Copyright (c) 1996, 1998, 2001, 2002, 2009 Red Hat, Inc.
|
||||
+ win32.S - Copyright (c) 2014 Anthony Green
|
||||
+ Copyright (c) 1996, 1998, 2001, 2002, 2009 Red Hat, Inc.
|
||||
Copyright (c) 2001 John Beniton
|
||||
Copyright (c) 2002 Ranjit Mathew
|
||||
Copyright (c) 2009 Daniel Witte
|
||||
@@ -1304,3 +1305,6 @@ L_ffi_closure_SYSV_inner$stub:
|
||||
|
||||
#endif /* !_MSC_VER */
|
||||
|
||||
+#if defined __ELF__ && defined __linux__
|
||||
+ .section .note.GNU-stack,"",@progbits
|
||||
+#endif
|
||||
--
|
||||
1.9.3
|
||||
|
||||
Binary file not shown.
BIN
libffi-3.2.1.tar.gz
Normal file
BIN
libffi-3.2.1.tar.gz
Normal file
Binary file not shown.
19
libffi.spec
19
libffi.spec
@ -1,8 +1,8 @@
|
||||
%global target_arch %{ix86} x86_64
|
||||
|
||||
Name: libffi
|
||||
Version: 3.1
|
||||
Release: 19
|
||||
Version: 3.2.1
|
||||
Release: 1
|
||||
Summary: A Portable Foreign Function Interface Library
|
||||
License: MIT
|
||||
URL: http://sourceware.org/libffi
|
||||
@ -11,14 +11,9 @@ Source0: ftp://sourceware.org/pub/libffi/%{name}-%{version}.tar.gz
|
||||
Source1: ffi-multilib.h
|
||||
Source2: ffitarget-multilib.h
|
||||
Patch0: libffi-3.1-fix-include-path.patch
|
||||
Patch1: libffi-3.1-fix-exec-stack.patch
|
||||
Patch2: libffi-aarch64-rhbz1174037.patch
|
||||
Patch3: libffi-3.1-aarch64-fix-exec-stack.patch
|
||||
Patch1: libffi-aarch64-rhbz1174037.patch
|
||||
Patch2: libffi-3.1-aarch64-fix-exec-stack.patch
|
||||
|
||||
Patch6000:0012-Fix-non-variadic-CIF-initialization-for-Apple-ARM64.patch
|
||||
Patch6001:0013-Fix-alignment-of-FFI_TYPE_FLOAT-for-Apple-s-ARM64-AB.patch
|
||||
Patch6002:0020-Fix-Werror-declaration-after-statement-problem.patch
|
||||
Patch6003:0052-aarch64-Fix-non-apple-compilation.patch
|
||||
Patch6004:0053-aarch64-Improve-is_hfa.patch
|
||||
Patch6005:0054-aarch64-Always-distinguish-LONGDOUBLE.patch
|
||||
Patch6006:0055-aarch64-Simplify-AARCH64_STACK_ALIGN.patch
|
||||
@ -130,5 +125,11 @@ fi
|
||||
%{_infodir}/libffi.info.gz
|
||||
|
||||
%changelog
|
||||
* Fri Oct 11 2019 hanzhijun<hanzhijun1@huawei.com> - 3.2.1-1
|
||||
- Type:enhancement
|
||||
- ID:NA
|
||||
- SUG:NA
|
||||
- DESC:update to 3.2.1
|
||||
|
||||
* Mon Sep 09 2019 openEuler Buildteam <buildteam@openeuler.org> - 3.1-19
|
||||
- Package init
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user