Skip to content

Commit 23b7428

Browse files
committed
true16 for v_minmax/maxmin_f16 in MC
1 parent a1d71c3 commit 23b7428

File tree

8 files changed

+862
-250
lines changed

8 files changed

+862
-250
lines changed

llvm/lib/Target/AMDGPU/VOP3Instructions.td

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1372,8 +1372,8 @@ class VOP3_DOT_Profile_fake16<VOPProfile P, VOP3Features Features = VOP3_REGULAR
13721372
let SubtargetPredicate = isGFX11Plus in {
13731373
defm V_MAXMIN_F32 : VOP3Inst<"v_maxmin_f32", VOP3_Profile<VOP_F32_F32_F32_F32>>;
13741374
defm V_MINMAX_F32 : VOP3Inst<"v_minmax_f32", VOP3_Profile<VOP_F32_F32_F32_F32>>;
1375-
defm V_MAXMIN_F16 : VOP3Inst<"v_maxmin_f16", VOP3_Profile<VOP_F16_F16_F16_F16>>;
1376-
defm V_MINMAX_F16 : VOP3Inst<"v_minmax_f16", VOP3_Profile<VOP_F16_F16_F16_F16>>;
1375+
defm V_MAXMIN_F16 : VOP3Inst_t16<"v_maxmin_f16", VOP_F16_F16_F16_F16>;
1376+
defm V_MINMAX_F16 : VOP3Inst_t16<"v_minmax_f16", VOP_F16_F16_F16_F16>;
13771377
defm V_MAXMIN_U32 : VOP3Inst<"v_maxmin_u32", VOP3_Profile<VOP_I32_I32_I32_I32>>;
13781378
defm V_MINMAX_U32 : VOP3Inst<"v_minmax_u32", VOP3_Profile<VOP_I32_I32_I32_I32>>;
13791379
defm V_MAXMIN_I32 : VOP3Inst<"v_maxmin_i32", VOP3_Profile<VOP_I32_I32_I32_I32>>;
@@ -1728,8 +1728,8 @@ defm V_PERMLANE16_B32 : VOP3_Real_Base_gfx11_gfx12<0x25b>;
17281728
defm V_PERMLANEX16_B32 : VOP3_Real_Base_gfx11_gfx12<0x25c>;
17291729
defm V_MAXMIN_F32 : VOP3_Realtriple_gfx11<0x25e>;
17301730
defm V_MINMAX_F32 : VOP3_Realtriple_gfx11<0x25f>;
1731-
defm V_MAXMIN_F16 : VOP3_Realtriple_gfx11<0x260>;
1732-
defm V_MINMAX_F16 : VOP3_Realtriple_gfx11<0x261>;
1731+
defm V_MAXMIN_F16 : VOP3_Realtriple_t16_and_fake16_gfx11<0x260, "v_maxmin_f16">;
1732+
defm V_MINMAX_F16 : VOP3_Realtriple_t16_and_fake16_gfx11<0x261, "v_minmax_f16">;
17331733
defm V_MAXMIN_U32 : VOP3_Realtriple_gfx11_gfx12<0x262>;
17341734
defm V_MINMAX_U32 : VOP3_Realtriple_gfx11_gfx12<0x263>;
17351735
defm V_MAXMIN_I32 : VOP3_Realtriple_gfx11_gfx12<0x264>;

llvm/lib/Target/AMDGPU/VOPInstructions.td

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1905,6 +1905,12 @@ multiclass VOP3_Realtriple_t16_gfx11<bits<10> op, string asmName, string opName
19051905
string pseudo_mnemonic = "", bit isSingle = 0> :
19061906
VOP3_Realtriple_with_name<GFX11Gen, op, opName, asmName, pseudo_mnemonic, isSingle>;
19071907

1908+
multiclass VOP3_Realtriple_t16_and_fake16_gfx11<bits<10> op, string asmName, string opName = NAME,
1909+
string pseudo_mnemonic = "", bit isSingle = 0> {
1910+
defm _t16: VOP3_Realtriple_t16_gfx11<op, asmName, opName#"_t16", pseudo_mnemonic, isSingle>;
1911+
defm _fake16: VOP3_Realtriple_t16_gfx11<op, asmName, opName#"_fake16", pseudo_mnemonic, isSingle>;
1912+
}
1913+
19081914
multiclass VOP3Only_Realtriple_t16_gfx11<bits<10> op, string asmName,
19091915
string opName = NAME, string pseudo_mnemonic = "">
19101916
: VOP3_Realtriple_t16_gfx11<op, asmName, opName, pseudo_mnemonic, 1>;

llvm/test/MC/AMDGPU/gfx11_asm_vop3.s

Lines changed: 84 additions & 60 deletions
Original file line numberDiff line numberDiff line change
@@ -3572,50 +3572,62 @@ v_max_u16 v5.l, v255.l, v255.h
35723572
v_max_u16 v255.h, 0xfe0b, vcc_hi
35733573
// GFX11: v_max_u16 v255.h, 0xfe0b, vcc_hi op_sel:[0,0,1] ; encoding: [0xff,0x40,0x09,0xd7,0xff,0xd6,0x00,0x00,0x0b,0xfe,0x00,0x00]
35743574

3575-
v_maxmin_f16 v5, v1, v2, s3
3576-
// GFX11: v_maxmin_f16 v5, v1, v2, s3 ; encoding: [0x05,0x00,0x60,0xd6,0x01,0x05,0x0e,0x00]
3575+
v_maxmin_f16 v5.l, v1.l, v2.l, s3
3576+
// GFX11: v_maxmin_f16 v5.l, v1.l, v2.l, s3 ; encoding: [0x05,0x00,0x60,0xd6,0x01,0x05,0x0e,0x00]
35773577

3578-
v_maxmin_f16 v5, v255, s2, s105
3579-
// GFX11: v_maxmin_f16 v5, v255, s2, s105 ; encoding: [0x05,0x00,0x60,0xd6,0xff,0x05,0xa4,0x01]
3578+
v_maxmin_f16 v5.l, v255.l, s2, s105
3579+
// GFX11: v_maxmin_f16 v5.l, v255.l, s2, s105 ; encoding: [0x05,0x00,0x60,0xd6,0xff,0x05,0xa4,0x01]
35803580

3581-
v_maxmin_f16 v5, s1, v255, exec_hi
3582-
// GFX11: v_maxmin_f16 v5, s1, v255, exec_hi ; encoding: [0x05,0x00,0x60,0xd6,0x01,0xfe,0xff,0x01]
3581+
v_maxmin_f16 v5.l, s1, v255.l, exec_hi
3582+
// GFX11: v_maxmin_f16 v5.l, s1, v255.l, exec_hi ; encoding: [0x05,0x00,0x60,0xd6,0x01,0xfe,0xff,0x01]
35833583

3584-
v_maxmin_f16 v5, s105, s105, exec_lo
3585-
// GFX11: v_maxmin_f16 v5, s105, s105, exec_lo ; encoding: [0x05,0x00,0x60,0xd6,0x69,0xd2,0xf8,0x01]
3584+
v_maxmin_f16 v5.l, s105, s105, exec_lo
3585+
// GFX11: v_maxmin_f16 v5.l, s105, s105, exec_lo ; encoding: [0x05,0x00,0x60,0xd6,0x69,0xd2,0xf8,0x01]
35863586

3587-
v_maxmin_f16 v5, vcc_lo, ttmp15, v3
3588-
// GFX11: v_maxmin_f16 v5, vcc_lo, ttmp15, v3 ; encoding: [0x05,0x00,0x60,0xd6,0x6a,0xf6,0x0c,0x04]
3587+
v_maxmin_f16 v5.l, vcc_lo, ttmp15, v3.l
3588+
// GFX11: v_maxmin_f16 v5.l, vcc_lo, ttmp15, v3.l ; encoding: [0x05,0x00,0x60,0xd6,0x6a,0xf6,0x0c,0x04]
35893589

3590-
v_maxmin_f16 v5, vcc_hi, 0xfe0b, v255
3591-
// GFX11: v_maxmin_f16 v5, vcc_hi, 0xfe0b, v255 ; encoding: [0x05,0x00,0x60,0xd6,0x6b,0xfe,0xfd,0x07,0x0b,0xfe,0x00,0x00]
3590+
v_maxmin_f16 v5.l, vcc_hi, 0xfe0b, v255.l
3591+
// GFX11: v_maxmin_f16 v5.l, vcc_hi, 0xfe0b, v255.l ; encoding: [0x05,0x00,0x60,0xd6,0x6b,0xfe,0xfd,0x07,0x0b,0xfe,0x00,0x00]
35923592

3593-
v_maxmin_f16 v5, -|ttmp15|, -|src_scc|, -|ttmp15|
3594-
// GFX11: v_maxmin_f16 v5, -|ttmp15|, -|src_scc|, -|ttmp15| ; encoding: [0x05,0x07,0x60,0xd6,0x7b,0xfa,0xed,0xe1]
3593+
v_maxmin_f16 v5.l, -|ttmp15|, -|src_scc|, -|ttmp15|
3594+
// GFX11: v_maxmin_f16 v5.l, -|ttmp15|, -|src_scc|, -|ttmp15| ; encoding: [0x05,0x07,0x60,0xd6,0x7b,0xfa,0xed,0xe1]
35953595

3596-
v_maxmin_f16 v5, m0, 0.5, m0
3597-
// GFX11: v_maxmin_f16 v5, m0, 0.5, m0 ; encoding: [0x05,0x00,0x60,0xd6,0x7d,0xe0,0xf5,0x01]
3596+
v_maxmin_f16 v5.l, m0, 0.5, m0
3597+
// GFX11: v_maxmin_f16 v5.l, m0, 0.5, m0 ; encoding: [0x05,0x00,0x60,0xd6,0x7d,0xe0,0xf5,0x01]
35983598

3599-
v_maxmin_f16 v5, |exec_lo|, -1, vcc_hi
3600-
// GFX11: v_maxmin_f16 v5, |exec_lo|, -1, vcc_hi ; encoding: [0x05,0x01,0x60,0xd6,0x7e,0x82,0xad,0x01]
3599+
v_maxmin_f16 v5.l, |exec_lo|, -1, vcc_hi
3600+
// GFX11: v_maxmin_f16 v5.l, |exec_lo|, -1, vcc_hi ; encoding: [0x05,0x01,0x60,0xd6,0x7e,0x82,0xad,0x01]
36013601

3602-
v_maxmin_f16 v5, -|exec_hi|, null, -|vcc_lo|
3603-
// GFX11: v_maxmin_f16 v5, -|exec_hi|, null, -|vcc_lo| ; encoding: [0x05,0x05,0x60,0xd6,0x7f,0xf8,0xa8,0xa1]
3602+
v_maxmin_f16 v5.l, -|exec_hi|, null, -|vcc_lo|
3603+
// GFX11: v_maxmin_f16 v5.l, -|exec_hi|, null, -|vcc_lo| ; encoding: [0x05,0x05,0x60,0xd6,0x7f,0xf8,0xa8,0xa1]
36043604

3605-
v_maxmin_f16 v5, null, exec_lo, -|0xfe0b|
3606-
// GFX11: v_maxmin_f16 v5, null, exec_lo, -|0xfe0b| ; encoding: [0x05,0x04,0x60,0xd6,0x7c,0xfc,0xfc,0x83,0x0b,0xfe,0x00,0x00]
3605+
v_maxmin_f16 v5.l, null, exec_lo, -|0xfe0b|
3606+
// GFX11: v_maxmin_f16 v5.l, null, exec_lo, -|0xfe0b| ; encoding: [0x05,0x04,0x60,0xd6,0x7c,0xfc,0xfc,0x83,0x0b,0xfe,0x00,0x00]
36073607

3608-
v_maxmin_f16 v5, -1, -|exec_hi|, -|src_scc|
3609-
// GFX11: v_maxmin_f16 v5, -1, -|exec_hi|, -|src_scc| ; encoding: [0x05,0x06,0x60,0xd6,0xc1,0xfe,0xf4,0xc3]
3608+
v_maxmin_f16 v5.l, -1, -|exec_hi|, -|src_scc|
3609+
// GFX11: v_maxmin_f16 v5.l, -1, -|exec_hi|, -|src_scc| ; encoding: [0x05,0x06,0x60,0xd6,0xc1,0xfe,0xf4,0xc3]
36103610

3611-
v_maxmin_f16 v5, 0.5, -m0, 0.5 mul:2
3612-
// GFX11: v_maxmin_f16 v5, 0.5, -m0, 0.5 mul:2 ; encoding: [0x05,0x00,0x60,0xd6,0xf0,0xfa,0xc0,0x4b]
3611+
v_maxmin_f16 v5.l, 0.5, -m0, 0.5 mul:2
3612+
// GFX11: v_maxmin_f16 v5.l, 0.5, -m0, 0.5 mul:2 ; encoding: [0x05,0x00,0x60,0xd6,0xf0,0xfa,0xc0,0x4b]
36133613

3614-
v_maxmin_f16 v5, -src_scc, |vcc_lo|, -1 mul:4
3615-
// GFX11: v_maxmin_f16 v5, -src_scc, |vcc_lo|, -1 mul:4 ; encoding: [0x05,0x02,0x60,0xd6,0xfd,0xd4,0x04,0x33]
3614+
v_maxmin_f16 v5.l, -src_scc, |vcc_lo|, -1 mul:4
3615+
// GFX11: v_maxmin_f16 v5.l, -src_scc, |vcc_lo|, -1 mul:4 ; encoding: [0x05,0x02,0x60,0xd6,0xfd,0xd4,0x04,0x33]
36163616

3617-
v_maxmin_f16 v255, -|0xfe0b|, -|vcc_hi|, null clamp div:2
3618-
// GFX11: v_maxmin_f16 v255, -|0xfe0b|, -|vcc_hi|, null clamp div:2 ; encoding: [0xff,0x83,0x60,0xd6,0xff,0xd6,0xf0,0x79,0x0b,0xfe,0x00,0x00]
3617+
v_maxmin_f16 v255.l, -|0xfe0b|, -|vcc_hi|, null clamp div:2
3618+
// GFX11: v_maxmin_f16 v255.l, -|0xfe0b|, -|vcc_hi|, null clamp div:2 ; encoding: [0xff,0x83,0x60,0xd6,0xff,0xd6,0xf0,0x79,0x0b,0xfe,0x00,0x00]
3619+
3620+
v_maxmin_f16 v5.l, v255.h, s2, s105
3621+
// GFX11: [0x05,0x08,0x60,0xd6,0xff,0x05,0xa4,0x01]
3622+
3623+
v_maxmin_f16 v5.l, s1, v255.h, exec_hi
3624+
// GFX11: [0x05,0x10,0x60,0xd6,0x01,0xfe,0xff,0x01]
3625+
3626+
v_maxmin_f16 v5.l, vcc_hi, 0xfe0b, v255.h
3627+
// GFX11: [0x05,0x20,0x60,0xd6,0x6b,0xfe,0xfd,0x07,0x0b,0xfe,0x00,0x00]
3628+
3629+
v_maxmin_f16 v255.h, -|0xfe0b|, -|vcc_hi|, null clamp div:2
3630+
// GFX11: [0xff,0xc3,0x60,0xd6,0xff,0xd6,0xf0,0x79,0x0b,0xfe,0x00,0x00]
36193631

36203632
v_maxmin_f32 v5, v1, v2, s3
36213633
// GFX11: v_maxmin_f32 v5, v1, v2, s3 ; encoding: [0x05,0x00,0x5e,0xd6,0x01,0x05,0x0e,0x00]
@@ -4532,50 +4544,62 @@ v_min_u16 v5.l, v255.l, v255.h
45324544
v_min_u16 v255.h, 0xfe0b, vcc_hi
45334545
// GFX11: v_min_u16 v255.h, 0xfe0b, vcc_hi op_sel:[0,0,1] ; encoding: [0xff,0x40,0x0b,0xd7,0xff,0xd6,0x00,0x00,0x0b,0xfe,0x00,0x00]
45344546

4535-
v_minmax_f16 v5, v1, v2, s3
4536-
// GFX11: v_minmax_f16 v5, v1, v2, s3 ; encoding: [0x05,0x00,0x61,0xd6,0x01,0x05,0x0e,0x00]
4547+
v_minmax_f16 v5.l, v1.l, v2.l, s3
4548+
// GFX11: v_minmax_f16 v5.l, v1.l, v2.l, s3 ; encoding: [0x05,0x00,0x61,0xd6,0x01,0x05,0x0e,0x00]
4549+
4550+
v_minmax_f16 v5.l, v255.l, s2, s105
4551+
// GFX11: v_minmax_f16 v5.l, v255.l, s2, s105 ; encoding: [0x05,0x00,0x61,0xd6,0xff,0x05,0xa4,0x01]
4552+
4553+
v_minmax_f16 v5.l, s1, v255.l, exec_hi
4554+
// GFX11: v_minmax_f16 v5.l, s1, v255.l, exec_hi ; encoding: [0x05,0x00,0x61,0xd6,0x01,0xfe,0xff,0x01]
4555+
4556+
v_minmax_f16 v5.l, s105, s105, exec_lo
4557+
// GFX11: v_minmax_f16 v5.l, s105, s105, exec_lo ; encoding: [0x05,0x00,0x61,0xd6,0x69,0xd2,0xf8,0x01]
4558+
4559+
v_minmax_f16 v5.l, vcc_lo, ttmp15, v3.l
4560+
// GFX11: v_minmax_f16 v5.l, vcc_lo, ttmp15, v3.l ; encoding: [0x05,0x00,0x61,0xd6,0x6a,0xf6,0x0c,0x04]
45374561

4538-
v_minmax_f16 v5, v255, s2, s105
4539-
// GFX11: v_minmax_f16 v5, v255, s2, s105 ; encoding: [0x05,0x00,0x61,0xd6,0xff,0x05,0xa4,0x01]
4562+
v_minmax_f16 v5.l, vcc_hi, 0xfe0b, v255.l
4563+
// GFX11: v_minmax_f16 v5.l, vcc_hi, 0xfe0b, v255.l ; encoding: [0x05,0x00,0x61,0xd6,0x6b,0xfe,0xfd,0x07,0x0b,0xfe,0x00,0x00]
45404564

4541-
v_minmax_f16 v5, s1, v255, exec_hi
4542-
// GFX11: v_minmax_f16 v5, s1, v255, exec_hi ; encoding: [0x05,0x00,0x61,0xd6,0x01,0xfe,0xff,0x01]
4565+
v_minmax_f16 v5.l, -|ttmp15|, -|src_scc|, -|ttmp15|
4566+
// GFX11: v_minmax_f16 v5.l, -|ttmp15|, -|src_scc|, -|ttmp15| ; encoding: [0x05,0x07,0x61,0xd6,0x7b,0xfa,0xed,0xe1]
45434567

4544-
v_minmax_f16 v5, s105, s105, exec_lo
4545-
// GFX11: v_minmax_f16 v5, s105, s105, exec_lo ; encoding: [0x05,0x00,0x61,0xd6,0x69,0xd2,0xf8,0x01]
4568+
v_minmax_f16 v5.l, m0, 0.5, m0
4569+
// GFX11: v_minmax_f16 v5.l, m0, 0.5, m0 ; encoding: [0x05,0x00,0x61,0xd6,0x7d,0xe0,0xf5,0x01]
45464570

4547-
v_minmax_f16 v5, vcc_lo, ttmp15, v3
4548-
// GFX11: v_minmax_f16 v5, vcc_lo, ttmp15, v3 ; encoding: [0x05,0x00,0x61,0xd6,0x6a,0xf6,0x0c,0x04]
4571+
v_minmax_f16 v5.l, |exec_lo|, -1, vcc_hi
4572+
// GFX11: v_minmax_f16 v5.l, |exec_lo|, -1, vcc_hi ; encoding: [0x05,0x01,0x61,0xd6,0x7e,0x82,0xad,0x01]
45494573

4550-
v_minmax_f16 v5, vcc_hi, 0xfe0b, v255
4551-
// GFX11: v_minmax_f16 v5, vcc_hi, 0xfe0b, v255 ; encoding: [0x05,0x00,0x61,0xd6,0x6b,0xfe,0xfd,0x07,0x0b,0xfe,0x00,0x00]
4574+
v_minmax_f16 v5.l, -|exec_hi|, null, -|vcc_lo|
4575+
// GFX11: v_minmax_f16 v5.l, -|exec_hi|, null, -|vcc_lo| ; encoding: [0x05,0x05,0x61,0xd6,0x7f,0xf8,0xa8,0xa1]
45524576

4553-
v_minmax_f16 v5, -|ttmp15|, -|src_scc|, -|ttmp15|
4554-
// GFX11: v_minmax_f16 v5, -|ttmp15|, -|src_scc|, -|ttmp15| ; encoding: [0x05,0x07,0x61,0xd6,0x7b,0xfa,0xed,0xe1]
4577+
v_minmax_f16 v5.l, null, exec_lo, -|0xfe0b|
4578+
// GFX11: v_minmax_f16 v5.l, null, exec_lo, -|0xfe0b| ; encoding: [0x05,0x04,0x61,0xd6,0x7c,0xfc,0xfc,0x83,0x0b,0xfe,0x00,0x00]
45554579

4556-
v_minmax_f16 v5, m0, 0.5, m0
4557-
// GFX11: v_minmax_f16 v5, m0, 0.5, m0 ; encoding: [0x05,0x00,0x61,0xd6,0x7d,0xe0,0xf5,0x01]
4580+
v_minmax_f16 v5.l, -1, -|exec_hi|, -|src_scc|
4581+
// GFX11: v_minmax_f16 v5.l, -1, -|exec_hi|, -|src_scc| ; encoding: [0x05,0x06,0x61,0xd6,0xc1,0xfe,0xf4,0xc3]
45584582

4559-
v_minmax_f16 v5, |exec_lo|, -1, vcc_hi
4560-
// GFX11: v_minmax_f16 v5, |exec_lo|, -1, vcc_hi ; encoding: [0x05,0x01,0x61,0xd6,0x7e,0x82,0xad,0x01]
4583+
v_minmax_f16 v5.l, 0.5, -m0, 0.5 mul:2
4584+
// GFX11: v_minmax_f16 v5.l, 0.5, -m0, 0.5 mul:2 ; encoding: [0x05,0x00,0x61,0xd6,0xf0,0xfa,0xc0,0x4b]
45614585

4562-
v_minmax_f16 v5, -|exec_hi|, null, -|vcc_lo|
4563-
// GFX11: v_minmax_f16 v5, -|exec_hi|, null, -|vcc_lo| ; encoding: [0x05,0x05,0x61,0xd6,0x7f,0xf8,0xa8,0xa1]
4586+
v_minmax_f16 v5.l, -src_scc, |vcc_lo|, -1 mul:4
4587+
// GFX11: v_minmax_f16 v5.l, -src_scc, |vcc_lo|, -1 mul:4 ; encoding: [0x05,0x02,0x61,0xd6,0xfd,0xd4,0x04,0x33]
45644588

4565-
v_minmax_f16 v5, null, exec_lo, -|0xfe0b|
4566-
// GFX11: v_minmax_f16 v5, null, exec_lo, -|0xfe0b| ; encoding: [0x05,0x04,0x61,0xd6,0x7c,0xfc,0xfc,0x83,0x0b,0xfe,0x00,0x00]
4589+
v_minmax_f16 v255.l, -|0xfe0b|, -|vcc_hi|, null clamp div:2
4590+
// GFX11: v_minmax_f16 v255.l, -|0xfe0b|, -|vcc_hi|, null clamp div:2 ; encoding: [0xff,0x83,0x61,0xd6,0xff,0xd6,0xf0,0x79,0x0b,0xfe,0x00,0x00]
45674591

4568-
v_minmax_f16 v5, -1, -|exec_hi|, -|src_scc|
4569-
// GFX11: v_minmax_f16 v5, -1, -|exec_hi|, -|src_scc| ; encoding: [0x05,0x06,0x61,0xd6,0xc1,0xfe,0xf4,0xc3]
4592+
v_minmax_f16 v5.l, v255.h, s2, s105
4593+
// GFX11: [0x05,0x08,0x61,0xd6,0xff,0x05,0xa4,0x01]
45704594

4571-
v_minmax_f16 v5, 0.5, -m0, 0.5 mul:2
4572-
// GFX11: v_minmax_f16 v5, 0.5, -m0, 0.5 mul:2 ; encoding: [0x05,0x00,0x61,0xd6,0xf0,0xfa,0xc0,0x4b]
4595+
v_minmax_f16 v5.l, s1, v255.h, exec_hi
4596+
// GFX11: [0x05,0x10,0x61,0xd6,0x01,0xfe,0xff,0x01]
45734597

4574-
v_minmax_f16 v5, -src_scc, |vcc_lo|, -1 mul:4
4575-
// GFX11: v_minmax_f16 v5, -src_scc, |vcc_lo|, -1 mul:4 ; encoding: [0x05,0x02,0x61,0xd6,0xfd,0xd4,0x04,0x33]
4598+
v_minmax_f16 v5.l, vcc_hi, 0xfe0b, v255.h
4599+
// GFX11: [0x05,0x20,0x61,0xd6,0x6b,0xfe,0xfd,0x07,0x0b,0xfe,0x00,0x00]
45764600

4577-
v_minmax_f16 v255, -|0xfe0b|, -|vcc_hi|, null clamp div:2
4578-
// GFX11: v_minmax_f16 v255, -|0xfe0b|, -|vcc_hi|, null clamp div:2 ; encoding: [0xff,0x83,0x61,0xd6,0xff,0xd6,0xf0,0x79,0x0b,0xfe,0x00,0x00]
4601+
v_minmax_f16 v255.h, -|0xfe0b|, -|vcc_hi|, null clamp div:2
4602+
// GFX11: [0xff,0xc3,0x61,0xd6,0xff,0xd6,0xf0,0x79,0x0b,0xfe,0x00,0x00]
45794603

45804604
v_minmax_f32 v5, v1, v2, s3
45814605
// GFX11: v_minmax_f32 v5, v1, v2, s3 ; encoding: [0x05,0x00,0x5f,0xd6,0x01,0x05,0x0e,0x00]

0 commit comments

Comments
 (0)