Source-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[src/trunk]: src PR port-arm/55897



details:   https://anonhg.NetBSD.org/src/rev/5869ea5df634
branches:  trunk
changeset: 1021760:5869ea5df634
user:      rin <rin%NetBSD.org@localhost>
date:      Wed Jun 16 05:21:08 2021 +0000

description:
PR port-arm/55897

Fix ABI mismatch for armhf runtime routines for floating-point arithmetics;
For hard-float arm variants, provide

(1) generic runtime routines with correct calling convention, and
(2) EABI runtime routines at the same time.

I've confirmed that no binary changes for kernels.

LGTM by skrll

diffstat:

 lib/libc/compiler_rt/Makefile.inc    |  7 +++++--
 lib/libm/compiler_rt/Makefile.inc    |  7 +++++--
 sys/external/bsd/compiler_rt/abi.mk  |  5 +++++
 sys/lib/libkern/Makefile.compiler-rt |  8 ++++++--
 4 files changed, 21 insertions(+), 6 deletions(-)

diffs (67 lines):

diff -r 4795849ea80e -r 5869ea5df634 lib/libc/compiler_rt/Makefile.inc
--- a/lib/libc/compiler_rt/Makefile.inc Wed Jun 16 05:07:49 2021 +0000
+++ b/lib/libc/compiler_rt/Makefile.inc Wed Jun 16 05:21:08 2021 +0000
@@ -1,6 +1,7 @@
-# $NetBSD: Makefile.inc,v 1.39 2020/09/02 16:22:45 jakllsch Exp $
+# $NetBSD: Makefile.inc,v 1.40 2021/06/16 05:21:08 rin Exp $
 
-COMPILER_RT_SRCDIR=    ${NETBSDSRCDIR}/sys/external/bsd/compiler_rt/dist
+COMPILER_RT_DIR=       ${NETBSDSRCDIR}/sys/external/bsd/compiler_rt
+COMPILER_RT_SRCDIR=    ${COMPILER_RT_DIR}/dist
 
 .if ${LIBC_MACHINE_ARCH} == "powerpc" || ${LIBC_MACHINE_ARCH} == "powerpc64"
 COMPILER_RT_CPU_DIR=   ${COMPILER_RT_SRCDIR}/lib/builtins/ppc
@@ -299,3 +300,5 @@
 COPTS.${src}+= -D__SOFT_FP__
 .endif
 .endfor
+
+.include "${COMPILER_RT_DIR}/abi.mk"
diff -r 4795849ea80e -r 5869ea5df634 lib/libm/compiler_rt/Makefile.inc
--- a/lib/libm/compiler_rt/Makefile.inc Wed Jun 16 05:07:49 2021 +0000
+++ b/lib/libm/compiler_rt/Makefile.inc Wed Jun 16 05:21:08 2021 +0000
@@ -1,6 +1,7 @@
-# $NetBSD: Makefile.inc,v 1.10 2016/02/27 19:06:56 joerg Exp $
+# $NetBSD: Makefile.inc,v 1.11 2021/06/16 05:21:08 rin Exp $
 
-COMPILER_RT_SRCDIR=    ${NETBSDSRCDIR}/sys/external/bsd/compiler_rt/dist
+COMPILER_RT_DIR=       ${NETBSDSRCDIR}/sys/external/bsd/compiler_rt
+COMPILER_RT_SRCDIR=    ${COMPILER_RT_DIR}/dist
 
 .if ${MACHINE_CPU} == "powerpc"
 COMPILER_RT_CPU_DIR=   ${COMPILER_RT_SRCDIR}/lib/builtins/ppc
@@ -38,3 +39,5 @@
 COPTS.${src}+= -Wno-error=missing-prototypes
 .  endif
 .endfor
+
+.include "${COMPILER_RT_DIR}/abi.mk"
diff -r 4795849ea80e -r 5869ea5df634 sys/external/bsd/compiler_rt/abi.mk
--- /dev/null   Thu Jan 01 00:00:00 1970 +0000
+++ b/sys/external/bsd/compiler_rt/abi.mk       Wed Jun 16 05:21:08 2021 +0000
@@ -0,0 +1,5 @@
+# $NetBSD: abi.mk,v 1.1 2021/06/16 05:21:08 rin Exp $
+
+.if !empty(MACHINE_ARCH:Mearm*hf*)
+CPPFLAGS+=     -DCOMPILER_RT_ARMHF_TARGET
+.endif
diff -r 4795849ea80e -r 5869ea5df634 sys/lib/libkern/Makefile.compiler-rt
--- a/sys/lib/libkern/Makefile.compiler-rt      Wed Jun 16 05:07:49 2021 +0000
+++ b/sys/lib/libkern/Makefile.compiler-rt      Wed Jun 16 05:21:08 2021 +0000
@@ -1,6 +1,7 @@
-# $NetBSD: Makefile.compiler-rt,v 1.12 2020/04/24 00:22:57 rin Exp $
+# $NetBSD: Makefile.compiler-rt,v 1.13 2021/06/16 05:21:09 rin Exp $
 
-COMPILER_RT_SRCDIR=    ${NETBSDSRCDIR}/sys/external/bsd/compiler_rt/dist
+COMPILER_RT_DIR=       ${NETBSDSRCDIR}/sys/external/bsd/compiler_rt
+COMPILER_RT_SRCDIR=    ${COMPILER_RT_DIR}/dist
 
 .if ${MACHINE_ARCH} == "powerpc"
 COMPILER_RT_CPU_DIR=   ${COMPILER_RT_SRCDIR}/lib/builtins/ppc
@@ -134,3 +135,6 @@
 COPTS.udivmoddi4.c+=   -fnon-call-exceptions
 . endif
 .endif
+
+# XXX This makes no binary changes at the moment.
+.include "${COMPILER_RT_DIR}/abi.mk"



Home | Main Index | Thread Index | Old Index