[PATCH] D59744: Fix i386 ABI "__m64" type bug

John McCall via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Tue Jun 18 12:06:20 PDT 2019


rjmccall added a comment.

In D59744#1548919 <https://reviews.llvm.org/D59744#1548919>, @efriedma wrote:

> > Now, we could theoretically use a different ABI rule for vectors defined with Clang-specific extensions, but that seems like it would cause quite a few problems of its own.
>
> I think we can't reasonably impose this ABI rule on vectors defined with ext_vector_type: that makes it impossible to build portable OpenCL code for 32-bit x86, given the side-effects of introducing any use of the x86_mmx type.


Sorry, I've remained somewhat intentionally ignorant of the issues here.  Are you saying that using MMX in LLVM requires source-level workarounds in some way, and so we can't lower portable code to use MMX because that code will (reasonably) lack those workarounds?  If that's true, then fixing that seems like a blocker to landing this patch; it is better to be ABI-non-compliant than to produce broken code.


Repository:
  rL LLVM

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

https://reviews.llvm.org/D59744





More information about the llvm-commits mailing list