[Piglit] [PATCH v2] arb_gpu_shader_fp64: Add tests to check float to double conversion under non-uniform control flow

Nicolai Hähnle nhaehnle at gmail.com
Mon Oct 17 17:15:55 UTC 2016


Reviewed-by: Nicolai Hähnle <nicolai.haehnle at amd.com>

On 17.10.2016 08:26, Samuel Iglesias Gonsálvez wrote:
> We found issues with this case while developing i965's Ivybridge
> patches to support arb_gpu_shader_fp64.
>
> Signed-off-by: Samuel Iglesias Gonsálvez <siglesias at igalia.com>
> ---
>  .../fs-non-uniform-control-flow-f2d.shader_test    | 40 ++++++++++++++++++++++
>  1 file changed, 40 insertions(+)
>  create mode 100644 tests/spec/arb_gpu_shader_fp64/execution/fs-non-uniform-control-flow-f2d.shader_test
>
> diff --git a/tests/spec/arb_gpu_shader_fp64/execution/fs-non-uniform-control-flow-f2d.shader_test b/tests/spec/arb_gpu_shader_fp64/execution/fs-non-uniform-control-flow-f2d.shader_test
> new file mode 100644
> index 0000000..4b4011e
> --- /dev/null
> +++ b/tests/spec/arb_gpu_shader_fp64/execution/fs-non-uniform-control-flow-f2d.shader_test
> @@ -0,0 +1,40 @@
> +# It checks that a float to double conversion works correctly when it is
> +# under non-uniform control flow.
> +
> +[require]
> +GLSL >= 3.30
> +GL_ARB_gpu_shader_fp64
> +
> +[vertex shader passthrough]
> +
> +[fragment shader]
> +#version 330
> +#extension GL_ARB_gpu_shader_fp64 : require
> +out vec4 color;
> +
> +void main() {
> +        int cx = int(gl_FragCoord.x) / 125;
> +        int cy = int(gl_FragCoord.y) / 125;
> +        dvec2 rg;
> +        vec2 value;
> +        if ((cx + cy) % 2 == 0)
> +                value = vec2(1.0f, 0.0f);
> +        else
> +                value = vec2(0.0f, 1.0f);
> +        rg = dvec2(value);
> +        if (rg == dvec2(0, 1))
> +            color = vec4(0, 0, 1, 1);
> +        else
> +            color = vec4(rg, 0, 1);
> +}
> +
> +
> +[test]
> +clear color 0.0 0.0 0.0 0.0
> +clear
> +draw rect -1 -1 2 2
> +probe rgba 0 0 1.0 0.0 0.0 1.0
> +probe rgba 125 0 0.0 0.0 1.0 1.0
> +probe rgba 0 125 0.0 0.0 1.0 1.0
> +probe rgba 125 125 1.0 0.0 0.0 1.0
> +
>


More information about the Piglit mailing list