[PATCH] D90208: [PowerPC] [Clang] Define macros to identify quad-fp semantics
Qiu Chaofan via Phabricator via cfe-commits
cfe-commits at lists.llvm.org
Tue Nov 3 00:32:24 PST 2020
qiucf added inline comments.
================
Comment at: clang/lib/Basic/Targets/PPC.cpp:122
if (LongDoubleWidth == 128) {
Builder.defineMacro("__LONG_DOUBLE_128__");
Builder.defineMacro("__LONGDOUBLE128");
----------------
steven.zhang wrote:
> Can you please double check if we need to define these two macros if PPC IEEE long double enabled ? And also double check if they can be controlled by options.
Yes. GCC shows expected behavior that `__LONG_DOUBLE_IEEE128__` is defined under `-mabi=ieeelongdouble` while `__LONG_DOUBLE_IBM128__` is defined when not. Some libraries may rely on this macro. (see https://www.openwall.com/lists/musl/2019/06/30/8)
In clang, currently we can only use `__LDBL_MANT_DIG__` to guess current 128-bit fp semantics. (106 for IBM-quad, 113 for IEEE-quad). We need to implement dedicated macros.
And I'll keep the `FIXME` since it's not related to this revision.
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D90208/new/
https://reviews.llvm.org/D90208
More information about the cfe-commits
mailing list