mirror of
https://gitlab.winehq.org/wine/vkd3d.git
synced 2025-12-15 08:03:30 -08:00
tests/shader_runner: Handle the "rgba" probe format as an alias for "f32".
This commit is contained in:
Notes:
Henri Verbeet
2025-10-07 13:18:39 +02:00
Approved-by: Henri Verbeet (@hverbeet) Merge-Request: https://gitlab.winehq.org/wine/vkd3d/-/merge_requests/1771
@@ -88,8 +88,7 @@ float4 main() : SV_TARGET
|
|||||||
[test]
|
[test]
|
||||||
uniform 0 float4 1.0 0.0 0.0 0.0
|
uniform 0 float4 1.0 0.0 0.0 0.0
|
||||||
draw quad
|
draw quad
|
||||||
probe (0, 0) rgba (1e99, 1e99, 1e99, 1e99)
|
probe (0, 0) f32(inf, inf, inf, inf)
|
||||||
|
|
||||||
|
|
||||||
% d3dx9/d3dcompiler < 41 does not have mad().
|
% d3dx9/d3dcompiler < 41 does not have mad().
|
||||||
[pixel shader fail(sm<2)]
|
[pixel shader fail(sm<2)]
|
||||||
|
|||||||
@@ -74,5 +74,5 @@ float4 main() : SV_TARGET
|
|||||||
|
|
||||||
[test]
|
[test]
|
||||||
draw quad
|
draw quad
|
||||||
if(sm<2) probe (0, 0) rgba (0, 0, 0, 0)
|
if(sm<2) probe (0, 0) f32(0, 0, 0, 0)
|
||||||
if(sm>=4) probe (0, 0) rgba (1e99, 1e99, 1e99, 1e99)
|
if(sm>=4) probe (0, 0) f32(inf, inf, inf, inf)
|
||||||
|
|||||||
@@ -26,8 +26,7 @@ probe (0, 0) rgba (4.0, 8.0, 16.0, 3.0) 8
|
|||||||
% Degenerate cases
|
% Degenerate cases
|
||||||
uniform 0 float4 0.0 -0.0 INF -INF
|
uniform 0 float4 0.0 -0.0 INF -INF
|
||||||
draw quad
|
draw quad
|
||||||
probe (0, 0) rgba (1.0e39, -1.0e39, 0.0, -0.0) 8
|
probe (0, 0) f32(inf, -inf, 0.0, -0.0) 8
|
||||||
|
|
||||||
|
|
||||||
[pixel shader]
|
[pixel shader]
|
||||||
% Check invertibility
|
% Check invertibility
|
||||||
@@ -49,8 +48,7 @@ probe (0, 0) rgba (7.604, 3.1415, 2.72, 9.876) 8
|
|||||||
|
|
||||||
uniform 0 float4 0.0 -0.0 INF -INF
|
uniform 0 float4 0.0 -0.0 INF -INF
|
||||||
draw quad
|
draw quad
|
||||||
probe (0, 0) rgba (0.0, -0.0, 1.0e39, -1.0e39)
|
probe (0, 0) f32(0.0, -0.0, inf, -inf)
|
||||||
|
|
||||||
|
|
||||||
[pixel shader]
|
[pixel shader]
|
||||||
% Make sure swizzling works
|
% Make sure swizzling works
|
||||||
|
|||||||
@@ -20,7 +20,7 @@ float4 main() : sv_target
|
|||||||
|
|
||||||
[test]
|
[test]
|
||||||
draw quad
|
draw quad
|
||||||
probe (0, 0) rgba (22.0, -22.0, 1.0e100, -1.0e100)
|
probe (0, 0) f32(22.0, -22.0, inf, -inf)
|
||||||
|
|
||||||
[pixel shader]
|
[pixel shader]
|
||||||
uint4 main() : sv_target
|
uint4 main() : sv_target
|
||||||
@@ -64,7 +64,7 @@ float4 main() : sv_target
|
|||||||
|
|
||||||
[test]
|
[test]
|
||||||
todo(mvk & vulkan | msl) draw quad
|
todo(mvk & vulkan | msl) draw quad
|
||||||
todo(mvk) probe (0, 0) rgba (22.0, -22.0, 1.0e100, -1.0e100)
|
todo(mvk) probe (0, 0) f32(22.0, -22.0, inf, -inf)
|
||||||
|
|
||||||
[pixel shader]
|
[pixel shader]
|
||||||
uint4 main() : sv_target
|
uint4 main() : sv_target
|
||||||
@@ -108,7 +108,7 @@ float4 main() : sv_target
|
|||||||
|
|
||||||
[test]
|
[test]
|
||||||
todo(mvk & vulkan | msl) draw quad
|
todo(mvk & vulkan | msl) draw quad
|
||||||
todo(mvk) probe (0, 0) rgba (22.0, -22.0, 1.0e100, -1.0e100)
|
todo(mvk) probe (0, 0) f32(22.0, -22.0, inf, -inf)
|
||||||
|
|
||||||
[pixel shader]
|
[pixel shader]
|
||||||
uint4 main() : sv_target
|
uint4 main() : sv_target
|
||||||
|
|||||||
@@ -1441,7 +1441,7 @@ static void parse_test_directive(struct shader_runner *runner, const char *line)
|
|||||||
check_readback_data_uint(rb, &box, v.x, 0);
|
check_readback_data_uint(rb, &box, v.x, 0);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else if (match_string(line, "f32", &line))
|
else if (match_string(line, "f32", &line) || match_string(line, "rgba", &line))
|
||||||
{
|
{
|
||||||
struct vec4 v;
|
struct vec4 v;
|
||||||
|
|
||||||
@@ -1491,18 +1491,6 @@ static void parse_test_directive(struct shader_runner *runner, const char *line)
|
|||||||
check_readback_data_float(rb, &rect, v.x, ulps);
|
check_readback_data_float(rb, &rect, v.x, ulps);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else if (match_string(line, "rgba", &line))
|
|
||||||
{
|
|
||||||
struct vec4 v;
|
|
||||||
|
|
||||||
ret = sscanf(line, "( %f , %f , %f , %f ) %u", &v.x, &v.y, &v.z, &v.w, &ulps);
|
|
||||||
if (ret < 4)
|
|
||||||
fatal_error("Malformed probe arguments '%s'.\n", line);
|
|
||||||
if (ret < 5)
|
|
||||||
ulps = 0;
|
|
||||||
todo_if(runner->is_todo) bug_if(runner->is_bug)
|
|
||||||
check_readback_data_vec4(rb, &rect, &v, ulps);
|
|
||||||
}
|
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
fatal_error("Malformed probe arguments '%s'.\n", line);
|
fatal_error("Malformed probe arguments '%s'.\n", line);
|
||||||
|
|||||||
Reference in New Issue
Block a user