summaryrefslogtreecommitdiffstats
path: root/llvm/test
diff options
context:
space:
mode:
Diffstat (limited to 'llvm/test')
-rw-r--r--llvm/test/Transforms/InstCombine/vector_gep2.ll23
1 files changed, 23 insertions, 0 deletions
diff --git a/llvm/test/Transforms/InstCombine/vector_gep2.ll b/llvm/test/Transforms/InstCombine/vector_gep2.ll
index d76a7d56cc7..1b80ffd101c 100644
--- a/llvm/test/Transforms/InstCombine/vector_gep2.ll
+++ b/llvm/test/Transforms/InstCombine/vector_gep2.ll
@@ -9,3 +9,26 @@ define <2 x i8*> @testa(<2 x i8*> %a) {
; CHECK: getelementptr i8, <2 x i8*> %a, <2 x i64> <i64 0, i64 1>
ret <2 x i8*> %g
}
+
+define <8 x double*> @vgep_s_v8i64(double* %a, <8 x i64>%i) {
+; CHECK-LABEL: @vgep_s_v8i64
+; CHECK: getelementptr double, double* %a, <8 x i64> %i
+ %VectorGep = getelementptr double, double* %a, <8 x i64> %i
+ ret <8 x double*> %VectorGep
+}
+
+define <8 x double*> @vgep_s_v8i32(double* %a, <8 x i32>%i) {
+; CHECK-LABEL: @vgep_s_v8i32
+; CHECK: %1 = sext <8 x i32> %i to <8 x i64>
+; CHECK: getelementptr double, double* %a, <8 x i64> %1
+ %VectorGep = getelementptr double, double* %a, <8 x i32> %i
+ ret <8 x double*> %VectorGep
+}
+
+define <8 x i8*> @vgep_v8iPtr_i32(<8 x i8*> %a, i32 %i) {
+; CHECK-LABEL: @vgep_v8iPtr_i32
+; CHECK: %1 = sext i32 %i to i64
+; CHECK: %VectorGep = getelementptr i8, <8 x i8*> %a, i64 %1
+ %VectorGep = getelementptr i8, <8 x i8*> %a, i32 %i
+ ret <8 x i8*> %VectorGep
+}
OpenPOWER on IntegriCloud