[Piglit] [PATCH 14/14] Test that gl_in may be redeclared with an array size.

Paul Berry stereotype441 at gmail.com
Tue Oct 8 13:59:52 PDT 2013


On 8 October 2013 12:17, Jordan Justen <jljusten at gmail.com> wrote:

> Series Reviewed-by: Jordan Justen <jordan.l.justen at intel.com>
>
> I thought I might see a positive .geom with *both* per-vertex in &
> out. Too trivial?
>

That's a good idea.  I'll do that as a follow-up.


>
> On Wed, Oct 2, 2013 at 4:45 PM, Paul Berry <stereotype441 at gmail.com>
> wrote:
> > ---
> >  ...gs-redeclares-pervertex-in-with-array-size.geom | 45
> ++++++++++++++++++++++
> >  1 file changed, 45 insertions(+)
> >  create mode 100644
> tests/spec/glsl-1.50/compiler/gs-redeclares-pervertex-in-with-array-size.geom
> >
> > diff --git
> a/tests/spec/glsl-1.50/compiler/gs-redeclares-pervertex-in-with-array-size.geom
> b/tests/spec/glsl-1.50/compiler/gs-redeclares-pervertex-in-with-array-size.geom
> > new file mode 100644
> > index 0000000..f408c62
> > --- /dev/null
> > +++
> b/tests/spec/glsl-1.50/compiler/gs-redeclares-pervertex-in-with-array-size.geom
> > @@ -0,0 +1,45 @@
> > +// [config]
> > +// expect_result: pass
> > +// glsl_version: 1.50
> > +// check_link: false
> > +// [end config]
> > +//
> > +// From section 7.1.1 (Compatibility Profile Built-In Language
> > +// Variables) of the GLSL 4.10 spec:
> > +//
> > +//     However, when a built-in interface block with an instance name
> > +//     is redeclared (e.g., gl_in), the instance name must be included
> > +//     in the redeclaration. It is an error to not include the
> > +//     built-in instance name or to change its name.  For example,
> > +//
> > +//     in gl_PerVertex {
> > +//         vec4  gl_ClipVertex;
> > +//         vec4  gl_FrontColor;
> > +//     } gl_in[];  // must be present and must be "gl_in[]"
> > +//
> > +// Although the example mentions "gl_in[]", it seems reasonable to
> > +// assume that specifying an array size (e.g. "gl_in[3]") is also
> > +// allowed (this is confirmed by tests of the NVIDIA proprietary
> > +// driver for Linux, version 313.18).
> > +//
> > +// Note: although this text appears in a section referring to
> > +// compatibility profile variables, it's clear from context that it's
> > +// meant to apply to any redeclaration of gl_in, whether it is done in
> > +// a compatibility or a core profile.
> > +//
> > +// This appears to be a clarification to the behaviour established for
> > +// gl_PerVertex by GLSL 1.50, therefore we test it using GLSL version
> > +// 1.50.
> > +
> > +#version 150
> > +
> > +layout(triangles) in;
> > +layout(triangle_strip, max_vertices = 3) out;
> > +
> > +in gl_PerVertex {
> > +  vec4 gl_Position;
> > +} gl_in[3];
> > +
> > +void main()
> > +{
> > +}
> > --
> > 1.8.4
> >
> > _______________________________________________
> > Piglit mailing list
> > Piglit at lists.freedesktop.org
> > http://lists.freedesktop.org/mailman/listinfo/piglit
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freedesktop.org/archives/piglit/attachments/20131008/5202b1ed/attachment.html>


More information about the Piglit mailing list