[Piglit] [PATCH v4] glsl-4.50: add a test for helper invocations

Ilia Mirkin imirkin at alum.mit.edu
Thu Nov 12 14:56:36 PST 2015


Reviewed-by: Ilia Mirkin <imirkin at alum.mit.edu>

On Thu, Nov 12, 2015 at 5:55 PM, Glenn Kennard <glenn.kennard at gmail.com> wrote:
> Tested on r600g implementation
>
> Signed-off-by: Glenn Kennard <glenn.kennard at gmail.com>
> ---
> Ported to desktop GL 4.5 from Ilia's GLES test case, needed since r600g uses
> coarse derivatives by default, and shader control over that requires
> GL_ARB_derivative_control.
>
> Changes since v3:
>   - Removed redundant check for GL_ARB_derivative_control since the functions
>   are included in 4.5 and already enabled by Mesa when using that version
>   override.
>   - Write helper to blue channel which should never be present in framebuffer
>   output, in order to prevent some false positives.
>
>  .../execution/helper-invocation.shader_test        | 27 ++++++++++++++++++++++
>  1 file changed, 27 insertions(+)
>  create mode 100644 tests/spec/glsl-4.50/execution/helper-invocation.shader_test
>
> diff --git a/tests/spec/glsl-4.50/execution/helper-invocation.shader_test b/tests/spec/glsl-4.50/execution/helper-invocation.shader_test
> new file mode 100644
> index 0000000..ec104c6
> --- /dev/null
> +++ b/tests/spec/glsl-4.50/execution/helper-invocation.shader_test
> @@ -0,0 +1,27 @@
> +[require]
> +GL >= 4.5
> +GLSL >= 4.50
> +
> +[vertex shader passthrough]
> +
> +[fragment shader]
> +#version 450
> +out vec4 color;
> +void main() {
> +  float helper = float(gl_HelperInvocation);
> +  color = vec4(abs(dFdxFine(helper)), abs(dFdyFine(helper)), helper, 1);
> +}
> +
> +[test]
> +clear color 0.2 0.2 0.2 0.2
> +clear
> +
> +# A single pixel being drawn, guaranteed that both the X and Y
> +# derivatives will be 1.
> +draw rect ortho 0 0 1 1
> +probe rect rgba (0, 0, 1, 1) (1, 1, 0, 1)
> +
> +# A larger rect being drawn, check that the first 2x2 quad, all of
> +# which is definitely going to be covered, actually ended up as all 0's
> +draw rect ortho 2 2 10 10
> +probe rect rgba (2, 2, 2, 2) (0, 0, 0, 1)
> --
> 1.9.1
>
> _______________________________________________
> Piglit mailing list
> Piglit at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/piglit


More information about the Piglit mailing list