[Piglit] [PATCH] arb_shader_image_load_store: test duplicate format qualifier more thoroughly

Francisco Jerez currojerez at riseup.net
Tue Jan 19 18:08:09 PST 2016


Timothy Arceri <timothy.arceri at collabora.com> writes:

> From the ARB_shader_image_load_store spec:
>
>    "Only one format qualifier may be specified for any image variable
>     declaration."
> ---
>  .../gen_shader_image_load_store_tests.py           | 15 +++++++++++
>  ...aration-format-qualifier-duplicate-420pack.frag | 28 +++++++++++++++++++++
>  ...aration-format-qualifier-duplicate-420pack.vert | 28 +++++++++++++++++++++
>  ...ormat-qualifier-duplicate-enhanced-layouts.frag | 29 ++++++++++++++++++++++
>  ...ormat-qualifier-duplicate-enhanced-layouts.vert | 29 ++++++++++++++++++++++

Can you comment on the usefulness of these last four tests?  At first
glance it doesn't seem obvious why they provide any value over
declaration-format-qualifier-duplicate or
declaration-format-qualifier-duplicate-within-layout.

>  5 files changed, 129 insertions(+)
>  create mode 100644 tests/spec/arb_shader_image_load_store/compiler/declaration-format-qualifier-duplicate-420pack.frag
>  create mode 100644 tests/spec/arb_shader_image_load_store/compiler/declaration-format-qualifier-duplicate-420pack.vert
>  create mode 100644 tests/spec/arb_shader_image_load_store/compiler/declaration-format-qualifier-duplicate-enhanced-layouts.frag
>  create mode 100644 tests/spec/arb_shader_image_load_store/compiler/declaration-format-qualifier-duplicate-enhanced-layouts.vert
>
> diff --git a/generated_tests/gen_shader_image_load_store_tests.py b/generated_tests/gen_shader_image_load_store_tests.py
> index 8d6be9c..ee27808 100644
> --- a/generated_tests/gen_shader_image_load_store_tests.py
> +++ b/generated_tests/gen_shader_image_load_store_tests.py
> @@ -473,6 +473,21 @@ gen('declaration-format-qualifier-duplicate', """\
>      }
>  """, shader_stages)
>  
> +gen('declaration-format-qualifier-duplicate-within-layout', """\
> +    ${header('fail')}
> +    /*
> +     * From the ARB_shader_image_load_store spec:
> +     *
> +     * "Only one format qualifier may be specified for any image variable
> +     *  declaration."
> +     */
> +    layout(rgba32f, rgba32f) uniform image2D img;
> +
> +    void main()
> +    {
> +    }
> +""", shader_stages)
> +
>  gen('declaration-format-qualifier-missing', """\
>      ${header(status)}
>      /*
> diff --git a/tests/spec/arb_shader_image_load_store/compiler/declaration-format-qualifier-duplicate-420pack.frag b/tests/spec/arb_shader_image_load_store/compiler/declaration-format-qualifier-duplicate-420pack.frag
> new file mode 100644
> index 0000000..1ea3749
> --- /dev/null
> +++ b/tests/spec/arb_shader_image_load_store/compiler/declaration-format-qualifier-duplicate-420pack.frag
> @@ -0,0 +1,28 @@
> +/*
> + * [config]
> + * expect_result: fail
> + * glsl_version: 1.50
> + * require_extensions: GL_ARB_shader_image_load_store GL_ARB_shading_language_420pack
> + * [end config]
> + */
> +#version 150
> +#extension GL_ARB_shader_image_load_store: require
> +#extension GL_ARB_shading_language_420pack: require
> +
> +/*
> + * From the ARB_shader_image_load_store spec:
> + *
> + *   "Only one format qualifier may be specified for any image variable
> + *    declaration."
> + *
> + * From the ARB_shading_language_420pack spec:
> + *
> + *   "More than one layout qualifier may appear in a single declaration. If
> + *   the same layout-qualifier-name occurs in multiple layout qualifiers for
> + *   the same declaration, the last one overrides the former ones."
> + */
> +layout(rgba32f) layout(rgba32f) uniform image2D img;
> +
> +void main()
> +{
> +}
> diff --git a/tests/spec/arb_shader_image_load_store/compiler/declaration-format-qualifier-duplicate-420pack.vert b/tests/spec/arb_shader_image_load_store/compiler/declaration-format-qualifier-duplicate-420pack.vert
> new file mode 100644
> index 0000000..1ea3749
> --- /dev/null
> +++ b/tests/spec/arb_shader_image_load_store/compiler/declaration-format-qualifier-duplicate-420pack.vert
> @@ -0,0 +1,28 @@
> +/*
> + * [config]
> + * expect_result: fail
> + * glsl_version: 1.50
> + * require_extensions: GL_ARB_shader_image_load_store GL_ARB_shading_language_420pack
> + * [end config]
> + */
> +#version 150
> +#extension GL_ARB_shader_image_load_store: require
> +#extension GL_ARB_shading_language_420pack: require
> +
> +/*
> + * From the ARB_shader_image_load_store spec:
> + *
> + *   "Only one format qualifier may be specified for any image variable
> + *    declaration."
> + *
> + * From the ARB_shading_language_420pack spec:
> + *
> + *   "More than one layout qualifier may appear in a single declaration. If
> + *   the same layout-qualifier-name occurs in multiple layout qualifiers for
> + *   the same declaration, the last one overrides the former ones."
> + */
> +layout(rgba32f) layout(rgba32f) uniform image2D img;
> +
> +void main()
> +{
> +}
> diff --git a/tests/spec/arb_shader_image_load_store/compiler/declaration-format-qualifier-duplicate-enhanced-layouts.frag b/tests/spec/arb_shader_image_load_store/compiler/declaration-format-qualifier-duplicate-enhanced-layouts.frag
> new file mode 100644
> index 0000000..f1bb73d
> --- /dev/null
> +++ b/tests/spec/arb_shader_image_load_store/compiler/declaration-format-qualifier-duplicate-enhanced-layouts.frag
> @@ -0,0 +1,29 @@
> +/*
> + * [config]
> + * expect_result: fail
> + * glsl_version: 1.50
> + * require_extensions: GL_ARB_shader_image_load_store GL_ARB_enhanced_layouts
> + * [end config]
> + */
> +#version 150
> +#extension GL_ARB_shader_image_load_store: require
> +#extension GL_ARB_enhanced_layouts: require
> +
> +/*
> + * From the ARB_shader_image_load_store spec:
> + *
> + *   "Only one format qualifier may be specified for any image variable
> + *    declaration."
> + *
> + *  From the ARB_enhanced_layouts spec:
> + *
> + *   "More than one layout qualifier may appear in a single declaration.
> + *   Additionally, the same layout-qualifier-name can occur multiple times
> + *   within a layout qualifier or across multiple layout qualifiers in the
> + *   same declaration"
> + */
> +layout(rgba32f, rgba32f) uniform image2D img;
> +
> +void main()
> +{
> +}
> diff --git a/tests/spec/arb_shader_image_load_store/compiler/declaration-format-qualifier-duplicate-enhanced-layouts.vert b/tests/spec/arb_shader_image_load_store/compiler/declaration-format-qualifier-duplicate-enhanced-layouts.vert
> new file mode 100644
> index 0000000..f1bb73d
> --- /dev/null
> +++ b/tests/spec/arb_shader_image_load_store/compiler/declaration-format-qualifier-duplicate-enhanced-layouts.vert
> @@ -0,0 +1,29 @@
> +/*
> + * [config]
> + * expect_result: fail
> + * glsl_version: 1.50
> + * require_extensions: GL_ARB_shader_image_load_store GL_ARB_enhanced_layouts
> + * [end config]
> + */
> +#version 150
> +#extension GL_ARB_shader_image_load_store: require
> +#extension GL_ARB_enhanced_layouts: require
> +
> +/*
> + * From the ARB_shader_image_load_store spec:
> + *
> + *   "Only one format qualifier may be specified for any image variable
> + *    declaration."
> + *
> + *  From the ARB_enhanced_layouts spec:
> + *
> + *   "More than one layout qualifier may appear in a single declaration.
> + *   Additionally, the same layout-qualifier-name can occur multiple times
> + *   within a layout qualifier or across multiple layout qualifiers in the
> + *   same declaration"
> + */
> +layout(rgba32f, rgba32f) uniform image2D img;
> +
> +void main()
> +{
> +}
> -- 
> 2.4.3
>
> _______________________________________________
> Piglit mailing list
> Piglit at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/piglit
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 212 bytes
Desc: not available
URL: <http://lists.freedesktop.org/archives/piglit/attachments/20160119/7a11b3a0/attachment-0001.sig>


More information about the Piglit mailing list