[PATCH] D109948: [Clang] Enable _Complex __ibm128 type
John McCall via Phabricator via cfe-commits
cfe-commits at lists.llvm.org
Mon Sep 27 21:03:52 PDT 2021
rjmccall added inline comments.
================
Comment at: clang/include/clang/AST/ASTContext.h:1095
CanQualType FloatComplexTy, DoubleComplexTy, LongDoubleComplexTy;
- CanQualType Float128ComplexTy;
+ CanQualType Float128ComplexTy, Ibm128ComplexTy;
CanQualType VoidPtrTy, NullPtrTy;
----------------
Huh. I don't know why we precompute these. I mean, it's not a huge start-up overhead for the compiler, but it's not nothing, and the use in `getFloatingTypeOfSizeWithinDomain` is not at all worth optimizing.
Would you mind writing up a patch that rips all of these out and makes the use-sites just build the appropriate complex type as needed? And then we can land a patch for this that just does the one-liner to allow `_Complex __ibm128`.
================
Comment at: clang/lib/Sema/Sema.cpp:1898
+ (&Sem == &llvm::APFloat::PPCDoubleDouble() &&
+ !Context.getTargetInfo().hasIbm128Type()))
LongDoubleMismatched = true;
----------------
Why is this change in this patch?
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D109948/new/
https://reviews.llvm.org/D109948
More information about the cfe-commits
mailing list