[PATCH] D139450: Warn about unsupported ibmlongdouble
Qiu Chaofan via Phabricator via cfe-commits
cfe-commits at lists.llvm.org
Thu Dec 8 07:32:30 PST 2022
qiucf added a comment.
Thanks for the patch! But does libc++ support to be built with `-mabi=ieeelongdouble` now? (like libstdc++, if it works correctly, it should co-exist and be linked with different long double ABIs)
================
Comment at: clang/lib/Driver/ToolChains/PPCLinux.cpp:96
bool HasUnsupportedCXXLib =
- StdLib == CST_Libcxx ||
+ (StdLib == CST_Libcxx && !defaultToIEEELongDouble()) ||
(StdLib == CST_Libstdcxx &&
----------------
`SupportIEEEFloat128` checks the library version:
* If using libstdc++, then libstdc++ (GCC) >= 12.1.0 is okay.
* If using libc++, then sorry, no libc++ supports `-mabi=ieeelongdouble` now.
* Glibc should >= 2.32
If the assumptions are still right, this changes its meaning (and `supportIBMLongDouble` has different meaning from it).
================
Comment at: clang/test/Driver/lit.local.cfg:26
+if config.ppc_linux_default_ieeelongdouble == "ON":
+ config.available_features.add('ppc_linux_default_ieeelongdouble')
----------------
Can we assume if we are compiling with `-mabi=ieeelongdouble`, then libc++ 'must' be built with the same long double ABI? If I understand correctly, they're unrelated.
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D139450/new/
https://reviews.llvm.org/D139450
More information about the cfe-commits
mailing list