From: Francisco Casas fcasas@codeweavers.com
On shader_test files, now resources should be declared this way:
[texture n] -> [srv n] [srv buffer n] -> [srv n] [uav n] -> [uav n] [uav buffer n] -> [uav n] [vertex buffer n] -> [vb n] [render target n] -> [rtv n]
The dimension (buffer or 2D) is now specified as an additional parameter in the "size" directive:
For 2D resources: size (n, m) -> size (2d, n, m)
For buffers: size (n, 1) -> size (buffer, n) --- tests/hlsl/bool-semantics.shader_test | 2 +- tests/hlsl/cbuffer.shader_test | 16 +++--- tests/hlsl/combined-samplers.shader_test | 20 +++---- tests/hlsl/compute.shader_test | 2 +- tests/hlsl/gather-offset.shader_test | 4 +- tests/hlsl/gather.shader_test | 4 +- tests/hlsl/getdimensions.shader_test | 8 +-- tests/hlsl/initializer-objects.shader_test | 8 +-- tests/hlsl/is-front-face.shader_test | 4 +- tests/hlsl/load-level.shader_test | 4 +- tests/hlsl/matrix-semantics.shader_test | 20 +++---- tests/hlsl/multiple-rt.shader_test | 8 +-- tests/hlsl/nointerpolation.shader_test | 2 +- tests/hlsl/numthreads.shader_test | 2 +- tests/hlsl/object-parameters.shader_test | 24 ++++---- tests/hlsl/object-references.shader_test | 28 +++++----- tests/hlsl/register-reservations.shader_test | 28 +++++----- tests/hlsl/sample-bias.shader_test | 4 +- tests/hlsl/sample-grad.shader_test | 4 +- tests/hlsl/sample-level.shader_test | 4 +- tests/hlsl/sampler-offset.shader_test | 4 +- tests/hlsl/sampler.shader_test | 4 +- .../shader-interstage-interface.shader_test | 4 +- tests/hlsl/srv-buffers.shader_test | 16 +++--- tests/hlsl/static-initializer.shader_test | 6 +- tests/hlsl/struct-semantics.shader_test | 2 +- tests/hlsl/swizzle-constant-prop.shader_test | 4 +- tests/hlsl/texture-load-offset.shader_test | 4 +- tests/hlsl/texture-load-typed.shader_test | 12 ++-- tests/hlsl/texture-load.shader_test | 4 +- tests/hlsl/texture-ordering.shader_test | 40 +++++++------- tests/hlsl/uav-load.shader_test | 4 +- tests/hlsl/uav-out-param.shader_test | 4 +- tests/hlsl/uav-rwbuffer.shader_test | 8 +-- tests/hlsl/uav-rwtexture.shader_test | 16 +++--- tests/shader_runner.c | 55 ++++++------------- 36 files changed, 180 insertions(+), 203 deletions(-)
diff --git a/tests/hlsl/bool-semantics.shader_test b/tests/hlsl/bool-semantics.shader_test index d8df96a2a..a30254a5e 100644 --- a/tests/hlsl/bool-semantics.shader_test +++ b/tests/hlsl/bool-semantics.shader_test @@ -5,7 +5,7 @@ shader model >= 4.0 0 r32g32b32a32 uint apple 0 r32g32 int sv_position
-[vertex buffer 0] +[vb 0] format r32 uint 0 1 0x80000000 0xffffffff -2 -2 0 1 0x80000000 0xffffffff -2 2 diff --git a/tests/hlsl/cbuffer.shader_test b/tests/hlsl/cbuffer.shader_test index b4dc01edd..c776555ff 100644 --- a/tests/hlsl/cbuffer.shader_test +++ b/tests/hlsl/cbuffer.shader_test @@ -471,8 +471,8 @@ float4 main() : sv_target }
-[texture 0] -size (1, 1) +[srv 0] +size (2d, 1, 1) 0.0 0.0 0.0 4.0
[sampler 0] @@ -527,12 +527,12 @@ float4 main() : sv_target }
-[texture 0] -size (1, 1) +[srv 0] +size (2d, 1, 1) 1.0 1.0 1.0 1.0
-[texture 1] -size (1, 1) +[srv 1] +size (2d, 1, 1) 2.0 2.0 2.0 2.0
@@ -698,8 +698,8 @@ float4 main() : sv_target [require] shader model >= 5.0
-[texture 0] -size (1, 1) +[srv 0] +size (2d, 1, 1) 0.0 0.0 0.0 0.5
[pixel shader] diff --git a/tests/hlsl/combined-samplers.shader_test b/tests/hlsl/combined-samplers.shader_test index 235537594..91e1908e7 100644 --- a/tests/hlsl/combined-samplers.shader_test +++ b/tests/hlsl/combined-samplers.shader_test @@ -16,24 +16,24 @@ address clamp clamp clamp filter linear linear linear address clamp clamp clamp
-[texture 0] -size (1, 1) +[srv 0] +size (2d, 1, 1) 0.0 0.0 0.0 1.0
-[texture 1] -size (1, 1) +[srv 1] +size (2d, 1, 1) 1.0 1.0 1.0 1.0
-[texture 2] -size (1, 1) +[srv 2] +size (2d, 1, 1) 2.0 2.0 2.0 1.0
-[texture 3] -size (1, 1) +[srv 3] +size (2d, 1, 1) 3.0 3.0 3.0 1.0
-[texture 4] -size (1, 1) +[srv 4] +size (2d, 1, 1) 4.0 4.0 4.0 1.0
[pixel shader] diff --git a/tests/hlsl/compute.shader_test b/tests/hlsl/compute.shader_test index 2f2af9fc8..4f99221c2 100644 --- a/tests/hlsl/compute.shader_test +++ b/tests/hlsl/compute.shader_test @@ -3,7 +3,7 @@ shader model >= 5.0
[uav 0] format r32 float -size (1, 1) +size (2d, 1, 1)
0.1
diff --git a/tests/hlsl/gather-offset.shader_test b/tests/hlsl/gather-offset.shader_test index 6360d1fc8..ce063c149 100644 --- a/tests/hlsl/gather-offset.shader_test +++ b/tests/hlsl/gather-offset.shader_test @@ -6,8 +6,8 @@ shader model >= 4.1 filter linear linear linear address clamp clamp clamp
-[texture 0] -size (3, 3) +[srv 0] +size (2d, 3, 3) 0.0 0.0 0.0 0.4 0.1 0.0 0.5 0.0 0.2 0.0 0.0 0.4 0.0 0.1 0.5 0.0 0.1 0.1 0.0 0.4 0.2 0.1 0.5 0.0 0.0 0.2 0.0 0.4 0.1 0.2 0.5 0.0 0.2 0.2 0.0 0.4 diff --git a/tests/hlsl/gather.shader_test b/tests/hlsl/gather.shader_test index 9cfc2d599..ab0824054 100644 --- a/tests/hlsl/gather.shader_test +++ b/tests/hlsl/gather.shader_test @@ -6,8 +6,8 @@ shader model >= 4.1 filter linear linear linear address clamp clamp clamp
-[texture 0] -size (3, 3) +[srv 0] +size (2d, 3, 3) 0.0 0.0 0.0 0.4 0.1 0.0 0.5 0.0 0.2 0.0 0.0 0.4 0.0 0.1 0.5 0.0 0.1 0.1 0.0 0.4 0.2 0.1 0.5 0.0 0.0 0.2 0.0 0.4 0.1 0.2 0.5 0.0 0.2 0.2 0.0 0.4 diff --git a/tests/hlsl/getdimensions.shader_test b/tests/hlsl/getdimensions.shader_test index 01d12f87a..0528d1419 100644 --- a/tests/hlsl/getdimensions.shader_test +++ b/tests/hlsl/getdimensions.shader_test @@ -1,8 +1,8 @@ [require] shader model >= 4.0
-[texture 0] -size (2, 3) +[srv 0] +size (2d, 2, 3)
1.0 0.0 1.0 0.0 1.0 0.0 1.0 0.0 1.0 0.0 1.0 0.0 1.0 0.0 1.0 0.0 1.0 0.0 1.0 0.0 1.0 0.0 1.0 0.0 @@ -31,8 +31,8 @@ float4 main() : sv_target todo(sm>=6) draw quad probe all rgba (2.0, 3.0, 2.0, 3.0)
-[texture 1] -size (2, 2) +[srv 1] +size (2d, 2, 2) levels 2
1.0 0.0 1.0 0.0 1.0 0.0 1.0 0.0 diff --git a/tests/hlsl/initializer-objects.shader_test b/tests/hlsl/initializer-objects.shader_test index 514a7cebb..d839d82a4 100644 --- a/tests/hlsl/initializer-objects.shader_test +++ b/tests/hlsl/initializer-objects.shader_test @@ -1,14 +1,14 @@ [require] shader model >= 4.0
-[texture 0] -size (3, 3) +[srv 0] +size (2d, 3, 3) 0.1 0.1 0.1 0.1 0.2 0.2 0.2 0.2 0.3 0.3 0.3 0.3 0.4 0.4 0.4 0.4 0.5 0.5 0.5 0.5 0.6 0.6 0.6 0.6 0.7 0.7 0.7 0.7 0.8 0.8 0.8 0.8 0.9 0.9 0.9 0.9
-[texture 1] -size (2, 2) +[srv 1] +size (2d, 2, 2) 0.1 0.1 0.1 0.0 0.2 0.2 0.2 0.0 0.4 0.4 0.4 0.0 0.5 0.5 0.5 0.0
diff --git a/tests/hlsl/is-front-face.shader_test b/tests/hlsl/is-front-face.shader_test index 162d4e634..2838c260f 100644 --- a/tests/hlsl/is-front-face.shader_test +++ b/tests/hlsl/is-front-face.shader_test @@ -4,7 +4,7 @@ shader model >= 4.0 [input layout] 0 r32g32 float sv_position
-[vertex buffer 0] +[vb 0] -2.0 -2.0 2.0 -2.0 -2.0 2.0 @@ -25,7 +25,7 @@ float4 main(bool face : sv_isfrontface) : sv_target todo(sm>=6) draw triangle strip 4 probe all rgba (0.0, 1.0, 0.0, 1.0)
-[vertex buffer 0] +[vb 0] -2.0 -2.0 -2.0 2.0 2.0 -2.0 diff --git a/tests/hlsl/load-level.shader_test b/tests/hlsl/load-level.shader_test index 9df2f01fb..de40d8e84 100644 --- a/tests/hlsl/load-level.shader_test +++ b/tests/hlsl/load-level.shader_test @@ -1,8 +1,8 @@ [require] shader model >= 4.0
-[texture 0] -size (2, 2) +[srv 0] +size (2d, 2, 2) levels 2
1.0 0.0 1.0 0.0 1.0 0.0 1.0 0.0 diff --git a/tests/hlsl/matrix-semantics.shader_test b/tests/hlsl/matrix-semantics.shader_test index e19b6b48c..ec2d191b7 100644 --- a/tests/hlsl/matrix-semantics.shader_test +++ b/tests/hlsl/matrix-semantics.shader_test @@ -21,21 +21,21 @@ row_major float1x4 main() : sv_target draw quad probe all rgba (1.0, 2.0, 3.0, 4.0)
-[render target 0] +[rtv 0] format r32 float -size (640, 480) +size (2d, 640, 480)
-[render target 1] +[rtv 1] format r32 float -size (640, 480) +size (2d, 640, 480)
-[render target 2] +[rtv 2] format r32 float -size (640, 480) +size (2d, 640, 480)
-[render target 3] +[rtv 3] format r32 float -size (640, 480) +size (2d, 640, 480)
[pixel shader fail(sm>=6)] row_major float4x1 main() : sv_target @@ -84,9 +84,9 @@ probe render target 1 all r (2.0) probe render target 2 all r (5.0) probe render target 3 all r (6.0)
-[render target 0] +[rtv 0] format r32g32b32a32 float -size (640, 480) +size (2d, 640, 480)
[pixel shader fail(sm>=6)] void main(out row_major float1x4 x : sv_target0, out float1x2 y : sv_target1) diff --git a/tests/hlsl/multiple-rt.shader_test b/tests/hlsl/multiple-rt.shader_test index 59e4acbbe..85bfd269f 100644 --- a/tests/hlsl/multiple-rt.shader_test +++ b/tests/hlsl/multiple-rt.shader_test @@ -1,10 +1,10 @@ -[render target 0] +[rtv 0] format r32g32b32a32 float -size (640, 480) +size (2d, 640, 480)
-[render target 1] +[rtv 1] format r32g32b32a32 float -size (640, 480) +size (2d, 640, 480)
[pixel shader] void main(out float4 o0 : sv_target0, out float4 o1 : sv_target1) diff --git a/tests/hlsl/nointerpolation.shader_test b/tests/hlsl/nointerpolation.shader_test index a3c9edfd1..5fe4e9a33 100644 --- a/tests/hlsl/nointerpolation.shader_test +++ b/tests/hlsl/nointerpolation.shader_test @@ -4,7 +4,7 @@ shader model >= 4.0 [input layout] 0 r32g32b32a32 float texcoord
-[vertex buffer 0] +[vb 0] 0.0 1.0 0.0 1.0 1.0 0.0 0.0 1.0 0.0 0.0 1.0 1.0 diff --git a/tests/hlsl/numthreads.shader_test b/tests/hlsl/numthreads.shader_test index fb11dc480..e8f7900bf 100644 --- a/tests/hlsl/numthreads.shader_test +++ b/tests/hlsl/numthreads.shader_test @@ -166,7 +166,7 @@ void main() { func(); }
[uav 0] format r32 float -size (2, 2) +size (2d, 2, 2)
1.0 1.0 1.0 1.0 diff --git a/tests/hlsl/object-parameters.shader_test b/tests/hlsl/object-parameters.shader_test index 0d279fb27..4a44a0c7e 100644 --- a/tests/hlsl/object-parameters.shader_test +++ b/tests/hlsl/object-parameters.shader_test @@ -48,33 +48,33 @@ float4 main(struct apple input, uniform float param) : sv_target }
-[texture 0] -size (2, 2) +[srv 0] +size (2d, 2, 2) 1.0 1.0 1.0 1.0 0.0 0.0 0.0 1.0 1.0 1.0 1.0 1.0 0.0 0.0 0.0 1.0
-[texture 1] -size (2, 2) +[srv 1] +size (2d, 2, 2) 2.0 2.0 2.0 1.0 0.0 0.0 0.0 1.0 2.0 2.0 2.0 1.0 0.0 0.0 0.0 1.0
-[texture 2] -size (2, 2) +[srv 2] +size (2d, 2, 2) 3.0 3.0 3.0 1.0 0.0 0.0 0.0 1.0 3.0 3.0 3.0 1.0 0.0 0.0 0.0 1.0
-[texture 3] -size (2, 2) +[srv 3] +size (2d, 2, 2) 4.0 4.0 4.0 1.0 0.0 0.0 0.0 1.0 4.0 4.0 4.0 1.0 0.0 0.0 0.0 1.0
-[texture 4] -size (2, 2) +[srv 4] +size (2d, 2, 2) 5.0 5.0 5.0 1.0 0.0 0.0 0.0 1.0 5.0 5.0 5.0 1.0 0.0 0.0 0.0 1.0
-[texture 5] -size (2, 2) +[srv 5] +size (2d, 2, 2) 6.0 6.0 6.0 1.0 0.0 0.0 0.0 1.0 6.0 6.0 6.0 1.0 0.0 0.0 0.0 1.0
diff --git a/tests/hlsl/object-references.shader_test b/tests/hlsl/object-references.shader_test index c857f3885..6216d9557 100644 --- a/tests/hlsl/object-references.shader_test +++ b/tests/hlsl/object-references.shader_test @@ -14,12 +14,12 @@ float4 main() : sv_target shader model >= 4.0
-[texture 0] -size (1, 1) +[srv 0] +size (2d, 1, 1) 0.77 0.77 0.77 0.77
-[texture 1] -size (1, 1) +[srv 1] +size (2d, 1, 1) 0.64 0.64 0.64 0.64
[sampler 0] @@ -50,8 +50,8 @@ todo(sm>=6) draw quad probe all rgba (77.77, 77.77, 77.77, 77.77)
-[texture 0] -size (2, 2) +[srv 0] +size (2d, 2, 2) 0.1 0.2 0.3 0.4 0.5 0.7 0.6 0.8 0.6 0.5 0.2 0.1 0.8 0.0 0.7 1.0
@@ -80,16 +80,16 @@ probe (0, 1) rgba (0.6, 0.5, 0.2, 0.1) probe (1, 1) rgba (0.8, 0.0, 0.7, 1.0)
-[texture 0] -size (1, 1) +[srv 0] +size (2d, 1, 1) 1.0 1.0 1.0 1.0
-[texture 1] -size (1, 1) +[srv 1] +size (2d, 1, 1) 2.0 2.0 2.0 1.0
-[texture 2] -size (1, 1) +[srv 2] +size (2d, 1, 1) 3.0 3.0 3.0 1.0
[pixel shader] @@ -219,8 +219,8 @@ float4 main(Texture2D tex2) : sv_target shader model >= 5.0
-[texture 0] -size (1, 1) +[srv 0] +size (2d, 1, 1) 1.0 2.0 3.0 4.0
[pixel shader todo fail(sm>=6)] diff --git a/tests/hlsl/register-reservations.shader_test b/tests/hlsl/register-reservations.shader_test index 9539b05ff..0c593d11b 100644 --- a/tests/hlsl/register-reservations.shader_test +++ b/tests/hlsl/register-reservations.shader_test @@ -2,24 +2,24 @@ shader model >= 4.0
-[texture 0] -size (1, 1) +[srv 0] +size (2d, 1, 1) 0.0 0.0 0.0 99.0
-[texture 1] -size (1, 1) +[srv 1] +size (2d, 1, 1) 1.0 1.0 1.0 99.0
-[texture 2] -size (1, 1) +[srv 2] +size (2d, 1, 1) 2.0 2.0 2.0 99.0
-[texture 3] -size (1, 1) +[srv 3] +size (2d, 1, 1) 3.0 3.0 3.0 99.0
-[texture 4] -size (1, 1) +[srv 4] +size (2d, 1, 1) 4.0 4.0 4.0 99.0
@@ -161,15 +161,15 @@ probe all rgba (2.0, 2.0, 2.0, 99.0) [require] shader model >= 5.0
-[texture 0] -size (2, 2) +[srv 0] +size (2d, 2, 2) 0.0 0.0 0.0 99.0 0.0 0.0 0.0 99.0 0.0 0.0 0.0 99.0 0.0 0.0 0.0 99.0
-[texture 1] -size (2, 2) +[srv 1] +size (2d, 2, 2) 1.0 1.0 1.0 99.0 1.0 1.0 1.0 99.0 0.0 0.0 0.0 99.0 diff --git a/tests/hlsl/sample-bias.shader_test b/tests/hlsl/sample-bias.shader_test index 5b7067b52..cb956c6ae 100644 --- a/tests/hlsl/sample-bias.shader_test +++ b/tests/hlsl/sample-bias.shader_test @@ -2,8 +2,8 @@ filter linear linear linear address clamp clamp clamp
-[texture 0] -size (2, 2) +[srv 0] +size (2d, 2, 2) levels 2
1.0 0.0 1.0 0.0 1.0 0.0 1.0 0.0 diff --git a/tests/hlsl/sample-grad.shader_test b/tests/hlsl/sample-grad.shader_test index 298037a77..00953c55f 100644 --- a/tests/hlsl/sample-grad.shader_test +++ b/tests/hlsl/sample-grad.shader_test @@ -5,8 +5,8 @@ shader model >= 4.0 filter linear linear linear address clamp clamp clamp
-[texture 0] -size (2, 2) +[srv 0] +size (2d, 2, 2) levels 2
1.0 0.0 1.0 0.0 1.0 0.0 1.0 0.0 diff --git a/tests/hlsl/sample-level.shader_test b/tests/hlsl/sample-level.shader_test index 8b2890ff7..337d6a6da 100644 --- a/tests/hlsl/sample-level.shader_test +++ b/tests/hlsl/sample-level.shader_test @@ -5,8 +5,8 @@ shader model >= 3.0 filter linear linear linear address clamp clamp clamp
-[texture 0] -size (2, 2) +[srv 0] +size (2d, 2, 2) levels 2
1.0 0.0 1.0 0.0 1.0 0.0 1.0 0.0 diff --git a/tests/hlsl/sampler-offset.shader_test b/tests/hlsl/sampler-offset.shader_test index 498a8ed3a..f569d8805 100644 --- a/tests/hlsl/sampler-offset.shader_test +++ b/tests/hlsl/sampler-offset.shader_test @@ -5,8 +5,8 @@ shader model >= 4.0 filter point point point address clamp clamp clamp
-[texture 0] -size (3, 3) +[srv 0] +size (2d, 3, 3) 0.0 0.0 0.0 0.4 0.1 0.0 0.5 0.0 0.2 0.0 0.0 0.4 0.0 0.1 0.5 0.0 0.1 0.1 0.0 0.4 0.2 0.1 0.5 0.0 0.0 0.2 0.0 0.4 0.1 0.2 0.5 0.0 0.2 0.2 0.0 0.4 diff --git a/tests/hlsl/sampler.shader_test b/tests/hlsl/sampler.shader_test index caff7b2fa..2b0b02f4f 100644 --- a/tests/hlsl/sampler.shader_test +++ b/tests/hlsl/sampler.shader_test @@ -2,8 +2,8 @@ filter linear linear linear address clamp clamp clamp
-[texture 0] -size (2, 2) +[srv 0] +size (2d, 2, 2) 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 1.0 0.0 1.0 0.0
diff --git a/tests/hlsl/shader-interstage-interface.shader_test b/tests/hlsl/shader-interstage-interface.shader_test index 584b88cf9..ea0cbb979 100644 --- a/tests/hlsl/shader-interstage-interface.shader_test +++ b/tests/hlsl/shader-interstage-interface.shader_test @@ -9,13 +9,13 @@ shader model >= 4.0 1 r32 uint TEXCOORD 3 0 r32 float TEXCOORD 4
-[vertex buffer 0] +[vb 0] -1.0 -1.0 3.0 5.0 5.0 7.0 -1.0 1.0 3.0 5.0 5.0 7.0 1.0 -1.0 3.0 5.0 5.0 7.0 1.0 1.0 3.0 5.0 5.0 7.0
-[vertex buffer 1] +[vb 1] format r32 uint 2 6 2 6 diff --git a/tests/hlsl/srv-buffers.shader_test b/tests/hlsl/srv-buffers.shader_test index 04c797f8b..24a077cee 100644 --- a/tests/hlsl/srv-buffers.shader_test +++ b/tests/hlsl/srv-buffers.shader_test @@ -2,8 +2,8 @@ shader model >= 4.0
-[buffer srv 0] -size (1, 4) +[srv 0] +size (buffer, 4) 0.0 1.0 2.0 3.0 4.0 5.0 6.0 7.0 8.0 9.0 10.0 11.0 @@ -44,16 +44,16 @@ todo draw quad probe all rgba (4000.0, 8.0, 9.0, 10.0)
-[texture 0] -size (1, 1) +[srv 0] +size (2d, 1, 1) -1.0 -1.0 -1.0 -1.0
[sampler 0] filter linear linear linear address clamp clamp clamp
-[buffer srv 1] -size (1, 1) +[srv 1] +size (buffer, 1) 1.0 2.0 3.0 4.0
[pixel shader todo] @@ -71,8 +71,8 @@ todo draw quad probe all rgba (3.0, 4.0, -1.0, -1.0)
-[buffer srv 0] -size (1, 4) +[srv 0] +size (buffer, 4) 0.0 1.0 2.0 3.0 4.0 5.0 6.0 7.0 8.0 9.0 10.0 11.0 diff --git a/tests/hlsl/static-initializer.shader_test b/tests/hlsl/static-initializer.shader_test index 217444308..d505b651d 100644 --- a/tests/hlsl/static-initializer.shader_test +++ b/tests/hlsl/static-initializer.shader_test @@ -60,8 +60,8 @@ filter linear linear linear address clamp clamp clamp
-[texture 0] -size (1, 1) +[srv 0] +size (2d, 1, 1) 1.0 2.0 3.0 4.0
@@ -172,7 +172,7 @@ shader model >= 5.0
[uav 1] format r32 float -size (1, 1) +size (2d, 1, 1)
0.5
diff --git a/tests/hlsl/struct-semantics.shader_test b/tests/hlsl/struct-semantics.shader_test index c88006eb8..a23f490db 100644 --- a/tests/hlsl/struct-semantics.shader_test +++ b/tests/hlsl/struct-semantics.shader_test @@ -2,7 +2,7 @@ 0 r32g32b32a32 float texcoord 0 r32g32 float position
-[vertex buffer 0] +[vb 0] 0.0 1.0 0.0 1.0 -2.0 -2.0 0.0 1.0 0.0 1.0 -2.0 2.0 0.0 1.0 0.0 1.0 2.0 -2.0 diff --git a/tests/hlsl/swizzle-constant-prop.shader_test b/tests/hlsl/swizzle-constant-prop.shader_test index a0ec18e45..f40cc4901 100644 --- a/tests/hlsl/swizzle-constant-prop.shader_test +++ b/tests/hlsl/swizzle-constant-prop.shader_test @@ -5,8 +5,8 @@ shader model >= 4.0
-[texture 0] -size (4, 4) +[srv 0] +size (2d, 4, 4) 1 1 1 1 2 2 2 2 3 3 3 3 4 4 4 4 5 5 5 5 6 6 6 6 7 7 7 7 8 8 8 8 9 9 9 9 10 10 10 10 11 11 11 11 12 12 12 12 diff --git a/tests/hlsl/texture-load-offset.shader_test b/tests/hlsl/texture-load-offset.shader_test index f32b2191f..41e6d22ca 100644 --- a/tests/hlsl/texture-load-offset.shader_test +++ b/tests/hlsl/texture-load-offset.shader_test @@ -1,8 +1,8 @@ [require] shader model >= 4.0
-[texture 0] -size (3, 3) +[srv 0] +size (2d, 3, 3) 0 0 0 1 1 0 0 1 2 0 0 1 0 1 0 1 1 1 0 1 2 1 0 1 0 2 0 1 1 2 0 1 2 2 0 1 diff --git a/tests/hlsl/texture-load-typed.shader_test b/tests/hlsl/texture-load-typed.shader_test index 67a13f10d..24a735ab5 100644 --- a/tests/hlsl/texture-load-typed.shader_test +++ b/tests/hlsl/texture-load-typed.shader_test @@ -18,21 +18,21 @@ float4 main() : sv_target return float4(0, 0, 0, 0); }
-[texture 0] +[srv 0] format r32 float -size (1, 1) +size (2d, 1, 1)
0.8
-[texture 1] +[srv 1] format r32 sint -size (1, 1) +size (2d, 1, 1)
-3
-[texture 2] +[srv 2] format r32g32 uint -size (1, 1) +size (2d, 1, 1)
4294967295 123
diff --git a/tests/hlsl/texture-load.shader_test b/tests/hlsl/texture-load.shader_test index 30a33a4a4..3b7260825 100644 --- a/tests/hlsl/texture-load.shader_test +++ b/tests/hlsl/texture-load.shader_test @@ -1,8 +1,8 @@ [require] shader model >= 4.0
-[texture 0] -size (2, 2) +[srv 0] +size (2d, 2, 2) 0.1 0.2 0.3 0.4 0.5 0.7 0.6 0.8 0.6 0.5 0.2 0.1 0.8 0.0 0.7 1.0
diff --git a/tests/hlsl/texture-ordering.shader_test b/tests/hlsl/texture-ordering.shader_test index 24cd986ca..25819e658 100644 --- a/tests/hlsl/texture-ordering.shader_test +++ b/tests/hlsl/texture-ordering.shader_test @@ -30,44 +30,44 @@ address clamp clamp clamp filter linear linear linear address clamp clamp clamp
-[texture 0] -size (1, 1) +[srv 0] +size (2d, 1, 1) 0.0 0.0 0.0 1.0
-[texture 1] -size (1, 1) +[srv 1] +size (2d, 1, 1) 1.0 1.0 1.0 1.0
-[texture 2] -size (1, 1) +[srv 2] +size (2d, 1, 1) 2.0 2.0 2.0 1.0
-[texture 3] -size (1, 1) +[srv 3] +size (2d, 1, 1) 3.0 3.0 3.0 1.0
-[texture 4] -size (1, 1) +[srv 4] +size (2d, 1, 1) 4.0 4.0 4.0 1.0
-[texture 5] -size (1, 1) +[srv 5] +size (2d, 1, 1) 5.0 5.0 5.0 1.0
-[texture 6] -size (1, 1) +[srv 6] +size (2d, 1, 1) 6.0 6.0 6.0 1.0
-[texture 7] -size (1, 1) +[srv 7] +size (2d, 1, 1) 7.0 7.0 7.0 1.0
-[texture 8] -size (1, 1) +[srv 8] +size (2d, 1, 1) 8.0 8.0 8.0 1.0
-[texture 9] -size (1, 1) +[srv 9] +size (2d, 1, 1) 9.0 9.0 9.0 1.0
diff --git a/tests/hlsl/uav-load.shader_test b/tests/hlsl/uav-load.shader_test index 9088ffa0d..2b3e542b6 100644 --- a/tests/hlsl/uav-load.shader_test +++ b/tests/hlsl/uav-load.shader_test @@ -3,13 +3,13 @@ shader model >= 5.0
[uav 0] format r32 float -size (3, 1) +size (2d, 3, 1)
0.1 0.2 0.3
[uav 1] format r32 float -size (1, 1) +size (2d, 1, 1)
0.5
diff --git a/tests/hlsl/uav-out-param.shader_test b/tests/hlsl/uav-out-param.shader_test index 796c4bf1f..5be5fffb3 100644 --- a/tests/hlsl/uav-out-param.shader_test +++ b/tests/hlsl/uav-out-param.shader_test @@ -3,7 +3,7 @@ shader model >= 5.0
[uav 0] format r32g32b32a32 float -size (1, 1) +size (2d, 1, 1)
0.1 0.2 0.3 0.4
@@ -31,7 +31,7 @@ probe uav 0 (0, 0) rgba (0.4, 0.1, 0.2, 0.3)
[uav 0] format r32 float -size (1, 1) +size (2d, 1, 1)
0.1
diff --git a/tests/hlsl/uav-rwbuffer.shader_test b/tests/hlsl/uav-rwbuffer.shader_test index b476c7854..1a236e998 100644 --- a/tests/hlsl/uav-rwbuffer.shader_test +++ b/tests/hlsl/uav-rwbuffer.shader_test @@ -6,9 +6,9 @@ shader model >= 5.0 % lower than the highest render target. % This ceases to be true with shader model 5.1.
-[render target 1] +[rtv 1] format r32g32b32a32 float -size (640, 480) +size (2d, 640, 480)
[pixel shader] struct s @@ -88,8 +88,8 @@ float4 main() : sv_target1 return 0; }
-[buffer uav 2] -size (1, 1) +[uav 2] +size (buffer, 1)
0.1 0.2 0.3 0.4
diff --git a/tests/hlsl/uav-rwtexture.shader_test b/tests/hlsl/uav-rwtexture.shader_test index 76535bd59..9eda4e046 100644 --- a/tests/hlsl/uav-rwtexture.shader_test +++ b/tests/hlsl/uav-rwtexture.shader_test @@ -25,13 +25,13 @@ float4 main() : sv_target
[uav 1] format r32 float -size (2, 2) +size (2d, 2, 2)
0.1 0.2 0.3 0.4
[uav 2] -size (1, 1) +size (2d, 1, 1)
0.5 0.6 0.7 0.8
@@ -62,12 +62,12 @@ probe uav 2 (0, 0) rgba (2.0, 1.0, 4.0, 3.0) % lower than the highest render target. % This ceases to be true with shader model 5.1.
-[render target 1] +[rtv 1] format r32g32b32a32 float -size (640, 480) +size (2d, 640, 480)
[uav 2] -size (1, 1) +size (2d, 1, 1)
0.1 0.2 0.3 0.4
@@ -104,7 +104,7 @@ probe uav 2 (0, 0) rgba (0.9, 0.8, 0.7, 0.6)
[uav 3] -size (1, 1) +size (2d, 1, 1)
0.1 0.2 0.3 0.4
@@ -138,12 +138,12 @@ probe uav 3 (0, 0) rgba (0.9, 0.8, 0.7, 0.6) % Test that we can declare and use an array of UAVs.
[uav 2] -size (1, 1) +size (2d, 1, 1)
0.1 0.2 0.3 0.4
[uav 3] -size (1, 1) +size (2d, 1, 1)
0.5 0.6 0.7 0.8
diff --git a/tests/shader_runner.c b/tests/shader_runner.c index a814ffd6e..25bfa643d 100644 --- a/tests/shader_runner.c +++ b/tests/shader_runner.c @@ -304,17 +304,25 @@ static void parse_sampler_directive(struct sampler *sampler, const char *line)
static void parse_resource_directive(struct resource_params *resource, const char *line) { - int ret; - if (match_string(line, "format", &line)) { resource->format = parse_format(line, &resource->data_type, &resource->texel_size, &line); } else if (match_string(line, "size", &line)) { - ret = sscanf(line, "( %u , %u )", &resource->width, &resource->height); - if (ret < 2) - fatal_error("Malformed texture size '%s'.\n", line); + if (sscanf(line, "( buffer , %u ) ", &resource->width) == 1) + { + resource->dimension = RESOURCE_DIMENSION_BUFFER; + resource->height = 1; + } + else if (sscanf(line, "( 2d , %u , %u ) ", &resource->width, &resource->height) == 2) + { + resource->dimension = RESOURCE_DIMENSION_2D; + } + else + { + fatal_error("Malformed resource size '%s'.\n", line); + } } else if (match_string(line, "levels", &line)) { @@ -1358,7 +1366,7 @@ void run_shader_tests(struct shader_runner *runner, const struct shader_runner_o current_sampler->v_address = D3D12_TEXTURE_ADDRESS_MODE_CLAMP; current_sampler->w_address = D3D12_TEXTURE_ADDRESS_MODE_CLAMP; } - else if (sscanf(line, "[render target %u]\n", &index)) + else if (sscanf(line, "[rtv %u]\n", &index)) { state = STATE_RESOURCE;
@@ -1366,13 +1374,12 @@ void run_shader_tests(struct shader_runner *runner, const struct shader_runner_o
current_resource.slot = index; current_resource.type = RESOURCE_TYPE_RENDER_TARGET; - current_resource.dimension = RESOURCE_DIMENSION_2D; current_resource.format = DXGI_FORMAT_R32G32B32A32_FLOAT; current_resource.data_type = TEXTURE_DATA_FLOAT; current_resource.texel_size = 16; current_resource.level_count = 1; } - else if (sscanf(line, "[texture %u]\n", &index)) + else if (sscanf(line, "[srv %u]\n", &index)) { state = STATE_RESOURCE;
@@ -1380,7 +1387,6 @@ void run_shader_tests(struct shader_runner *runner, const struct shader_runner_o
current_resource.slot = index; current_resource.type = RESOURCE_TYPE_TEXTURE; - current_resource.dimension = RESOURCE_DIMENSION_2D; current_resource.format = DXGI_FORMAT_R32G32B32A32_FLOAT; current_resource.data_type = TEXTURE_DATA_FLOAT; current_resource.texel_size = 16; @@ -1394,41 +1400,12 @@ void run_shader_tests(struct shader_runner *runner, const struct shader_runner_o
current_resource.slot = index; current_resource.type = RESOURCE_TYPE_UAV; - current_resource.dimension = RESOURCE_DIMENSION_2D; - current_resource.format = DXGI_FORMAT_R32G32B32A32_FLOAT; - current_resource.data_type = TEXTURE_DATA_FLOAT; - current_resource.texel_size = 16; - current_resource.level_count = 1; - } - else if (sscanf(line, "[buffer srv %u]\n", &index)) - { - state = STATE_RESOURCE; - - memset(¤t_resource, 0, sizeof(current_resource)); - - current_resource.slot = index; - current_resource.type = RESOURCE_TYPE_TEXTURE; - current_resource.dimension = RESOURCE_DIMENSION_BUFFER; - current_resource.format = DXGI_FORMAT_R32G32B32A32_FLOAT; - current_resource.data_type = TEXTURE_DATA_FLOAT; - current_resource.texel_size = 16; - current_resource.level_count = 1; - } - else if (sscanf(line, "[buffer uav %u]\n", &index)) - { - state = STATE_RESOURCE; - - memset(¤t_resource, 0, sizeof(current_resource)); - - current_resource.slot = index; - current_resource.type = RESOURCE_TYPE_UAV; - current_resource.dimension = RESOURCE_DIMENSION_BUFFER; current_resource.format = DXGI_FORMAT_R32G32B32A32_FLOAT; current_resource.data_type = TEXTURE_DATA_FLOAT; current_resource.texel_size = 16; current_resource.level_count = 1; } - else if (sscanf(line, "[vertex buffer %u]\n", &index)) + else if (sscanf(line, "[vb %u]\n", &index)) { state = STATE_RESOURCE;