vkd3d-shader/hlsl: Allow effect calls on default value initializers.

This commit is contained in:
Francisco Casas
2024-06-25 18:36:32 -04:00
committed by Henri Verbeet
parent 4aa262d773
commit ffc1449412
Notes: Henri Verbeet 2024-09-14 16:53:12 +02:00
Approved-by: Elizabeth Figura (@zfigura)
Approved-by: Henri Verbeet (@hverbeet)
Merge-Request: https://gitlab.winehq.org/wine/vkd3d/-/merge_requests/1057
6 changed files with 68 additions and 24 deletions

View File

@@ -161,13 +161,13 @@ float4 main() : sv_target { return 0; }
PixelShader ps1 = {42}; // braces make the type checking more permissive.
% This compiles, but the default value of "f" is not written.
[pixel shader todo fail(sm>=6)]
[pixel shader fail(sm>=6)]
float4 fun() : sv_target { return 0; }
float f = {CompileShader(ps_2_0, fun())};
float4 main() : sv_target { return f; }
% This also compiles, but the default value of "f" is not written.
[pixel shader todo fail(sm>=6)]
[pixel shader fail(sm>=6)]
float4 fun() : sv_target { return 0; }
float4 f = {1, 2, compile ps_2_0 fun(), 4};
float4 main() : sv_target { return f; }
@@ -225,7 +225,7 @@ shader model < 6.0
% The following test segfaults on DXC.
[pixel shader todo]
[pixel shader]
float f;
float4 foo(uniform float r) : sv_target { return r; }
@@ -247,7 +247,7 @@ technique
float4 main() : sv_target { return 0; }
[test]
todo draw quad
todo(glsl) draw quad
probe (0, 0) rgba (0, 0, 0, 0)