D40673: Add _Float128 as alias to __float128 to enable compilations on Fedora27/glibc2-26

Blower, Melanie via cfe-commits cfe-commits at lists.llvm.org
Thu Jan 11 13:33:08 PST 2018



> -----Original Message-----
> From: Szabolcs Nagy via Phabricator [mailto:reviews at reviews.llvm.org]
> Sent: Thursday, January 11, 2018 6:13 AM
> To: Blower, Melanie <melanie.blower at intel.com>; Keane, Erich
> <erich.keane at intel.com>; scanon at apple.com; roger.ferreribanez at arm.com;
> sjoerd.meijer at arm.com; jlebar at google.com;
> hubert.reinterpretcast at gmail.com
> Cc: szabolcs.nagy at arm.com; james.greenhalgh at arm.com;
> eli.friedman at gmail.com; efriedma at codeaurora.org; richard at metafoo.co.uk;
> cfe-commits at lists.llvm.org; mlekena at skidmore.edu; jkorous at apple.com;
> shenhan at google.com; tra at google.com
> Subject: [PATCH] D40673: Add _Float128 as alias to __float128 to enable
> compilations on Fedora27/glibc2-26
> 
> nsz added a comment.
> 
> if clang wants to provide _Float128 then the f128 constant suffix (specified by
> TS18661-3) and __builtin_inff128, __builtin_nanf128, __builtin_nansf128,
> __builtin_huge_valf128 (gcc builtins required by math.h) need to be supported
> too.
[Blower, Melanie] You are right, there are f128 builtins missing and also we need the f128 literal suffix. There may be other builtins missing as well.  Some of glibc sources refer to __FLT_EVAL_METHOD_TS_18661_3__ does clang support that?
> 
> as this patch is committed clang is broken (cannot use glibc headers) on any
> target where long double is quad precision (aarch64, mips64, s390, sparc64,
> riscv64) even if glibc fixes the >=gcc-7 check to something that works for clang:
> either the _Float128 typedef conflicts with the definition by clang or the
> suffixes/builtins are missing.
> 
> 
> Repository:
>   rC Clang
> 
> https://reviews.llvm.org/D40673
> 
> 



More information about the cfe-commits mailing list