summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authoradam <adam>2014-10-28 12:51:03 +0000
committeradam <adam>2014-10-28 12:51:03 +0000
commit63ab5357d4914fb62ffe03f79c126e2dfa4cc5cd (patch)
tree39d0fa92b46bcf4e2af48a277a831fdc0fcac036
parent610e0b1d1430a3eb1032808af7977afb3424b065 (diff)
downloadpkgsrc-63ab5357d4914fb62ffe03f79c126e2dfa4cc5cd.tar.gz
Changes 3.1:
Add AArch64 (ARM64) iOS support. Add Nios II support. Add m88k and DEC VAX support. Add support for stdcall, thiscall, and fastcall on non-Windows 32-bit x86 targets such as Linux. Various Android, MIPS N32, x86, FreeBSD and UltraSPARC IIi fixes. Make the testsuite more robust: eliminate several spurious failures, and respect the $CC and $CXX environment variables. Archive off the manually maintained ChangeLog in favor of git log.
-rw-r--r--devel/libffi/Makefile27
-rw-r--r--devel/libffi/distinfo16
-rw-r--r--devel/libffi/patches/patch-Makefile.am40
-rw-r--r--devel/libffi/patches/patch-aa86
-rw-r--r--devel/libffi/patches/patch-ad10
-rw-r--r--devel/libffi/patches/patch-configure.ac51
-rw-r--r--devel/libffi/patches/patch-src_arm_sysv.S41
7 files changed, 55 insertions, 216 deletions
diff --git a/devel/libffi/Makefile b/devel/libffi/Makefile
index 787da991bb3..e1707623c30 100644
--- a/devel/libffi/Makefile
+++ b/devel/libffi/Makefile
@@ -1,6 +1,6 @@
-# $NetBSD: Makefile,v 1.23 2014/05/18 15:17:51 wiz Exp $
+# $NetBSD: Makefile,v 1.24 2014/10/28 12:51:03 adam Exp $
-DISTNAME= libffi-3.0.13
+DISTNAME= libffi-3.1
CATEGORIES= devel
MASTER_SITES= ftp://sourceware.org/pub/libffi/
@@ -9,14 +9,13 @@ HOMEPAGE= https://www.sourceware.org/libffi/
COMMENT= Foreign function interface
LICENSE= mit
-GNU_CONFIGURE= yes
-CONFIGURE_ARGS= --includedir=${PREFIX}/include
-USE_LIBTOOL= yes
-USE_TOOLS+= pkg-config
-USE_LANGUAGES= c c++
-INFO_FILES= yes
-
+USE_LANGUAGES= c c++
+USE_LIBTOOL= yes
+USE_TOOLS+= pkg-config
+GNU_CONFIGURE= yes
+CONFIGURE_ARGS= --includedir=${PREFIX}/include
PKGCONFIG_OVERRIDE+= libffi.pc.in
+INFO_FILES= yes
.include "../../mk/compiler.mk"
# The Compaq C frontend groks .s, but not .S. Assemble osf.S directly w/ as(1).
@@ -30,24 +29,24 @@ pre-build:
.if !empty(PKGSRC_RUN_TEST:M[Yy][Ee][Ss])
TEST_TARGET= check
-TEST_ENV=
+TEST_ENV= # empty?
BUILD_DEPENDS+= dejagnu-[0-9]*:../../devel/dejagnu
.endif
# patch-aj uses m68k_sync_icache(2)
.if !empty(MACHINE_PLATFORM:MNetBSD-*-m68k)
-LIBS+= -lm68k
+LIBS+= -lm68k
.endif
# fix http://gnats.netbsd.org/42865
.if !empty(MACHINE_PLATFORM:MSunOS-*-i386) && !empty(CC_VERSION:Mgcc-[23]*)
-CPPFLAGS += -D__PIC__
+CPPFLAGS+= -D__PIC__
.endif
# irix fixes from PR 48587
.if !empty(OPSYS:MIRIX)
-USE_TOOLS+= bash gmake
-MAKE_FLAGS+=SHELL=${TOOLS_DIR}/bin/bash
+USE_TOOLS+= bash gmake
+MAKE_FLAGS+= SHELL=${TOOLS_DIR}/bin/bash
.endif
.include "../../mk/bsd.pkg.mk"
diff --git a/devel/libffi/distinfo b/devel/libffi/distinfo
index 5a66fb3a190..f7eae607f5f 100644
--- a/devel/libffi/distinfo
+++ b/devel/libffi/distinfo
@@ -1,21 +1,19 @@
-$NetBSD: distinfo,v 1.34 2014/06/11 11:45:04 joerg Exp $
+$NetBSD: distinfo,v 1.35 2014/10/28 12:51:03 adam Exp $
-SHA1 (libffi-3.0.13.tar.gz) = f5230890dc0be42fb5c58fbf793da253155de106
-RMD160 (libffi-3.0.13.tar.gz) = 03f0627c0fcc800d38636258a2fab2d6bb8b6625
-Size (libffi-3.0.13.tar.gz) = 845747 bytes
-SHA1 (patch-Makefile.am) = 01109a0d5708835162a2d007a26decac5bb0bbac
-SHA1 (patch-aa) = 79cc45c6051705bde3f3229aca4e0fa49ff149b9
+SHA1 (libffi-3.1.tar.gz) = cb373ef2115ec7c57913b84ca72eee14b10ccdc3
+RMD160 (libffi-3.1.tar.gz) = 2445ad6cf9cf42adbd29b9ced4cd29f252864ec5
+Size (libffi-3.1.tar.gz) = 937214 bytes
+SHA1 (patch-aa) = baa5a812e504ca22af1b2c0b48f280a93f9a27db
SHA1 (patch-ac) = f3c6324f4334d23e684b4eca25173a13be5d37eb
-SHA1 (patch-ad) = 8901a00abe25422e3e35f321a5fb89311185fc0b
+SHA1 (patch-ad) = 8bb3ec9ea69a8c06b0b1963b3f24018c6384c249
SHA1 (patch-ae) = 3d8cd3bcd834876f6e60ae519dca8c0b0ba0d4d1
SHA1 (patch-af) = 2c7ca79ef980a2561333bf79a18df1ecb0bbb9f7
SHA1 (patch-ag) = 6333317170f6e92f89db966315276dcd8e3484f2
SHA1 (patch-ah) = e9580069ede90cd616da7bc230b28acbf5d204a6
SHA1 (patch-ai) = f85a6cb64d4a9d7c3e56b47b7092fce10a744b5b
SHA1 (patch-aj) = d130b2b20b94ca26c70dcc46614e36c6d0ac9153
-SHA1 (patch-configure.ac) = 080d79b5ada93c5073df7dd09c5131fcfe72ce86
SHA1 (patch-fficonfig.h.in) = fd85fa767bc057c843ff71cc61bedfcff84def43
-SHA1 (patch-src_arm_sysv.S) = c7c8b33bb019c0f41b6866368096a7594314efea
+SHA1 (patch-src_arm_sysv.S) = 323eb9f56a53ced173b4c542080e0845edc8d516
SHA1 (patch-src_m88k_elfbsd.S) = fae3e425dcff3e924ef195eab165f9bbc6ec4077
SHA1 (patch-src_m88k_ffi.c) = e4b7382c3d6e253b8c1c6054150c530c21d018de
SHA1 (patch-src_m88k_ffitarget.h) = e8479bc3aa876f5e6d52a4d578c5da88291c6646
diff --git a/devel/libffi/patches/patch-Makefile.am b/devel/libffi/patches/patch-Makefile.am
deleted file mode 100644
index 89521b781f9..00000000000
--- a/devel/libffi/patches/patch-Makefile.am
+++ /dev/null
@@ -1,40 +0,0 @@
-$NetBSD: patch-Makefile.am,v 1.1 2013/11/03 23:51:51 jklos Exp $
-
---- Makefile.am.orig 2013-03-16 11:52:11.000000000 +0000
-+++ Makefile.am
-@@ -19,6 +19,7 @@ EXTRA_DIST = LICENSE ChangeLog.v1 Change
- src/moxie/ffitarget.h src/moxie/eabi.S src/mips/ffitarget.h \
- src/m32r/ffi.c src/m32r/sysv.S src/m32r/ffitarget.h \
- src/m68k/ffi.c src/m68k/sysv.S src/m68k/ffitarget.h \
-+ src/m88k/ffi.c src/m88k/obsd.S src/m88k/ffitarget.h \
- src/microblaze/ffi.c src/microblaze/sysv.S \
- src/microblaze/ffitarget.h src/powerpc/ffi.c \
- src/powerpc/sysv.S src/powerpc/linux64.S \
-@@ -38,6 +39,7 @@ EXTRA_DIST = LICENSE ChangeLog.v1 Change
- src/bfin/ffitarget.h src/bfin/sysv.S src/frv/eabi.S \
- src/frv/ffitarget.h src/dlmalloc.c src/tile/ffi.c \
- src/tile/ffitarget.h src/tile/tile.S libtool-version \
-+ src/vax/ffi.c src/vax/ffitarget.h src/vax/elfbsd.S \
- src/xtensa/ffitarget.h src/xtensa/ffi.c src/xtensa/sysv.S \
- ChangeLog.libffi m4/libtool.m4 m4/lt~obsolete.m4 \
- m4/ltoptions.m4 m4/ltsugar.m4 m4/ltversion.m4 \
-@@ -149,6 +151,9 @@ endif
- if M68K
- nodist_libffi_la_SOURCES += src/m68k/ffi.c src/m68k/sysv.S
- endif
-+if M88K
-+nodist_libffi_la_SOURCES += src/m88k/ffi.c src/m88k/obsd.S
-+endif
- if MOXIE
- nodist_libffi_la_SOURCES += src/moxie/ffi.c src/moxie/eabi.S
- endif
-@@ -212,6 +217,9 @@ endif
- if METAG
- nodist_libffi_la_SOURCES += src/metag/sysv.S src/metag/ffi.c
- endif
-+if VAX
-+nodist_libffi_la_SOURCES += src/vax/elfbsd.S src/vax/ffi.c
-+endif
-
- libffi_convenience_la_SOURCES = $(libffi_la_SOURCES)
- nodist_libffi_convenience_la_SOURCES = $(nodist_libffi_la_SOURCES)
diff --git a/devel/libffi/patches/patch-aa b/devel/libffi/patches/patch-aa
index 5ea53e4404a..7d1c11ed849 100644
--- a/devel/libffi/patches/patch-aa
+++ b/devel/libffi/patches/patch-aa
@@ -1,12 +1,9 @@
-$NetBSD: patch-aa,v 1.20 2014/06/01 03:53:03 ryoon Exp $
+$NetBSD: patch-aa,v 1.21 2014/10/28 12:51:03 adam Exp $
-* unwind: from https://github.com/atgreen/libffi/commit/76d19d004e36e99d261ee78261e2f52cea5e4ab1#diff-e2d5a00791bce9a01f99bc6fd613a39d
- Fix build under OpenBSD 5.5
-
---- configure.orig 2013-03-17 22:36:19.000000000 +0000
+--- configure.orig 2014-05-19 13:44:03.000000000 +0000
+++ configure
-@@ -651,6 +651,8 @@ XTENSA_FALSE
- XTENSA_TRUE
+@@ -654,6 +654,8 @@ VAX_FALSE
+ VAX_TRUE
TILE_FALSE
TILE_TRUE
+VAX_FALSE
@@ -14,7 +11,7 @@ $NetBSD: patch-aa,v 1.20 2014/06/01 03:53:03 ryoon Exp $
PA64_HPUX_FALSE
PA64_HPUX_TRUE
PA_HPUX_FALSE
-@@ -13331,7 +13333,7 @@ case "$host" in
+@@ -17199,7 +17201,7 @@ case "$host" in
TARGET=FRV; TARGETDIR=frv
;;
@@ -23,7 +20,7 @@ $NetBSD: patch-aa,v 1.20 2014/06/01 03:53:03 ryoon Exp $
TARGET=PA_LINUX; TARGETDIR=pa
;;
hppa*64-*-hpux*)
-@@ -13425,10 +13427,10 @@ case "$host" in
+@@ -17297,10 +17299,10 @@ case "$host" in
TARGET=METAG; TARGETDIR=metag
;;
@@ -31,21 +28,21 @@ $NetBSD: patch-aa,v 1.20 2014/06/01 03:53:03 ryoon Exp $
+ mips*-sgi-irix5.* | mips*-sgi-irix6.* | mips*-*-rtems*)
TARGET=MIPS; TARGETDIR=mips
;;
-- mips*-*-linux* | mips*-*-openbsd*)
-+ mips*-*-linux* | mips*-*-netbsd* | mips*-*-openbsd*)
+- mips*-*linux* | mips*-*-openbsd*)
++ mips*-*linux* | mips*-*-netbsd* | mips*-*-openbsd*)
# Support 128-bit long double for NewABI.
HAVE_LONG_DOUBLE='defined(__mips64)'
TARGET=MIPS; TARGETDIR=mips
-@@ -13449,7 +13451,7 @@ case "$host" in
+@@ -17326,7 +17328,7 @@ case "$host" in
powerpc-*-aix* | rs6000-*-aix*)
TARGET=POWERPC_AIX; TARGETDIR=powerpc
;;
- powerpc-*-freebsd* | powerpc-*-openbsd*)
+ powerpc-*-freebsd* | powerpc-*-netbsd* | powerpc-*-openbsd*)
TARGET=POWERPC_FREEBSD; TARGETDIR=powerpc
+ HAVE_LONG_DOUBLE_VARIANT=1
;;
- powerpc64-*-freebsd*)
-@@ -13463,7 +13465,7 @@ case "$host" in
+@@ -17341,7 +17343,7 @@ case "$host" in
TARGET=S390; TARGETDIR=s390
;;
@@ -54,9 +51,9 @@ $NetBSD: patch-aa,v 1.20 2014/06/01 03:53:03 ryoon Exp $
TARGET=SH; TARGETDIR=sh
;;
sh64-*-* | sh5*-*-*)
-@@ -13478,6 +13480,10 @@ case "$host" in
- TARGET=TILE; TARGETDIR=tile
- ;;
+@@ -17360,6 +17362,10 @@ case "$host" in
+ TARGET=VAX; TARGETDIR=vax
+ ;;
+ vax-*-*)
+ TARGET=VAX; TARGETDIR=vax
@@ -65,8 +62,8 @@ $NetBSD: patch-aa,v 1.20 2014/06/01 03:53:03 ryoon Exp $
xtensa*-*)
TARGET=XTENSA; TARGETDIR=xtensa
;;
-@@ -13747,6 +13753,14 @@ else
- TILE_FALSE=
+@@ -17677,6 +17683,14 @@ else
+ VAX_FALSE=
fi
+ if test x$TARGET = xVAX; then
@@ -80,7 +77,7 @@ $NetBSD: patch-aa,v 1.20 2014/06/01 03:53:03 ryoon Exp $
if test x$TARGET = xXTENSA; then
XTENSA_TRUE=
XTENSA_FALSE='#'
-@@ -14661,7 +14675,7 @@ case "$target" in
+@@ -18597,7 +18611,7 @@ case "$target" in
$as_echo "#define FFI_EXEC_TRAMPOLINE_TABLE 1" >>confdefs.h
;;
@@ -89,50 +86,11 @@ $NetBSD: patch-aa,v 1.20 2014/06/01 03:53:03 ryoon Exp $
$as_echo "#define FFI_MMAP_EXEC_WRIT 1" >>confdefs.h
-@@ -14678,16 +14692,32 @@ fi
-
-
- if test x$TARGET = xX86_64; then
-- { $as_echo "$as_me:${as_lineno-$LINENO}: checking assembler supports unwind section type" >&5
--$as_echo_n "checking assembler supports unwind section type... " >&6; }
-+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking toolchain supports unwind section type" >&5
-+$as_echo_n "checking toolchain supports unwind section type... " >&6; }
- if ${libffi_cv_as_x86_64_unwind_section_type+:} false; then :
- $as_echo_n "(cached) " >&6
- else
-
-- libffi_cv_as_x86_64_unwind_section_type=yes
-- echo '.section .eh_frame,"a",@unwind' > conftest.s
-- if $CC $CFLAGS -c conftest.s 2>&1 | grep -i warning > /dev/null; then
-- libffi_cv_as_x86_64_unwind_section_type=no
-+ cat > conftest1.s << EOF
-+.text
-+.globl foo
-+foo:
-+jmp bar
-+.section .eh_frame,"a",@unwind
-+bar:
-+EOF
-+
-+ cat > conftest2.c << EOF
-+extern void foo();
-+int main(){foo();}
-+EOF
-+
-+ libffi_cv_as_x86_64_unwind_section_type=no
-+ # we ensure that we can compile _and_ link an assembly file containing an @unwind section
-+ # since the compiler can support it and not the linker (ie old binutils)
-+ if $CC -Wa,--fatal-warnings $CFLAGS -c conftest1.s > /dev/null 2>&1 && \
-+ $CC conftest2.c conftest1.o > /dev/null 2>&1 ; then
-+ libffi_cv_as_x86_64_unwind_section_type=yes
- fi
-
- fi
-@@ -14840,11 +14870,6 @@ if test "x$GCC" = "xyes"; then
+@@ -18792,11 +18806,6 @@ if test "x$GCC" = "xyes"; then
toolexecdir='$(libdir)/gcc-lib/$(target_alias)'
toolexeclibdir='$(libdir)'
fi
-- multi_os_directory=`$CC -print-multi-os-directory`
+- multi_os_directory=`$CC $CFLAGS -print-multi-os-directory`
- case $multi_os_directory in
- .) ;; # Avoid trailing /.
- ../*) toolexeclibdir=$toolexeclibdir/$multi_os_directory ;;
@@ -140,8 +98,8 @@ $NetBSD: patch-aa,v 1.20 2014/06/01 03:53:03 ryoon Exp $
else
toolexeclibdir='$(libdir)'
-@@ -15135,6 +15160,10 @@ if test -z "${TILE_TRUE}" && test -z "${
- as_fn_error $? "conditional \"TILE\" was never defined.
+@@ -19115,6 +19124,10 @@ if test -z "${VAX_TRUE}" && test -z "${V
+ as_fn_error $? "conditional \"VAX\" was never defined.
Usually this means the macro was only invoked conditionally." "$LINENO" 5
fi
+if test -z "${VAX_TRUE}" && test -z "${VAX_FALSE}"; then
@@ -151,7 +109,7 @@ $NetBSD: patch-aa,v 1.20 2014/06/01 03:53:03 ryoon Exp $
if test -z "${XTENSA_TRUE}" && test -z "${XTENSA_FALSE}"; then
as_fn_error $? "conditional \"XTENSA\" was never defined.
Usually this means the macro was only invoked conditionally." "$LINENO" 5
-@@ -16734,13 +16763,13 @@ s/ [a-zA-Z0-9-]*-all [a-zA-Z0-9-]*-all-a
+@@ -20813,13 +20826,13 @@ s/ [a-zA-Z0-9-]*-all [a-zA-Z0-9-]*-all-a
/-all-all/d
a\\
@ HOST="\$(HOST)\" \\\\\\
diff --git a/devel/libffi/patches/patch-ad b/devel/libffi/patches/patch-ad
index 514eff5d802..5e650855c69 100644
--- a/devel/libffi/patches/patch-ad
+++ b/devel/libffi/patches/patch-ad
@@ -1,13 +1,13 @@
-$NetBSD: patch-ad,v 1.1 2008/10/11 22:33:56 dholland Exp $
+$NetBSD: patch-ad,v 1.2 2014/10/28 12:51:03 adam Exp $
Install header files in backwards compatible way.
---- libffi.pc.in.orig 2008-10-09 12:38:02.000000000 +0400
-+++ libffi.pc.in 2008-10-09 12:41:54.000000000 +0400
-@@ -1,7 +1,7 @@
- prefix=@prefix@
+--- libffi.pc.in.orig 2014-04-25 17:45:13.000000000 +0000
++++ 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@
diff --git a/devel/libffi/patches/patch-configure.ac b/devel/libffi/patches/patch-configure.ac
deleted file mode 100644
index aa6fe6816d0..00000000000
--- a/devel/libffi/patches/patch-configure.ac
+++ /dev/null
@@ -1,51 +0,0 @@
-$NetBSD: patch-configure.ac,v 1.2 2014/02/11 07:21:28 dholland Exp $
-
---- configure.ac.orig 2014-02-11 07:13:01.000000000 +0000
-+++ configure.ac
-@@ -191,6 +191,10 @@ case "$host" in
- TARGET=M68K; TARGETDIR=m68k
- ;;
-
-+ m88k-*-*)
-+ TARGET=M88K; TARGETDIR=m88k
-+ ;;
-+
- microblaze*-*-*)
- TARGET=MICROBLAZE; TARGETDIR=microblaze
- ;;
-@@ -203,7 +207,7 @@ case "$host" in
- TARGET=METAG; TARGETDIR=metag
- ;;
-
-- mips-sgi-irix5.* | mips-sgi-irix6.* | mips*-*-rtems*)
-+ mips*-sgi-irix5.* | mips*-sgi-irix6.* | mips*-*-rtems*)
- TARGET=MIPS; TARGETDIR=mips
- ;;
- mips*-*-linux* | mips*-*-openbsd*)
-@@ -256,6 +260,10 @@ case "$host" in
- TARGET=TILE; TARGETDIR=tile
- ;;
-
-+ vax-*-*)
-+ TARGET=VAX; TARGETDIR=vax
-+ ;;
-+
- xtensa*-*)
- TARGET=XTENSA; TARGETDIR=xtensa
- ;;
-@@ -281,6 +289,7 @@ AM_CONDITIONAL(ALPHA, test x$TARGET = xA
- AM_CONDITIONAL(IA64, test x$TARGET = xIA64)
- AM_CONDITIONAL(M32R, test x$TARGET = xM32R)
- AM_CONDITIONAL(M68K, test x$TARGET = xM68K)
-+AM_CONDITIONAL(M88K, test x$TARGET = xM88K)
- AM_CONDITIONAL(MICROBLAZE, test x$TARGET = xMICROBLAZE)
- AM_CONDITIONAL(METAG, test x$TARGET = xMETAG)
- AM_CONDITIONAL(MOXIE, test x$TARGET = xMOXIE)
-@@ -301,6 +310,7 @@ AM_CONDITIONAL(PA_LINUX, test x$TARGET =
- AM_CONDITIONAL(PA_HPUX, test x$TARGET = xPA_HPUX)
- AM_CONDITIONAL(PA64_HPUX, test x$TARGET = xPA64_HPUX)
- AM_CONDITIONAL(TILE, test x$TARGET = xTILE)
-+AM_CONDITIONAL(VAX, test x$TARGET = xVAX)
- AM_CONDITIONAL(XTENSA, test x$TARGET = xXTENSA)
-
- AC_HEADER_STDC
diff --git a/devel/libffi/patches/patch-src_arm_sysv.S b/devel/libffi/patches/patch-src_arm_sysv.S
index fd116b9807c..5b43e466b81 100644
--- a/devel/libffi/patches/patch-src_arm_sysv.S
+++ b/devel/libffi/patches/patch-src_arm_sysv.S
@@ -1,6 +1,6 @@
-$NetBSD: patch-src_arm_sysv.S,v 1.4 2014/06/11 11:45:04 joerg Exp $
+$NetBSD: patch-src_arm_sysv.S,v 1.5 2014/10/28 12:51:03 adam Exp $
---- src/arm/sysv.S.orig 2013-03-16 11:19:39.000000000 +0000
+--- src/arm/sysv.S.orig 2014-04-25 17:45:13.000000000 +0000
+++ src/arm/sysv.S
@@ -25,6 +25,8 @@
DEALINGS IN THE SOFTWARE.
@@ -20,23 +20,7 @@ $NetBSD: patch-src_arm_sysv.S,v 1.4 2014/06/11 11:45:04 joerg Exp $
#define UNWIND
#else
#define UNWIND @
-@@ -125,6 +127,7 @@
- nop
- .arm
- UNWIND .fnstart
-+ .cfi_startproc
- /* A hook to tell gdb that we've switched to ARM mode. Also used to call
- directly from other local arm routines. */
- #ifdef __APPLE__
-@@ -144,6 +147,7 @@ _L__\name:
- ENTRY(\name)
- #endif
- UNWIND .fnstart
-+ .cfi_startproc
- .endm
- #endif
-
-@@ -175,6 +179,7 @@ ARM_FUNC_START ffi_call_SYSV
+@@ -160,6 +162,7 @@ ARM_FUNC_START(ffi_call_SYSV)
@ Save registers
stmfd sp!, {r0-r3, fp, lr}
UNWIND .save {r0-r3, fp, lr}
@@ -44,16 +28,7 @@ $NetBSD: patch-src_arm_sysv.S,v 1.4 2014/06/11 11:45:04 joerg Exp $
mov fp, sp
UNWIND .setfp fp, sp
-@@ -228,7 +233,7 @@ ARM_FUNC_START ffi_call_SYSV
- #if defined(__SOFTFP__) || defined(__ARM_EABI__)
- cmpne r3, #FFI_TYPE_DOUBLE
- #endif
-- stmeqia r2, {r0, r1}
-+ stmiaeq r2, {r0, r1}
-
- #if !defined(__SOFTFP__) && !defined(__ARM_EABI__)
- beq LSYM(Lepilogue)
-@@ -253,6 +258,7 @@ LSYM(Lepilogue):
+@@ -238,6 +241,7 @@ LSYM(Lepilogue):
.ffi_call_SYSV_end:
UNWIND .fnend
@@ -61,7 +36,7 @@ $NetBSD: patch-src_arm_sysv.S,v 1.4 2014/06/11 11:45:04 joerg Exp $
#ifdef __ELF__
.size CNAME(ffi_call_SYSV),.ffi_call_SYSV_end-CNAME(ffi_call_SYSV)
#endif
-@@ -328,6 +334,7 @@ ARM_FUNC_START ffi_closure_SYSV
+@@ -313,6 +317,7 @@ ARM_FUNC_START(ffi_closure_SYSV)
.ffi_closure_SYSV_end:
UNWIND .fnend
@@ -69,7 +44,7 @@ $NetBSD: patch-src_arm_sysv.S,v 1.4 2014/06/11 11:45:04 joerg Exp $
#ifdef __ELF__
.size CNAME(ffi_closure_SYSV),.ffi_closure_SYSV_end-CNAME(ffi_closure_SYSV)
#endif
-@@ -410,7 +417,7 @@ LSYM(Lbase_args):
+@@ -396,7 +401,7 @@ LSYM(Lbase_args):
beq LSYM(Lepilogue_vfp)
cmp r3, #FFI_TYPE_SINT64
@@ -78,7 +53,7 @@ $NetBSD: patch-src_arm_sysv.S,v 1.4 2014/06/11 11:45:04 joerg Exp $
beq LSYM(Lepilogue_vfp)
cmp r3, #FFI_TYPE_FLOAT
-@@ -430,6 +437,7 @@ LSYM(Lepilogue_vfp):
+@@ -416,6 +421,7 @@ LSYM(Lepilogue_vfp):
.ffi_call_VFP_end:
UNWIND .fnend
@@ -86,7 +61,7 @@ $NetBSD: patch-src_arm_sysv.S,v 1.4 2014/06/11 11:45:04 joerg Exp $
.size CNAME(ffi_call_VFP),.ffi_call_VFP_end-CNAME(ffi_call_VFP)
-@@ -492,6 +500,7 @@ ARM_FUNC_START ffi_closure_VFP
+@@ -478,6 +484,7 @@ ARM_FUNC_START(ffi_closure_VFP)
.ffi_closure_VFP_end:
UNWIND .fnend