[Mesa-dev] [PATCH 14/18] glsl: Don't include the array index.

Ilia Mirkin imirkin at alum.mit.edu
Mon Aug 1 22:40:30 UTC 2016


Fwiw I remember having trouble finding justification for the comments in
that issue, and iirc the opposite seemed to be indicated by the spec text.
(E.g.that array indices should be maintained.) I suspect there are also AoA
interactions.

I guess my point here is to double check this, as well as what other
drivers do in this and similar situations.

On Aug 1, 2016 12:31 PM, "Kenneth Graunke" <kenneth at whitecape.org> wrote:

Issue 16 of the ARB_program_interface_query spec gives an example:

      For example, in the following code:

        uniform Block1 {
          int member1;
        };
        uniform Block2 {
          int member2;
        } instance2;
        uniform Block3 {
          int member3;
        } instance3[2];  // uses two separate buffer bindings

      the three uniforms (if active) are enumerated as "member1",
      "Block2.member2", and "Block3.member3".

>From this it's pretty clear that the array index should not be included.

Cc: mesa-stable at lists.freedesktop.org
Signed-off-by: Kenneth Graunke <kenneth at whitecape.org>
---
 src/compiler/glsl/linker.cpp | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/src/compiler/glsl/linker.cpp b/src/compiler/glsl/linker.cpp
index 6d45a02..bf11cb4 100644
--- a/src/compiler/glsl/linker.cpp
+++ b/src/compiler/glsl/linker.cpp
@@ -3800,7 +3800,8 @@ add_shader_variable(struct gl_shader_program *shProg,
unsigned stage_mask,
        */
       const char *prefixed_name = (var->data.from_named_ifc_block &&
                                    !is_gl_identifier(var->name))
-         ? ralloc_asprintf(shProg, "%s.%s",
var->get_interface_type()->name,
+         ? ralloc_asprintf(shProg, "%s.%s",
+
 var->get_interface_type()->without_array()->name,
                            name)
          : name;

--
2.9.2

_______________________________________________
mesa-dev mailing list
mesa-dev at lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-dev
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/mesa-dev/attachments/20160801/e5a4721a/attachment.html>


More information about the mesa-dev mailing list