8
8
9
9
define spir_func void @foo (i64 noundef %addr , i64 noundef %as ) {
10
10
entry:
11
- %0 = inttoptr i64 %as to ptr addrspace (4 )
12
- %1 = load i8 , ptr addrspace (4 ) %0
13
- %cmp = icmp sgt i8 %1 , 0
11
+ %src = inttoptr i64 %as to ptr addrspace (4 )
12
+ %val = load i8 , ptr addrspace (4 ) %src
13
+ %cmp = icmp sgt i8 %val , 0
14
14
br i1 %cmp , label %if.then , label %if.end
15
15
16
- if.then: ; preds = %entry
17
- %add.ptr = getelementptr inbounds i8 , ptr addrspace (4 ) %0 , i64 1
18
- %2 = load i8 , ptr addrspace (4 ) %add.ptr
16
+ if.then:
17
+ %add.ptr = getelementptr inbounds i8 , ptr addrspace (4 ) %src , i64 1
18
+ %cond = load i8 , ptr addrspace (4 ) %add.ptr
19
19
br label %if.end
20
20
21
- if.end: ; preds = %if.then, %entry
22
- %shadow_value.0.in = phi i8 [ %2 , %if.then ], [ %1 , %entry ]
23
- switch i8 %shadow_value.0.in , label %sw.default [
21
+ if.end:
22
+ %swval = phi i8 [ %cond , %if.then ], [ %val , %entry ]
23
+ switch i8 %swval , label %sw.default [
24
24
i8 -127 , label %sw.epilog
25
25
i8 -126 , label %sw.bb3
26
26
i8 -125 , label %sw.bb4
@@ -35,84 +35,39 @@ if.end: ; preds = %if.then, %entry
35
35
i8 -123 , label %sw.bb11
36
36
]
37
37
38
- sw.bb3: ; preds = %if.end
38
+ sw.bb3:
39
39
br label %sw.epilog
40
40
41
- sw.bb4: ; preds = %if.end
41
+ sw.bb4:
42
42
br label %sw.epilog
43
43
44
- sw.bb5: ; preds = %if.end
44
+ sw.bb5:
45
45
br label %sw.epilog
46
46
47
- sw.bb6: ; preds = %if.end
47
+ sw.bb6:
48
48
br label %sw.epilog
49
49
50
- sw.bb7: ; preds = %if.end
50
+ sw.bb7:
51
51
br label %sw.epilog
52
52
53
- sw.bb8: ; preds = %if.end, %if.end, %if.end
53
+ sw.bb8:
54
54
br label %sw.epilog
55
55
56
- sw.bb9: ; preds = %if.end
56
+ sw.bb9:
57
57
br label %sw.epilog
58
58
59
- sw.bb10: ; preds = %if.end
59
+ sw.bb10:
60
60
br label %sw.epilog
61
61
62
- sw.bb11: ; preds = %if.end
62
+ sw.bb11:
63
63
br label %sw.epilog
64
64
65
- sw.default: ; preds = %if.end
65
+ sw.default:
66
66
br label %sw.epilog
67
67
68
- sw.epilog: ; preds = %sw.default, %sw.bb11, %sw.bb10, %sw.bb9, %sw.bb8, %sw.bb7, %sw.bb6, %sw.bb5, %sw.bb4, %sw.bb3, %if.end
68
+ sw.epilog:
69
69
br label %exit
70
70
71
- if.then.i: ; preds = %sw.epilog
72
- br label %exit
73
-
74
- for.cond.i: ; preds = %for.inc.i, %if.then.i
75
- br label %exit
76
-
77
- for.inc.i: ; preds = %for.cond.i
78
- br label %exit
79
-
80
- if.end.i: ; preds = %for.cond.i, %if.then.i
81
- br label %exit
82
-
83
- if.end18.thread.i: ; preds = %if.end.i
84
- br label %5
85
-
86
- for.cond8.i: ; preds = %for.inc14.i, %if.end.i
87
- br label %exit
88
-
89
- for.inc14.i: ; preds = %for.cond8.i
90
- br label %exit
91
-
92
- if.end18.i: ; preds = %for.cond8.i
93
- br label %5
94
-
95
- 5 : ; preds = %if.end18.i, %if.end18.thread.i
96
- br label %for.cond25.i
97
-
98
- for.cond25.i: ; preds = %for.body29.i, %5
99
- br label %exit
100
-
101
- for.cond.cleanup27.i: ; preds = %for.cond25.i
102
- br label %for.cond41.i
103
-
104
- for.body29.i: ; preds = %for.cond25.i
105
- br label %for.cond25.i
106
-
107
- for.cond41.i: ; preds = %for.body45.i, %for.cond.cleanup27.i
108
- br label %exit
109
-
110
- for.cond.cleanup43.i: ; preds = %for.cond41.i
111
- br label %exit
112
-
113
- for.body45.i: ; preds = %for.cond41.i
114
- br label %for.cond41.i
115
-
116
71
exit:
117
72
ret void
118
73
}
0 commit comments