summaryrefslogtreecommitdiffstats
path: root/llvm
diff options
context:
space:
mode:
authorMohammed Agabaria <mohammed.agabaria@intel.com>2017-01-25 09:14:48 +0000
committerMohammed Agabaria <mohammed.agabaria@intel.com>2017-01-25 09:14:48 +0000
commit20caee95e1aacb604ed1f7f946debeb58b793c8e (patch)
treea09a902e16c75c93f5d5694d3a0fbf9261a7f6d4 /llvm
parentbc934524206e8df60b0a05ef3f9b17b180594da4 (diff)
downloadbcm5719-llvm-20caee95e1aacb604ed1f7f946debeb58b793c8e.tar.gz
bcm5719-llvm-20caee95e1aacb604ed1f7f946debeb58b793c8e.zip
[X86] enable memory interleaving for X86\SLM arch.
Differential Revision: https://reviews.llvm.org/D28547 llvm-svn: 293040
Diffstat (limited to 'llvm')
-rw-r--r--llvm/lib/Target/X86/X86TargetTransformInfo.cpp2
-rw-r--r--llvm/test/Transforms/LoopVectorize/X86/interleaving.ll1
2 files changed, 2 insertions, 1 deletions
diff --git a/llvm/lib/Target/X86/X86TargetTransformInfo.cpp b/llvm/lib/Target/X86/X86TargetTransformInfo.cpp
index 073584870bb..bd7fa9ca617 100644
--- a/llvm/lib/Target/X86/X86TargetTransformInfo.cpp
+++ b/llvm/lib/Target/X86/X86TargetTransformInfo.cpp
@@ -2147,7 +2147,7 @@ bool X86TTIImpl::enableInterleavedAccessVectorization() {
// TODO: We expect this to be beneficial regardless of arch,
// but there are currently some unexplained performance artifacts on Atom.
// As a temporary solution, disable on Atom.
- return !(ST->isAtom() || ST->isSLM());
+ return !(ST->isAtom());
}
// Get estimation for interleaved load/store operations and strided load.
diff --git a/llvm/test/Transforms/LoopVectorize/X86/interleaving.ll b/llvm/test/Transforms/LoopVectorize/X86/interleaving.ll
index de5db532438..9294c92b575 100644
--- a/llvm/test/Transforms/LoopVectorize/X86/interleaving.ll
+++ b/llvm/test/Transforms/LoopVectorize/X86/interleaving.ll
@@ -1,4 +1,5 @@
; RUN: opt -S -mtriple=x86_64-pc_linux -loop-vectorize -instcombine < %s | FileCheck %s --check-prefix=NORMAL
+; RUN: opt -S -mtriple=x86_64-pc_linux -loop-vectorize -instcombine -mcpu=slm < %s | FileCheck %s --check-prefix=NORMAL
; RUN: opt -S -mtriple=x86_64-pc_linux -loop-vectorize -instcombine -mcpu=atom < %s | FileCheck %s --check-prefix=ATOM
; NORMAL-LABEL: foo
OpenPOWER on IntegriCloud