1- ; To support this test, escaped local blocks should have bytes updated after
2- ; unkown fn calls.
3-
41target datalayout = "e-p:32:32:32-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:32:64-f32:32:32-f64:32:64-v64:64:64-v128:128:128-a0:0:64-f80:128:128-n8:16:32"
52target triple = "i386-apple-darwin10"
63
@@ -10,7 +7,7 @@ target triple = "i386-apple-darwin10"
107define i32 @src () noinline {
118 %x = alloca %struct1 , align 8
129 %y = alloca %struct2 , align 8
13- call void @bar (%struct1* sret ( %struct1 ) %x )
10+ call void @bar (%struct1* %x )
1411
1512 %gepn1 = getelementptr inbounds %struct2 , %struct2* %y , i32 0 , i32 0 , i32 0
1613 store i32 0 , i32* %gepn1 , align 8
@@ -31,7 +28,7 @@ define i32 @tgt() noinline {
3128 %x = alloca %struct1 , align 8
3229 %y = alloca %struct2 , align 8
3330 %y1 = bitcast %struct2* %y to %struct1*
34- call void @bar (%struct1* sret ( %struct1 ) %y1 )
31+ call void @bar (%struct1* %y1 )
3532 %gepn1 = getelementptr inbounds %struct2 , %struct2* %y , i32 0 , i32 0 , i32 0
3633 store i32 0 , i32* %gepn1 , align 8
3734 %gepn2 = getelementptr inbounds %struct2 , %struct2* %y , i32 0 , i32 0 , i32 1
@@ -43,6 +40,6 @@ define i32 @tgt() noinline {
4340 ret i32 %ret
4441}
4542
46- declare void @bar (%struct1* sret ( %struct1 ) )
43+ declare void @bar (%struct1* )
4744
48- ; ERROR: Couldn't prove the correctness of the transformation
45+ ; ERROR: Source is more defined than target
0 commit comments