nir: don't add bindless variables to num_textures and num_images
authorMarek Olšák <marek.olsak@amd.com>
Wed, 18 Sep 2019 19:19:29 +0000 (15:19 -0400)
committerMarek Olšák <marek.olsak@amd.com>
Mon, 23 Sep 2019 19:34:05 +0000 (15:34 -0400)
It confuses radeonsi.

Reviewed-by: Connor Abbott <cwabbott0@gmail.com>
src/compiler/nir/nir_gather_info.c

index b6e6b0afd1f2da62c23445645302d6db8fef8778..1e25114987207e044cfc7b218645cd4122275d6e 100644 (file)
@@ -361,6 +361,10 @@ nir_shader_gather_info(nir_shader *shader, nir_function_impl *entrypoint)
    shader->info.num_textures = 0;
    shader->info.num_images = 0;
    nir_foreach_variable(var, &shader->uniforms) {
+      /* Bindless textures and images don't use non-bindless slots. */
+      if (var->data.bindless)
+         continue;
+
       shader->info.num_textures += glsl_type_get_sampler_count(var->type);
       shader->info.num_images += glsl_type_get_image_count(var->type);
    }