Module: Mesa Branch: master Commit: d7cbe795edefb616c2df9d3bda0a2dc80a2c3405 URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=d7cbe795edefb616c2df9d3bda0a2dc80a2c3405
Author: Timothy Arceri <tarc...@itsqueeze.com> Date: Mon Feb 19 08:44:50 2018 +1100 radeonsi/nir: set uses_bindless_images for images V2: add missing intrinsics (Spotted-by: Samuel Pitoiset) Reviewed-by: Marek Olšák <marek.ol...@amd.com> --- src/gallium/drivers/radeonsi/si_shader_nir.c | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) diff --git a/src/gallium/drivers/radeonsi/si_shader_nir.c b/src/gallium/drivers/radeonsi/si_shader_nir.c index 80c436247c..45cbf1ce7f 100644 --- a/src/gallium/drivers/radeonsi/si_shader_nir.c +++ b/src/gallium/drivers/radeonsi/si_shader_nir.c @@ -124,6 +124,15 @@ static void scan_instruction(struct tgsi_shader_info *info, case nir_intrinsic_load_tess_level_outer: info->reads_tess_factors = true; break; + case nir_intrinsic_image_var_load: + case nir_intrinsic_image_var_size: + case nir_intrinsic_image_var_samples: { + nir_variable *var = intr->variables[0]->var; + if (var->data.bindless) + info->uses_bindless_images = true; + + break; + } case nir_intrinsic_image_var_store: case nir_intrinsic_image_var_atomic_add: case nir_intrinsic_image_var_atomic_min: @@ -132,7 +141,13 @@ static void scan_instruction(struct tgsi_shader_info *info, case nir_intrinsic_image_var_atomic_or: case nir_intrinsic_image_var_atomic_xor: case nir_intrinsic_image_var_atomic_exchange: - case nir_intrinsic_image_var_atomic_comp_swap: + case nir_intrinsic_image_var_atomic_comp_swap: { + nir_variable *var = intr->variables[0]->var; + if (var->data.bindless) + info->uses_bindless_images = true; + + /* fall-through */ + } case nir_intrinsic_store_ssbo: case nir_intrinsic_ssbo_atomic_add: case nir_intrinsic_ssbo_atomic_imin: _______________________________________________ mesa-commit mailing list mesa-commit@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-commit