[llvm] [AMDGPU] Add legalization rules for atomic ops (PR #175253)

via llvm-commits llvm-commits at lists.llvm.org
Fri Jan 9 14:32:26 PST 2026


github-actions[bot] wrote:

<!--PREMERGE ADVISOR COMMENT: Linux-->
# :penguin: Linux x64 Test Results

* 167886 tests passed
* 2980 tests skipped
* 1 test failed

## Failed Tests
(click on a test name to see its output)

### LLVM
<details>
<summary>LLVM.CodeGen/AMDGPU/GlobalISel/atomicrmw-add-sub.ll</summary>

```
Exit Code: 1

Command Output (stdout):
--
# RUN: at line 2
/home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/llc -global-isel -mtriple=amdgcn-amd-amdhsa -mcpu=gfx1200 < /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/CodeGen/AMDGPU/GlobalISel/atomicrmw-add-sub.ll | /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/FileCheck -check-prefixes=GFX12 /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/CodeGen/AMDGPU/GlobalISel/atomicrmw-add-sub.ll
# executed command: /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/llc -global-isel -mtriple=amdgcn-amd-amdhsa -mcpu=gfx1200
# note: command had no output on stdout or stderr
# executed command: /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/FileCheck -check-prefixes=GFX12 /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/CodeGen/AMDGPU/GlobalISel/atomicrmw-add-sub.ll
# .---command stderr------------
# | /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/CodeGen/AMDGPU/GlobalISel/atomicrmw-add-sub.ll:23:15: error: GFX12-NEXT: expected string not found in input
# | ; GFX12-NEXT: s_wait_loadcnt 0x0
# |               ^
# | <stdin>:18:28: note: scanning from here
# |  global_inv scope:SCOPE_SYS
# |                            ^
# | <stdin>:29:35: note: possible intended match here
# |  .set atomicrmw_add_i32_global.uses_flat_scratch, 0
# |                                   ^
# | /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/CodeGen/AMDGPU/GlobalISel/atomicrmw-add-sub.ll:42:15: error: GFX12-NEXT: expected string not found in input
# | ; GFX12-NEXT: s_wait_loadcnt 0x0
# |               ^
# | <stdin>:55:28: note: scanning from here
# |  global_inv scope:SCOPE_SYS
# |                            ^
# | <stdin>:66:35: note: possible intended match here
# |  .set atomicrmw_add_i64_global.uses_flat_scratch, 0
# |                                   ^
# | /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/CodeGen/AMDGPU/GlobalISel/atomicrmw-add-sub.ll:82:15: error: GFX12-NEXT: expected string not found in input
# | ; GFX12-NEXT: s_wait_loadcnt 0x0
# |               ^
# | <stdin>:109:22: note: scanning from here
# |  v_mov_b32_e32 v0, v3
# |                      ^
# | <stdin>:120:35: note: possible intended match here
# |  .set atomicrmw_sub_i32_global.uses_flat_scratch, 0
# |                                   ^
# | /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/CodeGen/AMDGPU/GlobalISel/atomicrmw-add-sub.ll:106:15: error: GFX12-NEXT: expected string not found in input
# | ; GFX12-NEXT: s_wait_loadcnt 0x0
# |               ^
# | <stdin>:145:27: note: scanning from here
# |  global_inv scope:SCOPE_SE
# |                           ^
# | <stdin>:156:34: note: possible intended match here
# |  .set atomicrmw_add_i32_local.uses_flat_scratch, 0
# |                                  ^
# | /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/CodeGen/AMDGPU/GlobalISel/atomicrmw-add-sub.ll:124:15: error: GFX12-NEXT: expected string not found in input
# | ; GFX12-NEXT: s_wait_loadcnt 0x0
# |               ^
# | <stdin>:181:27: note: scanning from here
# |  global_inv scope:SCOPE_SE
# |                           ^
# | <stdin>:192:34: note: possible intended match here
# |  .set atomicrmw_add_i64_local.uses_flat_scratch, 0
# |                                  ^
# | /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/CodeGen/AMDGPU/GlobalISel/atomicrmw-add-sub.ll:146:15: error: GFX12-NEXT: expected string not found in input
# | ; GFX12-NEXT: s_wait_loadcnt 0x0
# |               ^
# | <stdin>:217:27: note: scanning from here
# |  global_inv scope:SCOPE_SE
# |                           ^
# | <stdin>:228:34: note: possible intended match here
# |  .set atomicrmw_sub_i32_local.uses_flat_scratch, 0
# |                                  ^
# | /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/CodeGen/AMDGPU/GlobalISel/atomicrmw-add-sub.ll:164:15: error: GFX12-NEXT: expected string not found in input
# | ; GFX12-NEXT: s_wait_loadcnt 0x0
# |               ^
# | <stdin>:253:27: note: scanning from here
# |  global_inv scope:SCOPE_SE
# |                           ^
# | <stdin>:264:34: note: possible intended match here
# |  .set atomicrmw_sub_i64_local.uses_flat_scratch, 0
# |                                  ^
# | /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/CodeGen/AMDGPU/GlobalISel/atomicrmw-add-sub.ll:187:15: error: GFX12-NEXT: expected string not found in input
# | ; GFX12-NEXT: s_wait_loadcnt 0x0
# |               ^
# | <stdin>:290:28: note: scanning from here
# |  global_inv scope:SCOPE_SYS
# |                            ^
# | <stdin>:301:33: note: possible intended match here
# |  .set atomicrmw_add_i32_flat.uses_flat_scratch, 0
# |                                 ^
# | /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/CodeGen/AMDGPU/GlobalISel/atomicrmw-add-sub.ll:229:15: error: GFX12-NEXT: expected string not found in input
# | ; GFX12-NEXT: s_wait_loadcnt 0x0
# |               ^
# | <stdin>:344:22: note: scanning from here
# |  v_mov_b32_e32 v0, v3
# |                      ^
# | <stdin>:355:33: note: possible intended match here
# |  .set atomicrmw_sub_i32_flat.uses_flat_scratch, 0
# |                                 ^
# | 
# | Input file: <stdin>
# | Check file: /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/CodeGen/AMDGPU/GlobalISel/atomicrmw-add-sub.ll
# | 
# | -dump-input=help explains the following input dump.
# | 
# | Input was:
# | <<<<<<
# |             .
# |             .
# |             .
# |            13:  s_wait_kmcnt 0x0 
# |            14:  global_wb scope:SCOPE_SYS 
# |            15:  s_wait_storecnt 0x0 
# |            16:  global_atomic_add_u32 v0, v[0:1], v2, off th:TH_ATOMIC_RETURN scope:SCOPE_SYS 
# |            17:  s_wait_loadcnt 0x0 
# |            18:  global_inv scope:SCOPE_SYS 
# | next:23'0                                 X error: no match found
# |            19:  s_setpc_b64 s[30:31] 
# | next:23'0      ~~~~~~~~~~~~~~~~~~~~~~
# |            20: .Lfunc_end0: 
# | next:23'0      ~~~~~~~~~~~~~
# |            21:  .size atomicrmw_add_i32_global, .Lfunc_end0-atomicrmw_add_i32_global 
# | next:23'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            22:  ; -- End function 
# | next:23'0      ~~~~~~~~~~~~~~~~~~~
# |            23:  .set atomicrmw_add_i32_global.num_vgpr, 3 
# | next:23'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            24:  .set atomicrmw_add_i32_global.num_agpr, 0 
# | next:23'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            25:  .set atomicrmw_add_i32_global.numbered_sgpr, 32 
# | next:23'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            26:  .set atomicrmw_add_i32_global.num_named_barrier, 0 
# | next:23'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            27:  .set atomicrmw_add_i32_global.private_seg_size, 0 
# | next:23'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            28:  .set atomicrmw_add_i32_global.uses_vcc, 0 
# | next:23'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            29:  .set atomicrmw_add_i32_global.uses_flat_scratch, 0 
# | next:23'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | next:23'1                                        ?                  possible intended match
# |            30:  .set atomicrmw_add_i32_global.has_dyn_sized_stack, 0 
# | next:23'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            31:  .set atomicrmw_add_i32_global.has_recursion, 0 
# | next:23'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            32:  .set atomicrmw_add_i32_global.has_indirect_call, 0 
# | next:23'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            33:  .section .AMDGPU.csdata,"", at progbits 
# | next:23'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            34: ; Function info: 
# | next:23'0      ~~~~~~~~~~~~~~~~~
# |             .
# |             .
# |             .
# |            50:  s_wait_kmcnt 0x0 
# |            51:  global_wb scope:SCOPE_SYS 
# |            52:  s_wait_storecnt 0x0 
# |            53:  global_atomic_add_u64 v[0:1], v[0:1], v[2:3], off th:TH_ATOMIC_RETURN scope:SCOPE_SYS 
# |            54:  s_wait_loadcnt 0x0 
# |            55:  global_inv scope:SCOPE_SYS 
# | next:42'0                                 X error: no match found
# |            56:  s_setpc_b64 s[30:31] 
# | next:42'0      ~~~~~~~~~~~~~~~~~~~~~~
# |            57: .Lfunc_end1: 
# | next:42'0      ~~~~~~~~~~~~~
# |            58:  .size atomicrmw_add_i64_global, .Lfunc_end1-atomicrmw_add_i64_global 
# | next:42'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            59:  ; -- End function 
# | next:42'0      ~~~~~~~~~~~~~~~~~~~
# |            60:  .set atomicrmw_add_i64_global.num_vgpr, 4 
# | next:42'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            61:  .set atomicrmw_add_i64_global.num_agpr, 0 
# | next:42'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            62:  .set atomicrmw_add_i64_global.numbered_sgpr, 32 
# | next:42'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            63:  .set atomicrmw_add_i64_global.num_named_barrier, 0 
# | next:42'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            64:  .set atomicrmw_add_i64_global.private_seg_size, 0 
# | next:42'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            65:  .set atomicrmw_add_i64_global.uses_vcc, 0 
# | next:42'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            66:  .set atomicrmw_add_i64_global.uses_flat_scratch, 0 
# | next:42'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | next:42'1                                        ?                  possible intended match
# |            67:  .set atomicrmw_add_i64_global.has_dyn_sized_stack, 0 
# | next:42'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            68:  .set atomicrmw_add_i64_global.has_recursion, 0 
# | next:42'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            69:  .set atomicrmw_add_i64_global.has_indirect_call, 0 
# | next:42'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            70:  .section .AMDGPU.csdata,"", at progbits 
# | next:42'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            71: ; Function info: 
# | next:42'0      ~~~~~~~~~~~~~~~~~
# |             .
# |             .
# |             .
# |           104:  s_wait_alu depctr_sa_sdst(0) 
# |           105:  s_and_not1_b32 exec_lo, exec_lo, s0 
# |           106:  s_cbranch_execnz .LBB2_1 
# |           107: ; %bb.2: ; %atomicrmw.end 
# |           108:  s_or_b32 exec_lo, exec_lo, s0 
# |           109:  v_mov_b32_e32 v0, v3 
# | next:82'0                           X error: no match found
# |           110:  s_setpc_b64 s[30:31] 
# | next:82'0      ~~~~~~~~~~~~~~~~~~~~~~
# |           111: .Lfunc_end2: 
# | next:82'0      ~~~~~~~~~~~~~
# |           112:  .size atomicrmw_sub_i32_global, .Lfunc_end2-atomicrmw_sub_i32_global 
# | next:82'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |           113:  ; -- End function 
# | next:82'0      ~~~~~~~~~~~~~~~~~~~
# |           114:  .set atomicrmw_sub_i32_global.num_vgpr, 5 
# | next:82'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |           115:  .set atomicrmw_sub_i32_global.num_agpr, 0 
# | next:82'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |           116:  .set atomicrmw_sub_i32_global.numbered_sgpr, 32 
# | next:82'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |           117:  .set atomicrmw_sub_i32_global.num_named_barrier, 0 
# | next:82'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |           118:  .set atomicrmw_sub_i32_global.private_seg_size, 0 
# | next:82'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |           119:  .set atomicrmw_sub_i32_global.uses_vcc, 1 
# | next:82'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |           120:  .set atomicrmw_sub_i32_global.uses_flat_scratch, 0 
# | next:82'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | next:82'1                                        ?                  possible intended match
# |           121:  .set atomicrmw_sub_i32_global.has_dyn_sized_stack, 0 
# | next:82'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |           122:  .set atomicrmw_sub_i32_global.has_recursion, 0 
# | next:82'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |           123:  .set atomicrmw_sub_i32_global.has_indirect_call, 0 
# | next:82'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |           124:  .section .AMDGPU.csdata,"", at progbits 
# | next:82'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |           125: ; Function info: 
# | next:82'0      ~~~~~~~~~~~~~~~~~
# |             .
# |             .
# |             .
# |           140:  s_wait_bvhcnt 0x0 
# |           141:  s_wait_kmcnt 0x0 
# |           142:  s_wait_storecnt 0x0 
# |           143:  ds_add_rtn_u32 v0, v0, v1 
# |           144:  s_wait_dscnt 0x0 
# |           145:  global_inv scope:SCOPE_SE 
# | next:106'0                               X error: no match found
# |           146:  s_setpc_b64 s[30:31] 
# | next:106'0     ~~~~~~~~~~~~~~~~~~~~~~
# |           147: .Lfunc_end3: 
# | next:106'0     ~~~~~~~~~~~~~
# |           148:  .size atomicrmw_add_i32_local, .Lfunc_end3-atomicrmw_add_i32_local 
# | next:106'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |           149:  ; -- End function 
# | next:106'0     ~~~~~~~~~~~~~~~~~~~
# |           150:  .set atomicrmw_add_i32_local.num_vgpr, 2 
# | next:106'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |           151:  .set atomicrmw_add_i32_local.num_agpr, 0 
# | next:106'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |           152:  .set atomicrmw_add_i32_local.numbered_sgpr, 32 
# | next:106'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |           153:  .set atomicrmw_add_i32_local.num_named_barrier, 0 
# | next:106'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |           154:  .set atomicrmw_add_i32_local.private_seg_size, 0 
# | next:106'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |           155:  .set atomicrmw_add_i32_local.uses_vcc, 0 
# | next:106'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |           156:  .set atomicrmw_add_i32_local.uses_flat_scratch, 0 
# | next:106'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | next:106'1                                      ?                  possible intended match
# |           157:  .set atomicrmw_add_i32_local.has_dyn_sized_stack, 0 
# | next:106'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |           158:  .set atomicrmw_add_i32_local.has_recursion, 0 
# | next:106'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |           159:  .set atomicrmw_add_i32_local.has_indirect_call, 0 
# | next:106'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |           160:  .section .AMDGPU.csdata,"", at progbits 
# | next:106'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |           161: ; Function info: 
# | next:106'0     ~~~~~~~~~~~~~~~~~
# |             .
# |             .
# |             .
# |           176:  s_wait_bvhcnt 0x0 
# |           177:  s_wait_kmcnt 0x0 
# |           178:  s_wait_storecnt 0x0 
# |           179:  ds_add_rtn_u64 v[0:1], v0, v[1:2] 
# |           180:  s_wait_dscnt 0x0 
# |           181:  global_inv scope:SCOPE_SE 
# | next:124'0                               X error: no match found
# |           182:  s_setpc_b64 s[30:31] 
# | next:124'0     ~~~~~~~~~~~~~~~~~~~~~~
# |           183: .Lfunc_end4: 
# | next:124'0     ~~~~~~~~~~~~~
# |           184:  .size atomicrmw_add_i64_local, .Lfunc_end4-atomicrmw_add_i64_local 
# | next:124'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |           185:  ; -- End function 
# | next:124'0     ~~~~~~~~~~~~~~~~~~~
# |           186:  .set atomicrmw_add_i64_local.num_vgpr, 3 
# | next:124'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |           187:  .set atomicrmw_add_i64_local.num_agpr, 0 
# | next:124'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |           188:  .set atomicrmw_add_i64_local.numbered_sgpr, 32 
# | next:124'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |           189:  .set atomicrmw_add_i64_local.num_named_barrier, 0 
# | next:124'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |           190:  .set atomicrmw_add_i64_local.private_seg_size, 0 
# | next:124'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |           191:  .set atomicrmw_add_i64_local.uses_vcc, 0 
# | next:124'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |           192:  .set atomicrmw_add_i64_local.uses_flat_scratch, 0 
# | next:124'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | next:124'1                                      ?                  possible intended match
# |           193:  .set atomicrmw_add_i64_local.has_dyn_sized_stack, 0 
# | next:124'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |           194:  .set atomicrmw_add_i64_local.has_recursion, 0 
# | next:124'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |           195:  .set atomicrmw_add_i64_local.has_indirect_call, 0 
# | next:124'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |           196:  .section .AMDGPU.csdata,"", at progbits 
# | next:124'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |           197: ; Function info: 
# | next:124'0     ~~~~~~~~~~~~~~~~~
# |             .
# |             .
# |             .
# |           212:  s_wait_bvhcnt 0x0 
# |           213:  s_wait_kmcnt 0x0 
# |           214:  s_wait_storecnt 0x0 
# |           215:  ds_sub_rtn_u32 v0, v0, v1 
# |           216:  s_wait_dscnt 0x0 
# |           217:  global_inv scope:SCOPE_SE 
# | next:146'0                               X error: no match found
# |           218:  s_setpc_b64 s[30:31] 
# | next:146'0     ~~~~~~~~~~~~~~~~~~~~~~
# |           219: .Lfunc_end5: 
# | next:146'0     ~~~~~~~~~~~~~
# |           220:  .size atomicrmw_sub_i32_local, .Lfunc_end5-atomicrmw_sub_i32_local 
# | next:146'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |           221:  ; -- End function 
# | next:146'0     ~~~~~~~~~~~~~~~~~~~
# |           222:  .set atomicrmw_sub_i32_local.num_vgpr, 2 
# | next:146'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |           223:  .set atomicrmw_sub_i32_local.num_agpr, 0 
# | next:146'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |           224:  .set atomicrmw_sub_i32_local.numbered_sgpr, 32 
# | next:146'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |           225:  .set atomicrmw_sub_i32_local.num_named_barrier, 0 
# | next:146'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |           226:  .set atomicrmw_sub_i32_local.private_seg_size, 0 
# | next:146'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |           227:  .set atomicrmw_sub_i32_local.uses_vcc, 0 
# | next:146'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |           228:  .set atomicrmw_sub_i32_local.uses_flat_scratch, 0 
# | next:146'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | next:146'1                                      ?                  possible intended match
# |           229:  .set atomicrmw_sub_i32_local.has_dyn_sized_stack, 0 
# | next:146'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |           230:  .set atomicrmw_sub_i32_local.has_recursion, 0 
# | next:146'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |           231:  .set atomicrmw_sub_i32_local.has_indirect_call, 0 
# | next:146'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |           232:  .section .AMDGPU.csdata,"", at progbits 
# | next:146'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |           233: ; Function info: 
# | next:146'0     ~~~~~~~~~~~~~~~~~
# |             .
# |             .
# |             .
# |           248:  s_wait_bvhcnt 0x0 
# |           249:  s_wait_kmcnt 0x0 
# |           250:  s_wait_storecnt 0x0 
# |           251:  ds_sub_rtn_u64 v[0:1], v0, v[1:2] 
# |           252:  s_wait_dscnt 0x0 
# |           253:  global_inv scope:SCOPE_SE 
# | next:164'0                               X error: no match found
# |           254:  s_setpc_b64 s[30:31] 
# | next:164'0     ~~~~~~~~~~~~~~~~~~~~~~
# |           255: .Lfunc_end6: 
# | next:164'0     ~~~~~~~~~~~~~
# |           256:  .size atomicrmw_sub_i64_local, .Lfunc_end6-atomicrmw_sub_i64_local 
# | next:164'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |           257:  ; -- End function 
# | next:164'0     ~~~~~~~~~~~~~~~~~~~
# |           258:  .set atomicrmw_sub_i64_local.num_vgpr, 3 
# | next:164'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |           259:  .set atomicrmw_sub_i64_local.num_agpr, 0 
# | next:164'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |           260:  .set atomicrmw_sub_i64_local.numbered_sgpr, 32 
# | next:164'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |           261:  .set atomicrmw_sub_i64_local.num_named_barrier, 0 
# | next:164'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |           262:  .set atomicrmw_sub_i64_local.private_seg_size, 0 
# | next:164'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |           263:  .set atomicrmw_sub_i64_local.uses_vcc, 0 
# | next:164'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |           264:  .set atomicrmw_sub_i64_local.uses_flat_scratch, 0 
# | next:164'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | next:164'1                                      ?                  possible intended match
# |           265:  .set atomicrmw_sub_i64_local.has_dyn_sized_stack, 0 
# | next:164'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |           266:  .set atomicrmw_sub_i64_local.has_recursion, 0 
# | next:164'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |           267:  .set atomicrmw_sub_i64_local.has_indirect_call, 0 
# | next:164'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |           268:  .section .AMDGPU.csdata,"", at progbits 
# | next:164'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |           269: ; Function info: 
# | next:164'0     ~~~~~~~~~~~~~~~~~
# |             .
# |             .
# |             .
# |           285:  s_wait_kmcnt 0x0 
# |           286:  global_wb scope:SCOPE_SYS 
# |           287:  s_wait_storecnt 0x0 
# |           288:  flat_atomic_add_u32 v0, v[0:1], v2 th:TH_ATOMIC_RETURN scope:SCOPE_SYS 
# |           289:  s_wait_loadcnt_dscnt 0x0 
# |           290:  global_inv scope:SCOPE_SYS 
# | next:187'0                                X error: no match found
# |           291:  s_setpc_b64 s[30:31] 
# | next:187'0     ~~~~~~~~~~~~~~~~~~~~~~
# |           292: .Lfunc_end7: 
# | next:187'0     ~~~~~~~~~~~~~
# |           293:  .size atomicrmw_add_i32_flat, .Lfunc_end7-atomicrmw_add_i32_flat 
# | next:187'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |           294:  ; -- End function 
# | next:187'0     ~~~~~~~~~~~~~~~~~~~
# |           295:  .set atomicrmw_add_i32_flat.num_vgpr, 3 
# | next:187'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |           296:  .set atomicrmw_add_i32_flat.num_agpr, 0 
# | next:187'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |           297:  .set atomicrmw_add_i32_flat.numbered_sgpr, 32 
# | next:187'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |           298:  .set atomicrmw_add_i32_flat.num_named_barrier, 0 
# | next:187'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |           299:  .set atomicrmw_add_i32_flat.private_seg_size, 0 
# | next:187'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |           300:  .set atomicrmw_add_i32_flat.uses_vcc, 0 
# | next:187'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |           301:  .set atomicrmw_add_i32_flat.uses_flat_scratch, 0 
# | next:187'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | next:187'1                                     ?                  possible intended match
# |           302:  .set atomicrmw_add_i32_flat.has_dyn_sized_stack, 0 
# | next:187'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |           303:  .set atomicrmw_add_i32_flat.has_recursion, 0 
# | next:187'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |           304:  .set atomicrmw_add_i32_flat.has_indirect_call, 0 
# | next:187'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |           305:  .section .AMDGPU.csdata,"", at progbits 
# | next:187'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |           306: ; Function info: 
# | next:187'0     ~~~~~~~~~~~~~~~~~
# |             .
# |             .
# |             .
# |           339:  s_wait_alu depctr_sa_sdst(0) 
# |           340:  s_and_not1_b32 exec_lo, exec_lo, s0 
# |           341:  s_cbranch_execnz .LBB8_1 
# |           342: ; %bb.2: ; %atomicrmw.end 
# |           343:  s_or_b32 exec_lo, exec_lo, s0 
# |           344:  v_mov_b32_e32 v0, v3 
# | next:229'0                          X error: no match found
# |           345:  s_setpc_b64 s[30:31] 
# | next:229'0     ~~~~~~~~~~~~~~~~~~~~~~
# |           346: .Lfunc_end8: 
# | next:229'0     ~~~~~~~~~~~~~
# |           347:  .size atomicrmw_sub_i32_flat, .Lfunc_end8-atomicrmw_sub_i32_flat 
# | next:229'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |           348:  ; -- End function 
# | next:229'0     ~~~~~~~~~~~~~~~~~~~
# |           349:  .set atomicrmw_sub_i32_flat.num_vgpr, 5 
# | next:229'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |           350:  .set atomicrmw_sub_i32_flat.num_agpr, 0 
# | next:229'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |           351:  .set atomicrmw_sub_i32_flat.numbered_sgpr, 32 
# | next:229'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |           352:  .set atomicrmw_sub_i32_flat.num_named_barrier, 0 
# | next:229'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |           353:  .set atomicrmw_sub_i32_flat.private_seg_size, 0 
# | next:229'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |           354:  .set atomicrmw_sub_i32_flat.uses_vcc, 1 
# | next:229'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |           355:  .set atomicrmw_sub_i32_flat.uses_flat_scratch, 0 
# | next:229'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | next:229'1                                     ?                  possible intended match
# |           356:  .set atomicrmw_sub_i32_flat.has_dyn_sized_stack, 0 
# | next:229'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |           357:  .set atomicrmw_sub_i32_flat.has_recursion, 0 
# | next:229'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |           358:  .set atomicrmw_sub_i32_flat.has_indirect_call, 0 
# | next:229'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |           359:  .section .AMDGPU.csdata,"", at progbits 
# | next:229'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |           360: ; Function info: 
# | next:229'0     ~~~~~~~~~~~~~~~~~
# |             .
# |             .
# |             .
# | >>>>>>
# `-----------------------------
# error: command failed with exit status: 1

--

```
</details>

If these failures are unrelated to your changes (for example tests are broken or flaky at HEAD), please open an issue at https://github.com/llvm/llvm-project/issues and add the `infrastructure` label.

https://github.com/llvm/llvm-project/pull/175253


More information about the llvm-commits mailing list