radeonsi/nir: Remove hack for builtins
authorConnor Abbott <cwabbott0@gmail.com>
Wed, 29 May 2019 14:03:25 +0000 (16:03 +0200)
committerConnor Abbott <cwabbott0@gmail.com>
Fri, 31 May 2019 09:03:05 +0000 (11:03 +0200)
We now bounds check properly in the uniform loading fast path, so
there's no need to disable it by pretending there are other UBO bindings
in use. The way this looks at the variable name was causing problems
when two piglit shaders, one with a name that triggered the hack and one
that didn't, got hashed to the same thing after stripping out the names.

Reviewed-by: Timothy Arceri <tarceri@itsqueeze.com>
src/gallium/drivers/radeonsi/si_shader_nir.c

index 3a5e17c6b29bf730b2a73d2541eba8da182d3164..19ed71ae05db88f0fcc9195d73ad26240e903a76 100644 (file)
@@ -779,17 +779,8 @@ void si_nir_scan_shader(const struct nir_shader *nir,
                                        u_bit_consecutive(variable->data.binding, aoa_size);
                        }
                } else if (base_type != GLSL_TYPE_ATOMIC_UINT) {
-                       if (strncmp(variable->name, "state.", 6) == 0 ||
-                           strncmp(variable->name, "gl_", 3) == 0) {
-                               /* FIXME: figure out why piglit tests with builtin
-                                * uniforms are failing without this.
-                                */
-                               info->const_buffers_declared =
-                                       u_bit_consecutive(0, SI_NUM_CONST_BUFFERS);
-                       } else {
-                               info->const_buffers_declared |= 1;
-                               info->const_file_max[0] = max_slot;
-                       }
+                       info->const_buffers_declared |= 1;
+                       info->const_file_max[0] = max_slot;
                }
        }