OSDN Git Service

[builtins] Omit 80-bit builtins on Android and MSVC
authorRyan Prichard <rprichard@google.com>
Thu, 16 Jul 2020 22:10:22 +0000 (15:10 -0700)
committerRyan Prichard <rprichard@google.com>
Thu, 16 Jul 2020 22:11:26 +0000 (15:11 -0700)
commit15b37e1cfa5f09af376a47a1bc67d67bb5c7848b
treebc3737b974b539e67b2025460e5f9907c63f2c2f
parentc489ae2a8605761d784171ff7152dfc75ab7c064
[builtins] Omit 80-bit builtins on Android and MSVC

long double is a 64-bit double-precision type on:
 - MSVC (32- and 64-bit x86)
 - Android (32-bit x86)

long double is a 128-bit quad-precision type on x86_64 Android.

The assembly variants of the 80-bit builtins are correct, but some of
the builtins are implemented in C and require that long double be the
80-bit type passed via an x87 register.

Reviewed By: compnerd

Differential Revision: https://reviews.llvm.org/D82153
compiler-rt/lib/builtins/CMakeLists.txt