On 06/13/2016 06:04 PM, Andres Gomez wrote:
On Tue, 2016-06-07 at 00:21 +0200, Samuel Pitoiset wrote:
Because EmitVertex() will invalidate all previous output writes, we
need to emit the output for every vertex. This fixes is similar to
the one in the GS tests generator.

Signed-off-by: Samuel Pitoiset <[email protected]>
---
 .../execution/gs-isnan-dvec.shader_test            | 36 +++++++++++-


[snip]


diff --git a/tests/spec/arb_gpu_shader_fp64/execution/gs-isnan-
dvec.shader_test b/tests/spec/arb_gpu_shader_fp64/execution/gs-isnan-
dvec.shader_test
index 28f7505..314a87c 100644
--- a/tests/spec/arb_gpu_shader_fp64/execution/gs-isnan-
dvec.shader_test
+++ b/tests/spec/arb_gpu_shader_fp64/execution/gs-isnan-
dvec.shader_test
@@ -38,29 +38,29 @@ out vec4 fs_color;

 void main()
 {
-       fs_color = vec4(0.0);
+       for (int i = 0; i < 3; i++) {
+               fs_color = vec4(0.0);

-       dvec4 r4 = numerator/denominator;
-       dvec4 bl4 = dvec4(isnan(r4));
-       if (distance(bl4, expected) > tolerance)
-               fs_color.x = 1.0;
+               dvec4 r4 = numerator/denominator;
+               dvec4 bl4 = dvec4(isnan(r4));
+               if (distance(bl4, expected) > tolerance)
+                       fs_color.x = 1.0;

-       dvec3 r3 = numerator.xyz/denominator.xyz;
-       dvec3 bl3 = dvec3(isnan(r3));
-       if (distance(bl3, expected.xyz) > tolerance)
-               fs_color.y = 1.0;
+               dvec3 r3 = numerator.xyz/denominator.xyz;
+               dvec3 bl3 = dvec3(isnan(r3));
+               if (distance(bl3, expected.xyz) > tolerance)
+                       fs_color.y = 1.0;

-       dvec2 r2 = numerator.zw/denominator.zw;
-       dvec2 bl2 = dvec2(isnan(r2));
-       if (distance(bl2, expected.zw) > tolerance)
-               fs_color.z = 1.0;
+               dvec2 r2 = numerator.zw/denominator.zw;
+               dvec2 bl2 = dvec2(isnan(r2));
+               if (distance(bl2, expected.zw) > tolerance)
+                       fs_color.z = 1.0;

-       double r1 = numerator.x/denominator.x;
-       double bl1 = double(isnan(r1));
-       if (distance(bl1, expected.x) > tolerance)
-               fs_color.w = 1.0;
+               double r1 = numerator.x/denominator.x;
+               double bl1 = double(isnan(r1));
+               if (distance(bl1, expected.x) > tolerance)
+                       fs_color.w = 1.0;

-       for (int i = 0; i < 3; i++) {
                gl_Position = vertex_to_gs[i];
                EmitVertex();
        }

I'd rather have just the "if" parts that modify fs_color in the "for"
loop and not the whole code.

In any case, this is a minor thing so feel free to ignore.

Other than that, this is:

Reviewed-by: Andres Gomez <[email protected]>

Thanks for the reviews.

I don't have commit access for piglit, could you please push both patches for me?

Feel free to amend this one before pushing.

_______________________________________________
Piglit mailing list
[email protected]
https://lists.freedesktop.org/mailman/listinfo/piglit

Reply via email to