summaryrefslogtreecommitdiff
path: root/test/Transforms/InstCombine/alloca.ll
diff options
context:
space:
mode:
Diffstat (limited to 'test/Transforms/InstCombine/alloca.ll')
-rw-r--r--test/Transforms/InstCombine/alloca.ll7
1 files changed, 5 insertions, 2 deletions
diff --git a/test/Transforms/InstCombine/alloca.ll b/test/Transforms/InstCombine/alloca.ll
index f81f700e6cf4..490830af2d82 100644
--- a/test/Transforms/InstCombine/alloca.ll
+++ b/test/Transforms/InstCombine/alloca.ll
@@ -51,8 +51,8 @@ define i32* @test4(i32 %n) {
ret i32* %A
}
-; Allocas which are only used by GEPs, bitcasts, and stores (transitively)
-; should be deleted.
+; Allocas which are only used by GEPs, bitcasts, addrspacecasts, and stores
+; (transitively) should be deleted.
define void @test5() {
; CHECK-LABEL: @test5(
; CHECK-NOT: alloca
@@ -62,6 +62,7 @@ define void @test5() {
entry:
%a = alloca { i32 }
%b = alloca i32*
+ %c = alloca i32
%a.1 = getelementptr { i32 }, { i32 }* %a, i32 0, i32 0
store i32 123, i32* %a.1
store i32* %a.1, i32** %b
@@ -73,6 +74,8 @@ entry:
store atomic i32 3, i32* %a.3 release, align 4
%a.4 = getelementptr { i32 }, { i32 }* %a, i32 0, i32 0
store atomic i32 4, i32* %a.4 seq_cst, align 4
+ %c.1 = addrspacecast i32* %c to i32 addrspace(1)*
+ store i32 123, i32 addrspace(1)* %c.1
ret void
}