@@ -30,14 +30,14 @@ target datalayout = "e-m:e-p:32:32-i1:32-i64:64-a:0-v32:32-n16:32"
30
30
%20 = type { [768 x i32 ] }
31
31
%21 = type { [416 x i32 ] }
32
32
33
- define void @test (ptr %A , i1 %arg ) #0 align 2 {
33
+ define void @test (ptr %A , ptr %B , i1 %arg , i32 %n , i32 %m ) #0 align 2 {
34
34
; CHECK-LABEL: 'test'
35
- ; CHECK-NEXT: Src: %v1 = load i32, ptr undef, align 4 --> Dst: %v1 = load i32, ptr undef, align 4
36
- ; CHECK-NEXT: da analyze - none!
37
- ; CHECK-NEXT: Src: %v1 = load i32, ptr undef, align 4 --> Dst: %v27 = load <32 x i32>, ptr %v25, align 256
38
- ; CHECK-NEXT: da analyze - none!
39
- ; CHECK-NEXT: Src: %v1 = load i32, ptr undef, align 4 --> Dst: %v32 = load <32 x i32>, ptr %v30, align 128
35
+ ; CHECK-NEXT: Src: %v1 = load i32, ptr %B, align 4 --> Dst: %v1 = load i32, ptr %B, align 4
40
36
; CHECK-NEXT: da analyze - none!
37
+ ; CHECK-NEXT: Src: %v1 = load i32, ptr %B, align 4 --> Dst: %v27 = load <32 x i32>, ptr %v25, align 256
38
+ ; CHECK-NEXT: da analyze - confused!
39
+ ; CHECK-NEXT: Src: %v1 = load i32, ptr %B, align 4 --> Dst: %v32 = load <32 x i32>, ptr %v30, align 128
40
+ ; CHECK-NEXT: da analyze - confused!
41
41
; CHECK-NEXT: Src: %v27 = load <32 x i32>, ptr %v25, align 256 --> Dst: %v27 = load <32 x i32>, ptr %v25, align 256
42
42
; CHECK-NEXT: da analyze - consistent input [0 S S]!
43
43
; CHECK-NEXT: Src: %v27 = load <32 x i32>, ptr %v25, align 256 --> Dst: %v32 = load <32 x i32>, ptr %v30, align 128
@@ -46,27 +46,27 @@ define void @test(ptr %A, i1 %arg) #0 align 2 {
46
46
; CHECK-NEXT: da analyze - consistent input [0 S S]!
47
47
;
48
48
entry:
49
- %v1 = load i32 , ptr undef , align 4
49
+ %v1 = load i32 , ptr %B , align 4
50
50
br label %bb13
51
51
52
52
bb13:
53
- %v2 = phi i32 [ undef , %entry ], [ %v39 , %bb38 ]
53
+ %v2 = phi i32 [ 0 , %entry ], [ %v39 , %bb38 ]
54
54
br i1 %arg , label %bb15 , label %bb38
55
55
56
56
bb15:
57
- %v3 = mul nsw i32 %v2 , undef
57
+ %v3 = mul nsw i32 %v2 , 2
58
58
br label %bb17
59
59
60
60
bb17:
61
61
br i1 %arg , label %bb21 , label %bb37
62
62
63
63
bb21:
64
- %v22 = add nsw i32 undef , 1
64
+ %v22 = add nsw i32 %n , 1
65
65
%v23 = add i32 %v22 , %v3
66
66
%v24 = mul nsw i32 %v23 , %v1
67
67
%v25 = getelementptr inbounds %1 , ptr %A , i32 0 , i32 7 , i32 1 , i32 %v24
68
68
%v27 = load <32 x i32 >, ptr %v25 , align 256
69
- %v28 = add i32 undef , %v3
69
+ %v28 = add i32 %m , %v3
70
70
%v29 = mul nsw i32 %v28 , 32
71
71
%v30 = getelementptr inbounds %1 , ptr %A , i32 0 , i32 7 , i32 14 , i32 %v29
72
72
%v32 = load <32 x i32 >, ptr %v30 , align 128
0 commit comments