[PATCH] D45616: [X86] Lower _mm[256|512]_cmp[.]_mask intrinsics to native llvm IR

Gabor Buella via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Thu May 10 01:11:41 PDT 2018


GBuella added a comment.

In https://reviews.llvm.org/D45616#1093514, @efriedma wrote:

> There is no difference between "signalling" and "non-signalling" unless you're using "#pragma STDC FENV_ACCESS", which is currently not supported.  Presumably the work to implement that will include some LLVM IR intrinsic which can encode the difference, but for now we can ignore it.


Does that mean, it is OK to generate the `vcmpltpd` instruction for both of these intrinsic calls:

  _mm_cmp_ps_mask(a, b, _CMP_EQ_OQ);
  _mm_cmp_ps_mask(a, b, _CMP_EQ_OS);

?
In that case we can lower both of these to `fcmp olt`.
I'm still not sure, if this is what a user would expect...


Repository:
  rC Clang

https://reviews.llvm.org/D45616





More information about the cfe-commits mailing list