[Piglit] [PATCH 2/2] Add compiler tests for overlapping attribute locations
Anuj Phogat
anuj.phogat at gmail.com
Fri May 16 16:08:04 PDT 2014
These patches are getting very old. I'll soon push them upstream unless
I hear otherwise.
On Mon, Mar 10, 2014 at 11:38 AM, Anuj Phogat <anuj.phogat at gmail.com> wrote:
> Signed-off-by: Anuj Phogat <anuj.phogat at gmail.com>
> ---
> .../compiler/overlapping-attrib-locations-1.vert | 28 ++++++++++++++++++++++
> .../compiler/overlapping-attrib-locations-2.vert | 28 ++++++++++++++++++++++
> 2 files changed, 56 insertions(+)
> create mode 100644 tests/spec/arb_explicit_attrib_location/1.10/compiler/overlapping-attrib-locations-1.vert
> create mode 100644 tests/spec/arb_explicit_attrib_location/1.10/compiler/overlapping-attrib-locations-2.vert
>
> diff --git a/tests/spec/arb_explicit_attrib_location/1.10/compiler/overlapping-attrib-locations-1.vert b/tests/spec/arb_explicit_attrib_location/1.10/compiler/overlapping-attrib-locations-1.vert
> new file mode 100644
> index 0000000..af3b8ae
> --- /dev/null
> +++ b/tests/spec/arb_explicit_attrib_location/1.10/compiler/overlapping-attrib-locations-1.vert
> @@ -0,0 +1,28 @@
> +// [config]
> +// expect_result: pass
> +// glsl_version: 1.10
> +// check_link: true
> +// [end config]
> +//
> +// Binding more than one attribute name to the same location is referred
> +// to as aliasing. It is allowed only on vertex shader input variables
> +// in OpenGL (2.0 and above). Check that vertex shader compiles and links
> +// successfully in case of overlapping input attribute locations. This
> +// shader uses attributes of same size with same locations.
> +
> +#version 110
> +#extension GL_ARB_explicit_attrib_location : require
> +
> +layout(location=0) in vec4 p0;
> +layout(location=0) in vec4 p1;
> +uniform int x;
> +
> +void main()
> +{
> + if (x == 0)
> + gl_Position = p0;
> + else if (x == 1)
> + gl_Position = p1;
> + else
> + gl_Position = vec4(0.0);
> +}
> diff --git a/tests/spec/arb_explicit_attrib_location/1.10/compiler/overlapping-attrib-locations-2.vert b/tests/spec/arb_explicit_attrib_location/1.10/compiler/overlapping-attrib-locations-2.vert
> new file mode 100644
> index 0000000..81af940
> --- /dev/null
> +++ b/tests/spec/arb_explicit_attrib_location/1.10/compiler/overlapping-attrib-locations-2.vert
> @@ -0,0 +1,28 @@
> +// [config]
> +// expect_result: pass
> +// glsl_version: 1.10
> +// check_link: true
> +// [end config]
> +//
> +// Binding more than one attribute name to the same location is referred
> +// to as aliasing. It is allowed only on vertex shader input variables
> +// in OpenGL (2.0 and above). Check that vertex shader compiles and links
> +// successfully in case of overlapping input attribute locations. This
> +// shader uses attributes of different sizes with overlapping locations.
> +
> +#version 110
> +#extension GL_ARB_explicit_attrib_location : require
> +
> +layout(location=0) in mat4 mat;
> +layout(location=3) in vec4 p;
> +uniform int x;
> +
> +void main()
> +{
> + if (x == 0)
> + gl_Position = mat * vec4(1.0);
> + else if (x == 1)
> + gl_Position = p;
> + else
> + gl_Position = vec4(0.0);
> +}
> --
> 1.8.3.1
>
More information about the Piglit
mailing list