Conor McCarthy
eef0f7c29e
vkd3d-shader/dxil: Handle SV_InstanceId.
2024-04-30 16:32:10 +02:00
Conor McCarthy
fb730b11cf
vkd3d-shader/dxil: Handle constexpr pointer cast.
2024-04-30 16:31:44 +02:00
Conor McCarthy
05510c118a
vkd3d-shader/dxil: Emit an error if a CMPXCHG instruction uses a forward-referenced pointer.
2024-04-30 16:31:42 +02:00
Conor McCarthy
b67a68b486
vkd3d-shader/dxil: Emit an error if a ATOMICRMW instruction uses a forward-referenced pointer.
2024-04-30 16:31:41 +02:00
Conor McCarthy
9615c38968
vkd3d-shader/dxil: Emit an error if a STORE instruction uses a forward-referenced pointer.
2024-04-30 16:31:40 +02:00
Conor McCarthy
b4b5af66ef
vkd3d-shader/dxil: Emit an error if a LOAD instruction uses a forward-referenced pointer.
2024-04-30 16:31:39 +02:00
Alexandre Julliard
91762a62c6
vkd3d-shader: Avoid non-constant initializer.
...
Fixes "initializer element is not constant" error with gcc < 8.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=56508
2024-04-30 16:31:32 +02:00
Henri Verbeet
87c83e2ae2
vkd3d-shader: Get rid of struct vkd3d_shader_desc.
2024-04-30 16:31:19 +02:00
Henri Verbeet
b761f1a263
vkd3d-shader/spirv: Use location information from the current instruction.
2024-04-30 16:31:14 +02:00
Henri Verbeet
8b8ad07057
vkd3d-shader/hlsl: Use vkd3d_string_buffer_printf() in declare_predefined_types().
2024-04-30 16:31:09 +02:00
Francisco Casas
ee735e8eed
vkd3d-shader/hlsl: Fold x * 1 identities.
2024-04-30 16:31:05 +02:00
Francisco Casas
b14f935d0f
vkd3d-shader/hlsl: Fold x + 0 identities.
2024-04-30 16:31:02 +02:00
Stefan Dösinger
cb6c868460
vkd3d: Implement cache locking.
2024-04-24 23:49:20 +02:00
Stefan Dösinger
71f1955cd6
vkd3d: Implement vkd3d_shader_cache_get.
2024-04-24 23:49:20 +02:00
Stefan Dösinger
aad76f4ed2
vkd3d: Implement vkd3d_shader_cache_put.
2024-04-24 23:49:15 +02:00
Henri Verbeet
af33caf036
vkd3d-common: Introduce vkd3d_atomic_exchange_ptr().
2024-04-24 23:49:12 +02:00
Henri Verbeet
b1c326ce56
vkd3d-common: Introduce vkd3d_atomic_exchange_u32().
2024-04-24 23:49:11 +02:00
Henri Verbeet
5c8a90a6c9
vkd3d-common: Introduce vkd3d_atomic_compare_exchange_u32().
2024-04-24 23:49:11 +02:00
Henri Verbeet
bfbd29efe6
vkd3d: Get rid of vkd3d_atomic_compare_exchange_pointer().
...
The only uses of this were remove by commit
3ca225980755032b385b36142d4cc44e78a987fd.
2024-04-24 23:49:10 +02:00
Henri Verbeet
11db8c1719
vkd3d-common: Use WIDL_C_INLINE_WRAPPERS.
2024-04-24 23:48:44 +02:00
Henri Verbeet
534044181b
vkd3d-utils: Use WIDL_C_INLINE_WRAPPERS.
2024-04-24 23:48:44 +02:00
Henri Verbeet
d5717d333b
vkd3d: Use WIDL_C_INLINE_WRAPPERS.
2024-04-24 23:48:44 +02:00
Conor McCarthy
075979fa21
vkd3d-shader/ir: Always check for undominated SSA use in register relative addresses.
2024-04-24 23:48:13 +02:00
Francisco Casas
5e3515f191
vkd3d-shader/d3dbc: Support SM1 if conditionals.
...
According to the documentation, if_comp is available from 2_x pixel
and vertex shaders and, unlike "if bool" it doesn't expect a constant
boolean register (from the input signature), so:
if_neq cond -cond
seems like a convenient way to write these, for profiles above 2.0.
2024-04-24 23:48:06 +02:00
Francisco Casas
d2427ea1bd
vkd3d-shader/ir: Lower IFC instructions to IF instructions.
2024-04-24 23:48:05 +02:00