3
3
4
4
define i64 @test0 () {
5
5
; CHECK-LABEL: @test0(
6
- ; CHECK-NEXT: ret i64 undef
6
+ ; CHECK-NEXT: ret i64 poison
7
7
;
8
- %r = mul i64 undef , undef
8
+ %r = mul i64 poison, poison
9
9
ret i64 %r
10
10
}
11
11
12
12
define i64 @test1 () {
13
13
; CHECK-LABEL: @test1(
14
- ; CHECK-NEXT: ret i64 undef
14
+ ; CHECK-NEXT: ret i64 poison
15
15
;
16
- %r = mul i64 3 , undef
16
+ %r = mul i64 3 , poison
17
17
ret i64 %r
18
18
}
19
19
20
20
define i64 @test2 () {
21
21
; CHECK-LABEL: @test2(
22
- ; CHECK-NEXT: ret i64 undef
22
+ ; CHECK-NEXT: ret i64 poison
23
23
;
24
- %r = mul i64 undef , 3
24
+ %r = mul i64 poison , 3
25
25
ret i64 %r
26
26
}
27
27
28
28
define i64 @test3 () {
29
29
; CHECK-LABEL: @test3(
30
- ; CHECK-NEXT: ret i64 0
30
+ ; CHECK-NEXT: ret i64 poison
31
31
;
32
- %r = mul i64 undef , 6
32
+ %r = mul i64 poison , 6
33
33
ret i64 %r
34
34
}
35
35
36
36
define i64 @test4 () {
37
37
; CHECK-LABEL: @test4(
38
- ; CHECK-NEXT: ret i64 0
38
+ ; CHECK-NEXT: ret i64 poison
39
39
;
40
- %r = mul i64 6 , undef
40
+ %r = mul i64 6 , poison
41
41
ret i64 %r
42
42
}
43
43
44
44
define i64 @test5 () {
45
45
; CHECK-LABEL: @test5(
46
- ; CHECK-NEXT: ret i64 undef
46
+ ; CHECK-NEXT: ret i64 poison
47
47
;
48
- %r = and i64 undef , undef
48
+ %r = and i64 poison, poison
49
49
ret i64 %r
50
50
}
51
51
52
52
define i64 @test6 () {
53
53
; CHECK-LABEL: @test6(
54
- ; CHECK-NEXT: ret i64 undef
54
+ ; CHECK-NEXT: ret i64 poison
55
55
;
56
- %r = or i64 undef , undef
56
+ %r = or i64 poison, poison
57
57
ret i64 %r
58
58
}
59
59
60
60
define i64 @test7 () {
61
61
; CHECK-LABEL: @test7(
62
- ; CHECK-NEXT: ret i64 undef
62
+ ; CHECK-NEXT: ret i64 poison
63
63
;
64
- %r = udiv i64 undef , 1
64
+ %r = udiv i64 poison , 1
65
65
ret i64 %r
66
66
}
67
67
68
68
define i64 @test8 () {
69
69
; CHECK-LABEL: @test8(
70
- ; CHECK-NEXT: ret i64 undef
70
+ ; CHECK-NEXT: ret i64 poison
71
71
;
72
- %r = sdiv i64 undef , 1
72
+ %r = sdiv i64 poison , 1
73
73
ret i64 %r
74
74
}
75
75
76
76
define i64 @test9 () {
77
77
; CHECK-LABEL: @test9(
78
- ; CHECK-NEXT: ret i64 0
78
+ ; CHECK-NEXT: ret i64 poison
79
79
;
80
- %r = urem i64 undef , 1
80
+ %r = urem i64 poison , 1
81
81
ret i64 %r
82
82
}
83
83
84
84
define i64 @test10 () {
85
85
; CHECK-LABEL: @test10(
86
- ; CHECK-NEXT: ret i64 0
86
+ ; CHECK-NEXT: ret i64 poison
87
87
;
88
- %r = srem i64 undef , 1
88
+ %r = srem i64 poison , 1
89
89
ret i64 %r
90
90
}
91
91
92
92
define i64 @test11 () {
93
93
; CHECK-LABEL: @test11(
94
94
; CHECK-NEXT: ret i64 poison
95
95
;
96
- %r = shl i64 undef , undef
96
+ %r = shl i64 poison, poison
97
97
ret i64 %r
98
98
}
99
99
100
100
define i64 @test11b (i64 %a ) {
101
101
; CHECK-LABEL: @test11b(
102
102
; CHECK-NEXT: ret i64 poison
103
103
;
104
- %r = shl i64 %a , undef
104
+ %r = shl i64 %a , poison
105
105
ret i64 %r
106
106
}
107
107
108
108
define i64 @test12 () {
109
109
; CHECK-LABEL: @test12(
110
110
; CHECK-NEXT: ret i64 poison
111
111
;
112
- %r = ashr i64 undef , undef
112
+ %r = ashr i64 poison, poison
113
113
ret i64 %r
114
114
}
115
115
116
116
define i64 @test12b (i64 %a ) {
117
117
; CHECK-LABEL: @test12b(
118
118
; CHECK-NEXT: ret i64 poison
119
119
;
120
- %r = ashr i64 %a , undef
120
+ %r = ashr i64 %a , poison
121
121
ret i64 %r
122
122
}
123
123
124
124
define i64 @test13 () {
125
125
; CHECK-LABEL: @test13(
126
126
; CHECK-NEXT: ret i64 poison
127
127
;
128
- %r = lshr i64 undef , undef
128
+ %r = lshr i64 poison, poison
129
129
ret i64 %r
130
130
}
131
131
132
132
define i64 @test13b (i64 %a ) {
133
133
; CHECK-LABEL: @test13b(
134
134
; CHECK-NEXT: ret i64 poison
135
135
;
136
- %r = lshr i64 %a , undef
136
+ %r = lshr i64 %a , poison
137
137
ret i64 %r
138
138
}
139
139
140
140
define i1 @test14 () {
141
141
; CHECK-LABEL: @test14(
142
- ; CHECK-NEXT: ret i1 undef
142
+ ; CHECK-NEXT: ret i1 poison
143
143
;
144
- %r = icmp slt i64 undef , undef
144
+ %r = icmp slt i64 poison, poison
145
145
ret i1 %r
146
146
}
147
147
148
148
define i1 @test15 () {
149
149
; CHECK-LABEL: @test15(
150
- ; CHECK-NEXT: ret i1 undef
150
+ ; CHECK-NEXT: ret i1 poison
151
151
;
152
- %r = icmp ult i64 undef , undef
152
+ %r = icmp ult i64 poison, poison
153
153
ret i1 %r
154
154
}
155
155
156
156
define i64 @test16 (i64 %a ) {
157
157
; CHECK-LABEL: @test16(
158
- ; CHECK-NEXT: ret i64 undef
158
+ ; CHECK-NEXT: ret i64 poison
159
159
;
160
- %r = select i1 undef , i64 %a , i64 undef
160
+ %r = select i1 poison , i64 %a , i64 poison
161
161
ret i64 %r
162
162
}
163
163
164
164
define i64 @test17 (i64 %a ) {
165
165
; CHECK-LABEL: @test17(
166
- ; CHECK-NEXT: ret i64 undef
166
+ ; CHECK-NEXT: ret i64 poison
167
167
;
168
- %r = select i1 undef , i64 undef , i64 %a
168
+ %r = select i1 poison , i64 poison , i64 %a
169
169
ret i64 %r
170
170
}
171
171
172
172
define i64 @test18 (i64 %a ) {
173
173
; CHECK-LABEL: @test18(
174
- ; CHECK-NEXT: [[R:%.*]] = call i64 undef (i64 [[A:%.*]])
174
+ ; CHECK-NEXT: [[R:%.*]] = call i64 poison (i64 [[A:%.*]])
175
175
; CHECK-NEXT: ret i64 poison
176
176
;
177
- %r = call i64 (i64 ) undef (i64 %a )
177
+ %r = call i64 (i64 ) poison (i64 %a )
178
178
ret i64 %r
179
179
}
180
180
181
181
define <4 x i8 > @test19 (<4 x i8 > %a ) {
182
182
; CHECK-LABEL: @test19(
183
183
; CHECK-NEXT: ret <4 x i8> poison
184
184
;
185
- %b = shl <4 x i8 > %a , <i8 8 , i8 9 , i8 undef , i8 -1 >
185
+ %b = shl <4 x i8 > %a , <i8 8 , i8 9 , i8 poison , i8 -1 >
186
186
ret <4 x i8 > %b
187
187
}
188
188
@@ -220,105 +220,105 @@ define <2 x i32> @test21vec(<2 x i32> %a) {
220
220
221
221
define i32 @test22 (i32 %a ) {
222
222
; CHECK-LABEL: @test22(
223
- ; CHECK-NEXT: ret i32 undef
223
+ ; CHECK-NEXT: ret i32 poison
224
224
;
225
- %b = ashr exact i32 undef , %a
225
+ %b = ashr exact i32 poison , %a
226
226
ret i32 %b
227
227
}
228
228
229
229
define i32 @test23 (i32 %a ) {
230
230
; CHECK-LABEL: @test23(
231
- ; CHECK-NEXT: ret i32 undef
231
+ ; CHECK-NEXT: ret i32 poison
232
232
;
233
- %b = lshr exact i32 undef , %a
233
+ %b = lshr exact i32 poison , %a
234
234
ret i32 %b
235
235
}
236
236
237
237
define i32 @test24 () {
238
238
; CHECK-LABEL: @test24(
239
239
; CHECK-NEXT: ret i32 poison
240
240
;
241
- %b = udiv i32 undef , 0
241
+ %b = udiv i32 poison , 0
242
242
ret i32 %b
243
243
}
244
244
245
245
define i32 @test25 () {
246
246
; CHECK-LABEL: @test25(
247
247
; CHECK-NEXT: ret i32 poison
248
248
;
249
- %b = lshr i32 0 , undef
249
+ %b = lshr i32 0 , poison
250
250
ret i32 %b
251
251
}
252
252
253
253
define i32 @test26 () {
254
254
; CHECK-LABEL: @test26(
255
255
; CHECK-NEXT: ret i32 poison
256
256
;
257
- %b = ashr i32 0 , undef
257
+ %b = ashr i32 0 , poison
258
258
ret i32 %b
259
259
}
260
260
261
261
define i32 @test27 () {
262
262
; CHECK-LABEL: @test27(
263
263
; CHECK-NEXT: ret i32 poison
264
264
;
265
- %b = shl i32 0 , undef
265
+ %b = shl i32 0 , poison
266
266
ret i32 %b
267
267
}
268
268
269
269
define i32 @test28 (i32 %a ) {
270
270
; CHECK-LABEL: @test28(
271
- ; CHECK-NEXT: ret i32 undef
271
+ ; CHECK-NEXT: ret i32 poison
272
272
;
273
- %b = shl nsw i32 undef , %a
273
+ %b = shl nsw i32 poison , %a
274
274
ret i32 %b
275
275
}
276
276
277
277
define i32 @test29 (i32 %a ) {
278
278
; CHECK-LABEL: @test29(
279
- ; CHECK-NEXT: ret i32 undef
279
+ ; CHECK-NEXT: ret i32 poison
280
280
;
281
- %b = shl nuw i32 undef , %a
281
+ %b = shl nuw i32 poison , %a
282
282
ret i32 %b
283
283
}
284
284
285
285
define i32 @test30 (i32 %a ) {
286
286
; CHECK-LABEL: @test30(
287
- ; CHECK-NEXT: ret i32 undef
287
+ ; CHECK-NEXT: ret i32 poison
288
288
;
289
- %b = shl nsw nuw i32 undef , %a
289
+ %b = shl nsw nuw i32 poison , %a
290
290
ret i32 %b
291
291
}
292
292
293
293
define i32 @test31 (i32 %a ) {
294
294
; CHECK-LABEL: @test31(
295
- ; CHECK-NEXT: ret i32 0
295
+ ; CHECK-NEXT: ret i32 poison
296
296
;
297
- %b = shl i32 undef , %a
297
+ %b = shl i32 poison , %a
298
298
ret i32 %b
299
299
}
300
300
301
301
define i32 @test32 (i32 %a ) {
302
302
; CHECK-LABEL: @test32(
303
- ; CHECK-NEXT: ret i32 undef
303
+ ; CHECK-NEXT: ret i32 poison
304
304
;
305
- %b = shl i32 undef , 0
305
+ %b = shl i32 poison , 0
306
306
ret i32 %b
307
307
}
308
308
309
309
define i32 @test33 (i32 %a ) {
310
310
; CHECK-LABEL: @test33(
311
- ; CHECK-NEXT: ret i32 undef
311
+ ; CHECK-NEXT: ret i32 poison
312
312
;
313
- %b = ashr i32 undef , 0
313
+ %b = ashr i32 poison , 0
314
314
ret i32 %b
315
315
}
316
316
317
317
define i32 @test34 (i32 %a ) {
318
318
; CHECK-LABEL: @test34(
319
- ; CHECK-NEXT: ret i32 undef
319
+ ; CHECK-NEXT: ret i32 poison
320
320
;
321
- %b = lshr i32 undef , 0
321
+ %b = lshr i32 poison , 0
322
322
ret i32 %b
323
323
}
324
324
@@ -342,22 +342,22 @@ define i32 @test37() {
342
342
; CHECK-LABEL: @test37(
343
343
; CHECK-NEXT: ret i32 poison
344
344
;
345
- %b = udiv i32 undef , undef
345
+ %b = udiv i32 poison, poison
346
346
ret i32 %b
347
347
}
348
348
349
349
define i32 @test38 (i32 %a ) {
350
350
; CHECK-LABEL: @test38(
351
351
; CHECK-NEXT: ret i32 poison
352
352
;
353
- %b = udiv i32 %a , undef
353
+ %b = udiv i32 %a , poison
354
354
ret i32 %b
355
355
}
356
356
357
357
define i32 @test39 () {
358
358
; CHECK-LABEL: @test39(
359
359
; CHECK-NEXT: ret i32 poison
360
360
;
361
- %b = udiv i32 0 , undef
361
+ %b = udiv i32 0 , poison
362
362
ret i32 %b
363
363
}
0 commit comments