[PATCH vkd3d 5/5] tests: Mark some tests as requiring shader model 4.0.

Zebediah Figura zfigura at codeweavers.com
Mon Mar 7 19:55:44 CST 2022


Signed-off-by: Zebediah Figura <zfigura at codeweavers.com>
---
 tests/arithmetic-uint.shader_test    | 3 +++
 tests/bitwise.shader_test            | 3 +++
 tests/cast-to-float.shader_test      | 4 +++-
 tests/cast-to-half.shader_test       | 3 +++
 tests/cast-to-int.shader_test        | 3 +++
 tests/cast-to-uint.shader_test       | 3 +++
 tests/floor.shader_test              | 3 +++
 tests/hlsl-function-cast.shader_test | 3 +++
 tests/sampler-offset.shader_test     | 3 +++
 tests/shader_runner.c                | 3 +++
 tests/shader_runner.h                | 3 ++-
 tests/shader_runner_d3d11.c          | 1 +
 tests/shader_runner_d3d12.c          | 1 +
 13 files changed, 34 insertions(+), 2 deletions(-)

diff --git a/tests/arithmetic-uint.shader_test b/tests/arithmetic-uint.shader_test
index d73947f9f..b016dbb6a 100644
--- a/tests/arithmetic-uint.shader_test
+++ b/tests/arithmetic-uint.shader_test
@@ -1,3 +1,6 @@
+[require]
+shader model >= 4.0
+
 [pixel shader]
 float4 main() : SV_TARGET
 {
diff --git a/tests/bitwise.shader_test b/tests/bitwise.shader_test
index 679cf9cd9..551600370 100644
--- a/tests/bitwise.shader_test
+++ b/tests/bitwise.shader_test
@@ -1,3 +1,6 @@
+[require]
+shader model >= 4.0
+
 [pixel shader]
 float4 main() : SV_TARGET
 {
diff --git a/tests/cast-to-float.shader_test b/tests/cast-to-float.shader_test
index 75822e527..f09100204 100644
--- a/tests/cast-to-float.shader_test
+++ b/tests/cast-to-float.shader_test
@@ -1,5 +1,7 @@
-[pixel shader]
+[require]
+shader model >= 4.0
 
+[pixel shader]
 float4 main(uniform int i, uniform uint u, uniform bool b, uniform half h) : sv_target
 {
     return float4(((float)i) + 1.5, ((float)u) - 2.5, ((float)b) / 2, h);
diff --git a/tests/cast-to-half.shader_test b/tests/cast-to-half.shader_test
index 6db5412de..81d6bc5d5 100644
--- a/tests/cast-to-half.shader_test
+++ b/tests/cast-to-half.shader_test
@@ -1,3 +1,6 @@
+[require]
+shader model >= 4.0
+
 [pixel shader]
 
 float4 main(uniform int i, uniform uint u, uniform bool b, uniform float f) : sv_target
diff --git a/tests/cast-to-int.shader_test b/tests/cast-to-int.shader_test
index c7d1e23c3..fe8c79a3c 100644
--- a/tests/cast-to-int.shader_test
+++ b/tests/cast-to-int.shader_test
@@ -1,3 +1,6 @@
+[require]
+shader model >= 4.0
+
 [pixel shader]
 
 float4 main(uniform float f, uniform uint u, uniform bool b, uniform half h) : sv_target
diff --git a/tests/cast-to-uint.shader_test b/tests/cast-to-uint.shader_test
index 01b0442cf..93862a36f 100644
--- a/tests/cast-to-uint.shader_test
+++ b/tests/cast-to-uint.shader_test
@@ -1,3 +1,6 @@
+[require]
+shader model >= 4.0
+
 [pixel shader]
 
 float4 main(uniform float f, uniform int i, uniform bool b, uniform half h) : sv_target
diff --git a/tests/floor.shader_test b/tests/floor.shader_test
index 033d759ca..c111f98b9 100644
--- a/tests/floor.shader_test
+++ b/tests/floor.shader_test
@@ -23,6 +23,9 @@ uniform 0 float4 -0.5 6.5 7.5 3.4
 draw quad
 probe all rgba (6.0, 7.0, -1.0, 3.0) 4
 
+[require]
+shader model >= 4.0
+
 [pixel shader]
 float4 main(uniform int4 u) : sv_target
 {
diff --git a/tests/hlsl-function-cast.shader_test b/tests/hlsl-function-cast.shader_test
index 4f80ac596..41c452e5f 100644
--- a/tests/hlsl-function-cast.shader_test
+++ b/tests/hlsl-function-cast.shader_test
@@ -67,6 +67,9 @@ uniform 0 float4 -1.9 -1.0 2.9 4.0
 draw quad
 probe all rgba (-1.0, -1.0, 2.0, 4.0)
 
+[require]
+shader model >= 4.0
+
 [pixel shader]
 
 void func(inout float4 a)
diff --git a/tests/sampler-offset.shader_test b/tests/sampler-offset.shader_test
index 83900c55e..6f8357dfa 100644
--- a/tests/sampler-offset.shader_test
+++ b/tests/sampler-offset.shader_test
@@ -1,3 +1,6 @@
+[require]
+shader model >= 4.0
+
 [sampler 0]
 filter point point point
 address clamp clamp clamp
diff --git a/tests/shader_runner.c b/tests/shader_runner.c
index 558d074d7..1808a581b 100644
--- a/tests/shader_runner.c
+++ b/tests/shader_runner.c
@@ -105,6 +105,7 @@ static void parse_require_directive(struct shader_context *context, const char *
     {
         static const char *const model_strings[] =
         {
+            [SHADER_MODEL_2_0] = "2.0",
             [SHADER_MODEL_4_0] = "4.0",
             [SHADER_MODEL_4_1] = "4.1",
             [SHADER_MODEL_5_0] = "5.0",
@@ -445,6 +446,8 @@ void run_shader_tests(struct shader_context *context, int argc, char **argv, con
     char line[256];
     FILE *f;
 
+    context->minimum_shader_model = SHADER_MODEL_2_0;
+
     for (i = 1; i < argc; ++i)
     {
         if (argv[i][0] != '-')
diff --git a/tests/shader_runner.h b/tests/shader_runner.h
index 245ef358f..822a863f1 100644
--- a/tests/shader_runner.h
+++ b/tests/shader_runner.h
@@ -25,7 +25,8 @@
 
 enum shader_model
 {
-    SHADER_MODEL_4_0 = 0,
+    SHADER_MODEL_2_0,
+    SHADER_MODEL_4_0,
     SHADER_MODEL_4_1,
     SHADER_MODEL_5_0,
     SHADER_MODEL_5_1,
diff --git a/tests/shader_runner_d3d11.c b/tests/shader_runner_d3d11.c
index d77a4b246..79f98640e 100644
--- a/tests/shader_runner_d3d11.c
+++ b/tests/shader_runner_d3d11.c
@@ -441,6 +441,7 @@ static void d3d11_runner_draw_quad(struct shader_context *c)
 
     static const char *const ps_profiles[] =
     {
+        [SHADER_MODEL_2_0] = "ps_4_0",
         [SHADER_MODEL_4_0] = "ps_4_0",
         [SHADER_MODEL_4_1] = "ps_4_1",
         [SHADER_MODEL_5_0] = "ps_5_0",
diff --git a/tests/shader_runner_d3d12.c b/tests/shader_runner_d3d12.c
index 3b415ec76..00bb9e414 100644
--- a/tests/shader_runner_d3d12.c
+++ b/tests/shader_runner_d3d12.c
@@ -58,6 +58,7 @@ static ID3D10Blob *compile_shader(const char *source, enum shader_model shader_m
 
     static const char *const shader_models[] =
     {
+        [SHADER_MODEL_2_0] = "ps_4_0",
         [SHADER_MODEL_4_0] = "ps_4_0",
         [SHADER_MODEL_4_1] = "ps_4_1",
         [SHADER_MODEL_5_0] = "ps_5_0",
-- 
2.35.1




More information about the wine-devel mailing list