[PATCH] D93377: [Clang] Add __ibm128 type to represent ppc_fp128
John McCall via Phabricator via cfe-commits
cfe-commits at lists.llvm.org
Tue Mar 23 13:57:12 PDT 2021
rjmccall added inline comments.
================
Comment at: clang/lib/AST/ItaniumMangle.cpp:2668
// ::= g # __float128
+ // ::= g # __ibm128
// UNSUPPORTED: ::= Dd # IEEE 754r decimal floating point (64 bits)
----------------
jwakely wrote:
> steven.zhang wrote:
> > This is a bit confusing as the 'g' is for both __float128 and __ibm128. I know that PowerPC will mangle the __float128 as "u9__ieee128", and "g" for __ibm128. But c++filt demangle the "g" as __float128 which seems not right.
> The (de)mangling is very confusing, but that's consistent with gcc.
> See comment 3 and 4 at https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98389#c3
>
> I think double-double should never have used `g` it should have been something else (e.g. `u8__ibm128`), and then we could have `g` for the `__ieee128` (aka `__float128`) type. But it is many years too late to change that now.
Yeah, I think that's an unfortunate but ultimately understandable platform decision.
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D93377/new/
https://reviews.llvm.org/D93377
More information about the cfe-commits
mailing list