[PATCH] D61764: [LV] Suppress vectorization in some nontemporal cases

Warren Ristow via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Tue May 28 11:16:07 PDT 2019

wristow marked an inline comment as done.
wristow added a comment.

In D61764#1517571 <https://reviews.llvm.org/D61764#1517571>, @RKSimon wrote:

> Would it be possible to add tests where non-temporal load/stores successfully vectorize?

Glad to see your comment about SSE4A supporting nt-stores at any alignment.  With that, I can make an X86 test-case that does vectorize.

Comment at: lib/Target/X86/X86TargetTransformInfo.cpp:3080
+  if (DataType->isFloatTy() || DataType->isDoubleTy())
+    return ST->hasSSE4A();
RKSimon wrote:
> SSE4A nt-stores can happen with any alignment, and AFAICT without any perf penalty.
I didn't realize that.  I'll update the patch, and include a test for it.



More information about the llvm-commits mailing list