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

John McCall via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Tue Jun 18 16:16:44 PDT 2019


rjmccall added a comment.

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

> If we're going to insert emms instructions automatically, it doesn't really make sense to do it in the frontend; the backend could figure out the most efficient placement itself.  (See lib/Target/X86/X86VZeroUpper.cpp, which implements similar logic for AVX.)  The part I'd be worried about is the potential performance hit from calling emms in places where other compilers wouldn't, for code using MMX intrinsics.


It would certainly be simpler for the frontend if the backend did this — in fact, even if the "frontend" was going to do it, I would have suggested doing it as a pass over the emitted IR rather than a special case in IRGen.  Anyway, I'm open to any reasonable option; at this point, I'm just laying out the basic requirements for getting this patch back in, because the current patch is invalid given LLVM's current requirements.


Repository:
  rL LLVM

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

https://reviews.llvm.org/D59744





More information about the cfe-commits mailing list