[Piglit] [PATCH] arb_gpu_shader_fp64/ssbo: fix tests to skip is no vertex ssbo available.
Alejandro
apinheiro at igalia.com
Wed Mar 7 07:52:08 UTC 2018
Typo on the commit message: "skip is no" => "skip if no"
Some comments below.
On 07/03/18 01:54, Dave Airlie wrote:
> From: Dave Airlie <airlied at redhat.com>
>
> These tests all require varying numbers of ssbos.
> ---
> .../shader_storage/layout-std140-fp64-mixed-shader.c | 5 +++++
> .../arb_gpu_shader_fp64/shader_storage/layout-std140-fp64-shader.c | 5 +++++
> .../shader_storage/layout-std430-fp64-mixed-shader.c | 5 +++++
> .../arb_gpu_shader_fp64/shader_storage/layout-std430-fp64-shader.c | 5 +++++
> 4 files changed, 20 insertions(+)
>
> diff --git a/tests/spec/arb_gpu_shader_fp64/shader_storage/layout-std140-fp64-mixed-shader.c b/tests/spec/arb_gpu_shader_fp64/shader_storage/layout-std140-fp64-mixed-shader.c
> index 96add58..e649fea 100644
> --- a/tests/spec/arb_gpu_shader_fp64/shader_storage/layout-std140-fp64-mixed-shader.c
> +++ b/tests/spec/arb_gpu_shader_fp64/shader_storage/layout-std140-fp64-mixed-shader.c
> @@ -213,11 +213,16 @@ piglit_init(int argc, char **argv)
> double *map_d;
> void *data;
> void *data_base;
> + GLint num_vertex_ssbo;
>
> piglit_require_extension("GL_ARB_shader_storage_buffer_object");
> piglit_require_extension("GL_ARB_gpu_shader_fp64");
> piglit_require_GLSL_version(150);
>
> + glGetIntegerv(GL_MAX_VERTEX_SHADER_STORAGE_BLOCKS, &num_vertex_ssbo);
> + if (num_vertex_ssbo < 4)
> + piglit_report_result(PIGLIT_SKIP);
Why the check is <4 instead of <1 as with other new checks included on
this patch? As far as I see, the vertex shader on that test uses 1 ssbo.
> +
> prog = piglit_build_simple_program_multiple_shaders(
> GL_VERTEX_SHADER, vs_code,
> GL_GEOMETRY_SHADER, gs_source,
> diff --git a/tests/spec/arb_gpu_shader_fp64/shader_storage/layout-std140-fp64-shader.c b/tests/spec/arb_gpu_shader_fp64/shader_storage/layout-std140-fp64-shader.c
> index e7e2343..0d1754d 100644
> --- a/tests/spec/arb_gpu_shader_fp64/shader_storage/layout-std140-fp64-shader.c
> +++ b/tests/spec/arb_gpu_shader_fp64/shader_storage/layout-std140-fp64-shader.c
> @@ -189,11 +189,16 @@ piglit_init(int argc, char **argv)
> GLuint buffer;
> unsigned int i;
> double *map;
> + GLint num_vertex_ssbo;
>
> piglit_require_extension("GL_ARB_shader_storage_buffer_object");
> piglit_require_extension("GL_ARB_gpu_shader_fp64");
> piglit_require_GLSL_version(150);
>
> + glGetIntegerv(GL_MAX_VERTEX_SHADER_STORAGE_BLOCKS, &num_vertex_ssbo);
> + if (num_vertex_ssbo < 1)
> + piglit_report_result(PIGLIT_SKIP);
> +
> prog = piglit_build_simple_program_multiple_shaders(
> GL_VERTEX_SHADER, vs_code,
> GL_GEOMETRY_SHADER, gs_source,
> diff --git a/tests/spec/arb_gpu_shader_fp64/shader_storage/layout-std430-fp64-mixed-shader.c b/tests/spec/arb_gpu_shader_fp64/shader_storage/layout-std430-fp64-mixed-shader.c
> index 26a8e49..d6bdc13 100644
> --- a/tests/spec/arb_gpu_shader_fp64/shader_storage/layout-std430-fp64-mixed-shader.c
> +++ b/tests/spec/arb_gpu_shader_fp64/shader_storage/layout-std430-fp64-mixed-shader.c
> @@ -245,11 +245,16 @@ piglit_init(int argc, char **argv)
> double *map_d;
> void *data;
> void *data_base;
> + GLint num_vertex_ssbo;
>
> piglit_require_extension("GL_ARB_shader_storage_buffer_object");
> piglit_require_extension("GL_ARB_gpu_shader_fp64");
> piglit_require_GLSL_version(150);
>
> + glGetIntegerv(GL_MAX_VERTEX_SHADER_STORAGE_BLOCKS, &num_vertex_ssbo);
> + if (num_vertex_ssbo < 4)
> + piglit_report_result(PIGLIT_SKIP);
Same question here.
> +
> prog = piglit_build_simple_program_multiple_shaders(
> GL_VERTEX_SHADER, vs_code,
> GL_GEOMETRY_SHADER, gs_source,
> diff --git a/tests/spec/arb_gpu_shader_fp64/shader_storage/layout-std430-fp64-shader.c b/tests/spec/arb_gpu_shader_fp64/shader_storage/layout-std430-fp64-shader.c
> index 00adfc8..9d92567 100644
> --- a/tests/spec/arb_gpu_shader_fp64/shader_storage/layout-std430-fp64-shader.c
> +++ b/tests/spec/arb_gpu_shader_fp64/shader_storage/layout-std430-fp64-shader.c
> @@ -223,11 +223,16 @@ piglit_init(int argc, char **argv)
> GLuint buffer;
> unsigned int i;
> double *map;
> + GLint num_vertex_ssbo;
>
> piglit_require_extension("GL_ARB_shader_storage_buffer_object");
> piglit_require_extension("GL_ARB_gpu_shader_fp64");
> piglit_require_GLSL_version(150);
>
> + glGetIntegerv(GL_MAX_VERTEX_SHADER_STORAGE_BLOCKS, &num_vertex_ssbo);
> + if (num_vertex_ssbo < 1)
> + piglit_report_result(PIGLIT_SKIP);
> +
> prog = piglit_build_simple_program_multiple_shaders(
> GL_VERTEX_SHADER, vs_code,
> GL_GEOMETRY_SHADER, gs_source,
More information about the Piglit
mailing list