qiucf marked 2 inline comments as done. qiucf added inline comments.
================ Comment at: clang/include/clang/Basic/TargetInfo.h:131 + Float128, + Ibm128 }; ---------------- rjmccall wrote: > This is necessary because it's possible to derive this type from a mode > attribute? Yes, `__attribute__((mode(IF)))` ================ Comment at: clang/lib/CodeGen/TargetInfo.cpp:5159 BT->getKind() == BuiltinType::LongDouble || + BT->getKind() == BuiltinType::Ibm128 || (getContext().getTargetInfo().hasFloat128Type() && ---------------- rjmccall wrote: > I hesitate to ask this, but does `__ibm128` form homogeneous aggregates with > `double`s? > Homogeneous floating-point aggregates can have up to four IBM EXTENDED > PRECISION members, four IEEE BINARY 128 QUADRUPLE PRECISION members, four > _Decimal128 members, or eight members of other floating-point types. (Unions > are treated as their largest member. For homogeneous unions, different union > alternatives may have different sizes, provided that all union members are > homogeneous with respect to each other.) They are passed in floating-point > registers if parameters of that type would be passed in floating-point > registers. They are passed in vector registers if parameters of that type > would be passed in vector registers. They are passed as if each member was > specified as a separate parameter. Yes. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D93377/new/ https://reviews.llvm.org/D93377 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits