It's supposed to tell you whether the target arch supports it. So it's
definitely something the compiler knows better than the C library, which is
why I didn't just work around this myself 😀

Clang may not be correct right now, but if that's true, (a) it's already
lying to us through the other macro and (b) it's still in a better position
to know the truth.

On Sep 15, 2017 10:12, "Pirama Arumuga Nainar via Phabricator" <
revi...@reviews.llvm.org> wrote:

pirama added a comment.

In https://reviews.llvm.org/D37302#871794, @joerg wrote:

> So what about targets that don't support subnormals? I'm moderately sure
ARM falls into this category given the right phase of the moon.


Clang defines `__FLT_HAS_DENORM__` and friends unconditionally, so I
thought we could do this for `FLT_HAS_SUBNORM` as well, considering that
gcc did the same.  But that might be misleading because gcc's float.h was
just for the target of that particular gcc build.

Am I right to understand that `__FLT_HAS_DENORM__` signifies *compiler*
support for denorms as opposed to support on the *platforms* supported?  If
so, it might support our alternative consideration of defining these macros
in the bionic/libc headers for Android (and rely on the include_next
similar to Windows and Darwin).


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

Reply via email to