Re: [Piglit] [PATCH] sso: Add compile tests for the location layout qualifier
On 2 October 2013 11:04, Ian Romanick wrote: > From: Ian Romanick > > NVIDIA (304.64 on GTX 260) fails all of the 1.10, 1.20, and 1.30 tests > because they fail to recognize the layout keyword at all. Paul has > suggested that adding > > #extension GL_ARB_fragment_coord_conventions: require > > may work around this issue in some cases. > > Signed-off-by: Ian Romanick > Cc: Wen Su > Cc: Paul Berry > --- > Paul, > > Are there other geometry shader tests that I should add? > This patch is: Reviewed-by: Paul Berry I don't see any need to add more geometry shader tests at the moment. > > .../compiler/1.10/layout-location.frag | 14 ++ > .../compiler/1.10/layout-location.vert | 15 +++ > .../compiler/1.20/layout-location.frag | 14 ++ > .../compiler/1.20/layout-location.vert | 15 +++ > .../compiler/1.30/layout-location.frag | 14 ++ > .../compiler/1.30/layout-location.vert | 15 +++ > .../compiler/1.40/layout-location.frag | 15 +++ > .../compiler/1.40/layout-location.vert | 16 > .../compiler/1.50/layout-location.frag | 15 +++ > .../compiler/1.50/layout-location.geom | 22 > ++ > .../compiler/1.50/layout-location.vert | 16 > 11 files changed, 171 insertions(+) > create mode 100644 > tests/spec/arb_separate_shader_objects/compiler/1.10/layout-location.frag > create mode 100644 > tests/spec/arb_separate_shader_objects/compiler/1.10/layout-location.vert > create mode 100644 > tests/spec/arb_separate_shader_objects/compiler/1.20/layout-location.frag > create mode 100644 > tests/spec/arb_separate_shader_objects/compiler/1.20/layout-location.vert > create mode 100644 > tests/spec/arb_separate_shader_objects/compiler/1.30/layout-location.frag > create mode 100644 > tests/spec/arb_separate_shader_objects/compiler/1.30/layout-location.vert > create mode 100644 > tests/spec/arb_separate_shader_objects/compiler/1.40/layout-location.frag > create mode 100644 > tests/spec/arb_separate_shader_objects/compiler/1.40/layout-location.vert > create mode 100644 > tests/spec/arb_separate_shader_objects/compiler/1.50/layout-location.frag > create mode 100644 > tests/spec/arb_separate_shader_objects/compiler/1.50/layout-location.geom > create mode 100644 > tests/spec/arb_separate_shader_objects/compiler/1.50/layout-location.vert > > diff --git > a/tests/spec/arb_separate_shader_objects/compiler/1.10/layout-location.frag > b/tests/spec/arb_separate_shader_objects/compiler/1.10/layout-location.frag > new file mode 100644 > index 000..b91faa1 > --- /dev/null > +++ > b/tests/spec/arb_separate_shader_objects/compiler/1.10/layout-location.frag > @@ -0,0 +1,14 @@ > +// [config] > +// expect_result: pass > +// glsl_version: 1.10 > +// require_extensions: GL_ARB_separate_shader_objects > +// [end config] > +#version 110 > +#extension GL_ARB_separate_shader_objects: require > + > +layout(location = 0) in vec4 a; > + > +void main() > +{ > +gl_FragColor = a; > +} > diff --git > a/tests/spec/arb_separate_shader_objects/compiler/1.10/layout-location.vert > b/tests/spec/arb_separate_shader_objects/compiler/1.10/layout-location.vert > new file mode 100644 > index 000..ecc8e78 > --- /dev/null > +++ > b/tests/spec/arb_separate_shader_objects/compiler/1.10/layout-location.vert > @@ -0,0 +1,15 @@ > +// [config] > +// expect_result: pass > +// glsl_version: 1.10 > +// require_extensions: GL_ARB_separate_shader_objects > +// [end config] > +#version 110 > +#extension GL_ARB_separate_shader_objects: require > + > +layout(location = 0) out vec4 a; > + > +void main() > +{ > +gl_Position = gl_Vertex; > +a = vec4(0); > +} > diff --git > a/tests/spec/arb_separate_shader_objects/compiler/1.20/layout-location.frag > b/tests/spec/arb_separate_shader_objects/compiler/1.20/layout-location.frag > new file mode 100644 > index 000..0090a9f > --- /dev/null > +++ > b/tests/spec/arb_separate_shader_objects/compiler/1.20/layout-location.frag > @@ -0,0 +1,14 @@ > +// [config] > +// expect_result: pass > +// glsl_version: 1.20 > +// require_extensions: GL_ARB_separate_shader_objects > +// [end config] > +#version 120 > +#extension GL_ARB_separate_shader_objects: require > + > +layout(location = 0) in vec4 a; > + > +void main() > +{ > +gl_FragColor = a; > +} > diff --git > a/tests/spec/arb_separate_shader_objects/compiler/1.20/layout-location.vert > b/tests/spec/arb_separate_shader_objects/compiler/1.20/layout-location.vert > new file mode 100644 > index 000..d432b81 > --- /dev/null > +++ > b/tests/spec/arb_separate_shader_objects/compiler/1.20/layout-location.vert > @@ -0,0 +1,15 @@ > +// [config] > +// expect_result: pass > +// glsl_version: 1.20 > +// require_extensions: GL_ARB_separate_shader_objects > +// [end config] > +#version 1
Re: [Piglit] [PATCH] sso: Add compile tests for the location layout qualifier
Ian, Thanks. I have logged this driver bug. Wen -Original Message- From: Ian Romanick [mailto:i...@freedesktop.org] Sent: Friday, October 04, 2013 09:06 AM To: Wen Su Cc: piglit@lists.freedesktop.org; Paul Berry; Piers Daniell Subject: Re: [PATCH] sso: Add compile tests for the location layout qualifier On 10/03/2013 04:33 PM, Wen Su wrote: > Piers and I reviewed the glsl spec v1.3 and v1.4. The layout qualifier was > not added until v1.4. See page 18 in the pdf below. > http://www.opengl.org/registry/doc/GLSLangSpec.Full.1.40.05.pdf That is true. It is also added by GL_ARB_fragment_coord_conventions, GL_ARB_explicit_attrib_layout, and GL_ARB_separate_shader_objects. Our experiments have shown that the NVIDIA driver enables the layout keyword only when GL_ARB_fragment_coord_conventions is enabled. See also Khronos internal bug #6924. > Wen > > -Original Message- > From: Ian Romanick [mailto:i...@freedesktop.org] > Sent: Wednesday, October 02, 2013 11:05 AM > To: piglit@lists.freedesktop.org > Cc: Ian Romanick; Wen Su; Paul Berry > Subject: [PATCH] sso: Add compile tests for the location layout qualifier > > From: Ian Romanick > > NVIDIA (304.64 on GTX 260) fails all of the 1.10, 1.20, and 1.30 tests > because they fail to recognize the layout keyword at all. Paul has > suggested that adding > > #extension GL_ARB_fragment_coord_conventions: require > > may work around this issue in some cases. > > Signed-off-by: Ian Romanick > Cc: Wen Su > Cc: Paul Berry > --- > Paul, > > Are there other geometry shader tests that I should add? > > .../compiler/1.10/layout-location.frag | 14 ++ > .../compiler/1.10/layout-location.vert | 15 +++ > .../compiler/1.20/layout-location.frag | 14 ++ > .../compiler/1.20/layout-location.vert | 15 +++ > .../compiler/1.30/layout-location.frag | 14 ++ > .../compiler/1.30/layout-location.vert | 15 +++ > .../compiler/1.40/layout-location.frag | 15 +++ > .../compiler/1.40/layout-location.vert | 16 > .../compiler/1.50/layout-location.frag | 15 +++ > .../compiler/1.50/layout-location.geom | 22 > ++ > .../compiler/1.50/layout-location.vert | 16 > 11 files changed, 171 insertions(+) > create mode 100644 > tests/spec/arb_separate_shader_objects/compiler/1.10/layout-location.frag > create mode 100644 > tests/spec/arb_separate_shader_objects/compiler/1.10/layout-location.vert > create mode 100644 > tests/spec/arb_separate_shader_objects/compiler/1.20/layout-location.frag > create mode 100644 > tests/spec/arb_separate_shader_objects/compiler/1.20/layout-location.vert > create mode 100644 > tests/spec/arb_separate_shader_objects/compiler/1.30/layout-location.frag > create mode 100644 > tests/spec/arb_separate_shader_objects/compiler/1.30/layout-location.vert > create mode 100644 > tests/spec/arb_separate_shader_objects/compiler/1.40/layout-location.frag > create mode 100644 > tests/spec/arb_separate_shader_objects/compiler/1.40/layout-location.vert > create mode 100644 > tests/spec/arb_separate_shader_objects/compiler/1.50/layout-location.frag > create mode 100644 > tests/spec/arb_separate_shader_objects/compiler/1.50/layout-location.geom > create mode 100644 > tests/spec/arb_separate_shader_objects/compiler/1.50/layout-location.vert > > diff --git > a/tests/spec/arb_separate_shader_objects/compiler/1.10/layout-location.frag > b/tests/spec/arb_separate_shader_objects/compiler/1.10/layout-location.frag > new file mode 100644 > index 000..b91faa1 > --- /dev/null > +++ > b/tests/spec/arb_separate_shader_objects/compiler/1.10/layout-location.frag > @@ -0,0 +1,14 @@ > +// [config] > +// expect_result: pass > +// glsl_version: 1.10 > +// require_extensions: GL_ARB_separate_shader_objects > +// [end config] > +#version 110 > +#extension GL_ARB_separate_shader_objects: require > + > +layout(location = 0) in vec4 a; > + > +void main() > +{ > +gl_FragColor = a; > +} > diff --git > a/tests/spec/arb_separate_shader_objects/compiler/1.10/layout-location.vert > b/tests/spec/arb_separate_shader_objects/compiler/1.10/layout-location.vert > new file mode 100644 > index 000..ecc8e78 > --- /dev/null > +++ > b/tests/spec/arb_separate_shader_objects/compiler/1.10/layout-location.vert > @@ -0,0 +1,15 @@ > +// [config] > +// expect_result: pass > +// glsl_version: 1.10 > +// require_extensions: GL_ARB_separate_shader_objects > +// [end config] > +#version 110 > +#extension GL_ARB_separate_shader_objects: require > + > +layout(location = 0) out vec4 a; > + > +void main() > +{ > +gl_Position = gl_Vertex; > +a = vec4(0); > +} > diff --git > a/tests/spec/arb_separate_shader_objects/compiler/1.20/layout-location.frag > b/tests/spec/arb_separat
Re: [Piglit] [PATCH] sso: Add compile tests for the location layout qualifier
On 10/03/2013 04:33 PM, Wen Su wrote: > Piers and I reviewed the glsl spec v1.3 and v1.4. The layout qualifier was > not added until v1.4. See page 18 in the pdf below. > http://www.opengl.org/registry/doc/GLSLangSpec.Full.1.40.05.pdf That is true. It is also added by GL_ARB_fragment_coord_conventions, GL_ARB_explicit_attrib_layout, and GL_ARB_separate_shader_objects. Our experiments have shown that the NVIDIA driver enables the layout keyword only when GL_ARB_fragment_coord_conventions is enabled. See also Khronos internal bug #6924. > Wen > > -Original Message- > From: Ian Romanick [mailto:i...@freedesktop.org] > Sent: Wednesday, October 02, 2013 11:05 AM > To: piglit@lists.freedesktop.org > Cc: Ian Romanick; Wen Su; Paul Berry > Subject: [PATCH] sso: Add compile tests for the location layout qualifier > > From: Ian Romanick > > NVIDIA (304.64 on GTX 260) fails all of the 1.10, 1.20, and 1.30 tests > because they fail to recognize the layout keyword at all. Paul has > suggested that adding > > #extension GL_ARB_fragment_coord_conventions: require > > may work around this issue in some cases. > > Signed-off-by: Ian Romanick > Cc: Wen Su > Cc: Paul Berry > --- > Paul, > > Are there other geometry shader tests that I should add? > > .../compiler/1.10/layout-location.frag | 14 ++ > .../compiler/1.10/layout-location.vert | 15 +++ > .../compiler/1.20/layout-location.frag | 14 ++ > .../compiler/1.20/layout-location.vert | 15 +++ > .../compiler/1.30/layout-location.frag | 14 ++ > .../compiler/1.30/layout-location.vert | 15 +++ > .../compiler/1.40/layout-location.frag | 15 +++ > .../compiler/1.40/layout-location.vert | 16 > .../compiler/1.50/layout-location.frag | 15 +++ > .../compiler/1.50/layout-location.geom | 22 > ++ > .../compiler/1.50/layout-location.vert | 16 > 11 files changed, 171 insertions(+) > create mode 100644 > tests/spec/arb_separate_shader_objects/compiler/1.10/layout-location.frag > create mode 100644 > tests/spec/arb_separate_shader_objects/compiler/1.10/layout-location.vert > create mode 100644 > tests/spec/arb_separate_shader_objects/compiler/1.20/layout-location.frag > create mode 100644 > tests/spec/arb_separate_shader_objects/compiler/1.20/layout-location.vert > create mode 100644 > tests/spec/arb_separate_shader_objects/compiler/1.30/layout-location.frag > create mode 100644 > tests/spec/arb_separate_shader_objects/compiler/1.30/layout-location.vert > create mode 100644 > tests/spec/arb_separate_shader_objects/compiler/1.40/layout-location.frag > create mode 100644 > tests/spec/arb_separate_shader_objects/compiler/1.40/layout-location.vert > create mode 100644 > tests/spec/arb_separate_shader_objects/compiler/1.50/layout-location.frag > create mode 100644 > tests/spec/arb_separate_shader_objects/compiler/1.50/layout-location.geom > create mode 100644 > tests/spec/arb_separate_shader_objects/compiler/1.50/layout-location.vert > > diff --git > a/tests/spec/arb_separate_shader_objects/compiler/1.10/layout-location.frag > b/tests/spec/arb_separate_shader_objects/compiler/1.10/layout-location.frag > new file mode 100644 > index 000..b91faa1 > --- /dev/null > +++ > b/tests/spec/arb_separate_shader_objects/compiler/1.10/layout-location.frag > @@ -0,0 +1,14 @@ > +// [config] > +// expect_result: pass > +// glsl_version: 1.10 > +// require_extensions: GL_ARB_separate_shader_objects > +// [end config] > +#version 110 > +#extension GL_ARB_separate_shader_objects: require > + > +layout(location = 0) in vec4 a; > + > +void main() > +{ > +gl_FragColor = a; > +} > diff --git > a/tests/spec/arb_separate_shader_objects/compiler/1.10/layout-location.vert > b/tests/spec/arb_separate_shader_objects/compiler/1.10/layout-location.vert > new file mode 100644 > index 000..ecc8e78 > --- /dev/null > +++ > b/tests/spec/arb_separate_shader_objects/compiler/1.10/layout-location.vert > @@ -0,0 +1,15 @@ > +// [config] > +// expect_result: pass > +// glsl_version: 1.10 > +// require_extensions: GL_ARB_separate_shader_objects > +// [end config] > +#version 110 > +#extension GL_ARB_separate_shader_objects: require > + > +layout(location = 0) out vec4 a; > + > +void main() > +{ > +gl_Position = gl_Vertex; > +a = vec4(0); > +} > diff --git > a/tests/spec/arb_separate_shader_objects/compiler/1.20/layout-location.frag > b/tests/spec/arb_separate_shader_objects/compiler/1.20/layout-location.frag > new file mode 100644 > index 000..0090a9f > --- /dev/null > +++ > b/tests/spec/arb_separate_shader_objects/compiler/1.20/layout-location.frag > @@ -0,0 +1,14 @@ > +// [config] > +// expect_result: pass > +// glsl_version: 1.20 > +// require_extensions: GL_AR
[Piglit] [PATCH] sso: Add compile tests for the location layout qualifier
From: Ian Romanick NVIDIA (304.64 on GTX 260) fails all of the 1.10, 1.20, and 1.30 tests because they fail to recognize the layout keyword at all. Paul has suggested that adding #extension GL_ARB_fragment_coord_conventions: require may work around this issue in some cases. Signed-off-by: Ian Romanick Cc: Wen Su Cc: Paul Berry --- Paul, Are there other geometry shader tests that I should add? .../compiler/1.10/layout-location.frag | 14 ++ .../compiler/1.10/layout-location.vert | 15 +++ .../compiler/1.20/layout-location.frag | 14 ++ .../compiler/1.20/layout-location.vert | 15 +++ .../compiler/1.30/layout-location.frag | 14 ++ .../compiler/1.30/layout-location.vert | 15 +++ .../compiler/1.40/layout-location.frag | 15 +++ .../compiler/1.40/layout-location.vert | 16 .../compiler/1.50/layout-location.frag | 15 +++ .../compiler/1.50/layout-location.geom | 22 ++ .../compiler/1.50/layout-location.vert | 16 11 files changed, 171 insertions(+) create mode 100644 tests/spec/arb_separate_shader_objects/compiler/1.10/layout-location.frag create mode 100644 tests/spec/arb_separate_shader_objects/compiler/1.10/layout-location.vert create mode 100644 tests/spec/arb_separate_shader_objects/compiler/1.20/layout-location.frag create mode 100644 tests/spec/arb_separate_shader_objects/compiler/1.20/layout-location.vert create mode 100644 tests/spec/arb_separate_shader_objects/compiler/1.30/layout-location.frag create mode 100644 tests/spec/arb_separate_shader_objects/compiler/1.30/layout-location.vert create mode 100644 tests/spec/arb_separate_shader_objects/compiler/1.40/layout-location.frag create mode 100644 tests/spec/arb_separate_shader_objects/compiler/1.40/layout-location.vert create mode 100644 tests/spec/arb_separate_shader_objects/compiler/1.50/layout-location.frag create mode 100644 tests/spec/arb_separate_shader_objects/compiler/1.50/layout-location.geom create mode 100644 tests/spec/arb_separate_shader_objects/compiler/1.50/layout-location.vert diff --git a/tests/spec/arb_separate_shader_objects/compiler/1.10/layout-location.frag b/tests/spec/arb_separate_shader_objects/compiler/1.10/layout-location.frag new file mode 100644 index 000..b91faa1 --- /dev/null +++ b/tests/spec/arb_separate_shader_objects/compiler/1.10/layout-location.frag @@ -0,0 +1,14 @@ +// [config] +// expect_result: pass +// glsl_version: 1.10 +// require_extensions: GL_ARB_separate_shader_objects +// [end config] +#version 110 +#extension GL_ARB_separate_shader_objects: require + +layout(location = 0) in vec4 a; + +void main() +{ +gl_FragColor = a; +} diff --git a/tests/spec/arb_separate_shader_objects/compiler/1.10/layout-location.vert b/tests/spec/arb_separate_shader_objects/compiler/1.10/layout-location.vert new file mode 100644 index 000..ecc8e78 --- /dev/null +++ b/tests/spec/arb_separate_shader_objects/compiler/1.10/layout-location.vert @@ -0,0 +1,15 @@ +// [config] +// expect_result: pass +// glsl_version: 1.10 +// require_extensions: GL_ARB_separate_shader_objects +// [end config] +#version 110 +#extension GL_ARB_separate_shader_objects: require + +layout(location = 0) out vec4 a; + +void main() +{ +gl_Position = gl_Vertex; +a = vec4(0); +} diff --git a/tests/spec/arb_separate_shader_objects/compiler/1.20/layout-location.frag b/tests/spec/arb_separate_shader_objects/compiler/1.20/layout-location.frag new file mode 100644 index 000..0090a9f --- /dev/null +++ b/tests/spec/arb_separate_shader_objects/compiler/1.20/layout-location.frag @@ -0,0 +1,14 @@ +// [config] +// expect_result: pass +// glsl_version: 1.20 +// require_extensions: GL_ARB_separate_shader_objects +// [end config] +#version 120 +#extension GL_ARB_separate_shader_objects: require + +layout(location = 0) in vec4 a; + +void main() +{ +gl_FragColor = a; +} diff --git a/tests/spec/arb_separate_shader_objects/compiler/1.20/layout-location.vert b/tests/spec/arb_separate_shader_objects/compiler/1.20/layout-location.vert new file mode 100644 index 000..d432b81 --- /dev/null +++ b/tests/spec/arb_separate_shader_objects/compiler/1.20/layout-location.vert @@ -0,0 +1,15 @@ +// [config] +// expect_result: pass +// glsl_version: 1.20 +// require_extensions: GL_ARB_separate_shader_objects +// [end config] +#version 120 +#extension GL_ARB_separate_shader_objects: require + +layout(location = 0) out vec4 a; + +void main() +{ +gl_Position = gl_Vertex; +a = vec4(0); +} diff --git a/tests/spec/arb_separate_shader_objects/compiler/1.30/layout-location.frag b/tests/spec/arb_separate_shader_objects/compiler/1.30/layout-location.frag new file mode 100644 index 000..a0dde35 --- /dev/null +++ b/tests/spec/arb_separate_sha