[PATCH] D47182: [X86] Move all Intel defined intrinsic includes into immintrin.h

2018-05-23 Thread David Kreitzer via Phabricator via cfe-commits
DavidKreitzer accepted this revision. DavidKreitzer added a comment. This revision is now accepted and ready to land. Thanks, Craig. LGTM. https://reviews.llvm.org/D47182 ___ cfe-commits mailing list cfe-commits@lists.llvm.org

[PATCH] D47182: [X86] Move all Intel defined intrinsic includes into immintrin.h

2018-05-23 Thread David Kreitzer via Phabricator via cfe-commits
DavidKreitzer added a comment. Hi Craig, just one comment on the details. Everything else looks good. Comment at: lib/Headers/x86intrin.h:47 - -#if !defined(_MSC_VER) || __has_feature(modules) || defined(__POPCNT__) -#include I see that you are removing this

[PATCH] D47182: [X86] Move all Intel defined intrinsic includes into immintrin.h

2018-05-22 Thread David Kreitzer via Phabricator via cfe-commits
DavidKreitzer added a comment. I agree with the changes in x86intrin.h and immintrin.h. For the others, I question whether we ought to recommend inclusion of x86intrin.h or immintrin.h. The distinction as I understand it is that immintrin.h is used for Intel-specific intrinsics while

[PATCH] D47174: [X86] Move 128-bit f16c intrinsics to __emmintrin_f16c.h include from emmintrin.h. Move 256-bit f16c intrinsics back to f16cintrin.h

2018-05-22 Thread David Kreitzer via Phabricator via cfe-commits
DavidKreitzer added a comment. A bit of history: In icc, the f16<=>f32 conversion intrinsics are a bit of an anomaly in that they can be implemented using either native code or emulation code based on the target architecture switch. See https://godbolt.org/g/bQy7xY (thanks, Craig, for the

[PATCH] D46863: [X86] Use __builtin_convertvector to implement some of the packed integer to packed float conversion intrinsics.

2018-05-21 Thread David Kreitzer via Phabricator via cfe-commits
DavidKreitzer accepted this revision. DavidKreitzer added a comment. This revision is now accepted and ready to land. I had actually done that as part of my initial review, so LGTM. Repository: rC Clang https://reviews.llvm.org/D46863 ___

[PATCH] D47029: [X86] Remove some preprocessor feature checks from intrinsic headers

2018-05-18 Thread David Kreitzer via Phabricator via cfe-commits
DavidKreitzer added a comment. Looks right to me, Craig. https://reviews.llvm.org/D47029 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[PATCH] D46863: [X86] Use __builtin_convertvector to implement some of the packed integer to packed float conversion intrinsics.

2018-05-16 Thread David Kreitzer via Phabricator via cfe-commits
DavidKreitzer added a comment. This looks good to me, Craig. I am not worried about the constant folding issue, as I think constant folding these conversion intrinsics (assuming round-to-nearest) is a perfectly valid optimization in the absence of FENV_ACCESS. (FWIW, we don't do this constant