[llvm] [AMDGPU][SIInsertWaitcnts] Fix iota_range assertion when OtherMarks is empty in mergeAsyncMarks() (PR #193499)

via llvm-commits llvm-commits at lists.llvm.org
Fri May 1 03:35:54 PDT 2026


github-actions[bot] wrote:

<!--PREMERGE ADVISOR COMMENT: Windows-->
# :window: Windows x64 Test Results

* 134121 tests passed
* 3189 tests skipped
* 1 test failed

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

### LLVM
<details>
<summary>LLVM.CodeGen/AMDGPU/asyncmark-max-pregfx12.ll</summary>

```
Exit Code: 1

Command Output (stdout):
--
# RUN: at line 1
c:\_work\llvm-project\llvm-project\build\bin\llc.exe -global-isel=0 -mtriple=amdgcn -mcpu=gfx900  < C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\AMDGPU\asyncmark-max-pregfx12.ll | c:\_work\llvm-project\llvm-project\build\bin\filecheck.exe C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\AMDGPU\asyncmark-max-pregfx12.ll
# executed command: 'c:\_work\llvm-project\llvm-project\build\bin\llc.exe' -global-isel=0 -mtriple=amdgcn -mcpu=gfx900
# note: command had no output on stdout or stderr
# executed command: 'c:\_work\llvm-project\llvm-project\build\bin\filecheck.exe' 'C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\AMDGPU\asyncmark-max-pregfx12.ll'
# .---command stderr------------
# | C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\AMDGPU\asyncmark-max-pregfx12.ll:153:15: error: CHECK-NEXT: expected string not found in input
# | ; CHECK-NEXT: s_waitcnt vmcnt(15)
# |               ^
# | <stdin>:299:22: note: scanning from here
# |  ; wait_asyncmark(17)
# |                      ^
# | <stdin>:303:2: note: possible intended match here
# |  s_waitcnt vmcnt(0)
# |  ^
# | 
# | Input file: <stdin>
# | Check file: C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\AMDGPU\asyncmark-max-pregfx12.ll
# | 
# | -dump-input=help explains the following input dump.
# | 
# | Input was:
# | <<<<<<
# |             .
# |             .
# |             .
# |           294:  ; asyncmark 
# |           295:  global_load_dword v[0:1], off lds 
# |           296:  ; asyncmark 
# |           297: .LBB2_4: ; %endif 
# |           298:  s_or_b64 exec, exec, s[4:5] 
# |           299:  ; wait_asyncmark(17) 
# | next:153'0                          X error: no match found
# |           300:  ds_read_b32 v0, v2 
# | next:153'0     ~~~~~~~~~~~~~~~~~~~~
# |           301:  s_waitcnt lgkmcnt(0) 
# | next:153'0     ~~~~~~~~~~~~~~~~~~~~~~
# |           302:  global_store_dword v[4:5], v0, off 
# | next:153'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |           303:  s_waitcnt vmcnt(0) 
# | next:153'0     ~~~~~~~~~~~~~~~~~~~~
# | next:153'1      ?                   possible intended match
# |           304:  s_setpc_b64 s[30:31] 
# | next:153'0     ~~~~~~~~~~~~~~~~~~~~~~
# |           305: .Lfunc_end2: 
# | next:153'0     ~~~~~~~~~~~~~
# |           306:  .size max_when_merged, .Lfunc_end2-max_when_merged 
# | next:153'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |           307:  ; -- End function 
# | next:153'0     ~~~~~~~~~~~~~~~~~~~
# |           308:  .set .Lmax_when_merged.num_vgpr, 6 
# | next:153'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/193499


More information about the llvm-commits mailing list