[llvm] [AMDGPU] add back the true16 pattern for cvt_pk_rtz (PR #184857)
via llvm-commits
llvm-commits at lists.llvm.org
Thu Mar 5 11:48:26 PST 2026
github-actions[bot] wrote:
<!--PREMERGE ADVISOR COMMENT: Linux-->
# :penguin: Linux x64 Test Results
* 170772 tests passed
* 3017 tests skipped
* 1 test failed
## Failed Tests
(click on a test name to see its output)
### LLVM
<details>
<summary>LLVM.CodeGen/AMDGPU/llvm.fptrunc.round.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=gfx1030 < /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/CodeGen/AMDGPU/llvm.fptrunc.round.ll | /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/FileCheck -check-prefixes=CHECK,SDAG /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/CodeGen/AMDGPU/llvm.fptrunc.round.ll
# executed command: /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/llc -global-isel=0 -mtriple=amdgcn -mcpu=gfx1030
# 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=CHECK,SDAG /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/CodeGen/AMDGPU/llvm.fptrunc.round.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=0 -mtriple=amdgcn -mcpu=gfx1010 < /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/CodeGen/AMDGPU/llvm.fptrunc.round.ll | /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/FileCheck -check-prefixes=CHECK,SDAG /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/CodeGen/AMDGPU/llvm.fptrunc.round.ll
# executed command: /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/llc -global-isel=0 -mtriple=amdgcn -mcpu=gfx1010
# 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=CHECK,SDAG /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/CodeGen/AMDGPU/llvm.fptrunc.round.ll
# note: command had no output on stdout or stderr
# RUN: at line 4
/home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/llc -global-isel=0 -mtriple=amdgcn -mcpu=gfx1100 < /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/CodeGen/AMDGPU/llvm.fptrunc.round.ll | /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/FileCheck -check-prefixes=CHECK,GFX11-SDAG /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/CodeGen/AMDGPU/llvm.fptrunc.round.ll
# executed command: /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/llc -global-isel=0 -mtriple=amdgcn -mcpu=gfx1100
# 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=CHECK,GFX11-SDAG /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/CodeGen/AMDGPU/llvm.fptrunc.round.ll
# .---command stderr------------
# | /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/CodeGen/AMDGPU/llvm.fptrunc.round.ll:13:15: error: CHECK-NEXT: expected string not found in input
# | ; CHECK-NEXT: v_cvt_f16_f32_e32 v0, v0
# | ^
# | <stdin>:15:9: note: scanning from here
# | ; %bb.0:
# | ^
# | <stdin>:16:2: note: possible intended match here
# | v_cvt_f16_f32_e64 v0.l, v0
# | ^
# | /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/CodeGen/AMDGPU/llvm.fptrunc.round.ll:23:15: error: CHECK-NEXT: expected string not found in input
# | ; CHECK-NEXT: v_cvt_f16_f32_e32 v0, v0
# | ^
# | <stdin>:69:48: note: scanning from here
# | s_setreg_imm32_b32 hwreg(HW_REG_MODE, 2, 1), 1
# | ^
# | <stdin>:70:2: note: possible intended match here
# | v_cvt_f16_f32_e64 v0.l, v0
# | ^
# | /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/CodeGen/AMDGPU/llvm.fptrunc.round.ll:33:15: error: CHECK-NEXT: expected string not found in input
# | ; CHECK-NEXT: v_cvt_f16_f32_e32 v0, v0
# | ^
# | <stdin>:123:48: note: scanning from here
# | s_setreg_imm32_b32 hwreg(HW_REG_MODE, 3, 1), 1
# | ^
# | <stdin>:124:2: note: possible intended match here
# | v_cvt_f16_f32_e64 v0.l, v0
# | ^
# | /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/CodeGen/AMDGPU/llvm.fptrunc.round.ll:132:20: error: GFX11-SDAG-NEXT: expected string not found in input
# | ; GFX11-SDAG-NEXT: v_cvt_f16_f32_e32 v0, v0
# | ^
# | <stdin>:390:48: note: scanning from here
# | s_setreg_imm32_b32 hwreg(HW_REG_MODE, 2, 1), 1
# | ^
# | <stdin>:391:2: note: possible intended match here
# | v_cvt_f16_f32_e64 v0.l, v0
# | ^
# | /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/CodeGen/AMDGPU/llvm.fptrunc.round.ll:168:20: error: GFX11-SDAG-NEXT: expected string not found in input
# | ; GFX11-SDAG-NEXT: v_cvt_f16_f32_e32 v4, v0
# | ^
# | <stdin>:452:48: note: scanning from here
# | s_setreg_imm32_b32 hwreg(HW_REG_MODE, 2, 1), 1
# | ^
# | <stdin>:453:2: note: possible intended match here
# | v_cvt_f16_f32_e64 v4.l, v0
# | ^
# | /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/CodeGen/AMDGPU/llvm.fptrunc.round.ll:205:20: error: GFX11-SDAG-NEXT: expected string not found in input
# | ; GFX11-SDAG-NEXT: v_cvt_pk_rtz_f16_f32_e64 v0, v0, s0
# | ^
# | <stdin>:513:9: note: scanning from here
# | ; %bb.0:
# | ^
# | <stdin>:514:2: note: possible intended match here
# | v_cvt_pk_rtz_f16_f32_e64 v4, v0, s0
# | ^
# | /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/CodeGen/AMDGPU/llvm.fptrunc.round.ll:236:20: error: GFX11-SDAG-NEXT: expected string not found in input
# | ; GFX11-SDAG-NEXT: v_mov_b32_e32 v0, s0
# | ^
# | <stdin>:574:9: note: scanning from here
# | ; %bb.0:
# | ^
# | <stdin>:578:2: note: possible intended match here
# | v_and_b32_e32 v0, 0xffff, v0
# | ^
# | /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/CodeGen/AMDGPU/llvm.fptrunc.round.ll:262:20: error: GFX11-SDAG-NEXT: expected string not found in input
# | ; GFX11-SDAG-NEXT: v_mov_b32_e32 v0, s0
# | ^
# | <stdin>:631:9: note: scanning from here
# | ; %bb.0:
# | ^
# | <stdin>:635:2: note: possible intended match here
# | v_and_b32_e32 v0, 0xffff, v0
# | ^
# | /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/CodeGen/AMDGPU/llvm.fptrunc.round.ll:294:20: error: GFX11-SDAG-NEXT: expected string not found in input
# | ; GFX11-SDAG-NEXT: v_mov_b32_e32 v2, s0
# | ^
# | <stdin>:688:9: note: scanning from here
# | ; %bb.0:
# | ^
# | <stdin>:690:7: note: possible intended match here
# | v_cvt_f16_f32_e64 v2.l, s0
# | ^
# | /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/CodeGen/AMDGPU/llvm.fptrunc.round.ll:331:20: error: GFX11-SDAG-NEXT: expected string not found in input
# | ; GFX11-SDAG-NEXT: v_cvt_f16_f32_e32 v1, v1
# | ^
# | <stdin>:751:48: note: scanning from here
# | s_setreg_imm32_b32 hwreg(HW_REG_MODE, 2, 1), 1
# | ^
# | <stdin>:752:2: note: possible intended match here
# | v_cvt_f16_f32_e64 v1.h, v1
# | ^
# | /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/CodeGen/AMDGPU/llvm.fptrunc.round.ll:359:20: error: GFX11-SDAG-NEXT: expected string not found in input
# | ; GFX11-SDAG-NEXT: v_cvt_f16_f32_e32 v1, v1
# | ^
# | <stdin>:808:48: note: scanning from here
# | s_setreg_imm32_b32 hwreg(HW_REG_MODE, 3, 1), 1
# | ^
# | <stdin>:809:2: note: possible intended match here
# | v_cvt_f16_f32_e64 v1.h, v1
# | ^
# | /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/CodeGen/AMDGPU/llvm.fptrunc.round.ll:398:20: error: GFX11-SDAG-NEXT: expected string not found in input
# | ; GFX11-SDAG-NEXT: v_cvt_f16_f32_e32 v1, v1
# | ^
# | <stdin>:865:48: note: scanning from here
# | s_setreg_imm32_b32 hwreg(HW_REG_MODE, 2, 1), 1
# | ^
# | <stdin>:866:2: note: possible intended match here
# | v_cvt_f16_f32_e64 v1.h, v1
# | ^
# | /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/CodeGen/AMDGPU/llvm.fptrunc.round.ll:458:20: error: GFX11-SDAG-NEXT: expected string not found in input
# | ; GFX11-SDAG-NEXT: v_dual_mov_b32 v0, s0 :: v_dual_mov_b32 v1, s1
# | ^
# | <stdin>:929:9: note: scanning from here
# | ; %bb.0:
# | ^
# | <stdin>:934:2: note: possible intended match here
# | v_and_b32_e32 v0, 0xffff, v0
# | ^
# | /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/CodeGen/AMDGPU/llvm.fptrunc.round.ll:492:20: error: GFX11-SDAG-NEXT: expected string not found in input
# | ; GFX11-SDAG-NEXT: v_dual_mov_b32 v0, s0 :: v_dual_mov_b32 v1, s1
# | ^
# | <stdin>:990:9: note: scanning from here
# | ; %bb.0:
# | ^
# | <stdin>:995:2: note: possible intended match here
# | v_and_b32_e32 v0, 0xffff, v0
# | ^
# | /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/CodeGen/AMDGPU/llvm.fptrunc.round.ll:539:20: error: GFX11-SDAG-NEXT: expected string not found in input
# | ; GFX11-SDAG-NEXT: v_dual_mov_b32 v2, s1 :: v_dual_mov_b32 v3, s3
# | ^
# | <stdin>:1051:9: note: scanning from here
# | ; %bb.0:
# | ^
# | <stdin>:1061:2: note: possible intended match here
# | v_pk_add_f16 v2, v2, v3
# | ^
# | /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/CodeGen/AMDGPU/llvm.fptrunc.round.ll:606:20: error: GFX11-SDAG-NEXT: expected string not found in input
# | ; GFX11-SDAG-NEXT: v_cvt_f16_f32_e32 v1, v1
# | ^
# | <stdin>:1117:48: note: scanning from here
# | s_setreg_imm32_b32 hwreg(HW_REG_MODE, 2, 1), 1
# | ^
# | <stdin>:1120:2: note: possible intended match here
# | v_cvt_f16_f32_e64 v1.l, v2
# | ^
# | /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/CodeGen/AMDGPU/llvm.fptrunc.round.ll:638:20: error: GFX11-SDAG-NEXT: expected string not found in input
# | ; GFX11-SDAG-NEXT: v_cvt_f16_f32_e32 v1, v1
# | ^
# | <stdin>:1175:48: note: scanning from here
# | s_setreg_imm32_b32 hwreg(HW_REG_MODE, 3, 1), 1
# | ^
# | <stdin>:1178:2: note: possible intended match here
# | v_cvt_f16_f32_e64 v1.l, v2
# | ^
# | /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/CodeGen/AMDGPU/llvm.fptrunc.round.ll:672:20: error: GFX11-SDAG-NEXT: expected string not found in input
# | ; GFX11-SDAG-NEXT: v_cvt_f16_f32_e32 v1, v1
# | ^
# | <stdin>:1233:48: note: scanning from here
# | s_setreg_imm32_b32 hwreg(HW_REG_MODE, 2, 1), 1
# | ^
# | <stdin>:1235:2: note: possible intended match here
# | v_cvt_f16_f32_e64 v1.h, v1
# | ^
# | /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/CodeGen/AMDGPU/llvm.fptrunc.round.ll:711:20: error: GFX11-SDAG-NEXT: expected string not found in input
# | ; GFX11-SDAG-NEXT: v_cvt_f16_f32_e32 v1, v1
# | ^
# | <stdin>:1292:48: note: scanning from here
# | s_setreg_imm32_b32 hwreg(HW_REG_MODE, 3, 1), 1
# | ^
# | <stdin>:1294:2: note: possible intended match here
# | v_cvt_f16_f32_e64 v1.h, v1
# | ^
# | /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/CodeGen/AMDGPU/llvm.fptrunc.round.ll:756:20: error: GFX11-SDAG-NEXT: expected string not found in input
# | ; GFX11-SDAG-NEXT: v_cvt_f16_f32_e32 v7, v7
# | ^
# | <stdin>:1351:48: note: scanning from here
# | s_setreg_imm32_b32 hwreg(HW_REG_MODE, 2, 1), 1
# | ^
# | <stdin>:1352:2: note: possible intended match here
# | v_cvt_f16_f32_e64 v7.h, v7
# | ^
# | /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/CodeGen/AMDGPU/llvm.fptrunc.round.ll:813:20: error: GFX11-SDAG-NEXT: expected string not found in input
# | ; GFX11-SDAG-NEXT: v_cvt_f16_f32_e32 v7, v7
# | ^
# | <stdin>:1415:48: note: scanning from here
# | s_setreg_imm32_b32 hwreg(HW_REG_MODE, 3, 1), 1
# | ^
# | <stdin>:1416:2: note: possible intended match here
# | v_cvt_f16_f32_e64 v7.h, v7
# | ^
# |
# | Input file: <stdin>
# | Check file: /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/CodeGen/AMDGPU/llvm.fptrunc.round.ll
# |
# | -dump-input=help explains the following input dump.
# |
# | Input was:
# | <<<<<<
# | .
# | .
# | .
# | 10: .text
# | 11: .globl v_fptrunc_round_f32_to_f16_tonearest ; -- Begin function v_fptrunc_round_f32_to_f16_tonearest
# | 12: .p2align 8
# | 13: .type v_fptrunc_round_f32_to_f16_tonearest, at function
# | 14: v_fptrunc_round_f32_to_f16_tonearest: ; @v_fptrunc_round_f32_to_f16_tonearest
# | 15: ; %bb.0:
# | next:13'0 X error: no match found
# | 16: v_cvt_f16_f32_e64 v0.l, v0
# | next:13'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | next:13'1 ? possible intended match
# | 17: ; return to shader part epilog
# | next:13'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 18: .Lfunc_end0:
# | next:13'0 ~~~~~~~~~~~~~
# | 19: .size v_fptrunc_round_f32_to_f16_tonearest, .Lfunc_end0-v_fptrunc_round_f32_to_f16_tonearest
# | next:13'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 20: ; -- End function
# | next:13'0 ~~~~~~~~~~~~~~~~~~~
# | 21: .set v_fptrunc_round_f32_to_f16_tonearest.num_vgpr, 1
# | next:13'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | .
# | .
# | .
# | 64: .globl v_fptrunc_round_f32_to_f16_upward ; -- Begin function v_fptrunc_round_f32_to_f16_upward
# | next:13'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 65: .p2align 8
# | next:13'0 ~~~~~~~~~~~~
# | 66: .type v_fptrunc_round_f32_to_f16_upward, at function
# | next:13'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 67: v_fptrunc_round_f32_to_f16_upward: ; @v_fptrunc_round_f32_to_f16_upward
# | next:13'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 68: ; %bb.0:
# | 69: s_setreg_imm32_b32 hwreg(HW_REG_MODE, 2, 1), 1
# | next:23'0 X error: no match found
# | 70: v_cvt_f16_f32_e64 v0.l, v0
# | next:23'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | next:23'1 ? possible intended match
# | 71: ; return to shader part epilog
# | next:23'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 72: .Lfunc_end1:
# | next:23'0 ~~~~~~~~~~~~~
# | 73: .size v_fptrunc_round_f32_to_f16_upward, .Lfunc_end1-v_fptrunc_round_f32_to_f16_upward
# | next:23'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 74: ; -- End function
# | next:23'0 ~~~~~~~~~~~~~~~~~~~
# | 75: .set v_fptrunc_round_f32_to_f16_upward.num_vgpr, 1
# | next:23'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | .
# | .
# | .
# | 118: .globl v_fptrunc_round_f32_to_f16_downward ; -- Begin function v_fptrunc_round_f32_to_f16_downward
# | next:23'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 119: .p2align 8
# | next:23'0 ~~~~~~~~~~~~
# | 120: .type v_fptrunc_round_f32_to_f16_downward, at function
# | next:23'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 121: v_fptrunc_round_f32_to_f16_downward: ; @v_fptrunc_round_f32_to_f16_downward
# | next:23'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 122: ; %bb.0:
# | 123: s_setreg_imm32_b32 hwreg(HW_REG_MODE, 3, 1), 1
# | next:33'0 X error: no match found
# | 124: v_cvt_f16_f32_e64 v0.l, v0
# | next:33'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | next:33'1 ? possible intended match
# | 125: ; return to shader part epilog
# | next:33'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 126: .Lfunc_end2:
# | next:33'0 ~~~~~~~~~~~~~
# | 127: .size v_fptrunc_round_f32_to_f16_downward, .Lfunc_end2-v_fptrunc_round_f32_to_f16_downward
# | next:33'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 128: ; -- End function
# | next:33'0 ~~~~~~~~~~~~~~~~~~~
# | 129: .set v_fptrunc_round_f32_to_f16_downward.num_vgpr, 1
# | next:33'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | .
# | .
# | .
# | 385: .globl v_fptrunc_round_f32_to_f16_upward_multiple_calls ; -- Begin function v_fptrunc_round_f32_to_f16_upward_multiple_calls
# | 386: .p2align 8
# | 387: .type v_fptrunc_round_f32_to_f16_upward_multiple_calls, at function
# | 388: v_fptrunc_round_f32_to_f16_upward_multiple_calls: ; @v_fptrunc_round_f32_to_f16_upward_multiple_calls
# | 389: ; %bb.0:
# | 390: s_setreg_imm32_b32 hwreg(HW_REG_MODE, 2, 1), 1
# | next:132'0 X error: no match found
# | 391: v_cvt_f16_f32_e64 v0.l, v0
# | next:132'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | next:132'1 ? possible intended match
# | 392: v_cvt_f16_f32_e64 v0.h, v1
# | next:132'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 393: s_setreg_imm32_b32 hwreg(HW_REG_MODE, 2, 2), 2
# | next:132'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 394: v_cvt_f16_f32_e64 v1.l, v1
# | next:132'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 395: s_setreg_imm32_b32 hwreg(HW_REG_MODE, 3, 1), 0
# | next:132'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 396: s_delay_alu instid0(VALU_DEP_2) | instskip(NEXT) | instid1(VALU_DEP_1)
# | next:132'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | .
# | .
# | .
# | 447: .globl v_fptrunc_round_f32_to_f16_downward_multiple_calls ; -- Begin function v_fptrunc_round_f32_to_f16_downward_multiple_calls
# | next:132'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 448: .p2align 8
# | next:132'0 ~~~~~~~~~~~~
# | 449: .type v_fptrunc_round_f32_to_f16_downward_multiple_calls, at function
# | next:132'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 450: v_fptrunc_round_f32_to_f16_downward_multiple_calls: ; @v_fptrunc_round_f32_to_f16_downward_multiple_calls
# | next:132'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 451: ; %bb.0:
# | 452: s_setreg_imm32_b32 hwreg(HW_REG_MODE, 2, 1), 1
# | next:168'0 X error: no match found
# | 453: v_cvt_f16_f32_e64 v4.l, v0
# | next:168'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | next:168'1 ? possible intended match
# | 454: s_setreg_imm32_b32 hwreg(HW_REG_MODE, 2, 2), 2
# | next:168'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 455: v_cvt_f16_f32_e64 v0.l, v0
# | next:168'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 456: v_cvt_f16_f32_e64 v0.h, v1
# | next:168'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 457: s_setreg_imm32_b32 hwreg(HW_REG_MODE, 3, 1), 0
# | next:168'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 458: s_delay_alu instid0(VALU_DEP_2) | instskip(NEXT) | instid1(VALU_DEP_1)
# | next:168'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | .
# | .
# | .
# | 508: .text
# | next:168'0 ~~~~~~~
# | 509: .globl v_fptrunc_round_f32_to_f16_towardzero_multiple_calls ; -- Begin function v_fptrunc_round_f32_to_f16_towardzero_multiple_calls
# | next:168'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 510: .p2align 8
# | next:168'0 ~~~~~~~~~~~~
# | 511: .type v_fptrunc_round_f32_to_f16_towardzero_multiple_calls, at function
# | next:168'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 512: v_fptrunc_round_f32_to_f16_towardzero_multiple_calls: ; @v_fptrunc_round_f32_to_f16_towardzero_multiple_calls
# | next:168'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 513: ; %bb.0:
# | next:205'0 X error: no match found
# | 514: v_cvt_pk_rtz_f16_f32_e64 v4, v0, s0
# | next:205'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | next:205'1 ? possible intended match
# | 515: v_cvt_pk_rtz_f16_f32_e64 v5, v1, s0
# | next:205'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 516: s_setreg_imm32_b32 hwreg(HW_REG_MODE, 2, 1), 1
# | next:205'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 517: v_cvt_f16_f32_e64 v0.l, v1
# | next:205'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 518: s_setreg_imm32_b32 hwreg(HW_REG_MODE, 2, 2), 0
# | next:205'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 519: s_delay_alu instid0(VALU_DEP_2) | instskip(NEXT) | instid1(VALU_DEP_1)
# | next:205'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | .
# | .
# | .
# | 569: .text
# | next:205'0 ~~~~~~~
# | 570: .globl s_fptrunc_round_f32_to_f16_upward ; -- Begin function s_fptrunc_round_f32_to_f16_upward
# | next:205'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 571: .p2align 8
# | next:205'0 ~~~~~~~~~~~~
# | 572: .type s_fptrunc_round_f32_to_f16_upward, at function
# | next:205'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 573: s_fptrunc_round_f32_to_f16_upward: ; @s_fptrunc_round_f32_to_f16_upward
# | next:205'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 574: ; %bb.0:
# | next:236'0 X error: no match found
# | 575: s_setreg_imm32_b32 hwreg(HW_REG_MODE, 2, 1), 1
# | next:236'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 576: v_cvt_f16_f32_e64 v0.l, s0
# | next:236'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 577: s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
# | next:236'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 578: v_and_b32_e32 v0, 0xffff, v0
# | next:236'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | next:236'1 ? possible intended match
# | 579: v_readfirstlane_b32 s0, v0
# | next:236'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 580: ; return to shader part epilog
# | next:236'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 581: .Lfunc_end10:
# | next:236'0 ~~~~~~~~~~~~~~
# | 582: .size s_fptrunc_round_f32_to_f16_upward, .Lfunc_end10-s_fptrunc_round_f32_to_f16_upward
# | next:236'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 583: ; -- End function
# | next:236'0 ~~~~~~~~~~~~~~~~~~~
# | .
# | .
# | .
# | 626: .text
# | next:236'0 ~~~~~~~
# | 627: .globl s_fptrunc_round_f32_to_f16_downward ; -- Begin function s_fptrunc_round_f32_to_f16_downward
# | next:236'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 628: .p2align 8
# | next:236'0 ~~~~~~~~~~~~
# | 629: .type s_fptrunc_round_f32_to_f16_downward, at function
# | next:236'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 630: s_fptrunc_round_f32_to_f16_downward: ; @s_fptrunc_round_f32_to_f16_downward
# | next:236'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 631: ; %bb.0:
# | next:262'0 X error: no match found
# | 632: s_setreg_imm32_b32 hwreg(HW_REG_MODE, 3, 1), 1
# | next:262'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 633: v_cvt_f16_f32_e64 v0.l, s0
# | next:262'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 634: s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
# | next:262'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 635: v_and_b32_e32 v0, 0xffff, v0
# | next:262'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | next:262'1 ? possible intended match
# | 636: v_readfirstlane_b32 s0, v0
# | next:262'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 637: ; return to shader part epilog
# | next:262'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 638: .Lfunc_end11:
# | next:262'0 ~~~~~~~~~~~~~~
# | 639: .size s_fptrunc_round_f32_to_f16_downward, .Lfunc_end11-s_fptrunc_round_f32_to_f16_downward
# | next:262'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 640: ; -- End function
# | next:262'0 ~~~~~~~~~~~~~~~~~~~
# | .
# | .
# | .
# | 683: .text
# | next:262'0 ~~~~~~~
# | 684: .globl s_fptrunc_round_f32_to_f16_upward_multiple_calls ; -- Begin function s_fptrunc_round_f32_to_f16_upward_multiple_calls
# | next:262'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 685: .p2align 8
# | next:262'0 ~~~~~~~~~~~~
# | 686: .type s_fptrunc_round_f32_to_f16_upward_multiple_calls, at function
# | next:262'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 687: s_fptrunc_round_f32_to_f16_upward_multiple_calls: ; @s_fptrunc_round_f32_to_f16_upward_multiple_calls
# | next:262'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 688: ; %bb.0:
# | next:294'0 X error: no match found
# | 689: s_setreg_imm32_b32 hwreg(HW_REG_MODE, 2, 1), 1
# | next:294'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 690: v_cvt_f16_f32_e64 v2.l, s0
# | next:294'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | next:294'1 ? possible intended match
# | 691: v_cvt_f16_f32_e64 v2.h, s1
# | next:294'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 692: s_setreg_imm32_b32 hwreg(HW_REG_MODE, 2, 2), 2
# | next:294'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 693: v_cvt_f16_f32_e64 v3.l, s1
# | next:294'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 694: s_setreg_imm32_b32 hwreg(HW_REG_MODE, 3, 1), 0
# | next:294'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 695: s_delay_alu instid0(VALU_DEP_2) | instskip(NEXT) | instid1(VALU_DEP_1)
# | next:294'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | .
# | .
# | .
# | 746: .globl v_fptrunc_round_v2f32_to_v2f16_upward ; -- Begin function v_fptrunc_round_v2f32_to_v2f16_upward
# | next:294'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 747: .p2align 8
# | next:294'0 ~~~~~~~~~~~~
# | 748: .type v_fptrunc_round_v2f32_to_v2f16_upward, at function
# | next:294'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 749: v_fptrunc_round_v2f32_to_v2f16_upward: ; @v_fptrunc_round_v2f32_to_v2f16_upward
# | next:294'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 750: ; %bb.0:
# | 751: s_setreg_imm32_b32 hwreg(HW_REG_MODE, 2, 1), 1
# | next:331'0 X error: no match found
# | 752: v_cvt_f16_f32_e64 v1.h, v1
# | next:331'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | next:331'1 ? possible intended match
# | 753: v_cvt_f16_f32_e64 v1.l, v0
# | next:331'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 754: s_delay_alu instid0(VALU_DEP_1)
# | next:331'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 755: v_mov_b32_e32 v0, v1
# | next:331'0 ~~~~~~~~~~~~~~~~~~~~~~
# | 756: ; return to shader part epilog
# | next:331'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 757: .Lfunc_end13:
# | next:331'0 ~~~~~~~~~~~~~~
# | .
# | .
# | .
# | 803: .globl v_fptrunc_round_v2f32_to_v2f16_downward ; -- Begin function v_fptrunc_round_v2f32_to_v2f16_downward
# | next:331'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 804: .p2align 8
# | next:331'0 ~~~~~~~~~~~~
# | 805: .type v_fptrunc_round_v2f32_to_v2f16_downward, at function
# | next:331'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 806: v_fptrunc_round_v2f32_to_v2f16_downward: ; @v_fptrunc_round_v2f32_to_v2f16_downward
# | next:331'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 807: ; %bb.0:
# | 808: s_setreg_imm32_b32 hwreg(HW_REG_MODE, 3, 1), 1
# | next:359'0 X error: no match found
# | 809: v_cvt_f16_f32_e64 v1.h, v1
# | next:359'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | next:359'1 ? possible intended match
# | 810: v_cvt_f16_f32_e64 v1.l, v0
# | next:359'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 811: s_delay_alu instid0(VALU_DEP_1)
# | next:359'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 812: v_mov_b32_e32 v0, v1
# | next:359'0 ~~~~~~~~~~~~~~~~~~~~~~
# | 813: ; return to shader part epilog
# | next:359'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 814: .Lfunc_end14:
# | next:359'0 ~~~~~~~~~~~~~~
# | .
# | .
# | .
# | 860: .globl v_fptrunc_round_v2f32_to_v2f16_upward_multiple_calls ; -- Begin function v_fptrunc_round_v2f32_to_v2f16_upward_multiple_calls
# | next:359'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 861: .p2align 8
# | next:359'0 ~~~~~~~~~~~~
# | 862: .type v_fptrunc_round_v2f32_to_v2f16_upward_multiple_calls, at function
# | next:359'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 863: v_fptrunc_round_v2f32_to_v2f16_upward_multiple_calls: ; @v_fptrunc_round_v2f32_to_v2f16_upward_multiple_calls
# | next:359'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 864: ; %bb.0:
# | 865: s_setreg_imm32_b32 hwreg(HW_REG_MODE, 2, 1), 1
# | next:398'0 X error: no match found
# | 866: v_cvt_f16_f32_e64 v1.h, v1
# | next:398'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | next:398'1 ? possible intended match
# | 867: v_cvt_f16_f32_e64 v1.l, v0
# | next:398'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 868: v_cvt_f16_f32_e64 v0.h, v3
# | next:398'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 869: v_cvt_f16_f32_e64 v0.l, v2
# | next:398'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 870: s_setreg_imm32_b32 hwreg(HW_REG_MODE, 2, 2), 2
# | next:398'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 871: v_cvt_f16_f32_e64 v3.h, v3
# | next:398'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | .
# | .
# | .
# | 924: .text
# | next:398'0 ~~~~~~~
# | 925: .globl s_fptrunc_round_v2f32_to_v2f16_upward ; -- Begin function s_fptrunc_round_v2f32_to_v2f16_upward
# | next:398'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 926: .p2align 8
# | next:398'0 ~~~~~~~~~~~~
# | 927: .type s_fptrunc_round_v2f32_to_v2f16_upward, at function
# | next:398'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 928: s_fptrunc_round_v2f32_to_v2f16_upward: ; @s_fptrunc_round_v2f32_to_v2f16_upward
# | next:398'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 929: ; %bb.0:
# | next:458'0 X error: no match found
# | 930: s_setreg_imm32_b32 hwreg(HW_REG_MODE, 2, 1), 1
# | next:458'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 931: v_cvt_f16_f32_e64 v0.l, s0
# | next:458'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 932: v_cvt_f16_f32_e64 v1.l, s1
# | next:458'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 933: s_delay_alu instid0(VALU_DEP_2) | instskip(NEXT) | instid1(VALU_DEP_2)
# | next:458'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 934: v_and_b32_e32 v0, 0xffff, v0
# | next:458'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | next:458'1 ? possible intended match
# | 935: v_and_b32_e32 v1, 0xffff, v1
# | next:458'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 936: s_delay_alu instid0(VALU_DEP_2) | instskip(NEXT) | instid1(VALU_DEP_2)
# | next:458'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 937: v_readfirstlane_b32 s0, v0
# | next:458'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 938: v_readfirstlane_b32 s1, v1
# | next:458'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 939: ; return to shader part epilog
# | next:458'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | .
# | .
# | .
# | 985: .text
# | next:458'0 ~~~~~~~
# | 986: .globl s_fptrunc_round_v2f32_to_v2f16_downward ; -- Begin function s_fptrunc_round_v2f32_to_v2f16_downward
# | next:458'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 987: .p2align 8
# | next:458'0 ~~~~~~~~~~~~
# | 988: .type s_fptrunc_round_v2f32_to_v2f16_downward, at function
# | next:458'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 989: s_fptrunc_round_v2f32_to_v2f16_downward: ; @s_fptrunc_round_v2f32_to_v2f16_downward
# | next:458'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 990: ; %bb.0:
# | next:492'0 X error: no match found
# | 991: s_setreg_imm32_b32 hwreg(HW_REG_MODE, 3, 1), 1
# | next:492'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 992: v_cvt_f16_f32_e64 v0.l, s0
# | next:492'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 993: v_cvt_f16_f32_e64 v1.l, s1
# | next:492'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 994: s_delay_alu instid0(VALU_DEP_2) | instskip(NEXT) | instid1(VALU_DEP_2)
# | next:492'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 995: v_and_b32_e32 v0, 0xffff, v0
# | next:492'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | next:492'1 ? possible intended match
# | 996: v_and_b32_e32 v1, 0xffff, v1
# | next:492'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 997: s_delay_alu instid0(VALU_DEP_2) | instskip(NEXT) | instid1(VALU_DEP_2)
# | next:492'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 998: v_readfirstlane_b32 s0, v0
# | next:492'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 999: v_readfirstlane_b32 s1, v1
# | next:492'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 1000: ; return to shader part epilog
# | next:492'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | .
# | .
# | .
# | 1046: .text
# | next:492'0 ~~~~~~~
# | 1047: .globl s_fptrunc_round_v2f32_to_v2f16_upward_multiple_calls ; -- Begin function s_fptrunc_round_v2f32_to_v2f16_upward_multiple_calls
# | next:492'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 1048: .p2align 8
# | next:492'0 ~~~~~~~~~~~~
# | 1049: .type s_fptrunc_round_v2f32_to_v2f16_upward_multiple_calls, at function
# | next:492'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 1050: s_fptrunc_round_v2f32_to_v2f16_upward_multiple_calls: ; @s_fptrunc_round_v2f32_to_v2f16_upward_multiple_calls
# | next:492'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 1051: ; %bb.0:
# | next:539'0 X error: no match found
# | 1052: s_setreg_imm32_b32 hwreg(HW_REG_MODE, 2, 1), 1
# | next:539'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 1053: v_cvt_f16_f32_e64 v2.h, s1
# | next:539'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 1054: v_cvt_f16_f32_e64 v2.l, s0
# | next:539'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 1055: v_cvt_f16_f32_e64 v3.h, s3
# | next:539'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 1056: v_cvt_f16_f32_e64 v3.l, s2
# | next:539'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 1057: s_setreg_imm32_b32 hwreg(HW_REG_MODE, 2, 2), 2
# | next:539'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 1058: v_cvt_f16_f32_e64 v4.h, s3
# | next:539'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 1059: v_cvt_f16_f32_e64 v4.l, s2
# | next:539'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 1060: s_setreg_imm32_b32 hwreg(HW_REG_MODE, 3, 1), 0
# | next:539'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 1061: v_pk_add_f16 v2, v2, v3
# | next:539'0 ~~~~~~~~~~~~~~~~~~~~~~~~~
# | next:539'1 ? possible intended match
# | 1062: s_delay_alu instid0(VALU_DEP_1)
# | next:539'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 1063: v_pk_add_f16 v2, v4, v2
# | next:539'0 ~~~~~~~~~~~~~~~~~~~~~~~~~
# | 1064: global_store_b32 v[0:1], v2, off
# | next:539'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 1065: s_endpgm
# | next:539'0 ~~~~~~~~~~
# | 1066: .Lfunc_end18:
# | next:539'0 ~~~~~~~~~~~~~~
# | .
# | .
# | .
# | 1112: .globl v_fptrunc_round_v3f32_to_v3f16_upward ; -- Begin function v_fptrunc_round_v3f32_to_v3f16_upward
# | next:539'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 1113: .p2align 8
# | next:539'0 ~~~~~~~~~~~~
# | 1114: .type v_fptrunc_round_v3f32_to_v3f16_upward, at function
# | next:539'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 1115: v_fptrunc_round_v3f32_to_v3f16_upward: ; @v_fptrunc_round_v3f32_to_v3f16_upward
# | next:539'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 1116: ; %bb.0:
# | 1117: s_setreg_imm32_b32 hwreg(HW_REG_MODE, 2, 1), 1
# | next:606'0 X error: no match found
# | 1118: v_cvt_f16_f32_e64 v3.h, v1
# | next:606'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 1119: v_cvt_f16_f32_e64 v3.l, v0
# | next:606'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 1120: v_cvt_f16_f32_e64 v1.l, v2
# | next:606'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | next:606'1 ? possible intended match
# | 1121: s_delay_alu instid0(VALU_DEP_2)
# | next:606'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 1122: v_mov_b32_e32 v0, v3
# | next:606'0 ~~~~~~~~~~~~~~~~~~~~~~
# | 1123: ; return to shader part epilog
# | next:606'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 1124: .Lfunc_end19:
# | next:606'0 ~~~~~~~~~~~~~~
# | 1125: .size v_fptrunc_round_v3f32_to_v3f16_upward, .Lfunc_end19-v_fptrunc_round_v3f32_to_v3f16_upward
# | next:606'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | .
# | .
# | .
# | 1170: .globl v_fptrunc_round_v3f32_to_v3f16_downward ; -- Begin function v_fptrunc_round_v3f32_to_v3f16_downward
# | next:606'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 1171: .p2align 8
# | next:606'0 ~~~~~~~~~~~~
# | 1172: .type v_fptrunc_round_v3f32_to_v3f16_downward, at function
# | next:606'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 1173: v_fptrunc_round_v3f32_to_v3f16_downward: ; @v_fptrunc_round_v3f32_to_v3f16_downward
# | next:606'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 1174: ; %bb.0:
# | 1175: s_setreg_imm32_b32 hwreg(HW_REG_MODE, 3, 1), 1
# | next:638'0 X error: no match found
# | 1176: v_cvt_f16_f32_e64 v3.h, v1
# | next:638'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 1177: v_cvt_f16_f32_e64 v3.l, v0
# | next:638'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 1178: v_cvt_f16_f32_e64 v1.l, v2
# | next:638'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | next:638'1 ? possible intended match
# | 1179: s_delay_alu instid0(VALU_DEP_2)
# | next:638'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 1180: v_mov_b32_e32 v0, v3
# | next:638'0 ~~~~~~~~~~~~~~~~~~~~~~
# | 1181: ; return to shader part epilog
# | next:638'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 1182: .Lfunc_end20:
# | next:638'0 ~~~~~~~~~~~~~~
# | 1183: .size v_fptrunc_round_v3f32_to_v3f16_downward, .Lfunc_end20-v_fptrunc_round_v3f32_to_v3f16_downward
# | next:638'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | .
# | .
# | .
# | 1228: .globl v_fptrunc_round_v4f32_to_v4f16_upward ; -- Begin function v_fptrunc_round_v4f32_to_v4f16_upward
# | next:638'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 1229: .p2align 8
# | next:638'0 ~~~~~~~~~~~~
# | 1230: .type v_fptrunc_round_v4f32_to_v4f16_upward, at function
# | next:638'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 1231: v_fptrunc_round_v4f32_to_v4f16_upward: ; @v_fptrunc_round_v4f32_to_v4f16_upward
# | next:638'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 1232: ; %bb.0:
# | 1233: s_setreg_imm32_b32 hwreg(HW_REG_MODE, 2, 1), 1
# | next:672'0 X error: no match found
# | 1234: v_cvt_f16_f32_e64 v3.h, v3
# | next:672'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 1235: v_cvt_f16_f32_e64 v1.h, v1
# | next:672'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | next:672'1 ? possible intended match
# | 1236: v_cvt_f16_f32_e64 v1.l, v0
# | next:672'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 1237: v_cvt_f16_f32_e64 v3.l, v2
# | next:672'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 1238: s_delay_alu instid0(VALU_DEP_1)
# | next:672'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 1239: v_dual_mov_b32 v0, v1 :: v_dual_mov_b32 v1, v3
# | next:672'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 1240: ; return to shader part epilog
# | next:672'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | .
# | .
# | .
# | 1287: .globl v_fptrunc_round_v4f32_to_v4f16_downward ; -- Begin function v_fptrunc_round_v4f32_to_v4f16_downward
# | next:672'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 1288: .p2align 8
# | next:672'0 ~~~~~~~~~~~~
# | 1289: .type v_fptrunc_round_v4f32_to_v4f16_downward, at function
# | next:672'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 1290: v_fptrunc_round_v4f32_to_v4f16_downward: ; @v_fptrunc_round_v4f32_to_v4f16_downward
# | next:672'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 1291: ; %bb.0:
# | 1292: s_setreg_imm32_b32 hwreg(HW_REG_MODE, 3, 1), 1
# | next:711'0 X error: no match found
# | 1293: v_cvt_f16_f32_e64 v3.h, v3
# | next:711'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 1294: v_cvt_f16_f32_e64 v1.h, v1
# | next:711'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | next:711'1 ? possible intended match
# | 1295: v_cvt_f16_f32_e64 v1.l, v0
# | next:711'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 1296: v_cvt_f16_f32_e64 v3.l, v2
# | next:711'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 1297: s_delay_alu instid0(VALU_DEP_1)
# | next:711'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 1298: v_dual_mov_b32 v0, v1 :: v_dual_mov_b32 v1, v3
# | next:711'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 1299: ; return to shader part epilog
# | next:711'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | .
# | .
# | .
# | 1346: .globl v_fptrunc_round_v8f32_to_v8f16_upward ; -- Begin function v_fptrunc_round_v8f32_to_v8f16_upward
# | next:711'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 1347: .p2align 8
# | next:711'0 ~~~~~~~~~~~~
# | 1348: .type v_fptrunc_round_v8f32_to_v8f16_upward, at function
# | next:711'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 1349: v_fptrunc_round_v8f32_to_v8f16_upward: ; @v_fptrunc_round_v8f32_to_v8f16_upward
# | next:711'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 1350: ; %bb.0:
# | 1351: s_setreg_imm32_b32 hwreg(HW_REG_MODE, 2, 1), 1
# | next:756'0 X error: no match found
# | 1352: v_cvt_f16_f32_e64 v7.h, v7
# | next:756'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | next:756'1 ? possible intended match
# | 1353: v_cvt_f16_f32_e64 v5.h, v5
# | next:756'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 1354: v_cvt_f16_f32_e64 v3.h, v3
# | next:756'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 1355: v_cvt_f16_f32_e64 v1.h, v1
# | next:756'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 1356: v_cvt_f16_f32_e64 v1.l, v0
# | next:756'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 1357: v_cvt_f16_f32_e64 v3.l, v2
# | next:756'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | .
# | .
# | .
# | 1410: .globl v_fptrunc_round_v8f32_to_v8f16_downward ; -- Begin function v_fptrunc_round_v8f32_to_v8f16_downward
# | next:756'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 1411: .p2align 8
# | next:756'0 ~~~~~~~~~~~~
# | 1412: .type v_fptrunc_round_v8f32_to_v8f16_downward, at function
# | next:756'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 1413: v_fptrunc_round_v8f32_to_v8f16_downward: ; @v_fptrunc_round_v8f32_to_v8f16_downward
# | next:756'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 1414: ; %bb.0:
# | 1415: s_setreg_imm32_b32 hwreg(HW_REG_MODE, 3, 1), 1
# | next:813'0 X error: no match found
# | 1416: v_cvt_f16_f32_e64 v7.h, v7
# | next:813'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | next:813'1 ? possible intended match
# | 1417: v_cvt_f16_f32_e64 v5.h, v5
# | next:813'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 1418: v_cvt_f16_f32_e64 v3.h, v3
# | next:813'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 1419: v_cvt_f16_f32_e64 v1.h, v1
# | next:813'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 1420: v_cvt_f16_f32_e64 v1.l, v0
# | next:813'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 1421: v_cvt_f16_f32_e64 v3.l, v2
# | next:813'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/184857
More information about the llvm-commits
mailing list