diff options
author | Stan Shebs <stanshebs@google.com> | 2018-02-06 15:53:53 -0800 |
---|---|---|
committer | Stan Shebs <stanshebs@google.com> | 2018-02-06 15:53:53 -0800 |
commit | dc0aceae66b013c8ae16eabc3427767a72b37638 (patch) | |
tree | b228a3a4226205caba473433930b7b56f160996a | |
parent | 2ceff7a1d1e55b6926ea6694c9263c0ea49aa9bb (diff) | |
download | glibc-dc0aceae66b013c8ae16eabc3427767a72b37638.tar.gz glibc-dc0aceae66b013c8ae16eabc3427767a72b37638.tar.xz glibc-dc0aceae66b013c8ae16eabc3427767a72b37638.zip |
Work around lack of .tfloat in clang assembler
-rw-r--r-- | sysdeps/x86_64/fpu/s_log1pl.S | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/sysdeps/x86_64/fpu/s_log1pl.S b/sysdeps/x86_64/fpu/s_log1pl.S index 947e5e4552..5fe18c60e4 100644 --- a/sysdeps/x86_64/fpu/s_log1pl.S +++ b/sysdeps/x86_64/fpu/s_log1pl.S @@ -17,7 +17,13 @@ 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. */ +#if defined(__clang__) +/* Necessary in the absence of a .tfloat directive in the assembler. */ +limit: + .byte 0xe1, 0x7a, 0x14, 0xae, 0x47, 0xe1, 0x7a, 0x94, 0xfd, 0x3f +#else limit: .tfloat 0.29 +#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. */ |