mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2025-12-25 06:30:10 +01:00
aco: new 16bit VOP3 opcodes can use opsel
No Foz-DB changes on gfx11. Reviewed-by: Rhys Perry <pendingchaos02@gmail.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20705>
This commit is contained in:
parent
e8091a6593
commit
281a505ef0
1 changed files with 6 additions and 0 deletions
|
|
@ -444,6 +444,8 @@ can_use_opsel(amd_gfx_level gfx_level, aco_opcode op, int idx)
|
|||
case aco_opcode::v_max3_f16:
|
||||
case aco_opcode::v_max3_i16:
|
||||
case aco_opcode::v_max3_u16:
|
||||
case aco_opcode::v_minmax_f16:
|
||||
case aco_opcode::v_maxmin_f16:
|
||||
case aco_opcode::v_max_u16_e64:
|
||||
case aco_opcode::v_max_i16_e64:
|
||||
case aco_opcode::v_min_u16_e64:
|
||||
|
|
@ -455,6 +457,9 @@ can_use_opsel(amd_gfx_level gfx_level, aco_opcode op, int idx)
|
|||
case aco_opcode::v_lshlrev_b16_e64:
|
||||
case aco_opcode::v_lshrrev_b16_e64:
|
||||
case aco_opcode::v_ashrrev_i16_e64:
|
||||
case aco_opcode::v_and_b16:
|
||||
case aco_opcode::v_or_b16:
|
||||
case aco_opcode::v_xor_b16:
|
||||
case aco_opcode::v_mul_lo_u16_e64: return true;
|
||||
case aco_opcode::v_pack_b32_f16:
|
||||
case aco_opcode::v_cvt_pknorm_i16_f16:
|
||||
|
|
@ -463,6 +468,7 @@ can_use_opsel(amd_gfx_level gfx_level, aco_opcode op, int idx)
|
|||
case aco_opcode::v_mad_i32_i16: return idx >= 0 && idx < 2;
|
||||
case aco_opcode::v_dot2_f16_f16:
|
||||
case aco_opcode::v_dot2_bf16_bf16: return idx == -1 || idx == 2;
|
||||
case aco_opcode::v_cndmask_b16: return idx != 2;
|
||||
case aco_opcode::v_interp_p10_f16_f32_inreg:
|
||||
case aco_opcode::v_interp_p10_rtz_f16_f32_inreg: return idx == 0 || idx == 2;
|
||||
case aco_opcode::v_interp_p2_f16_f32_inreg:
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue