rjmccall added inline comments.

================
Comment at: clang/lib/CodeGen/TargetInfo.cpp:1603
+  if (IsLinuxABI && Ty->isFloatingType() && getContext().getTypeSize(Ty) == 
128)
+    return 16;
+
----------------
I don't think this should be restricted to just Linux.  It's a fix for all OSes 
that support `__float128`, i.e. Haiku, Linux, OpenBSD, and Solaris.

It would be better to check the floating-point semantics rather than relying on 
the type size, since the type size could easily be rounded up to 128 for 
alignment reasons.

Should this also apply to structs containing `__float128`, the same way that 
SIMD does below?


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D86668/new/

https://reviews.llvm.org/D86668

_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to