1
1
# NOTE: Assertions have been autogenerated by utils/update_mir_test_checks.py
2
- # RUN: llc -march=amdgcn -mcpu=gfx1100 -mattr=+wavefrontsize32 -verify-machineinstrs -run-pass post-RA-hazard-rec -o - %s | FileCheck -check-prefix=GCN %s
2
+ # RUN: llc -march=amdgcn -mcpu=gfx1100 -mattr=+wavefrontsize32 -verify-machineinstrs -run-pass post-RA-hazard-rec -o - %s | FileCheck -check-prefixes=GCN,GFX11 %s
3
+ # RUN: llc -march=amdgcn -mcpu=gfx1150 -mattr=+wavefrontsize32 -verify-machineinstrs -run-pass post-RA-hazard-rec -o - %s | FileCheck -check-prefixes=GCN,GFX1150 %s
3
4
4
5
---
5
6
name : trans_use_1_hazard
6
7
body : |
7
8
bb.0:
8
- ; GCN-LABEL: name: trans_use_1_hazard
9
- ; GCN: $vgpr1 = V_SQRT_F32_e32 $vgpr0, implicit $mode, implicit $exec
10
- ; GCN-NEXT: $vgpr2 = V_MOV_B32_e32 0, implicit $exec
11
- ; GCN-NEXT: S_WAITCNT_DEPCTR 4095
12
- ; GCN-NEXT: $vgpr3 = V_ADD_F32_e32 $vgpr1, $vgpr2, implicit $mode, implicit $exec
13
- ; GCN-NEXT: S_ENDPGM 0
9
+ ; GFX11-LABEL: name: trans_use_1_hazard
10
+ ; GFX11: $vgpr1 = V_SQRT_F32_e32 $vgpr0, implicit $mode, implicit $exec
11
+ ; GFX11-NEXT: $vgpr2 = V_MOV_B32_e32 0, implicit $exec
12
+ ; GFX11-NEXT: S_WAITCNT_DEPCTR 4095
13
+ ; GFX11-NEXT: $vgpr3 = V_ADD_F32_e32 $vgpr1, $vgpr2, implicit $mode, implicit $exec
14
+ ; GFX11-NEXT: S_ENDPGM 0
15
+ ; GFX1150-LABEL: name: trans_use_1_hazard
16
+ ; GFX1150: $vgpr1 = V_SQRT_F32_e32 $vgpr0, implicit $mode, implicit $exec
17
+ ; GFX1150-NEXT: $vgpr2 = V_MOV_B32_e32 0, implicit $exec
18
+ ; GFX1150-NEXT: $vgpr3 = V_ADD_F32_e32 $vgpr1, $vgpr2, implicit $mode, implicit $exec
19
+ ; GFX1150-NEXT: S_ENDPGM 0
14
20
$vgpr1 = V_SQRT_F32_e32 $vgpr0, implicit $mode, implicit $exec
15
21
$vgpr2 = V_MOV_B32_e32 0, implicit $exec
16
22
$vgpr3 = V_ADD_F32_e32 $vgpr1, $vgpr2, implicit $mode, implicit $exec
@@ -38,23 +44,39 @@ body: |
38
44
name : trans_use_2_hazard
39
45
body : |
40
46
bb.0:
41
- ; GCN-LABEL: name: trans_use_2_hazard
42
- ; GCN: $vgpr1 = V_SQRT_F32_e32 $vgpr0, implicit $mode, implicit $exec
43
- ; GCN-NEXT: $sgpr0 = S_MOV_B32 0
44
- ; GCN-NEXT: $sgpr1 = S_MOV_B32 0
45
- ; GCN-NEXT: $sgpr2 = S_MOV_B32 0
46
- ; GCN-NEXT: $sgpr3 = S_MOV_B32 0
47
- ; GCN-NEXT: $sgpr4 = S_MOV_B32 0
48
- ; GCN-NEXT: $sgpr5 = S_MOV_B32 0
49
- ; GCN-NEXT: $vgpr2 = V_MOV_B32_e32 0, implicit $exec
50
- ; GCN-NEXT: $sgpr6 = S_MOV_B32 0
51
- ; GCN-NEXT: $sgpr7 = S_MOV_B32 0
52
- ; GCN-NEXT: $sgpr8 = S_MOV_B32 0
53
- ; GCN-NEXT: $sgpr9 = S_MOV_B32 0
54
- ; GCN-NEXT: $sgpr10 = S_MOV_B32 0
55
- ; GCN-NEXT: S_WAITCNT_DEPCTR 4095
56
- ; GCN-NEXT: $vgpr3 = V_ADD_F32_e32 $vgpr1, $vgpr2, implicit $mode, implicit $exec
57
- ; GCN-NEXT: S_ENDPGM 0
47
+ ; GFX11-LABEL: name: trans_use_2_hazard
48
+ ; GFX11: $vgpr1 = V_SQRT_F32_e32 $vgpr0, implicit $mode, implicit $exec
49
+ ; GFX11-NEXT: $sgpr0 = S_MOV_B32 0
50
+ ; GFX11-NEXT: $sgpr1 = S_MOV_B32 0
51
+ ; GFX11-NEXT: $sgpr2 = S_MOV_B32 0
52
+ ; GFX11-NEXT: $sgpr3 = S_MOV_B32 0
53
+ ; GFX11-NEXT: $sgpr4 = S_MOV_B32 0
54
+ ; GFX11-NEXT: $sgpr5 = S_MOV_B32 0
55
+ ; GFX11-NEXT: $vgpr2 = V_MOV_B32_e32 0, implicit $exec
56
+ ; GFX11-NEXT: $sgpr6 = S_MOV_B32 0
57
+ ; GFX11-NEXT: $sgpr7 = S_MOV_B32 0
58
+ ; GFX11-NEXT: $sgpr8 = S_MOV_B32 0
59
+ ; GFX11-NEXT: $sgpr9 = S_MOV_B32 0
60
+ ; GFX11-NEXT: $sgpr10 = S_MOV_B32 0
61
+ ; GFX11-NEXT: S_WAITCNT_DEPCTR 4095
62
+ ; GFX11-NEXT: $vgpr3 = V_ADD_F32_e32 $vgpr1, $vgpr2, implicit $mode, implicit $exec
63
+ ; GFX11-NEXT: S_ENDPGM 0
64
+ ; GFX1150-LABEL: name: trans_use_2_hazard
65
+ ; GFX1150: $vgpr1 = V_SQRT_F32_e32 $vgpr0, implicit $mode, implicit $exec
66
+ ; GFX1150-NEXT: $sgpr0 = S_MOV_B32 0
67
+ ; GFX1150-NEXT: $sgpr1 = S_MOV_B32 0
68
+ ; GFX1150-NEXT: $sgpr2 = S_MOV_B32 0
69
+ ; GFX1150-NEXT: $sgpr3 = S_MOV_B32 0
70
+ ; GFX1150-NEXT: $sgpr4 = S_MOV_B32 0
71
+ ; GFX1150-NEXT: $sgpr5 = S_MOV_B32 0
72
+ ; GFX1150-NEXT: $vgpr2 = V_MOV_B32_e32 0, implicit $exec
73
+ ; GFX1150-NEXT: $sgpr6 = S_MOV_B32 0
74
+ ; GFX1150-NEXT: $sgpr7 = S_MOV_B32 0
75
+ ; GFX1150-NEXT: $sgpr8 = S_MOV_B32 0
76
+ ; GFX1150-NEXT: $sgpr9 = S_MOV_B32 0
77
+ ; GFX1150-NEXT: $sgpr10 = S_MOV_B32 0
78
+ ; GFX1150-NEXT: $vgpr3 = V_ADD_F32_e32 $vgpr1, $vgpr2, implicit $mode, implicit $exec
79
+ ; GFX1150-NEXT: S_ENDPGM 0
58
80
$vgpr1 = V_SQRT_F32_e32 $vgpr0, implicit $mode, implicit $exec
59
81
$sgpr0 = S_MOV_B32 0
60
82
$sgpr1 = S_MOV_B32 0
@@ -76,16 +98,25 @@ body: |
76
98
name : trans_use_3_hazard
77
99
body : |
78
100
bb.0:
79
- ; GCN-LABEL: name: trans_use_3_hazard
80
- ; GCN: $vgpr1 = V_SQRT_F32_e32 $vgpr0, implicit $mode, implicit $exec
81
- ; GCN-NEXT: $vgpr2 = V_MOV_B32_e32 0, implicit $exec
82
- ; GCN-NEXT: $vgpr10 = V_MOV_B32_e32 0, implicit $exec
83
- ; GCN-NEXT: $vgpr11 = V_MOV_B32_e32 0, implicit $exec
84
- ; GCN-NEXT: $vgpr12 = V_MOV_B32_e32 0, implicit $exec
85
- ; GCN-NEXT: $vgpr13 = V_MOV_B32_e32 0, implicit $exec
86
- ; GCN-NEXT: S_WAITCNT_DEPCTR 4095
87
- ; GCN-NEXT: $vgpr3 = V_ADD_F32_e32 $vgpr1, $vgpr2, implicit $mode, implicit $exec
88
- ; GCN-NEXT: S_ENDPGM 0
101
+ ; GFX11-LABEL: name: trans_use_3_hazard
102
+ ; GFX11: $vgpr1 = V_SQRT_F32_e32 $vgpr0, implicit $mode, implicit $exec
103
+ ; GFX11-NEXT: $vgpr2 = V_MOV_B32_e32 0, implicit $exec
104
+ ; GFX11-NEXT: $vgpr10 = V_MOV_B32_e32 0, implicit $exec
105
+ ; GFX11-NEXT: $vgpr11 = V_MOV_B32_e32 0, implicit $exec
106
+ ; GFX11-NEXT: $vgpr12 = V_MOV_B32_e32 0, implicit $exec
107
+ ; GFX11-NEXT: $vgpr13 = V_MOV_B32_e32 0, implicit $exec
108
+ ; GFX11-NEXT: S_WAITCNT_DEPCTR 4095
109
+ ; GFX11-NEXT: $vgpr3 = V_ADD_F32_e32 $vgpr1, $vgpr2, implicit $mode, implicit $exec
110
+ ; GFX11-NEXT: S_ENDPGM 0
111
+ ; GFX1150-LABEL: name: trans_use_3_hazard
112
+ ; GFX1150: $vgpr1 = V_SQRT_F32_e32 $vgpr0, implicit $mode, implicit $exec
113
+ ; GFX1150-NEXT: $vgpr2 = V_MOV_B32_e32 0, implicit $exec
114
+ ; GFX1150-NEXT: $vgpr10 = V_MOV_B32_e32 0, implicit $exec
115
+ ; GFX1150-NEXT: $vgpr11 = V_MOV_B32_e32 0, implicit $exec
116
+ ; GFX1150-NEXT: $vgpr12 = V_MOV_B32_e32 0, implicit $exec
117
+ ; GFX1150-NEXT: $vgpr13 = V_MOV_B32_e32 0, implicit $exec
118
+ ; GFX1150-NEXT: $vgpr3 = V_ADD_F32_e32 $vgpr1, $vgpr2, implicit $mode, implicit $exec
119
+ ; GFX1150-NEXT: S_ENDPGM 0
89
120
$vgpr1 = V_SQRT_F32_e32 $vgpr0, implicit $mode, implicit $exec
90
121
$vgpr2 = V_MOV_B32_e32 0, implicit $exec
91
122
$vgpr10 = V_MOV_B32_e32 0, implicit $exec
@@ -169,13 +200,19 @@ body: |
169
200
name : trans_use_4_one_depctr_1
170
201
body : |
171
202
bb.0:
172
- ; GCN-LABEL: name: trans_use_4_one_depctr_1
173
- ; GCN: $vgpr1 = V_SQRT_F32_e32 $vgpr0, implicit $mode, implicit $exec
174
- ; GCN-NEXT: $vgpr3 = V_SQRT_F32_e32 $vgpr2, implicit $mode, implicit $exec
175
- ; GCN-NEXT: S_WAITCNT_DEPCTR 4095
176
- ; GCN-NEXT: $vgpr5 = V_ADD_F32_e32 $vgpr1, $vgpr4, implicit $mode, implicit $exec
177
- ; GCN-NEXT: $vgpr7 = V_ADD_F32_e32 $vgpr3, $vgpr6, implicit $mode, implicit $exec
178
- ; GCN-NEXT: S_ENDPGM 0
203
+ ; GFX11-LABEL: name: trans_use_4_one_depctr_1
204
+ ; GFX11: $vgpr1 = V_SQRT_F32_e32 $vgpr0, implicit $mode, implicit $exec
205
+ ; GFX11-NEXT: $vgpr3 = V_SQRT_F32_e32 $vgpr2, implicit $mode, implicit $exec
206
+ ; GFX11-NEXT: S_WAITCNT_DEPCTR 4095
207
+ ; GFX11-NEXT: $vgpr5 = V_ADD_F32_e32 $vgpr1, $vgpr4, implicit $mode, implicit $exec
208
+ ; GFX11-NEXT: $vgpr7 = V_ADD_F32_e32 $vgpr3, $vgpr6, implicit $mode, implicit $exec
209
+ ; GFX11-NEXT: S_ENDPGM 0
210
+ ; GFX1150-LABEL: name: trans_use_4_one_depctr_1
211
+ ; GFX1150: $vgpr1 = V_SQRT_F32_e32 $vgpr0, implicit $mode, implicit $exec
212
+ ; GFX1150-NEXT: $vgpr3 = V_SQRT_F32_e32 $vgpr2, implicit $mode, implicit $exec
213
+ ; GFX1150-NEXT: $vgpr5 = V_ADD_F32_e32 $vgpr1, $vgpr4, implicit $mode, implicit $exec
214
+ ; GFX1150-NEXT: $vgpr7 = V_ADD_F32_e32 $vgpr3, $vgpr6, implicit $mode, implicit $exec
215
+ ; GFX1150-NEXT: S_ENDPGM 0
179
216
$vgpr1 = V_SQRT_F32_e32 $vgpr0, implicit $mode, implicit $exec
180
217
$vgpr3 = V_SQRT_F32_e32 $vgpr2, implicit $mode, implicit $exec
181
218
$vgpr5 = V_ADD_F32_e32 $vgpr1, $vgpr4, implicit $mode, implicit $exec
@@ -187,13 +224,19 @@ body: |
187
224
name : trans_use_4_one_depctr_2
188
225
body : |
189
226
bb.0:
190
- ; GCN-LABEL: name: trans_use_4_one_depctr_2
191
- ; GCN: $vgpr1 = V_SQRT_F32_e32 $vgpr0, implicit $mode, implicit $exec
192
- ; GCN-NEXT: $vgpr3 = V_SQRT_F32_e32 $vgpr2, implicit $mode, implicit $exec
193
- ; GCN-NEXT: S_WAITCNT_DEPCTR 4095
194
- ; GCN-NEXT: $vgpr5 = V_ADD_F32_e32 $vgpr3, $vgpr4, implicit $mode, implicit $exec
195
- ; GCN-NEXT: $vgpr7 = V_ADD_F32_e32 $vgpr1, $vgpr6, implicit $mode, implicit $exec
196
- ; GCN-NEXT: S_ENDPGM 0
227
+ ; GFX11-LABEL: name: trans_use_4_one_depctr_2
228
+ ; GFX11: $vgpr1 = V_SQRT_F32_e32 $vgpr0, implicit $mode, implicit $exec
229
+ ; GFX11-NEXT: $vgpr3 = V_SQRT_F32_e32 $vgpr2, implicit $mode, implicit $exec
230
+ ; GFX11-NEXT: S_WAITCNT_DEPCTR 4095
231
+ ; GFX11-NEXT: $vgpr5 = V_ADD_F32_e32 $vgpr3, $vgpr4, implicit $mode, implicit $exec
232
+ ; GFX11-NEXT: $vgpr7 = V_ADD_F32_e32 $vgpr1, $vgpr6, implicit $mode, implicit $exec
233
+ ; GFX11-NEXT: S_ENDPGM 0
234
+ ; GFX1150-LABEL: name: trans_use_4_one_depctr_2
235
+ ; GFX1150: $vgpr1 = V_SQRT_F32_e32 $vgpr0, implicit $mode, implicit $exec
236
+ ; GFX1150-NEXT: $vgpr3 = V_SQRT_F32_e32 $vgpr2, implicit $mode, implicit $exec
237
+ ; GFX1150-NEXT: $vgpr5 = V_ADD_F32_e32 $vgpr3, $vgpr4, implicit $mode, implicit $exec
238
+ ; GFX1150-NEXT: $vgpr7 = V_ADD_F32_e32 $vgpr1, $vgpr6, implicit $mode, implicit $exec
239
+ ; GFX1150-NEXT: S_ENDPGM 0
197
240
$vgpr1 = V_SQRT_F32_e32 $vgpr0, implicit $mode, implicit $exec
198
241
$vgpr3 = V_SQRT_F32_e32 $vgpr2, implicit $mode, implicit $exec
199
242
$vgpr5 = V_ADD_F32_e32 $vgpr3, $vgpr4, implicit $mode, implicit $exec
@@ -205,13 +248,19 @@ body: |
205
248
name : trans_use_4
206
249
body : |
207
250
bb.0:
208
- ; GCN-LABEL: name: trans_use_4
209
- ; GCN: $vgpr1 = V_SQRT_F32_e32 $vgpr0, implicit $mode, implicit $exec
210
- ; GCN-NEXT: $vgpr10 = V_SQRT_F32_e32 $vgpr11, implicit $mode, implicit $exec
211
- ; GCN-NEXT: $vgpr2 = V_MOV_B32_e32 0, implicit $exec
212
- ; GCN-NEXT: S_WAITCNT_DEPCTR 4095
213
- ; GCN-NEXT: $vgpr3 = V_ADD_F32_e32 $vgpr1, $vgpr2, implicit $mode, implicit $exec
214
- ; GCN-NEXT: S_ENDPGM 0
251
+ ; GFX11-LABEL: name: trans_use_4
252
+ ; GFX11: $vgpr1 = V_SQRT_F32_e32 $vgpr0, implicit $mode, implicit $exec
253
+ ; GFX11-NEXT: $vgpr10 = V_SQRT_F32_e32 $vgpr11, implicit $mode, implicit $exec
254
+ ; GFX11-NEXT: $vgpr2 = V_MOV_B32_e32 0, implicit $exec
255
+ ; GFX11-NEXT: S_WAITCNT_DEPCTR 4095
256
+ ; GFX11-NEXT: $vgpr3 = V_ADD_F32_e32 $vgpr1, $vgpr2, implicit $mode, implicit $exec
257
+ ; GFX11-NEXT: S_ENDPGM 0
258
+ ; GFX1150-LABEL: name: trans_use_4
259
+ ; GFX1150: $vgpr1 = V_SQRT_F32_e32 $vgpr0, implicit $mode, implicit $exec
260
+ ; GFX1150-NEXT: $vgpr10 = V_SQRT_F32_e32 $vgpr11, implicit $mode, implicit $exec
261
+ ; GFX1150-NEXT: $vgpr2 = V_MOV_B32_e32 0, implicit $exec
262
+ ; GFX1150-NEXT: $vgpr3 = V_ADD_F32_e32 $vgpr1, $vgpr2, implicit $mode, implicit $exec
263
+ ; GFX1150-NEXT: S_ENDPGM 0
215
264
$vgpr1 = V_SQRT_F32_e32 $vgpr0, implicit $mode, implicit $exec
216
265
$vgpr10 = V_SQRT_F32_e32 $vgpr11, implicit $mode, implicit $exec
217
266
$vgpr2 = V_MOV_B32_e32 0, implicit $exec
@@ -222,28 +271,49 @@ body: |
222
271
---
223
272
name : trans_use_branching_1a
224
273
body : |
225
- ; GCN-LABEL: name: trans_use_branching_1a
226
- ; GCN: bb.0:
227
- ; GCN-NEXT: successors: %bb.2(0x80000000)
228
- ; GCN-NEXT: {{ $}}
229
- ; GCN-NEXT: $vgpr1 = V_SQRT_F32_e32 $vgpr0, implicit $mode, implicit $exec
230
- ; GCN-NEXT: S_BRANCH %bb.2
231
- ; GCN-NEXT: {{ $}}
232
- ; GCN-NEXT: bb.1:
233
- ; GCN-NEXT: successors: %bb.2(0x80000000)
234
- ; GCN-NEXT: {{ $}}
235
- ; GCN-NEXT: $vgpr2 = V_MOV_B32_e32 0, implicit $exec
236
- ; GCN-NEXT: $vgpr30 = V_MOV_B32_e32 0, implicit $exec
237
- ; GCN-NEXT: $vgpr31 = V_MOV_B32_e32 0, implicit $exec
238
- ; GCN-NEXT: $vgpr32 = V_MOV_B32_e32 0, implicit $exec
239
- ; GCN-NEXT: $vgpr33 = V_MOV_B32_e32 0, implicit $exec
240
- ; GCN-NEXT: S_BRANCH %bb.2
241
- ; GCN-NEXT: {{ $}}
242
- ; GCN-NEXT: bb.2:
243
- ; GCN-NEXT: $vgpr3 = V_MOV_B32_e32 0, implicit $exec
244
- ; GCN-NEXT: S_WAITCNT_DEPCTR 4095
245
- ; GCN-NEXT: $vgpr4 = V_ADD_F32_e32 $vgpr1, $vgpr2, implicit $mode, implicit $exec
246
- ; GCN-NEXT: S_ENDPGM 0
274
+ ; GFX11-LABEL: name: trans_use_branching_1a
275
+ ; GFX11: bb.0:
276
+ ; GFX11-NEXT: successors: %bb.2(0x80000000)
277
+ ; GFX11-NEXT: {{ $}}
278
+ ; GFX11-NEXT: $vgpr1 = V_SQRT_F32_e32 $vgpr0, implicit $mode, implicit $exec
279
+ ; GFX11-NEXT: S_BRANCH %bb.2
280
+ ; GFX11-NEXT: {{ $}}
281
+ ; GFX11-NEXT: bb.1:
282
+ ; GFX11-NEXT: successors: %bb.2(0x80000000)
283
+ ; GFX11-NEXT: {{ $}}
284
+ ; GFX11-NEXT: $vgpr2 = V_MOV_B32_e32 0, implicit $exec
285
+ ; GFX11-NEXT: $vgpr30 = V_MOV_B32_e32 0, implicit $exec
286
+ ; GFX11-NEXT: $vgpr31 = V_MOV_B32_e32 0, implicit $exec
287
+ ; GFX11-NEXT: $vgpr32 = V_MOV_B32_e32 0, implicit $exec
288
+ ; GFX11-NEXT: $vgpr33 = V_MOV_B32_e32 0, implicit $exec
289
+ ; GFX11-NEXT: S_BRANCH %bb.2
290
+ ; GFX11-NEXT: {{ $}}
291
+ ; GFX11-NEXT: bb.2:
292
+ ; GFX11-NEXT: $vgpr3 = V_MOV_B32_e32 0, implicit $exec
293
+ ; GFX11-NEXT: S_WAITCNT_DEPCTR 4095
294
+ ; GFX11-NEXT: $vgpr4 = V_ADD_F32_e32 $vgpr1, $vgpr2, implicit $mode, implicit $exec
295
+ ; GFX11-NEXT: S_ENDPGM 0
296
+ ; GFX1150-LABEL: name: trans_use_branching_1a
297
+ ; GFX1150: bb.0:
298
+ ; GFX1150-NEXT: successors: %bb.2(0x80000000)
299
+ ; GFX1150-NEXT: {{ $}}
300
+ ; GFX1150-NEXT: $vgpr1 = V_SQRT_F32_e32 $vgpr0, implicit $mode, implicit $exec
301
+ ; GFX1150-NEXT: S_BRANCH %bb.2
302
+ ; GFX1150-NEXT: {{ $}}
303
+ ; GFX1150-NEXT: bb.1:
304
+ ; GFX1150-NEXT: successors: %bb.2(0x80000000)
305
+ ; GFX1150-NEXT: {{ $}}
306
+ ; GFX1150-NEXT: $vgpr2 = V_MOV_B32_e32 0, implicit $exec
307
+ ; GFX1150-NEXT: $vgpr30 = V_MOV_B32_e32 0, implicit $exec
308
+ ; GFX1150-NEXT: $vgpr31 = V_MOV_B32_e32 0, implicit $exec
309
+ ; GFX1150-NEXT: $vgpr32 = V_MOV_B32_e32 0, implicit $exec
310
+ ; GFX1150-NEXT: $vgpr33 = V_MOV_B32_e32 0, implicit $exec
311
+ ; GFX1150-NEXT: S_BRANCH %bb.2
312
+ ; GFX1150-NEXT: {{ $}}
313
+ ; GFX1150-NEXT: bb.2:
314
+ ; GFX1150-NEXT: $vgpr3 = V_MOV_B32_e32 0, implicit $exec
315
+ ; GFX1150-NEXT: $vgpr4 = V_ADD_F32_e32 $vgpr1, $vgpr2, implicit $mode, implicit $exec
316
+ ; GFX1150-NEXT: S_ENDPGM 0
247
317
bb.0:
248
318
$vgpr1 = V_SQRT_F32_e32 $vgpr0, implicit $mode, implicit $exec
249
319
S_BRANCH %bb.2
@@ -263,26 +333,45 @@ body: |
263
333
---
264
334
name : trans_use_branching_1b
265
335
body : |
266
- ; GCN-LABEL: name: trans_use_branching_1b
267
- ; GCN: bb.0:
268
- ; GCN-NEXT: successors: %bb.2(0x80000000)
269
- ; GCN-NEXT: {{ $}}
270
- ; GCN-NEXT: $vgpr1 = V_SQRT_F32_e32 $vgpr0, implicit $mode, implicit $exec
271
- ; GCN-NEXT: S_BRANCH %bb.2
272
- ; GCN-NEXT: {{ $}}
273
- ; GCN-NEXT: bb.1:
274
- ; GCN-NEXT: successors: %bb.2(0x80000000)
275
- ; GCN-NEXT: {{ $}}
276
- ; GCN-NEXT: $vgpr2 = V_MOV_B32_e32 0, implicit $exec
277
- ; GCN-NEXT: $vgpr30 = V_MOV_B32_e32 0, implicit $exec
278
- ; GCN-NEXT: S_WAITCNT_DEPCTR 4095
279
- ; GCN-NEXT: S_BRANCH %bb.2
280
- ; GCN-NEXT: {{ $}}
281
- ; GCN-NEXT: bb.2:
282
- ; GCN-NEXT: $vgpr3 = V_MOV_B32_e32 0, implicit $exec
283
- ; GCN-NEXT: S_WAITCNT_DEPCTR 4095
284
- ; GCN-NEXT: $vgpr4 = V_ADD_F32_e32 $vgpr1, $vgpr2, implicit $mode, implicit $exec
285
- ; GCN-NEXT: S_ENDPGM 0
336
+ ; GFX11-LABEL: name: trans_use_branching_1b
337
+ ; GFX11: bb.0:
338
+ ; GFX11-NEXT: successors: %bb.2(0x80000000)
339
+ ; GFX11-NEXT: {{ $}}
340
+ ; GFX11-NEXT: $vgpr1 = V_SQRT_F32_e32 $vgpr0, implicit $mode, implicit $exec
341
+ ; GFX11-NEXT: S_BRANCH %bb.2
342
+ ; GFX11-NEXT: {{ $}}
343
+ ; GFX11-NEXT: bb.1:
344
+ ; GFX11-NEXT: successors: %bb.2(0x80000000)
345
+ ; GFX11-NEXT: {{ $}}
346
+ ; GFX11-NEXT: $vgpr2 = V_MOV_B32_e32 0, implicit $exec
347
+ ; GFX11-NEXT: $vgpr30 = V_MOV_B32_e32 0, implicit $exec
348
+ ; GFX11-NEXT: S_WAITCNT_DEPCTR 4095
349
+ ; GFX11-NEXT: S_BRANCH %bb.2
350
+ ; GFX11-NEXT: {{ $}}
351
+ ; GFX11-NEXT: bb.2:
352
+ ; GFX11-NEXT: $vgpr3 = V_MOV_B32_e32 0, implicit $exec
353
+ ; GFX11-NEXT: S_WAITCNT_DEPCTR 4095
354
+ ; GFX11-NEXT: $vgpr4 = V_ADD_F32_e32 $vgpr1, $vgpr2, implicit $mode, implicit $exec
355
+ ; GFX11-NEXT: S_ENDPGM 0
356
+ ; GFX1150-LABEL: name: trans_use_branching_1b
357
+ ; GFX1150: bb.0:
358
+ ; GFX1150-NEXT: successors: %bb.2(0x80000000)
359
+ ; GFX1150-NEXT: {{ $}}
360
+ ; GFX1150-NEXT: $vgpr1 = V_SQRT_F32_e32 $vgpr0, implicit $mode, implicit $exec
361
+ ; GFX1150-NEXT: S_BRANCH %bb.2
362
+ ; GFX1150-NEXT: {{ $}}
363
+ ; GFX1150-NEXT: bb.1:
364
+ ; GFX1150-NEXT: successors: %bb.2(0x80000000)
365
+ ; GFX1150-NEXT: {{ $}}
366
+ ; GFX1150-NEXT: $vgpr2 = V_MOV_B32_e32 0, implicit $exec
367
+ ; GFX1150-NEXT: $vgpr30 = V_MOV_B32_e32 0, implicit $exec
368
+ ; GFX1150-NEXT: S_WAITCNT_DEPCTR 4095
369
+ ; GFX1150-NEXT: S_BRANCH %bb.2
370
+ ; GFX1150-NEXT: {{ $}}
371
+ ; GFX1150-NEXT: bb.2:
372
+ ; GFX1150-NEXT: $vgpr3 = V_MOV_B32_e32 0, implicit $exec
373
+ ; GFX1150-NEXT: $vgpr4 = V_ADD_F32_e32 $vgpr1, $vgpr2, implicit $mode, implicit $exec
374
+ ; GFX1150-NEXT: S_ENDPGM 0
286
375
bb.0:
287
376
$vgpr1 = V_SQRT_F32_e32 $vgpr0, implicit $mode, implicit $exec
288
377
S_BRANCH %bb.2
0 commit comments