Henri Verbeet pushed to branch master at wine / vkd3d
Commits:
31c3d469 by Shaun Ren at 2025-01-20T14:59:12+01:00
tests/shader_runner_vulkan: Check if create_shader_stage() fails in create_compute_pipeline().
- - - - -
9fab6e43 by Shaun Ren at 2025-01-20T15:23:09+01:00
tests/shader_runner_gl: Add "opengl" tag.
- - - - -
24653b88 by Shaun Ren at 2025-01-20T15:25:56+01:00
tests/shader_runner_gl: Bind buffer UAVs for compute shaders.
- - - - -
c8b87f9b by Shaun Ren at 2025-01-20T15:26:10+01:00
tests/hlsl: Add a test for UAV InterlockedCompareExchange().
- - - - -
728cf1dc by Shaun Ren at 2025-01-20T15:26:10+01:00
tests/hlsl: Add tests to check the types of the value arguments of atomic ops.
- - - - -
b3c13b44 by Shaun Ren at 2025-01-20T15:26:10+01:00
tests/hlsl: Add tests to check the void return type of atomic ops.
- - - - -
5f943e91 by Shaun Ren at 2025-01-20T15:30:54+01:00
tests/hlsl: Add tests for valid destination types of atomic operations.
- - - - -
660a71ef by Shaun Ren at 2025-01-20T15:40:34+01:00
vkd3d-shader/hlsl: Implement the InterlockedAdd() intrinsic.
- - - - -
3b19a4aa by Shaun Ren at 2025-01-20T15:41:07+01:00
vkd3d-shader/hlsl: Implement the InterlockedAnd() intrinsic.
- - - - -
22ab08f4 by Shaun Ren at 2025-01-20T15:41:07+01:00
vkd3d-shader/hlsl: Implement the InterlockedCompareExchange() intrinsic.
- - - - -
3fb47373 by Shaun Ren at 2025-01-20T15:41:07+01:00
vkd3d-shader/hlsl: Implement the InterlockedCompareStore() intrinsic.
- - - - -
b447fdce by Shaun Ren at 2025-01-20T15:41:07+01:00
vkd3d-shader/hlsl: Implement the InterlockedExchange() intrinsic.
- - - - -
63fbe161 by Shaun Ren at 2025-01-20T15:42:07+01:00
vkd3d-shader/hlsl: Implement the InterlockedMax() intrinsic.
- - - - -
5b9634a7 by Shaun Ren at 2025-01-20T15:42:43+01:00
vkd3d-shader/hlsl: Implement the InterlockedMin() intrinsic.
- - - - -
cbd504e8 by Shaun Ren at 2025-01-20T15:42:45+01:00
vkd3d-shader/hlsl: Implement the InterlockedOr() intrinsic.
- - - - -
802d7317 by Shaun Ren at 2025-01-20T15:42:45+01:00
vkd3d-shader/hlsl: Implement the InterlockedXor() intrinsic.
- - - - -
9 changed files:
- libs/vkd3d-shader/hlsl.c
- libs/vkd3d-shader/hlsl.h
- libs/vkd3d-shader/hlsl.y
- libs/vkd3d-shader/hlsl_codegen.c
- libs/vkd3d-shader/tpf.c
- tests/hlsl/uav-atomics.shader_test
- tests/shader_runner.c
- tests/shader_runner_gl.c
- tests/shader_runner_vulkan.c
View it on GitLab: https://gitlab.winehq.org/wine/vkd3d/-/compare/10edcec03025f7f7a6ee17d198d8…
--
View it on GitLab: https://gitlab.winehq.org/wine/vkd3d/-/compare/10edcec03025f7f7a6ee17d198d8…
You're receiving this email because of your account on gitlab.winehq.org.
Henri Verbeet pushed to branch master at wine / vkd3d
Commits:
17adde7f by Giovanni Mascellani at 2025-01-20T13:43:36+01:00
vkd3d: Describe DXGI_UNKNOWN as having one plane.
We're explicitly replacing zero with one in the only place where the
plane count being zero or one makes a difference. It also make sense:
UNKNOWN is used for buffers, which for all intents and purposes have one
plane.
- - - - -
1a4dedbc by Conor McCarthy at 2025-01-20T13:45:16+01:00
vkd3d: Return the correct depth/stencil plane format from GetCopyableFootprints().
- - - - -
e99906f0 by Conor McCarthy at 2025-01-20T13:59:46+01:00
vkd3d: Return correctly aligned depth/stencil sizes from GetCopyableFootprints().
- - - - -
10edcec0 by Conor McCarthy at 2025-01-20T14:37:13+01:00
vkd3d: Do not require the ALLOW_DEPTH_STENCIL flag for depth/stencil formats in GetCopyableFootprints().
- - - - -
5 changed files:
- libs/vkd3d/device.c
- libs/vkd3d/resource.c
- libs/vkd3d/utils.c
- libs/vkd3d/vkd3d_private.h
- tests/d3d12.c
View it on GitLab: https://gitlab.winehq.org/wine/vkd3d/-/compare/a082daeb56c239b41d67b5df5abc…
--
View it on GitLab: https://gitlab.winehq.org/wine/vkd3d/-/compare/a082daeb56c239b41d67b5df5abc…
You're receiving this email because of your account on gitlab.winehq.org.
Henri Verbeet pushed to branch master at wine / vkd3d
Commits:
ce4f2728 by Henri Verbeet at 2025-01-16T19:18:08+01:00
vkd3d-shader/msl: Get rid of a stray vkd3d_string_buffer_printf() in the VEC4 UINT immediate constant handling.
Uncovered by the ininf() test in the next commit. This is why we insist
on test coverage; unfortunately this one slipped through in
fd1beedc07becc7e5e49b64273f7bde7f9a8b2a0.
- - - - -
a082daeb by Nikolay Sivov at 2025-01-16T19:25:02+01:00
vkd3d-shader/hlsl: Implement the isinf() intrinsic.
Signed-off-by: Nikolay Sivov <nsivov(a)codeweavers.com>
- - - - -
7 changed files:
- Makefile.am
- libs/vkd3d-shader/hlsl.c
- libs/vkd3d-shader/hlsl.h
- libs/vkd3d-shader/hlsl.y
- libs/vkd3d-shader/hlsl_codegen.c
- libs/vkd3d-shader/msl.c
- + tests/hlsl/isinf.shader_test
View it on GitLab: https://gitlab.winehq.org/wine/vkd3d/-/compare/cf19b4da49caec1e43156eca04c1…
--
View it on GitLab: https://gitlab.winehq.org/wine/vkd3d/-/compare/cf19b4da49caec1e43156eca04c1…
You're receiving this email because of your account on gitlab.winehq.org.
Henri Verbeet pushed to branch master at wine / vkd3d
Commits:
4f7c1172 by Francisco Casas at 2025-01-16T18:43:12+01:00
tests: Test casting negative floats to int.
Turns out we are not doing this correctly in SM1, because the rounding
should be to the number that is closer to zero and lower_casts_to_int()
doesn't do that.
A vertex shader test is added since in SM1 they must rely on the SLT
operation instead of the CMP operation.
- - - - -
2d91bd92 by Francisco Casas at 2025-01-16T18:46:49+01:00
vkd3d-shader/hlsl: Properly lower casts to int for negative numbers.
While it looks complicated, it is what fxc/d3dcompiler does.
A shader as simple as:
float4 f;
float4 main() : sv_target
{
return (int4)f;
}
results in the following instructions:
ps_2_0
def c1, 0, 1, 0, 0
frc r0, c0
cmp r1, -r0, c1.x, c1.y
add r0, -r0, c0
mov r2, c0
cmp r1, r2, c1.x, r1
add r0, r0, r1
mov oC0, r0
- - - - -
cf19b4da by Francisco Casas at 2025-01-16T18:48:35+01:00
vkd3d-shader/hlsl: Specialize lowering SM1 casts to int for vertex shaders.
Vertex shaders do not have CMP, so we use SLT and MAD.
For example, this vertex shader:
uniform float4 f;
void main(inout float4 pos : position, out float4 t1 : TEXCOORD1)
{
t1 = (int4)f;
}
results in:
vs_2_0
dcl_position v0
slt r0, c0, -c0
frc r1, c0
add r2, -r1, c0
slt r1, -r1, r1
mad oT1, r0, r1, r2
mov oPos, v0
while we have the lower_cmp() pass, each time it is applied many
instructions are generated, so this patch introduces a specialized
version of the cast-to-int lowering for efficiency.
- - - - -
2 changed files:
- libs/vkd3d-shader/hlsl_codegen.c
- tests/hlsl/cast-to-int.shader_test
View it on GitLab: https://gitlab.winehq.org/wine/vkd3d/-/compare/efd7f2e014d9092393da6b91762b…
--
View it on GitLab: https://gitlab.winehq.org/wine/vkd3d/-/compare/efd7f2e014d9092393da6b91762b…
You're receiving this email because of your account on gitlab.winehq.org.