[PATCH] D53608: [builtins] Build float128 soft float builtins for x86_64.
Eli Friedman via Phabricator via cfe-commits
cfe-commits at lists.llvm.org
Tue Oct 23 15:44:31 PDT 2018
efriedma added a comment.
`__extendxftf2` and `__trunctfxf2` are for conversions between x86 long double and `__float128`; you'll need to write implementations yourself. (That should be a separate patch.)
> Thanks Eli. I also found out that GCC 4.9 does not seem to have these defined even though it supports `__float128`.
gcc 5 has the define; that's good enough.
Missing changes to run the unittests (test/builtins/Unit/) for the new functions. Unfortunately, it looks like that will be a large patch because they use "long double" and "__LDBL_MANT_DIG__" explicitly all over the place.
================
Comment at: lib/builtins/fp_lib.h:107
+// __LDBL_MANT_DIG__ is set to 64 for x86_64.
+#if __LDBL_MANT_DIG__ == 113 || defined(__x86_64__)
#define CRT_LDBL_128BIT
----------------
Instead of checking for `__x86_64__`, this should probably also check for the FLOAT128 defines.
Repository:
rCRT Compiler Runtime
https://reviews.llvm.org/D53608
More information about the cfe-commits
mailing list