[llvm] AMDGPU/GlobalISel: RegBankLegalize rules for pk_f64 fadd, fmul and fma (PR #203559)

via llvm-commits llvm-commits at lists.llvm.org
Fri Jun 12 16:51:27 PDT 2026


github-actions[bot] wrote:

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

* 175563 tests passed
* 3496 tests skipped
* 1 test failed

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

### LLVM
<details>
<summary>LLVM.CodeGen/AMDGPU/packed-fp64.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=gfx1251 < /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/CodeGen/AMDGPU/packed-fp64.ll | /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/FileCheck -enable-var-scope -check-prefixes=GFX1251,GFX1251-SDAG /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/CodeGen/AMDGPU/packed-fp64.ll
# executed command: /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/llc -global-isel=0 -mtriple=amdgcn -mcpu=gfx1251
# 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=GFX1251,GFX1251-SDAG /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/CodeGen/AMDGPU/packed-fp64.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=gfx1251 < /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/CodeGen/AMDGPU/packed-fp64.ll | /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/FileCheck -enable-var-scope -check-prefixes=GFX1251,GFX1251-GISEL /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/CodeGen/AMDGPU/packed-fp64.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=gfx1251
# .---command stderr------------
# | LLVM ERROR: AMDGPU RegBankLegalize: none of the rules defined with 'Any' for MI's opcode matched MI: %35:sgpr(<2 x s64>) = G_FCANONICALIZE %30:sgpr (in function: fma_vector_vector_neg_scalar_lo_scalar_hi)
# `-----------------------------
# error: command failed with exit status: 1
# executed command: /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/FileCheck -enable-var-scope -check-prefixes=GFX1251,GFX1251-GISEL /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/CodeGen/AMDGPU/packed-fp64.ll
# .---command stderr------------
# | /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/CodeGen/AMDGPU/packed-fp64.ll:2122:24: error: GFX1251-GISEL-LABEL: expected string not found in input
# | ; GFX1251-GISEL-LABEL: fma_vector_vector_neg_scalar_lo_scalar_hi:
# |                        ^
# | <stdin>:2775:15: note: scanning from here
# | fma_v2_v_fneg: ; @fma_v2_v_fneg
# |               ^
# | <stdin>:2799:9: note: possible intended match here
# |  .set .Lfma_v2_v_fneg.numbered_sgpr, 8
# |         ^
# | 
# | Input file: <stdin>
# | Check file: /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/CodeGen/AMDGPU/packed-fp64.ll
# | 
# | -dump-input=help explains the following input dump.
# | 
# | Input was:
# | <<<<<<
# |               .
# |               .
# |               .
# |            2770:  .long 0 
# |            2771:  .text 
# |            2772:  .globl fma_v2_v_fneg ; -- Begin function fma_v2_v_fneg 
# |            2773:  .p2align 8 
# |            2774:  .type fma_v2_v_fneg, at function 
# |            2775: fma_v2_v_fneg: ; @fma_v2_v_fneg 
# | label:2122'0                   X~~~~~~~~~~~~~~~~~ error: no match found
# |            2776: ; %bb.0: 
# | label:2122'0     ~~~~~~~~~
# |            2777:  s_setreg_imm32_b32 hwreg(HW_REG_WAVE_MODE, 25, 1), 1 ; msbs: dst=0 src0=0 src1=0 src2=0 
# | label:2122'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            2778:  s_load_b128 s[0:3], s[4:5], 0x24 nv 
# | label:2122'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            2779:  v_and_b32_e32 v8, 0x3ff, v0 
# | label:2122'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            2780:  s_wait_kmcnt 0x0 
# | label:2122'0     ~~~~~~~~~~~~~~~~~~
# |               .
# |               .
# |               .
# |            2794: .Lfunc_end35: 
# | label:2122'0     ~~~~~~~~~~~~~~
# |            2795:  .size fma_v2_v_fneg, .Lfunc_end35-fma_v2_v_fneg 
# | label:2122'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            2796:  ; -- End function 
# | label:2122'0     ~~~~~~~~~~~~~~~~~~~
# |            2797:  .set .Lfma_v2_v_fneg.num_vgpr, 9 
# | label:2122'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            2798:  .set .Lfma_v2_v_fneg.num_agpr, 0 
# | label:2122'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            2799:  .set .Lfma_v2_v_fneg.numbered_sgpr, 8 
# | label:2122'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | label:2122'1             ?                               possible intended match
# |            2800:  .set .Lfma_v2_v_fneg.num_named_barrier, 0 
# | label:2122'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            2801:  .set .Lfma_v2_v_fneg.private_seg_size, 0 
# | label:2122'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            2802:  .set .Lfma_v2_v_fneg.uses_vcc, 0 
# | label:2122'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            2803:  .set .Lfma_v2_v_fneg.uses_flat_scratch, 0 
# | label:2122'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            2804:  .set .Lfma_v2_v_fneg.has_dyn_sized_stack, 0 
# | label:2122'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/203559


More information about the llvm-commits mailing list