mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2025-12-24 19:40:10 +01:00
intel/compiler/mesh: fix position of output URB handle for xe2
Reviewed-by: Caio Oliveira <caio.oliveira@intel.com> Reviewed-by: Kenneth Graunke <kenneth@whitecape.org> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25195>
This commit is contained in:
parent
7f3dc4505d
commit
ee4214de6e
1 changed files with 10 additions and 6 deletions
|
|
@ -439,12 +439,16 @@ task_mesh_thread_payload::task_mesh_thread_payload(const fs_visitor &v)
|
|||
assert(subgroup_id_.file != BAD_FILE);
|
||||
extended_parameter_0 = retype(brw_vec1_grf(0, 3), BRW_REGISTER_TYPE_UD);
|
||||
|
||||
urb_output = v.bld.vgrf(BRW_REGISTER_TYPE_UD);
|
||||
/* In both mesh and task shader payload, lower 16 bits of g0.6 is
|
||||
* an offset within Slice's Local URB, which says where shader is
|
||||
* supposed to output its data.
|
||||
*/
|
||||
v.bld.AND(urb_output, brw_ud1_grf(0, 6), brw_imm_ud(0xFFFF));
|
||||
if (v.devinfo->ver >= 20) {
|
||||
urb_output = brw_ud1_grf(1, 0);
|
||||
} else {
|
||||
urb_output = v.bld.vgrf(BRW_REGISTER_TYPE_UD);
|
||||
/* In both mesh and task shader payload, lower 16 bits of g0.6 is
|
||||
* an offset within Slice's Local URB, which says where shader is
|
||||
* supposed to output its data.
|
||||
*/
|
||||
v.bld.AND(urb_output, brw_ud1_grf(0, 6), brw_imm_ud(0xFFFF));
|
||||
}
|
||||
|
||||
if (v.stage == MESA_SHADER_MESH) {
|
||||
/* g0.7 is Task Shader URB Entry Offset, which contains both an offset
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue