From c9f4bda6ce52685cc835530d23348c69adfd89be Mon Sep 17 00:00:00 2001 From: Caio Marcelo de Oliveira Filho Date: Thu, 21 May 2020 02:34:52 -0700 Subject: [PATCH] iris: Set CS KernelStatePointer at dispatch There's an update for INTERFACE_DESCRIPTOR_DATA at dispatch, so we can just move the KSP assignment there. This flexibility will later allow variable group size to pick the right SIMD variant. Reviewed-by: Jason Ekstrand Part-of: --- src/gallium/drivers/iris/iris_state.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/gallium/drivers/iris/iris_state.c b/src/gallium/drivers/iris/iris_state.c index fd44d7046e0..82438afb05b 100644 --- a/src/gallium/drivers/iris/iris_state.c +++ b/src/gallium/drivers/iris/iris_state.c @@ -4375,7 +4375,6 @@ iris_store_cs_state(struct iris_context *ice, void *map = shader->derived_data; iris_pack_state(GENX(INTERFACE_DESCRIPTOR_DATA), map, desc) { - desc.KernelStartPointer = KSP(shader); desc.ConstantURBEntryReadLength = cs_prog_data->push.per_thread.regs; desc.SharedLocalMemorySize = encode_slm_size(GEN_GEN, prog_data->total_shared); @@ -6604,6 +6603,7 @@ iris_upload_compute_state(struct iris_context *ice, uint32_t desc[GENX(INTERFACE_DESCRIPTOR_DATA_length)]; iris_pack_state(GENX(INTERFACE_DESCRIPTOR_DATA), desc, idd) { + idd.KernelStartPointer = KSP(shader); idd.SamplerStatePointer = shs->sampler_table.offset; idd.BindingTablePointer = binder->bt_offset[MESA_SHADER_COMPUTE]; idd.NumberofThreadsinGPGPUThreadGroup = threads; -- 2.30.2