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



_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to