I'm putting the finishing touches on a patch series for Mesa that allows for redeclaration of the gl_PerVertex interface block. This series contains the tests I used to validate my Mesa work.
The GLSL 1.50 spec doesn't directly address how to redeclare elements of the gl_PerVertex interface block, but the GLSL 4.10 spec does. It seems pretty clear that the rules in the GLSL 4.10 spec were intended as a clarification, rather than a behavioural change, so I've based my tests on the GLSL 4.10 spec, but applied them to GLSL 1.50. A few patches don't relate directly to redeclaration of gl_PerVertex, but rather cover Mesa bugs I discovered while working on interface block redeclaration. Patches 1 and 2 test some previously untested uses of identifiers to make sure that they can't begin with the "gl_" prefix. Patches 4 and 5 test some things that should be prohibited in general for interface blocks, such as redeclaring an existing interface block, or declaring an interface block that conflicts with a global variable. The remaining patches are specific to redeclaration of gl_PerVertex. [PATCH 01/14] Test that struct names may not begin with "gl_" prefix. [PATCH 02/14] Test illegal usages of "gl_" prefix in interface blocks. [PATCH 03/14] Test that redeclaration of gl_PerVertex must be for a subset. [PATCH 04/14] Test that interface blocks cannot declare conflicting names. [PATCH 05/14] Test that in general, interface blocks cannot be redeclared. [PATCH 06/14] Test that the built-in gl_PerVertex interface block can be redeclared. [PATCH 07/14] Test that gl_PerVertex can't be redeclared after it's been used. [PATCH 08/14] Test that gl_PerVertex can't be redeclared multiple times in one shader. [PATCH 09/14] Test that after redeclaration, absent members of gl_PerVertex can't be used. [PATCH 10/14] Test that builtins can't be redeclared both inside and outside gl_PerVertex. [PATCH 11/14] Test inter- and intra-stage gl_PerVertex matching rules. [PATCH 12/14] Verify array-ness and instance name of gl_PerVertex redeclarations. [PATCH 13/14] Verify that gl_PerVertex can't be redeclared in certain shader types. [PATCH 14/14] Test that gl_in may be redeclared with an array size. _______________________________________________ Piglit mailing list [email protected] http://lists.freedesktop.org/mailman/listinfo/piglit
