r600/sfn: Handle shifts on Cayman

Fixes: 00599f6e71
  r600/sfn: Schedule shift instruction on R600 in t-slot

Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18619>
(cherry picked from commit 260cddf9ec)
This commit is contained in:
Gert Wollny
2022-09-15 17:50:45 +02:00
committed by Dylan Baker
parent 409f2d2558
commit 231bf2950e
2 changed files with 4 additions and 1 deletions

View File

@@ -5161,7 +5161,7 @@
"description": "r600/sfn: Handle shifts on Cayman",
"nominated": true,
"nomination_type": 1,
"resolution": 0,
"resolution": 1,
"main_sha": null,
"because_sha": "00599f6e7161065c51812174ca18427b9867f63f"
},

View File

@@ -1223,6 +1223,9 @@ bool AluInstr::from_nir(nir_alu_instr *alu, Shader& shader)
case nir_op_umul_high: return emit_alu_trans_op2_cayman(*alu, op2_mulhi_uint, shader);
case nir_op_f2u32: return emit_alu_op1(*alu, op1_flt_to_uint, shader);
case nir_op_f2i32: return emit_alu_op1(*alu, op1_flt_to_int, shader);
case nir_op_ishl: return emit_alu_op2_int(*alu, op2_lshl_int, shader);
case nir_op_ishr: return emit_alu_op2_int(*alu, op2_ashr_int, shader);
case nir_op_ushr: return emit_alu_op2_int(*alu, op2_lshr_int, shader);
default:
;
}