summaryrefslogtreecommitdiffstats
path: root/llvm/test/Transforms
diff options
context:
space:
mode:
authorMichael Zolotukhin <mzolotukhin@apple.com>2015-06-19 17:40:15 +0000
committerMichael Zolotukhin <mzolotukhin@apple.com>2015-06-19 17:40:15 +0000
commit4d8ffa082c19eeb6c07ec3f82b06604d66c18949 (patch)
tree98c1940f82bcf5841ea66d4ed3716a900c343ee4 /llvm/test/Transforms
parent5eb5eb59fc8ba5be0e9642ec90da88d79865fda2 (diff)
downloadbcm5719-llvm-4d8ffa082c19eeb6c07ec3f82b06604d66c18949.tar.gz
bcm5719-llvm-4d8ffa082c19eeb6c07ec3f82b06604d66c18949.zip
[SLP] Vectorize for all-constant entries.
Differential Revision: http://reviews.llvm.org/D10531 llvm-svn: 240144
Diffstat (limited to 'llvm/test/Transforms')
-rw-r--r--llvm/test/Transforms/SLPVectorizer/X86/tiny-tree.ll16
1 files changed, 16 insertions, 0 deletions
diff --git a/llvm/test/Transforms/SLPVectorizer/X86/tiny-tree.ll b/llvm/test/Transforms/SLPVectorizer/X86/tiny-tree.ll
index 6c93222ef93..26af8165bc3 100644
--- a/llvm/test/Transforms/SLPVectorizer/X86/tiny-tree.ll
+++ b/llvm/test/Transforms/SLPVectorizer/X86/tiny-tree.ll
@@ -153,3 +153,19 @@ define void @store_splat(float*, float) {
store float %1, float* %6, align 4
ret void
}
+
+
+; CHECK-LABEL: store_const
+; CHECK: store <4 x i32>
+define void @store_const(i32* %a) {
+entry:
+ %ptr0 = getelementptr inbounds i32, i32* %a, i64 0
+ store i32 10, i32* %ptr0, align 4
+ %ptr1 = getelementptr inbounds i32, i32* %a, i64 1
+ store i32 30, i32* %ptr1, align 4
+ %ptr2 = getelementptr inbounds i32, i32* %a, i64 2
+ store i32 20, i32* %ptr2, align 4
+ %ptr3 = getelementptr inbounds i32, i32* %a, i64 3
+ store i32 40, i32* %ptr3, align 4
+ ret void
+}
OpenPOWER on IntegriCloud