diff --git a/src/intel/compiler/brw_fs.cpp b/src/intel/compiler/brw_fs.cpp index cc8d49d0fe9..240a53b9fee 100644 --- a/src/intel/compiler/brw_fs.cpp +++ b/src/intel/compiler/brw_fs.cpp @@ -10328,7 +10328,7 @@ brw_bsr(const struct intel_device_info *devinfo, assert(local_arg_offset % 8 == 0); return offset | - SET_BITS(simd_size > 8, 4, 4) | + SET_BITS(simd_size == 8, 4, 4) | SET_BITS(local_arg_offset / 8, 2, 0); } diff --git a/src/intel/genxml/gen_rt.xml b/src/intel/genxml/gen_rt.xml index 8ef0ae3c36c..757ab6afff6 100644 --- a/src/intel/genxml/gen_rt.xml +++ b/src/intel/genxml/gen_rt.xml @@ -3,8 +3,8 @@ - - + + diff --git a/src/intel/vulkan/anv_private.h b/src/intel/vulkan/anv_private.h index 4b42e1444b7..75f3ec2de03 100644 --- a/src/intel/vulkan/anv_private.h +++ b/src/intel/vulkan/anv_private.h @@ -3442,7 +3442,8 @@ anv_shader_bin_unref(struct anv_device *device, struct anv_shader_bin *shader) \ (struct GFX_BINDLESS_SHADER_RECORD) { \ .OffsetToLocalArguments = (local_arg_offset) / 8, \ - .BindlessShaderDispatchMode = prog_data->simd_size / 16, \ + .BindlessShaderDispatchMode = \ + prog_data->simd_size == 16 ? RT_SIMD16 : RT_SIMD8, \ .KernelStartPointer = bin->kernel.offset, \ }; \ })