This patch reverts incorrect IR - introduced in commit d11ec6f67e45 (https://reviews.llvm.org/rGd11ec6f67e45c630ab87bfb6010dcc93e89542fc) - for complex types declared using attribute((mode(TC))). TC mode corresponds to __float128 type.
Details
Details
Diff Detail
Diff Detail
- Repository
- rG LLVM Github Monorepo
Event Timeline
Comment Actions
For posterity in case someone tracks down this review: TC corresponds to an unspecified 128-bit format, which on some targets is a double-double format (like __ibm128_t) and on others is float128_t. The bug in the previous patch is that long double is only safe to use when it's known to be one of those formats.
Patch LGTM.