Index: test/Transforms/NaCl/replace-ptrs-with-ints.ll |
diff --git a/test/Transforms/NaCl/replace-ptrs-with-ints.ll b/test/Transforms/NaCl/replace-ptrs-with-ints.ll |
index 8a67ea8f1361b50f894d8a3d7e827261ae57a2fd..15c1e50e98e1ffa8d0560fbeb2f25c61faf5bfcb 100644 |
--- a/test/Transforms/NaCl/replace-ptrs-with-ints.ll |
+++ b/test/Transforms/NaCl/replace-ptrs-with-ints.ll |
@@ -345,6 +345,7 @@ define i16 @load_global_bitcast() { |
declare void @receive_alloca(%struct* %ptr) |
+declare void @receive_vector_alloca(<4 x i32>* %ptr) |
define void @alloca_fixed() { |
%buf = alloca %struct, align 128 |
@@ -368,6 +369,16 @@ define void @alloca_fixed_array() { |
; CHECK-NEXT: %buf.asint = ptrtoint i8* %buf to i32 |
; CHECK-NEXT: call void @receive_alloca(i32 %buf.asint) |
+define void @alloca_fixed_vector() { |
+ %buf = alloca <4 x i32>, align 128 |
+ call void @receive_vector_alloca(<4 x i32>* %buf) |
+ ret void |
+} |
+; CHECK: define void @alloca_fixed_vector() { |
+; CHECK-NEXT: %buf = alloca i8, i32 16, align 128 |
+; CHECK-NEXT: %buf.asint = ptrtoint i8* %buf to i32 |
+; CHECK-NEXT: call void @receive_vector_alloca(i32 %buf.asint) |
+ |
define void @alloca_variable(i32 %size) { |
%buf = alloca %struct, i32 %size |
call void @receive_alloca(%struct* %buf) |
@@ -393,6 +404,13 @@ define void @alloca_alignment_double() { |
; CHECK: void @alloca_alignment_double() { |
; CHECK-NEXT: alloca i8, i32 8, align 8 |
+define void @alloca_alignment_vector() { |
+ %buf = alloca <4 x i32> |
+ ret void |
+} |
+; CHECK: void @alloca_alignment_vector() { |
+; CHECK-NEXT: alloca i8, i32 16, align 16 |
+ |
define void @alloca_lower_alignment() { |
%buf = alloca i32, align 1 |
ret void |