[llvm] AMDGPU/GlobalISel: Regbanklegalize rules for G_UNMERGE_VALUES (PR #171653)

Joe Nash via llvm-commits llvm-commits at lists.llvm.org
Tue Dec 30 11:08:51 PST 2025


================
@@ -137,34 +137,20 @@ define amdgpu_ps void @fpext_f16_to_f64_div(half %a, ptr addrspace(1) %ptr) {
 }
 
 define amdgpu_ps <2 x float> @fpext_v2f16_to_v2f32_uniform(<2 x half> inreg %a) {
-; GFX11-FAKE16-LABEL: fpext_v2f16_to_v2f32_uniform:
-; GFX11-FAKE16:       ; %bb.0:
-; GFX11-FAKE16-NEXT:    s_lshr_b32 s1, s0, 16
-; GFX11-FAKE16-NEXT:    v_cvt_f32_f16_e32 v0, s0
-; GFX11-FAKE16-NEXT:    v_cvt_f32_f16_e32 v1, s1
-; GFX11-FAKE16-NEXT:    ; return to shader part epilog
-;
-; GFX11-TRUE16-LABEL: fpext_v2f16_to_v2f32_uniform:
-; GFX11-TRUE16:       ; %bb.0:
-; GFX11-TRUE16-NEXT:    v_cvt_f32_f16_e32 v0, s0
----------------
Sisyph wrote:

Thanks for fixing this. The globalisel support for True16 is definitely missing some pieces. I see the _lo and _hi subreg copies just disappear.  I don't know where to put such an assert yet, but perhaps it will become clear later. 

https://github.com/llvm/llvm-project/pull/171653


More information about the llvm-commits mailing list