[llvm] [AMDGPU] Let LDSDMA ops cross a sched_barrier when the mask allows it (PR #203255)
via llvm-commits
llvm-commits at lists.llvm.org
Thu Jun 11 06:26:57 PDT 2026
github-actions[bot] wrote:
<!--PREMERGE ADVISOR COMMENT: Linux-->
# :penguin: Linux x64 Test Results
* 175430 tests passed
* 3473 tests skipped
* 1 test failed
## Failed Tests
(click on a test name to see its output)
### LLVM
<details>
<summary>LLVM.CodeGen/AMDGPU/ldsdmacnt_sched.mir</summary>
```
Exit Code: 1
Command Output (stdout):
--
# RUN: at line 2
/home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/llc -mtriple=amdgcn -mcpu=gfx1250 -run-pass=machine-scheduler -amdgpu-sched-strategy=coexec -verify-misched /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/CodeGen/AMDGPU/ldsdmacnt_sched.mir -o - | /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/FileCheck -check-prefix=DEFAULT /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/CodeGen/AMDGPU/ldsdmacnt_sched.mir
# executed command: /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/llc -mtriple=amdgcn -mcpu=gfx1250 -run-pass=machine-scheduler -amdgpu-sched-strategy=coexec -verify-misched /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/CodeGen/AMDGPU/ldsdmacnt_sched.mir -o -
# note: command had no output on stdout or stderr
# executed command: /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/FileCheck -check-prefix=DEFAULT /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/CodeGen/AMDGPU/ldsdmacnt_sched.mir
# .---command stderr------------
# | /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/CodeGen/AMDGPU/ldsdmacnt_sched.mir:330:18: error: DEFAULT-NEXT: is not on the line after the previous match
# | ; DEFAULT-NEXT: [[DEF4:%[0-9]+]]:vgpr_32 = IMPLICIT_DEF
# | ^
# | <stdin>:974:2: note: 'next' match was here
# | %10:vgpr_32 = IMPLICIT_DEF
# | ^
# | <stdin>:966:27: note: previous match ended here
# | %3:vgpr_32 = IMPLICIT_DEF
# | ^
# | <stdin>:967:1: note: non-matching line after previous match is here
# | dead %9:vgpr_32 = V_ADD_U32_e32 %2, %3, implicit $exec
# | ^
# | /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/CodeGen/AMDGPU/ldsdmacnt_sched.mir:492:18: error: DEFAULT-NEXT: is not on the line after the previous match
# | ; DEFAULT-NEXT: [[DEF4:%[0-9]+]]:vgpr_32 = IMPLICIT_DEF
# | ^
# | <stdin>:1375:2: note: 'next' match was here
# | %10:vgpr_32 = IMPLICIT_DEF
# | ^
# | <stdin>:1367:27: note: previous match ended here
# | %3:vgpr_32 = IMPLICIT_DEF
# | ^
# | <stdin>:1368:1: note: non-matching line after previous match is here
# | dead %9:vgpr_32 = V_ADD_U32_e32 %2, %3, implicit $exec
# | ^
# | /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/CodeGen/AMDGPU/ldsdmacnt_sched.mir:550:18: error: DEFAULT-NEXT: is not on the line after the previous match
# | ; DEFAULT-NEXT: [[DEF4:%[0-9]+]]:vgpr_32 = IMPLICIT_DEF
# | ^
# | <stdin>:1510:2: note: 'next' match was here
# | %10:vgpr_32 = IMPLICIT_DEF
# | ^
# | <stdin>:1502:27: note: previous match ended here
# | %3:vgpr_32 = IMPLICIT_DEF
# | ^
# | <stdin>:1503:1: note: non-matching line after previous match is here
# | dead %9:vgpr_32 = V_ADD_U32_e32 %2, %3, implicit $exec
# | ^
# | /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/CodeGen/AMDGPU/ldsdmacnt_sched.mir:607:18: error: DEFAULT-NEXT: is not on the line after the previous match
# | ; DEFAULT-NEXT: [[DEF4:%[0-9]+]]:vgpr_32 = IMPLICIT_DEF
# | ^
# | <stdin>:1645:2: note: 'next' match was here
# | %10:vgpr_32 = IMPLICIT_DEF
# | ^
# | <stdin>:1637:27: note: previous match ended here
# | %3:vgpr_32 = IMPLICIT_DEF
# | ^
# | <stdin>:1638:1: note: non-matching line after previous match is here
# | dead %9:vgpr_32 = V_ADD_U32_e32 %2, %3, implicit $exec
# | ^
# |
# | Input file: <stdin>
# | Check file: /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/CodeGen/AMDGPU/ldsdmacnt_sched.mir
# |
# | -dump-input=help explains the following input dump.
# |
# | Input was:
# | <<<<<<
# | .
# | .
# | .
# | 969: dead %5:vgpr_32 = V_ADD_U32_e32 %2, %3, implicit $exec
# | 970: dead %6:vgpr_32 = V_ADD_U32_e32 %2, %3, implicit $exec
# | 971: dead %7:vgpr_32 = V_ADD_U32_e32 %2, %3, implicit $exec
# | 972: dead %8:vgpr_32 = V_ADD_U32_e32 %2, %3, implicit $exec
# | 973: SCHED_GROUP_BARRIER 2, 6, 0
# | 974: %10:vgpr_32 = IMPLICIT_DEF
# | next:330 !~~~~~~~~~~~~~~~~~~~~~~~~~ error: match on wrong line
# | 975: GLOBAL_LOAD_ASYNC_TO_LDS_B64_SADDR %0, %1, %10, 0, 0, implicit-def dead $asynccnt, implicit $exec, implicit $asynccnt
# | 976: GLOBAL_LOAD_ASYNC_TO_LDS_B64_SADDR %0, %1, %10, 0, 0, implicit-def dead $asynccnt, implicit $exec, implicit $asynccnt
# | 977: S_ENDPGM 0
# | 978: ...
# | 979: ---
# | .
# | .
# | .
# | 1370: dead %5:vgpr_32 = V_ADD_U32_e32 %2, %3, implicit $exec
# | 1371: dead %6:vgpr_32 = V_ADD_U32_e32 %2, %3, implicit $exec
# | 1372: dead %7:vgpr_32 = V_ADD_U32_e32 %2, %3, implicit $exec
# | 1373: dead %8:vgpr_32 = V_ADD_U32_e32 %2, %3, implicit $exec
# | 1374: SCHED_GROUP_BARRIER 2, 6, 0
# | 1375: %10:vgpr_32 = IMPLICIT_DEF
# | next:492 !~~~~~~~~~~~~~~~~~~~~~~~~~ error: match on wrong line
# | 1376: GLOBAL_LOAD_ASYNC_TO_LDS_B64_SADDR %0, %1, %10, 0, 0, implicit-def dead $asynccnt, implicit $exec, implicit $asynccnt
# | 1377: S_WAIT_ASYNCCNT 2, implicit-def dead $asynccnt, implicit $asynccnt
# | 1378: S_ENDPGM 0
# | 1379: ...
# | 1380: ---
# | .
# | .
# | .
# | 1505: dead %5:vgpr_32 = V_ADD_U32_e32 %2, %3, implicit $exec
# | 1506: dead %6:vgpr_32 = V_ADD_U32_e32 %2, %3, implicit $exec
# | 1507: dead %7:vgpr_32 = V_ADD_U32_e32 %2, %3, implicit $exec
# | 1508: dead %8:vgpr_32 = V_ADD_U32_e32 %2, %3, implicit $exec
# | 1509: SCHED_GROUP_BARRIER 2, 6, 0
# | 1510: %10:vgpr_32 = IMPLICIT_DEF
# | next:550 !~~~~~~~~~~~~~~~~~~~~~~~~~ error: match on wrong line
# | 1511: GLOBAL_LOAD_ASYNC_TO_LDS_B64_SADDR %0, %1, %10, 0, 0, implicit-def dead $asynccnt, implicit $exec, implicit $asynccnt
# | 1512: S_WAIT_ASYNCCNT 0, implicit-def dead $asynccnt, implicit $asynccnt
# | 1513: S_ENDPGM 0
# | 1514: ...
# | 1515: ---
# | .
# | .
# | .
# | 1640: dead %5:vgpr_32 = V_ADD_U32_e32 %2, %3, implicit $exec
# | 1641: dead %6:vgpr_32 = V_ADD_U32_e32 %2, %3, implicit $exec
# | 1642: dead %7:vgpr_32 = V_ADD_U32_e32 %2, %3, implicit $exec
# | 1643: dead %8:vgpr_32 = V_ADD_U32_e32 %2, %3, implicit $exec
# | 1644: SCHED_GROUP_BARRIER 2, 6, 0
# | 1645: %10:vgpr_32 = IMPLICIT_DEF
# | next:607 !~~~~~~~~~~~~~~~~~~~~~~~~~ error: match on wrong line
# | 1646: GLOBAL_LOAD_ASYNC_TO_LDS_B64_SADDR %0, %1, %10, 0, 0, implicit-def dead $asynccnt, implicit $exec, implicit $asynccnt
# | 1647: GLOBAL_LOAD_ASYNC_TO_LDS_B64_SADDR %0, %1, %10, 0, 0, implicit-def dead $asynccnt, implicit $exec, implicit $asynccnt
# | 1648: S_WAIT_ASYNCCNT 2, implicit-def dead $asynccnt, implicit $asynccnt
# | 1649: S_ENDPGM 0
# | 1650: ...
# | >>>>>>
# `-----------------------------
# 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/203255
More information about the llvm-commits
mailing list