[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