From ca57e33abb4f381ea6af2ae5dd2669453aed2a65 Mon Sep 17 00:00:00 2001 From: Augustin Cavalier Date: Wed, 1 Aug 2018 19:04:25 -0400 Subject: [PATCH] libroot/glibc: Use .double instead of .tfloat on Clang. Clang's equivalent of .tfloat is .x86_fp80, but apparently that is not enabled for Haiku. So for now, use .double instead. This is the same thing MinGW does. --- src/system/libroot/posix/glibc/arch/x86_64/s_log1pl.S | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/system/libroot/posix/glibc/arch/x86_64/s_log1pl.S b/src/system/libroot/posix/glibc/arch/x86_64/s_log1pl.S index ac2bd22a4f..d6ee1d2f07 100644 --- a/src/system/libroot/posix/glibc/arch/x86_64/s_log1pl.S +++ b/src/system/libroot/posix/glibc/arch/x86_64/s_log1pl.S @@ -20,7 +20,11 @@ RCSID("$NetBSD: s_log1p.S,v 1.7 1995/05/09 00:10:58 jtc Exp $") -1 + sqrt(2) / 2 <= x <= 1 - sqrt(2) / 2 0.29 is a safe value. */ +#ifndef __clang__ limit: .tfloat 0.29 +#else +limit: .double 0.29 /* TODO: figure out why x86_fp80 causes clang to error */ +#endif /* Please note: we use a double value here. Since 1.0 has an exact representation this does not effect the accuracy but it helps to optimize the code. */