summaryrefslogtreecommitdiffstats
path: root/llvm/test/Transforms/LoopVectorize/X86/gather_scatter.ll
diff options
context:
space:
mode:
authorElena Demikhovsky <elena.demikhovsky@intel.com>2016-07-07 06:06:46 +0000
committerElena Demikhovsky <elena.demikhovsky@intel.com>2016-07-07 06:06:46 +0000
commitfc1e969dfc94e0e78cc1bd3b3ebd5e81bbb56ffb (patch)
treef7e623df93d82930d1ed502bd3c6baea671abc75 /llvm/test/Transforms/LoopVectorize/X86/gather_scatter.ll
parenta54fe1acdc2df47c80f1eb319d7f8bcd65018aa9 (diff)
downloadbcm5719-llvm-fc1e969dfc94e0e78cc1bd3b3ebd5e81bbb56ffb.tar.gz
bcm5719-llvm-fc1e969dfc94e0e78cc1bd3b3ebd5e81bbb56ffb.zip
Fixed a bug in vectorizing GEP before gather/scatter intrinsic.
Vectorizing GEP was incorrect and broke SSA in some cases. The patch fixes PR27997 https://llvm.org/bugs/show_bug.cgi?id=27997. Differential revision: http://reviews.llvm.org/D22035 llvm-svn: 274735
Diffstat (limited to 'llvm/test/Transforms/LoopVectorize/X86/gather_scatter.ll')
-rw-r--r--llvm/test/Transforms/LoopVectorize/X86/gather_scatter.ll6
1 files changed, 3 insertions, 3 deletions
diff --git a/llvm/test/Transforms/LoopVectorize/X86/gather_scatter.ll b/llvm/test/Transforms/LoopVectorize/X86/gather_scatter.ll
index ec7ad1183ee..222dd7eef6b 100644
--- a/llvm/test/Transforms/LoopVectorize/X86/gather_scatter.ll
+++ b/llvm/test/Transforms/LoopVectorize/X86/gather_scatter.ll
@@ -95,7 +95,7 @@ for.end: ; preds = %for.cond
%struct.In = type { float, float }
;AVX512-LABEL: @foo2
-;AVX512: getelementptr %struct.In, %struct.In* %in, <16 x i64> %{{.*}}, i32 1
+;AVX512: getelementptr inbounds %struct.In, %struct.In* %in, <16 x i64> %{{.*}}, i32 1
;AVX512: llvm.masked.gather.v16f32
;AVX512: llvm.masked.store.v16f32
;AVX512: ret void
@@ -170,10 +170,10 @@ for.end: ; preds = %for.cond
;}
;AVX512-LABEL: @foo3
-;AVX512: getelementptr %struct.In, %struct.In* %in, <16 x i64> %{{.*}}, i32 1
+;AVX512: getelementptr inbounds %struct.In, %struct.In* %in, <16 x i64> %{{.*}}, i32 1
;AVX512: llvm.masked.gather.v16f32
;AVX512: fadd <16 x float>
-;AVX512: getelementptr %struct.Out, %struct.Out* %out, <16 x i64> %{{.*}}, i32 1
+;AVX512: getelementptr inbounds %struct.Out, %struct.Out* %out, <16 x i64> %{{.*}}, i32 1
;AVX512: llvm.masked.scatter.v16f32
;AVX512: ret void
OpenPOWER on IntegriCloud