From: Marcin Ĺšlusarz Date: Thu, 29 Sep 2022 14:47:32 +0000 (+0200) Subject: intel/compiler: fix loading of draw_id from task & mesh payload X-Git-Tag: upstream/22.3.5~2138 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=9bac88856d475fa2a8a0c233a1555162aa411ba8;p=platform%2Fupstream%2Fmesa.git intel/compiler: fix loading of draw_id from task & mesh payload Previously both destination and source were floats, so no casting was performed, but with 7664c85b1da source register was reinterpreted as unsigned integer, so MOV started casting that integer to float. Fixes: 7664c85b1da ("intel/compiler: Create and use struct for TASK and MESH thread payloads") Reviewed-by: Caio Oliveira Part-of: --- diff --git a/src/intel/compiler/brw_mesh.cpp b/src/intel/compiler/brw_mesh.cpp index f4aaa5b..dfae5ce 100644 --- a/src/intel/compiler/brw_mesh.cpp +++ b/src/intel/compiler/brw_mesh.cpp @@ -1260,6 +1260,7 @@ fs_visitor::nir_emit_task_mesh_intrinsic(const fs_builder &bld, } case nir_intrinsic_load_draw_id: + dest = retype(dest, BRW_REGISTER_TYPE_UD); bld.MOV(dest, payload.extended_parameter_0); break;