Fix ARM floating point for services
Change-Id: Ic5772a7a78ea13ab6bb8db3ffd7f0906fd1380cf
This commit is contained in:
parent
5308df03ed
commit
ecad34966a
2 changed files with 40 additions and 1 deletions
|
@ -57,3 +57,43 @@ ${f}: ${LIBCARCHDIR}/gen/${f:C/\.o/.S/}
|
|||
OBJS+= ${f}
|
||||
CLEANFILES+= ${f}
|
||||
.endfor
|
||||
|
||||
.for f in \
|
||||
__aeabi_dcmpeq.o __aeabi_fcmpeq.o \
|
||||
__aeabi_dcmpge.o __aeabi_fcmpge.o \
|
||||
__aeabi_dcmpgt.o __aeabi_fcmpgt.o \
|
||||
__aeabi_dcmple.o __aeabi_fcmple.o \
|
||||
__aeabi_dcmplt.o __aeabi_fcmplt.o \
|
||||
__aeabi_dcmpun.o __aeabi_fcmpun.o
|
||||
CPPFLAGS.${f:C/\.o/.c/}+= -I${LIBCARCHDIR}/softfloat -I${LIBCDIR}/softfloat
|
||||
CPPFLAGS.${f:C/\.o/.c/}+= -DSOFTFLOAT_FOR_GCC
|
||||
${f}: ${LIBCARCHDIR}/softfloat/${f:C/\.o/.c/}
|
||||
OBJS+= ${f}
|
||||
CLEANFILES+= ${f}
|
||||
.endfor
|
||||
|
||||
.for f in \
|
||||
fpgetround.o fpsetround.o fpgetmask.o fpsetmask.o \
|
||||
fpgetsticky.o fpsetsticky.o
|
||||
CPPFLAGS.${f:C/\.o/.c/}+= -I${LIBCARCHDIR}/softfloat -I${LIBCDIR}/softfloat
|
||||
CPPFLAGS.${f:C/\.o/.c/}+= -DSOFTFLOAT_FOR_GCC
|
||||
${f}: ${LIBCDIR}/softfloat/${f:C/\.o/.c/}
|
||||
OBJS+= ${f}
|
||||
CLEANFILES+= ${f}
|
||||
.endfor
|
||||
|
||||
SOFTFLOAT_BITS?=64
|
||||
.for f in \
|
||||
softfloat.o
|
||||
CPPFLAGS.${f:C/\.o/.c/}+= -I${LIBCARCHDIR}/softfloat -I${LIBCDIR}/softfloat
|
||||
CPPFLAGS.${f:C/\.o/.c/}+= -DSOFTFLOAT_FOR_GCC
|
||||
${f}: ${LIBCDIR}/softfloat/bits${SOFTFLOAT_BITS}/${f:C/\.o/.c/}
|
||||
OBJS+= ${f}
|
||||
CLEANFILES+= ${f}
|
||||
.endfor
|
||||
|
||||
.if defined(HAVE_GCC) && ${HAVE_GCC} >= 45
|
||||
.if (${MACHINE_CPU} == "arm")
|
||||
COPTS.softfloat.c+= -Wno-enum-compare -fno-tree-vrp
|
||||
.endif
|
||||
.endif
|
||||
|
|
|
@ -27,7 +27,6 @@ LDADD+= -lminc
|
|||
DPADD+= ${LIBMINC}
|
||||
|
||||
.if ${MACHINE_ARCH} == "earm"
|
||||
LDADD+= -lc_vfp
|
||||
|
||||
# LSC: On ARM, when compiling statically, with gcc, lgcc_eh is required
|
||||
.if ${PROG:U} != "kernel" && !empty(CC:M*gcc)
|
||||
|
|
Loading…
Reference in a new issue