From 4864c78dadd19fb2b73a323093fc23cd257d4831 Mon Sep 17 00:00:00 2001 From: openeuler-ci-bot <80474298@qq.com> Date: Tue, 27 Oct 2020 21:30:11 +0800 Subject: [PATCH 1/2] [patch tracking] 20201027213007628602 - https://github.com/libffi/libffi/commit/f4435980fa2da335fe388db431d4a7946a99a2b9 --- ...5980fa2da335fe388db431d4a7946a99a2b9.patch | 78 +++++++++++++++++++ 1 file changed, 78 insertions(+) create mode 100644 f4435980fa2da335fe388db431d4a7946a99a2b9.patch diff --git a/f4435980fa2da335fe388db431d4a7946a99a2b9.patch b/f4435980fa2da335fe388db431d4a7946a99a2b9.patch new file mode 100644 index 0000000..8a3c810 --- /dev/null +++ b/f4435980fa2da335fe388db431d4a7946a99a2b9.patch @@ -0,0 +1,78 @@ +diff --git a/src/powerpc/linux64.S b/src/powerpc/linux64.S +index c99889c1..e92d64af 100644 +--- a/src/powerpc/linux64.S ++++ b/src/powerpc/linux64.S +@@ -36,8 +36,10 @@ + .cfi_startproc + # if _CALL_ELF == 2 + ffi_call_LINUX64: ++# ifndef __PCREL__ + addis %r2, %r12, .TOC.-ffi_call_LINUX64@ha + addi %r2, %r2, .TOC.-ffi_call_LINUX64@l ++# endif + .localentry ffi_call_LINUX64, . - ffi_call_LINUX64 + # else + .section ".opd","aw" +@@ -89,9 +91,15 @@ ffi_call_LINUX64: + /* Call ffi_prep_args64. */ + mr %r4, %r1 + # if defined _CALL_LINUX || _CALL_ELF == 2 ++# ifdef __PCREL__ ++ bl ffi_prep_args64@notoc ++# else + bl ffi_prep_args64 ++ nop ++# endif + # else + bl .ffi_prep_args64 ++ nop + # endif + + # if _CALL_ELF == 2 +diff --git a/src/powerpc/linux64_closure.S b/src/powerpc/linux64_closure.S +index d67e4bbb..3469a2cb 100644 +--- a/src/powerpc/linux64_closure.S ++++ b/src/powerpc/linux64_closure.S +@@ -37,8 +37,10 @@ + .cfi_startproc + # if _CALL_ELF == 2 + ffi_closure_LINUX64: ++# ifndef __PCREL__ + addis %r2, %r12, .TOC.-ffi_closure_LINUX64@ha + addi %r2, %r2, .TOC.-ffi_closure_LINUX64@l ++# endif + .localentry ffi_closure_LINUX64, . - ffi_closure_LINUX64 + # else + .section ".opd","aw" +@@ -190,11 +192,19 @@ ffi_closure_LINUX64: + + # make the call + # if defined _CALL_LINUX || _CALL_ELF == 2 ++# ifdef __PCREL__ ++ bl ffi_closure_helper_LINUX64@notoc ++.Lret: ++# else + bl ffi_closure_helper_LINUX64 ++.Lret: ++ nop ++# endif + # else + bl .ffi_closure_helper_LINUX64 +-# endif + .Lret: ++ nop ++# endif + + # now r3 contains the return type + # so use it to look up in a table +@@ -460,8 +470,10 @@ ffi_closure_LINUX64: + .cfi_startproc + # if _CALL_ELF == 2 + ffi_go_closure_linux64: ++# ifndef __PCREL__ + addis %r2, %r12, .TOC.-ffi_go_closure_linux64@ha + addi %r2, %r2, .TOC.-ffi_go_closure_linux64@l ++# endif + .localentry ffi_go_closure_linux64, . - ffi_go_closure_linux64 + # else + .section ".opd","aw" -- Gitee From bf5819c9562254d3d20b529fcdb1d366bcc6619f Mon Sep 17 00:00:00 2001 From: openeuler-ci-bot <80474298@qq.com> Date: Tue, 27 Oct 2020 21:30:12 +0800 Subject: [PATCH 2/2] [patch tracking] 20201027213007628602 - update spec file --- libffi.spec | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/libffi.spec b/libffi.spec index cdb35df..3e2b36f 100644 --- a/libffi.spec +++ b/libffi.spec @@ -1,10 +1,11 @@ Name: libffi Version: 3.3 -Release: 9 +Release: 10 Summary: A Portable Foreign Function Interface Library License: MIT URL: http://sourceware.org/libffi Source0: ftp://sourceware.org/pub/libffi/%{name}-%{version}.tar.gz +Patch6000: f4435980fa2da335fe388db431d4a7946a99a2b9.patch BuildRequires: gcc gdb @@ -91,6 +92,9 @@ fi %{_infodir}/libffi.info.gz %changelog +* 20201027213007628602 patch-tracking 3.3-10 +- append patch file of upstream repository from to + * Thu Jul 23 2020 Zhipeng Xie - 3.3-9 - Type:bugfix - ID:NA @@ -152,4 +156,4 @@ fi - DESC:update to 3.2.1 * Mon Sep 09 2019 openEuler Buildteam - 3.1-19 -- Package init +- Package init \ No newline at end of file -- Gitee