[llvm] AMDGPU/GlobalISel: Regbanklegalize rules for G_FMIN*/MAX* (PR #179778)

via llvm-commits llvm-commits at lists.llvm.org
Mon Feb 16 21:35:42 PST 2026


github-actions[bot] wrote:

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

* 169743 tests passed
* 3063 tests skipped
* 2 tests failed

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

### LLVM
<details>
<summary>LLVM.CodeGen/AMDGPU/fmaximum.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=0 -mtriple=amdgcn -mcpu=gfx900 < /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/CodeGen/AMDGPU/fmaximum.ll | /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/FileCheck -enable-var-scope -check-prefixes=GFX9,GFX9-SDAG /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/CodeGen/AMDGPU/fmaximum.ll
# executed command: /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/llc -global-isel=0 -mtriple=amdgcn -mcpu=gfx900
# note: command had no output on stdout or stderr
# executed command: /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/FileCheck -enable-var-scope -check-prefixes=GFX9,GFX9-SDAG /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/CodeGen/AMDGPU/fmaximum.ll
# note: command had no output on stdout or stderr
# RUN: at line 3
/home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/llc -global-isel=1 -new-reg-bank-select -mtriple=amdgcn -mcpu=gfx900 < /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/CodeGen/AMDGPU/fmaximum.ll | /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/FileCheck -enable-var-scope -check-prefixes=GFX9,GFX9-GISEL /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/CodeGen/AMDGPU/fmaximum.ll
# executed command: /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/llc -global-isel=1 -new-reg-bank-select -mtriple=amdgcn -mcpu=gfx900
# note: command had no output on stdout or stderr
# executed command: /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/FileCheck -enable-var-scope -check-prefixes=GFX9,GFX9-GISEL /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/CodeGen/AMDGPU/fmaximum.ll
# .---command stderr------------
# | /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/CodeGen/AMDGPU/fmaximum.ll:39:20: error: GFX9-GISEL-NEXT: is not on the line after the previous match
# | ; GFX9-GISEL-NEXT: v_cmp_o_f32_e32 vcc, s0, v0
# |                    ^
# | <stdin>:86:2: note: 'next' match was here
# |  v_cmp_o_f32_e32 vcc, s0, v0
# |  ^
# | <stdin>:84:22: note: previous match ended here
# |  v_mov_b32_e32 v0, s1
# |                      ^
# | <stdin>:85:1: note: non-matching line after previous match is here
# |  v_max_f32_e32 v1, s0, v0
# | ^
# | /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/CodeGen/AMDGPU/fmaximum.ll:160:20: error: GFX9-GISEL-NEXT: is not on the line after the previous match
# | ; GFX9-GISEL-NEXT: v_cmp_o_f32_e32 vcc, s0, v0
# |                    ^
# | <stdin>:458:2: note: 'next' match was here
# |  v_cmp_o_f32_e32 vcc, s0, v0
# |  ^
# | <stdin>:456:22: note: previous match ended here
# |  v_mov_b32_e32 v0, s2
# |                      ^
# | <stdin>:457:1: note: non-matching line after previous match is here
# |  v_max_f32_e32 v1, s0, v0
# | ^
# | /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/CodeGen/AMDGPU/fmaximum.ll:368:20: error: GFX9-GISEL-NEXT: is not on the line after the previous match
# | ; GFX9-GISEL-NEXT: v_cmp_o_f16_e32 vcc, s0, v0
# |                    ^
# | <stdin>:838:2: note: 'next' match was here
# |  v_cmp_o_f16_e32 vcc, s0, v0
# |  ^
# | <stdin>:836:22: note: previous match ended here
# |  v_mov_b32_e32 v0, s1
# |                      ^
# | <stdin>:837:1: note: non-matching line after previous match is here
# |  v_max_f16_e32 v1, s0, v0
# | ^
# | /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/CodeGen/AMDGPU/fmaximum.ll:455:20: error: GFX9-GISEL-NEXT: expected string not found in input
# | ; GFX9-GISEL-NEXT: s_and_b32 s0, s0, 1
# |                    ^
# | <stdin>:979:23: note: scanning from here
# |  s_lshr_b32 s3, s2, 16
# |                       ^
# | <stdin>:981:5: note: possible intended match here
# |  s_cselect_b32 s0, s2, 0x7e00
# |     ^
# | /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/CodeGen/AMDGPU/fmaximum.ll:569:20: error: GFX9-GISEL-NEXT: expected string not found in input
# | ; GFX9-GISEL-NEXT: s_and_b32 s0, s0, 1
# |                    ^
# | <stdin>:1128:23: note: scanning from here
# |  s_lshr_b32 s5, s2, 16
# |                       ^
# | <stdin>:1131:5: note: possible intended match here
# |  s_cselect_b32 s0, s2, 0x7e00
# |     ^
# | /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/CodeGen/AMDGPU/fmaximum.ll:701:20: error: GFX9-GISEL-NEXT: expected string not found in input
# | ; GFX9-GISEL-NEXT: s_and_b32 s0, s0, 1
# |                    ^
# | <stdin>:1286:23: note: scanning from here
# |  s_lshr_b32 s5, s4, 16
# |                       ^
# | <stdin>:1288:5: note: possible intended match here
# |  s_cselect_b32 s0, s4, 0x7e00
# |     ^
# | /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/CodeGen/AMDGPU/fmaximum.ll:785:20: error: GFX9-GISEL-NEXT: is not on the line after the previous match
# | ; GFX9-GISEL-NEXT: v_cmp_o_f64_e32 vcc, s[0:1], v[0:1]
# |                    ^
# | <stdin>:1436:2: note: 'next' match was here
# |  v_cmp_o_f64_e32 vcc, s[0:1], v[0:1]
# |  ^
# | <stdin>:1434:22: note: previous match ended here
# |  v_mov_b32_e32 v1, s3
# |                      ^
# | <stdin>:1435:1: note: non-matching line after previous match is here
# |  v_max_f64 v[2:3], s[0:1], v[0:1]
# | ^
# | /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/CodeGen/AMDGPU/fmaximum.ll:842:20: error: GFX9-GISEL-NEXT: is not on the line after the previous match
# | ; GFX9-GISEL-NEXT: v_cmp_o_f64_e32 vcc, s[0:1], v[0:1]
# |                    ^
# | <stdin>:1506:2: note: 'next' match was here
# |  v_cmp_o_f64_e32 vcc, s[0:1], v[0:1]
# |  ^
# | <stdin>:1504:22: note: previous match ended here
# |  v_mov_b32_e32 v1, s5
# |                      ^
# | <stdin>:1505:1: note: non-matching line after previous match is here
# |  v_max_f64 v[2:3], s[0:1], v[0:1]
# | ^
# | /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/CodeGen/AMDGPU/fmaximum.ll:989:20: error: GFX9-GISEL-NEXT: is not on the line after the previous match
# | ; GFX9-GISEL-NEXT: s_mov_b32 s8, 0
# |                    ^
# | <stdin>:1665:2: note: 'next' match was here
# |  s_mov_b32 s8, 0
# |  ^
# | <stdin>:1663:23: note: previous match ended here
# |  v_mov_b32_e32 v1, s11
# |                       ^
# | <stdin>:1664:1: note: non-matching line after previous match is here
# |  v_max_f64 v[4:5], s[2:3], v[0:1]
# | ^
# | /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/CodeGen/AMDGPU/fmaximum.ll:1101:20: error: GFX9-GISEL-NEXT: is not on the line after the previous match
# | ; GFX9-GISEL-NEXT: v_cmp_o_f32_e32 vcc, v1, v2
# |                    ^
# | <stdin>:1763:2: note: 'next' match was here
# |  v_cmp_o_f32_e32 vcc, v1, v2
# |  ^
# | <stdin>:1761:20: note: previous match ended here
# |  s_waitcnt vmcnt(0)
# |                    ^
# | <stdin>:1762:1: note: non-matching line after previous match is here
# |  v_max_f32_e32 v3, v1, v2
# | ^
# | /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/CodeGen/AMDGPU/fmaximum.ll:1184:20: error: GFX9-GISEL-NEXT: is not on the line after the previous match
# | ; GFX9-GISEL-NEXT: v_cmp_o_f16_e32 vcc, s2, v1
# |                    ^
# | <stdin>:1835:2: note: 'next' match was here
# |  v_cmp_o_f16_e32 vcc, s2, v1
# |  ^
# | <stdin>:1833:22: note: previous match ended here
# |  v_mov_b32_e32 v1, s3
# |                      ^
# | <stdin>:1834:1: note: non-matching line after previous match is here
# |  v_max_f16_e32 v2, s2, v1
# | ^
# | 
# | Input file: <stdin>
# | Check file: /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/CodeGen/AMDGPU/fmaximum.ll
# | 
# | -dump-input=help explains the following input dump.
# | 
# | Input was:
# | <<<<<<
# |             .
# |             .
# |             .
# |            81:  .type test_fmaximum_f32_ss, at function 
# |            82: test_fmaximum_f32_ss: ; @test_fmaximum_f32_ss 
# |            83: ; %bb.0: 
# |            84:  v_mov_b32_e32 v0, s1 
# |            85:  v_max_f32_e32 v1, s0, v0 
# |            86:  v_cmp_o_f32_e32 vcc, s0, v0 
# | next:39         !~~~~~~~~~~~~~~~~~~~~~~~~~~  error: match on wrong line
# |            87:  v_readfirstlane_b32 s1, v1 
# |            88:  s_cmp_lg_u64 vcc, 0 
# |            89:  s_cselect_b32 s0, s1, 0x7fc00000 
# |            90:  v_mov_b32_e32 v0, s0 
# |            91:  ; return to shader part epilog 
# |             .
# |             .
# |             .
# |           453:  .type test_fmaximum_v2f32_ss, at function 
# |           454: test_fmaximum_v2f32_ss: ; @test_fmaximum_v2f32_ss 
# |           455: ; %bb.0: 
# |           456:  v_mov_b32_e32 v0, s2 
# |           457:  v_max_f32_e32 v1, s0, v0 
# |           458:  v_cmp_o_f32_e32 vcc, s0, v0 
# | next:160        !~~~~~~~~~~~~~~~~~~~~~~~~~~  error: match on wrong line
# |           459:  v_mov_b32_e32 v0, s3 
# |           460:  v_readfirstlane_b32 s2, v1 
# |           461:  s_cmp_lg_u64 vcc, 0 
# |           462:  v_max_f32_e32 v1, s1, v0 
# |           463:  v_cmp_o_f32_e32 vcc, s1, v0 
# |             .
# |             .
# |             .
# |           833:  .type test_fmaximum_f16_ss, at function 
# |           834: test_fmaximum_f16_ss: ; @test_fmaximum_f16_ss 
# |           835: ; %bb.0: 
# |           836:  v_mov_b32_e32 v0, s1 
# |           837:  v_max_f16_e32 v1, s0, v0 
# |           838:  v_cmp_o_f16_e32 vcc, s0, v0 
# | next:368        !~~~~~~~~~~~~~~~~~~~~~~~~~~  error: match on wrong line
# |           839:  v_readfirstlane_b32 s1, v1 
# |           840:  s_cmp_lg_u64 vcc, 0 
# |           841:  s_cselect_b32 s0, s1, 0x7e00 
# |           842:  v_mov_b32_e32 v0, s0 
# |           843:  ; return to shader part epilog 
# |             .
# |             .
# |             .
# |           974:  v_cmp_o_f16_e32 vcc, s3, v0 
# |           975:  v_readfirstlane_b32 s2, v1 
# |           976:  s_cselect_b32 s0, 1, 0 
# |           977:  s_cmp_lg_u64 vcc, 0 
# |           978:  s_cselect_b32 s1, 1, 0 
# |           979:  s_lshr_b32 s3, s2, 16 
# | next:455'0                           X error: no match found
# |           980:  s_cmp_lg_u32 s0, 0 
# | next:455'0     ~~~~~~~~~~~~~~~~~~~~
# |           981:  s_cselect_b32 s0, s2, 0x7e00 
# | next:455'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | next:455'1         ?                          possible intended match
# |           982:  s_cmp_lg_u32 s1, 0 
# | next:455'0     ~~~~~~~~~~~~~~~~~~~~
# |           983:  s_cselect_b32 s1, s3, 0x7e00 
# | next:455'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |           984:  s_pack_ll_b32_b16 s0, s0, s1 
# | next:455'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |           985:  v_mov_b32_e32 v0, s0 
# | next:455'0     ~~~~~~~~~~~~~~~~~~~~~~
# |           986:  ; return to shader part epilog 
# | next:455'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |             .
# |             .
# |             .
# |          1123:  v_cmp_o_f16_e32 vcc, s4, v0 
# |          1124:  v_readfirstlane_b32 s2, v1 
# |          1125:  s_cselect_b32 s0, 1, 0 
# |          1126:  s_cmp_lg_u64 vcc, 0 
# |          1127:  s_cselect_b32 s4, 1, 0 
# |          1128:  s_lshr_b32 s5, s2, 16 
# | next:569'0                           X error: no match found
# |          1129:  s_cmp_lg_u32 s0, 0 
# | next:569'0     ~~~~~~~~~~~~~~~~~~~~
# |          1130:  v_mov_b32_e32 v0, s3 
# | next:569'0     ~~~~~~~~~~~~~~~~~~~~~~
# |          1131:  s_cselect_b32 s0, s2, 0x7e00 
# | next:569'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | next:569'1         ?                          possible intended match
# |          1132:  s_cmp_lg_u32 s4, 0 
# | next:569'0     ~~~~~~~~~~~~~~~~~~~~
# |          1133:  v_pk_max_f16 v1, s1, v0 
# | next:569'0     ~~~~~~~~~~~~~~~~~~~~~~~~~
# |          1134:  v_cmp_o_f16_e32 vcc, s1, v0 
# | next:569'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |          1135:  s_cselect_b32 s2, s5, 0x7e00 
# | next:569'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |          1136:  v_readfirstlane_b32 s3, v1 
# | next:569'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |             .
# |             .
# |             .
# |          1281:  v_cmp_o_f16_e32 vcc, s5, v0 
# |          1282:  v_readfirstlane_b32 s4, v1 
# |          1283:  s_cselect_b32 s0, 1, 0 
# |          1284:  s_cmp_lg_u64 vcc, 0 
# |          1285:  s_cselect_b32 s2, 1, 0 
# |          1286:  s_lshr_b32 s5, s4, 16 
# | next:701'0                           X error: no match found
# |          1287:  s_cmp_lg_u32 s0, 0 
# | next:701'0     ~~~~~~~~~~~~~~~~~~~~
# |          1288:  s_cselect_b32 s0, s4, 0x7e00 
# | next:701'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | next:701'1         ?                          possible intended match
# |          1289:  s_cmp_lg_u32 s2, 0 
# | next:701'0     ~~~~~~~~~~~~~~~~~~~~
# |          1290:  s_cselect_b32 s2, s5, 0x7e00 
# | next:701'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |          1291:  v_mov_b32_e32 v0, s3 
# | next:701'0     ~~~~~~~~~~~~~~~~~~~~~~
# |          1292:  s_lshr_b32 s3, s3, 16 
# | next:701'0     ~~~~~~~~~~~~~~~~~~~~~~~
# |          1293:  v_pk_max_f16 v1, s1, v0 
# | next:701'0     ~~~~~~~~~~~~~~~~~~~~~~~~~
# |             .
# |             .
# |             .
# |          1431: test_fmaximum_f64_ss: ; @test_fmaximum_f64_ss 
# |          1432: ; %bb.0: 
# |          1433:  v_mov_b32_e32 v0, s2 
# |          1434:  v_mov_b32_e32 v1, s3 
# |          1435:  v_max_f64 v[2:3], s[0:1], v[0:1] 
# |          1436:  v_cmp_o_f64_e32 vcc, s[0:1], v[0:1] 
# | next:785        !~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~  error: match on wrong line
# |          1437:  s_mov_b32 s2, 0 
# |          1438:  s_mov_b32 s3, 0x7ff80000 
# |          1439:  v_readfirstlane_b32 s0, v2 
# |          1440:  v_readfirstlane_b32 s1, v3 
# |          1441:  s_cmp_lg_u64 vcc, 0 
# |             .
# |             .
# |             .
# |          1501: test_fmaximum_v2f64_ss: ; @test_fmaximum_v2f64_ss 
# |          1502: ; %bb.0: 
# |          1503:  v_mov_b32_e32 v0, s4 
# |          1504:  v_mov_b32_e32 v1, s5 
# |          1505:  v_max_f64 v[2:3], s[0:1], v[0:1] 
# |          1506:  v_cmp_o_f64_e32 vcc, s[0:1], v[0:1] 
# | next:842        !~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~  error: match on wrong line
# |          1507:  v_mov_b32_e32 v0, s6 
# |          1508:  v_mov_b32_e32 v1, s7 
# |          1509:  v_max_f64 v[4:5], s[2:3], v[0:1] 
# |          1510:  v_cmp_o_f64_e64 s[0:1], s[2:3], v[0:1] 
# |          1511:  s_mov_b32 s2, 0 
# |             .
# |             .
# |             .
# |          1660:  v_cmp_o_f64_e32 vcc, s[0:1], v[0:1] 
# |          1661:  v_max_f64 v[2:3], s[0:1], v[0:1] 
# |          1662:  v_mov_b32_e32 v0, s10 
# |          1663:  v_mov_b32_e32 v1, s11 
# |          1664:  v_max_f64 v[4:5], s[2:3], v[0:1] 
# |          1665:  s_mov_b32 s8, 0 
# | next:989        !~~~~~~~~~~~~~~  error: match on wrong line
# |          1666:  s_mov_b32 s9, 0x7ff80000 
# |          1667:  s_cmp_lg_u64 vcc, 0 
# |          1668:  v_cmp_o_f64_e32 vcc, s[2:3], v[0:1] 
# |          1669:  v_mov_b32_e32 v0, s12 
# |          1670:  v_readfirstlane_b32 s0, v2 
# |             .
# |             .
# |             .
# |          1758:  global_load_dword v1, v0, s[2:3] glc 
# |          1759:  s_waitcnt vmcnt(0) 
# |          1760:  global_load_dword v2, v0, s[6:7] glc 
# |          1761:  s_waitcnt vmcnt(0) 
# |          1762:  v_max_f32_e32 v3, v1, v2 
# |          1763:  v_cmp_o_f32_e32 vcc, v1, v2 
# | next:1101       !~~~~~~~~~~~~~~~~~~~~~~~~~~  error: match on wrong line
# |          1764:  v_readfirstlane_b32 s2, v3 
# |          1765:  s_cmp_lg_u64 vcc, 0 
# |          1766:  s_cselect_b32 s2, s2, 0x7fc00000 
# |          1767:  v_mov_b32_e32 v1, s2 
# |          1768:  global_store_dword v0, v1, s[0:1] 
# |             .
# |             .
# |             .
# |          1830:  s_waitcnt vmcnt(0) 
# |          1831:  v_readfirstlane_b32 s2, v1 
# |          1832:  v_readfirstlane_b32 s3, v2 
# |          1833:  v_mov_b32_e32 v1, s3 
# |          1834:  v_max_f16_e32 v2, s2, v1 
# |          1835:  v_cmp_o_f16_e32 vcc, s2, v1 
# | next:1184       !~~~~~~~~~~~~~~~~~~~~~~~~~~  error: match on wrong line
# |          1836:  v_readfirstlane_b32 s2, v2 
# |          1837:  s_cmp_lg_u64 vcc, 0 
# |          1838:  s_cselect_b32 s2, s2, 0x7e00 
# |          1839:  v_mov_b32_e32 v1, s2 
# |          1840:  global_store_short v0, v1, s[0:1] 
# |             .
# |             .
# |             .
# | >>>>>>
# `-----------------------------
# error: command failed with exit status: 1

--

```
</details>
<details>
<summary>LLVM.CodeGen/AMDGPU/fminimum.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=0 -mtriple=amdgcn -mcpu=gfx900 < /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/CodeGen/AMDGPU/fminimum.ll | /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/FileCheck -enable-var-scope -check-prefixes=GFX9,GFX9-SDAG /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/CodeGen/AMDGPU/fminimum.ll
# executed command: /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/llc -global-isel=0 -mtriple=amdgcn -mcpu=gfx900
# note: command had no output on stdout or stderr
# executed command: /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/FileCheck -enable-var-scope -check-prefixes=GFX9,GFX9-SDAG /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/CodeGen/AMDGPU/fminimum.ll
# note: command had no output on stdout or stderr
# RUN: at line 3
/home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/llc -global-isel=1 -new-reg-bank-select -mtriple=amdgcn -mcpu=gfx900 < /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/CodeGen/AMDGPU/fminimum.ll | /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/FileCheck -enable-var-scope -check-prefixes=GFX9,GFX9-GISEL /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/CodeGen/AMDGPU/fminimum.ll
# executed command: /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/llc -global-isel=1 -new-reg-bank-select -mtriple=amdgcn -mcpu=gfx900
# note: command had no output on stdout or stderr
# executed command: /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/FileCheck -enable-var-scope -check-prefixes=GFX9,GFX9-GISEL /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/CodeGen/AMDGPU/fminimum.ll
# .---command stderr------------
# | /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/CodeGen/AMDGPU/fminimum.ll:39:20: error: GFX9-GISEL-NEXT: is not on the line after the previous match
# | ; GFX9-GISEL-NEXT: v_cmp_o_f32_e32 vcc, s0, v0
# |                    ^
# | <stdin>:86:2: note: 'next' match was here
# |  v_cmp_o_f32_e32 vcc, s0, v0
# |  ^
# | <stdin>:84:22: note: previous match ended here
# |  v_mov_b32_e32 v0, s1
# |                      ^
# | <stdin>:85:1: note: non-matching line after previous match is here
# |  v_min_f32_e32 v1, s0, v0
# | ^
# | /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/CodeGen/AMDGPU/fminimum.ll:160:20: error: GFX9-GISEL-NEXT: is not on the line after the previous match
# | ; GFX9-GISEL-NEXT: v_cmp_o_f32_e32 vcc, s0, v0
# |                    ^
# | <stdin>:458:2: note: 'next' match was here
# |  v_cmp_o_f32_e32 vcc, s0, v0
# |  ^
# | <stdin>:456:22: note: previous match ended here
# |  v_mov_b32_e32 v0, s2
# |                      ^
# | <stdin>:457:1: note: non-matching line after previous match is here
# |  v_min_f32_e32 v1, s0, v0
# | ^
# | /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/CodeGen/AMDGPU/fminimum.ll:368:20: error: GFX9-GISEL-NEXT: is not on the line after the previous match
# | ; GFX9-GISEL-NEXT: v_cmp_o_f16_e32 vcc, s0, v0
# |                    ^
# | <stdin>:838:2: note: 'next' match was here
# |  v_cmp_o_f16_e32 vcc, s0, v0
# |  ^
# | <stdin>:836:22: note: previous match ended here
# |  v_mov_b32_e32 v0, s1
# |                      ^
# | <stdin>:837:1: note: non-matching line after previous match is here
# |  v_min_f16_e32 v1, s0, v0
# | ^
# | /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/CodeGen/AMDGPU/fminimum.ll:455:20: error: GFX9-GISEL-NEXT: expected string not found in input
# | ; GFX9-GISEL-NEXT: s_and_b32 s0, s0, 1
# |                    ^
# | <stdin>:979:23: note: scanning from here
# |  s_lshr_b32 s3, s2, 16
# |                       ^
# | <stdin>:981:5: note: possible intended match here
# |  s_cselect_b32 s0, s2, 0x7e00
# |     ^
# | /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/CodeGen/AMDGPU/fminimum.ll:569:20: error: GFX9-GISEL-NEXT: expected string not found in input
# | ; GFX9-GISEL-NEXT: s_and_b32 s0, s0, 1
# |                    ^
# | <stdin>:1128:23: note: scanning from here
# |  s_lshr_b32 s5, s2, 16
# |                       ^
# | <stdin>:1131:5: note: possible intended match here
# |  s_cselect_b32 s0, s2, 0x7e00
# |     ^
# | /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/CodeGen/AMDGPU/fminimum.ll:701:20: error: GFX9-GISEL-NEXT: expected string not found in input
# | ; GFX9-GISEL-NEXT: s_and_b32 s0, s0, 1
# |                    ^
# | <stdin>:1286:23: note: scanning from here
# |  s_lshr_b32 s5, s4, 16
# |                       ^
# | <stdin>:1288:5: note: possible intended match here
# |  s_cselect_b32 s0, s4, 0x7e00
# |     ^
# | /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/CodeGen/AMDGPU/fminimum.ll:785:20: error: GFX9-GISEL-NEXT: is not on the line after the previous match
# | ; GFX9-GISEL-NEXT: v_cmp_o_f64_e32 vcc, s[0:1], v[0:1]
# |                    ^
# | <stdin>:1436:2: note: 'next' match was here
# |  v_cmp_o_f64_e32 vcc, s[0:1], v[0:1]
# |  ^
# | <stdin>:1434:22: note: previous match ended here
# |  v_mov_b32_e32 v1, s3
# |                      ^
# | <stdin>:1435:1: note: non-matching line after previous match is here
# |  v_min_f64 v[2:3], s[0:1], v[0:1]
# | ^
# | /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/CodeGen/AMDGPU/fminimum.ll:842:20: error: GFX9-GISEL-NEXT: is not on the line after the previous match
# | ; GFX9-GISEL-NEXT: v_cmp_o_f64_e32 vcc, s[0:1], v[0:1]
# |                    ^
# | <stdin>:1506:2: note: 'next' match was here
# |  v_cmp_o_f64_e32 vcc, s[0:1], v[0:1]
# |  ^
# | <stdin>:1504:22: note: previous match ended here
# |  v_mov_b32_e32 v1, s5
# |                      ^
# | <stdin>:1505:1: note: non-matching line after previous match is here
# |  v_min_f64 v[2:3], s[0:1], v[0:1]
# | ^
# | /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/CodeGen/AMDGPU/fminimum.ll:989:20: error: GFX9-GISEL-NEXT: is not on the line after the previous match
# | ; GFX9-GISEL-NEXT: s_mov_b32 s8, 0
# |                    ^
# | <stdin>:1665:2: note: 'next' match was here
# |  s_mov_b32 s8, 0
# |  ^
# | <stdin>:1663:23: note: previous match ended here
# |  v_mov_b32_e32 v1, s11
# |                       ^
# | <stdin>:1664:1: note: non-matching line after previous match is here
# |  v_min_f64 v[4:5], s[2:3], v[0:1]
# | ^
# | /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/CodeGen/AMDGPU/fminimum.ll:1101:20: error: GFX9-GISEL-NEXT: is not on the line after the previous match
# | ; GFX9-GISEL-NEXT: v_cmp_o_f32_e32 vcc, v1, v2
# |                    ^
# | <stdin>:1763:2: note: 'next' match was here
# |  v_cmp_o_f32_e32 vcc, v1, v2
# |  ^
# | <stdin>:1761:20: note: previous match ended here
# |  s_waitcnt vmcnt(0)
# |                    ^
# | <stdin>:1762:1: note: non-matching line after previous match is here
# |  v_min_f32_e32 v3, v1, v2
# | ^
# | /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/CodeGen/AMDGPU/fminimum.ll:1184:20: error: GFX9-GISEL-NEXT: is not on the line after the previous match
# | ; GFX9-GISEL-NEXT: v_cmp_o_f16_e32 vcc, s2, v1
# |                    ^
# | <stdin>:1835:2: note: 'next' match was here
# |  v_cmp_o_f16_e32 vcc, s2, v1
# |  ^
# | <stdin>:1833:22: note: previous match ended here
# |  v_mov_b32_e32 v1, s3
# |                      ^
# | <stdin>:1834:1: note: non-matching line after previous match is here
# |  v_min_f16_e32 v2, s2, v1
# | ^
# | 
# | Input file: <stdin>
# | Check file: /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/CodeGen/AMDGPU/fminimum.ll
# | 
# | -dump-input=help explains the following input dump.
# | 
# | Input was:
# | <<<<<<
# |             .
# |             .
# |             .
# |            81:  .type test_fminimum_f32_ss, at function 
# |            82: test_fminimum_f32_ss: ; @test_fminimum_f32_ss 
# |            83: ; %bb.0: 
# |            84:  v_mov_b32_e32 v0, s1 
# |            85:  v_min_f32_e32 v1, s0, v0 
# |            86:  v_cmp_o_f32_e32 vcc, s0, v0 
# | next:39         !~~~~~~~~~~~~~~~~~~~~~~~~~~  error: match on wrong line
# |            87:  v_readfirstlane_b32 s1, v1 
# |            88:  s_cmp_lg_u64 vcc, 0 
# |            89:  s_cselect_b32 s0, s1, 0x7fc00000 
# |            90:  v_mov_b32_e32 v0, s0 
# |            91:  ; return to shader part epilog 
# |             .
# |             .
# |             .
# |           453:  .type test_fminimum_v2f32_ss, at function 
# |           454: test_fminimum_v2f32_ss: ; @test_fminimum_v2f32_ss 
# |           455: ; %bb.0: 
# |           456:  v_mov_b32_e32 v0, s2 
# |           457:  v_min_f32_e32 v1, s0, v0 
# |           458:  v_cmp_o_f32_e32 vcc, s0, v0 
# | next:160        !~~~~~~~~~~~~~~~~~~~~~~~~~~  error: match on wrong line
# |           459:  v_mov_b32_e32 v0, s3 
# |           460:  v_readfirstlane_b32 s2, v1 
# |           461:  s_cmp_lg_u64 vcc, 0 
# |           462:  v_min_f32_e32 v1, s1, v0 
# |           463:  v_cmp_o_f32_e32 vcc, s1, v0 
# |             .
# |             .
# |             .
# |           833:  .type test_fminimum_f16_ss, at function 
# |           834: test_fminimum_f16_ss: ; @test_fminimum_f16_ss 
# |           835: ; %bb.0: 
# |           836:  v_mov_b32_e32 v0, s1 
# |           837:  v_min_f16_e32 v1, s0, v0 
# |           838:  v_cmp_o_f16_e32 vcc, s0, v0 
# | next:368        !~~~~~~~~~~~~~~~~~~~~~~~~~~  error: match on wrong line
# |           839:  v_readfirstlane_b32 s1, v1 
# |           840:  s_cmp_lg_u64 vcc, 0 
# |           841:  s_cselect_b32 s0, s1, 0x7e00 
# |           842:  v_mov_b32_e32 v0, s0 
# |           843:  ; return to shader part epilog 
# |             .
# |             .
# |             .
# |           974:  v_cmp_o_f16_e32 vcc, s3, v0 
# |           975:  v_readfirstlane_b32 s2, v1 
# |           976:  s_cselect_b32 s0, 1, 0 
# |           977:  s_cmp_lg_u64 vcc, 0 
# |           978:  s_cselect_b32 s1, 1, 0 
# |           979:  s_lshr_b32 s3, s2, 16 
# | next:455'0                           X error: no match found
# |           980:  s_cmp_lg_u32 s0, 0 
# | next:455'0     ~~~~~~~~~~~~~~~~~~~~
# |           981:  s_cselect_b32 s0, s2, 0x7e00 
# | next:455'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | next:455'1         ?                          possible intended match
# |           982:  s_cmp_lg_u32 s1, 0 
# | next:455'0     ~~~~~~~~~~~~~~~~~~~~
# |           983:  s_cselect_b32 s1, s3, 0x7e00 
# | next:455'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |           984:  s_pack_ll_b32_b16 s0, s0, s1 
# | next:455'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |           985:  v_mov_b32_e32 v0, s0 
# | next:455'0     ~~~~~~~~~~~~~~~~~~~~~~
# |           986:  ; return to shader part epilog 
# | next:455'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |             .
# |             .
# |             .
# |          1123:  v_cmp_o_f16_e32 vcc, s4, v0 
# |          1124:  v_readfirstlane_b32 s2, v1 
# |          1125:  s_cselect_b32 s0, 1, 0 
# |          1126:  s_cmp_lg_u64 vcc, 0 
# |          1127:  s_cselect_b32 s4, 1, 0 
# |          1128:  s_lshr_b32 s5, s2, 16 
# | next:569'0                           X error: no match found
# |          1129:  s_cmp_lg_u32 s0, 0 
# | next:569'0     ~~~~~~~~~~~~~~~~~~~~
# |          1130:  v_mov_b32_e32 v0, s3 
# | next:569'0     ~~~~~~~~~~~~~~~~~~~~~~
# |          1131:  s_cselect_b32 s0, s2, 0x7e00 
# | next:569'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | next:569'1         ?                          possible intended match
# |          1132:  s_cmp_lg_u32 s4, 0 
# | next:569'0     ~~~~~~~~~~~~~~~~~~~~
# |          1133:  v_pk_min_f16 v1, s1, v0 
# | next:569'0     ~~~~~~~~~~~~~~~~~~~~~~~~~
# |          1134:  v_cmp_o_f16_e32 vcc, s1, v0 
# | next:569'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |          1135:  s_cselect_b32 s2, s5, 0x7e00 
# | next:569'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |          1136:  v_readfirstlane_b32 s3, v1 
# | next:569'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |             .
# |             .
# |             .
# |          1281:  v_cmp_o_f16_e32 vcc, s5, v0 
# |          1282:  v_readfirstlane_b32 s4, v1 
# |          1283:  s_cselect_b32 s0, 1, 0 
# |          1284:  s_cmp_lg_u64 vcc, 0 
# |          1285:  s_cselect_b32 s2, 1, 0 
# |          1286:  s_lshr_b32 s5, s4, 16 
# | next:701'0                           X error: no match found
# |          1287:  s_cmp_lg_u32 s0, 0 
# | next:701'0     ~~~~~~~~~~~~~~~~~~~~
# |          1288:  s_cselect_b32 s0, s4, 0x7e00 
# | next:701'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | next:701'1         ?                          possible intended match
# |          1289:  s_cmp_lg_u32 s2, 0 
# | next:701'0     ~~~~~~~~~~~~~~~~~~~~
# |          1290:  s_cselect_b32 s2, s5, 0x7e00 
# | next:701'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |          1291:  v_mov_b32_e32 v0, s3 
# | next:701'0     ~~~~~~~~~~~~~~~~~~~~~~
# |          1292:  s_lshr_b32 s3, s3, 16 
# | next:701'0     ~~~~~~~~~~~~~~~~~~~~~~~
# |          1293:  v_pk_min_f16 v1, s1, v0 
# | next:701'0     ~~~~~~~~~~~~~~~~~~~~~~~~~
# |             .
# |             .
# |             .
# |          1431: test_fminimum_f64_ss: ; @test_fminimum_f64_ss 
# |          1432: ; %bb.0: 
# |          1433:  v_mov_b32_e32 v0, s2 
# |          1434:  v_mov_b32_e32 v1, s3 
# |          1435:  v_min_f64 v[2:3], s[0:1], v[0:1] 
# |          1436:  v_cmp_o_f64_e32 vcc, s[0:1], v[0:1] 
# | next:785        !~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~  error: match on wrong line
# |          1437:  s_mov_b32 s2, 0 
# |          1438:  s_mov_b32 s3, 0x7ff80000 
# |          1439:  v_readfirstlane_b32 s0, v2 
# |          1440:  v_readfirstlane_b32 s1, v3 
# |          1441:  s_cmp_lg_u64 vcc, 0 
# |             .
# |             .
# |             .
# |          1501: test_fminimum_v2f64_ss: ; @test_fminimum_v2f64_ss 
# |          1502: ; %bb.0: 
# |          1503:  v_mov_b32_e32 v0, s4 
# |          1504:  v_mov_b32_e32 v1, s5 
# |          1505:  v_min_f64 v[2:3], s[0:1], v[0:1] 
# |          1506:  v_cmp_o_f64_e32 vcc, s[0:1], v[0:1] 
# | next:842        !~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~  error: match on wrong line
# |          1507:  v_mov_b32_e32 v0, s6 
# |          1508:  v_mov_b32_e32 v1, s7 
# |          1509:  v_min_f64 v[4:5], s[2:3], v[0:1] 
# |          1510:  v_cmp_o_f64_e64 s[0:1], s[2:3], v[0:1] 
# |          1511:  s_mov_b32 s2, 0 
# |             .
# |             .
# |             .
# |          1660:  v_cmp_o_f64_e32 vcc, s[0:1], v[0:1] 
# |          1661:  v_min_f64 v[2:3], s[0:1], v[0:1] 
# |          1662:  v_mov_b32_e32 v0, s10 
# |          1663:  v_mov_b32_e32 v1, s11 
# |          1664:  v_min_f64 v[4:5], s[2:3], v[0:1] 
# |          1665:  s_mov_b32 s8, 0 
# | next:989        !~~~~~~~~~~~~~~  error: match on wrong line
# |          1666:  s_mov_b32 s9, 0x7ff80000 
# |          1667:  s_cmp_lg_u64 vcc, 0 
# |          1668:  v_cmp_o_f64_e32 vcc, s[2:3], v[0:1] 
# |          1669:  v_mov_b32_e32 v0, s12 
# |          1670:  v_readfirstlane_b32 s0, v2 
# |             .
# |             .
# |             .
# |          1758:  global_load_dword v1, v0, s[2:3] glc 
# |          1759:  s_waitcnt vmcnt(0) 
# |          1760:  global_load_dword v2, v0, s[6:7] glc 
# |          1761:  s_waitcnt vmcnt(0) 
# |          1762:  v_min_f32_e32 v3, v1, v2 
# |          1763:  v_cmp_o_f32_e32 vcc, v1, v2 
# | next:1101       !~~~~~~~~~~~~~~~~~~~~~~~~~~  error: match on wrong line
# |          1764:  v_readfirstlane_b32 s2, v3 
# |          1765:  s_cmp_lg_u64 vcc, 0 
# |          1766:  s_cselect_b32 s2, s2, 0x7fc00000 
# |          1767:  v_mov_b32_e32 v1, s2 
# |          1768:  global_store_dword v0, v1, s[0:1] 
# |             .
# |             .
# |             .
# |          1830:  s_waitcnt vmcnt(0) 
# |          1831:  v_readfirstlane_b32 s2, v1 
# |          1832:  v_readfirstlane_b32 s3, v2 
# |          1833:  v_mov_b32_e32 v1, s3 
# |          1834:  v_min_f16_e32 v2, s2, v1 
# |          1835:  v_cmp_o_f16_e32 vcc, s2, v1 
# | next:1184       !~~~~~~~~~~~~~~~~~~~~~~~~~~  error: match on wrong line
# |          1836:  v_readfirstlane_b32 s2, v2 
# |          1837:  s_cmp_lg_u64 vcc, 0 
# |          1838:  s_cselect_b32 s2, s2, 0x7e00 
# |          1839:  v_mov_b32_e32 v1, s2 
# |          1840:  global_store_short v0, v1, s[0:1] 
# |             .
# |             .
# |             .
# | >>>>>>
# `-----------------------------
# 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/179778


More information about the llvm-commits mailing list