forked from OSchip/llvm-project
[objc-arc] Committed test for r185770 as per dblaikie's suggestion.
llvm-svn: 185782
This commit is contained in:
parent
43b51056d6
commit
8c96263ee3
|
@ -3,6 +3,8 @@
|
|||
@x = common global i8* null, align 8
|
||||
|
||||
declare i8* @objc_retain(i8*)
|
||||
declare i32 @objc_sync_enter(i8*)
|
||||
declare i32 @objc_sync_exit(i8*)
|
||||
|
||||
; GVN should be able to eliminate this redundant load, with ARC-specific
|
||||
; alias analysis.
|
||||
|
@ -20,3 +22,20 @@ entry:
|
|||
%t = load i8** @x
|
||||
ret i8* %t
|
||||
}
|
||||
|
||||
; GVN should not be able to eliminate this redundant load, with ARC-specific
|
||||
; alias analysis.
|
||||
|
||||
; CHECK: define i8* @test1
|
||||
; CHECK: load
|
||||
; CHECK: load
|
||||
; CHECK: ret i8* %t
|
||||
; CHECK: }
|
||||
define i8* @test1(i32 %n) nounwind {
|
||||
entry:
|
||||
%s = load i8** @x
|
||||
%0 = call i32 @objc_sync_enter(i8* %s)
|
||||
%t = load i8** @x
|
||||
%1 = call i32 @objc_sync_exit(i8* %s)
|
||||
ret i8* %t
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue