tech-userlevel archive

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

Re: float128 in libstdc++



On 23.06.2017 22:27, Kamil Rytarowski wrote:
> Our GNU libstdc++ headers enable float128 types on at least i386 and amd64.
> 
> Clang/NetBSD using libstdc++ is not prepared to use these types, it
> results in build failures of popular applications like CMake.
> 
> Solutions:
>  1. Teach Clang to use float128
> [Functional and pending patch has been submitted upstream]
> 
>  2. Restrict float128 in libstdc++ to GCC (or at least disable on Clang)
> 
> /usr/include/g++/bits/*/c++config.h
> 
> #if !defined(__clang__)
> /* Define if __float128 is supported on this host. */
> #define _GLIBCXX_USE_FLOAT128 1
> #endif
> 

I'm going to commit this code as an intermediate solution. I will also
blacklist IntelCC.

I will hold on with other moves till getting compiler-rt in LLVM support
in line with libstdc++ for x86 platforms.

I will ask for pull-request to -8.

>  3. Disable float128 in libstdc++ for everybody.
> 
> 
> The first solution is being rejected by Joerg on LLVM review as there
> might be incomplete support in lib[std]c++. I have no personal
> preference which way to go.
> 
> Other systems go for (1.) [OpenBSD, Linux, Cygwin etc.].
> 


Attachment: signature.asc
Description: OpenPGP digital signature



Home | Main Index | Thread Index | Old Index