Source-Changes-HG archive

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

[src/trunk]: src/lib/libc/compiler_rt Add ARM (EABI) specific sources. Split ...



details:   https://anonhg.NetBSD.org/src/rev/a26b3bc66976
branches:  trunk
changeset: 325068:a26b3bc66976
user:      joerg <joerg%NetBSD.org@localhost>
date:      Tue Dec 03 02:28:51 2013 +0000

description:
Add ARM (EABI) specific sources. Split off code that requires C11,
unwind support in libc or overlaps with soft-float in preparation for
using compiler-rt in the non-clang case.

diffstat:

 lib/libc/compiler_rt/Makefile.inc |  44 ++++++++++++++++++++++++++++++++------
 1 files changed, 37 insertions(+), 7 deletions(-)

diffs (96 lines):

diff -r 8ad295e9d558 -r a26b3bc66976 lib/libc/compiler_rt/Makefile.inc
--- a/lib/libc/compiler_rt/Makefile.inc Tue Dec 03 00:19:56 2013 +0000
+++ b/lib/libc/compiler_rt/Makefile.inc Tue Dec 03 02:28:51 2013 +0000
@@ -1,4 +1,4 @@
-# $NetBSD: Makefile.inc,v 1.1 2013/07/04 22:14:43 joerg Exp $
+# $NetBSD: Makefile.inc,v 1.2 2013/12/03 02:28:51 joerg Exp $
 
 COMPILER_RT_SRCDIR=    ${NETBSDSRCDIR}/sys/external/bsd/compiler_rt/dist
 
@@ -10,7 +10,6 @@
 COMPILER_RT_ARCH_DIR=  ${COMPILER_RT_SRCDIR}/lib/${MACHINE_ARCH}
 .endif
 
-
 .PATH: ${COMPILER_RT_CPU_DIR}
 .PATH: ${COMPILER_RT_ARCH_DIR}
 .PATH: ${COMPILER_RT_SRCDIR}/lib
@@ -23,6 +22,22 @@
 #      divdc3.c \
 #      divsc3.c
 
+.if ${HAVE_LLVM:Uno} == "yes"
+# Requires C11 support
+GENERIC_SRCS+= atomic.c
+.endif
+
+.if ${HAVE_LIBGCC} == "no"
+# Requires unwind support
+GENERIC_SRCS+= \
+       gcc_personality_v0.c
+
+# Conflicts with soft-float
+GENERIC_SRCS+= \
+       comparedf2.c \
+       comparesf2.c
+.endif
+
 GENERIC_SRCS+= \
        absvdi2.c \
        absvsi2.c \
@@ -36,14 +51,11 @@
        ashlti3.c \
        ashrdi3.c \
        ashrti3.c \
-       atomic.c \
        clzdi2.c \
        clzsi2.c \
        clzti2.c \
        cmpdi2.c \
        cmpti2.c \
-       comparedf2.c \
-       comparesf2.c \
        ctzdi2.c \
        ctzsi2.c \
        ctzti2.c \
@@ -90,7 +102,6 @@
        floatuntidf.c \
        floatuntisf.c \
        floatuntixf.c \
-       gcc_personality_v0.c \
        int_util.c \
        lshrdi3.c \
        lshrti3.c \
@@ -155,12 +166,31 @@
        gcc_qsub.c
 .endif
 
+.if ${MACHINE_CPU} == "arm"
+.if !empty(LIBC_MACHINE_ARCH:Mearm*)
+GENERIC_SRCS+= \
+       aeabi_dcmp.S \
+       aeabi_fcmp.S \
+       aeabi_idivmod.S \
+       aeabi_ldivmod.S \
+       aeabi_uidivmod.S \
+       aeabi_uldivmod.S
+.endif
+
+GENERIC_SRCS+= \
+       bswapdi2.S \
+       bswapsi2.S
+.endif
+
 .for src in ${GENERIC_SRCS}
 .  if exists(${COMPILER_RT_CPU_DIR}/${src:R}.S) || \
       exists(${COMPILER_RT_ARCH_DIR}/${src:R}.S)
 SRCS+= ${src:R}.S
 .  else
 SRCS+= ${src}
-COPTS.${src}+= -Wno-error=missing-prototypes
+COPTS.${src}+= -Wno-missing-prototypes \
+               -Wno-old-style-definition \
+               -Wno-strict-prototypes \
+               -Wno-uninitialized
 .  endif
 .endfor



Home | Main Index | Thread Index | Old Index