vkd3d-shader/hlsl: Find compatible function overloads.

But still throw hlsl_fixme() when there is more than one.
Prioritizing among multiple compatible function overloads in the same way
as the native compiler would require systematic testing.
This commit is contained in:
Francisco Casas
2023-01-23 17:02:40 -03:00
committed by Alexandre Julliard
parent d279d34801
commit f08c0a7c03
Notes: Alexandre Julliard 2023-02-20 22:45:40 +01:00
Approved-by: Giovanni Mascellani (@giomasce)
Approved-by: Zebediah Figura (@zfigura)
Approved-by: Henri Verbeet (@hverbeet)
Approved-by: Alexandre Julliard (@julliard)
Merge-Request: https://gitlab.winehq.org/wine/vkd3d/-/merge_requests/99
5 changed files with 57 additions and 24 deletions

View File

@@ -139,7 +139,7 @@ float4 main() : sv_target
% Arrays with the same number of components are allowed.
[pixel shader todo]
[pixel shader]
float fun(float a[2][3])
{
return 100*a[0][0] + 10*a[0][2] + a[1][2];
@@ -153,11 +153,11 @@ float4 main() : sv_target
}
[test]
todo draw quad
todo probe all rgba (136.0, 136.0, 136.0, 136.0)
draw quad
probe all rgba (136.0, 136.0, 136.0, 136.0)
[pixel shader todo]
[pixel shader]
float fun(float a[2][3])
{
return 100*a[0][0] + 10*a[1][0] + a[1][2];
@@ -171,5 +171,5 @@ float4 main() : sv_target
}
[test]
todo draw quad
todo probe all rgba (702.0, 702.0, 702.0, 702.0)
draw quad
probe all rgba (702.0, 702.0, 702.0, 702.0)