Fix atan2() precision tests and add to mustpass
authorPyry Haulos <phaulos@google.com>
Fri, 27 Jan 2017 17:02:12 +0000 (09:02 -0800)
committerPyry Haulos <phaulos@google.com>
Thu, 16 Feb 2017 19:18:12 +0000 (11:18 -0800)
atan2() had a bug where tests were rounding codomain -PI..PI inwards,
not outwards, causing it to reject perfectly valid roundings of constant
PI.

Changed tests:

dEQP-VK.glsl.builtin.precision.atan2.*

Change-Id: Ib75da103944f773dd819c459b9aa1257c58ca921
Components: Vulkan

external/vulkancts/modules/vulkan/shaderexecutor/vktShaderBuiltinPrecisionTests.cpp
external/vulkancts/mustpass/1.0.3/src/test-issues.txt
external/vulkancts/mustpass/1.0.3/vk-default.txt

index ea060c4656f5ec8cf3c4706fe07c6781a8fb57a8..90792d4571343932a9c7f506943bd2398ceb22c9 100644 (file)
@@ -2431,7 +2431,7 @@ protected:
                        if (xi.contains(0.0))
                                ret |= TCU_NAN;
                        if (xi.intersects(Interval(-TCU_INFINITY, 0.0)))
-                               ret |= Interval(-DE_PI_DOUBLE, DE_PI_DOUBLE);
+                               ret |= ctx.format.roundOut(Interval(-DE_PI_DOUBLE, DE_PI_DOUBLE), true);
                }
 
                if (ctx.format.hasInf() != YES && (!yi.isFinite() || !xi.isFinite()))
index 00a155bb3500ff5509670c442d615352c7006d18..a85110016591e420224613aa6b961481a474b2c4 100644 (file)
@@ -2,8 +2,6 @@
 dEQP-VK.glsl.builtin.precision.dot.highp_compute.*
 dEQP-VK.glsl.builtin.precision.smoothstep.mediump_compute.*
 dEQP-VK.glsl.builtin.precision.smoothstep.highp_compute.*
-dEQP-VK.glsl.builtin.precision.atan2.mediump_compute.*
-dEQP-VK.glsl.builtin.precision.atan2.highp_compute.*
 dEQP-VK.glsl.builtin.precision.acosh.highp_compute.*
 dEQP-VK.glsl.builtin.precision.atanh.highp_compute.*
 dEQP-VK.glsl.builtin.precision.atanh.mediump_compute.*
index ceef3d13b514803c3ebe0f6a7537f5549424c2f2..ae9e78bfbfb35aa50f0a3b366625edb402b790c4 100644 (file)
@@ -151466,6 +151466,14 @@ dEQP-VK.glsl.builtin.precision.acos.highp_compute.scalar
 dEQP-VK.glsl.builtin.precision.acos.highp_compute.vec2
 dEQP-VK.glsl.builtin.precision.acos.highp_compute.vec3
 dEQP-VK.glsl.builtin.precision.acos.highp_compute.vec4
+dEQP-VK.glsl.builtin.precision.atan2.mediump_compute.scalar
+dEQP-VK.glsl.builtin.precision.atan2.mediump_compute.vec2
+dEQP-VK.glsl.builtin.precision.atan2.mediump_compute.vec3
+dEQP-VK.glsl.builtin.precision.atan2.mediump_compute.vec4
+dEQP-VK.glsl.builtin.precision.atan2.highp_compute.scalar
+dEQP-VK.glsl.builtin.precision.atan2.highp_compute.vec2
+dEQP-VK.glsl.builtin.precision.atan2.highp_compute.vec3
+dEQP-VK.glsl.builtin.precision.atan2.highp_compute.vec4
 dEQP-VK.glsl.builtin.precision.atan.highp_compute.scalar
 dEQP-VK.glsl.builtin.precision.atan.highp_compute.vec2
 dEQP-VK.glsl.builtin.precision.atan.highp_compute.vec3