Hans-Kristian Arntzen
e90b573896
vkd3d-shader: Use flag for vkd3d_shader_meta bools.
...
Signed-off-by: Hans-Kristian Arntzen <post@arntzen-software.no>
2022-01-25 14:07:07 +01:00
Hans-Kristian Arntzen
8196b85408
vkd3d-shader: Make vkd3d_shader_hash public.
...
Prepare for meta struct to be serialized to a cache.
Signed-off-by: Hans-Kristian Arntzen <post@arntzen-software.no>
2022-01-25 14:07:07 +01:00
Hans-Kristian Arntzen
3839144848
vkd3d: Add FNV-1a hash util.
...
To be used for pipeline library hashing.
Signed-off-by: Hans-Kristian Arntzen <post@arntzen-software.no>
2022-01-25 14:07:07 +01:00
Hans-Kristian Arntzen
7da708ea69
vkd3d: Add an RW lock wrapper.
...
For longer-lived locks where spinlock is bad form. To be used for
pipeline library.
Signed-off-by: Hans-Kristian Arntzen <post@arntzen-software.no>
2022-01-25 14:07:07 +01:00
Hans-Kristian Arntzen
6cba8b9945
vkd3d: Workaround broken barriers in DEATHLOOP.
...
In DEATHLOOP, there is a render pass which renders out a simple image,
which is then directly followed by a compute dispatch, reading that
image. The image is still in RENDER_TARGET state, and color buffers are
*not* flushed properly on at least RADV, manifesting as a very
distracting glitch pattern. This is a game bug, but for the time being,
we have to workaround it, *sigh*.
For a simple workaround, we can detect patterns where we see these
events in succession:
- Color RT is started
- StateBefore == RENDER_TARGET is not observed
- Dispatch()
In particular, when entering the options menu, highly distracting
glitches are observed in the background.
Signed-off-by: Hans-Kristian Arntzen <post@arntzen-software.no>
2022-01-12 12:20:03 +01:00
Philip Rebohle
930e7cb251
idl: Add new interfaces up to ID3D12Device9.
...
Signed-off-by: Philip Rebohle <philip.rebohle@tu-dortmund.de>
2021-11-19 14:57:51 +01:00
Hans-Kristian Arntzen
58aab78a5b
vkd3d-shader: Add PER_COMPONENT_ROBUSTNESS shader extension.
...
Signals that we can use vectorized vec3 byte address buffers.
Signed-off-by: Hans-Kristian Arntzen <post@arntzen-software.no>
2021-11-09 14:47:10 +01:00
Hans-Kristian Arntzen
e605d19ef7
vkd3d-shader: Add shader extension for scalar block layout.
...
Signed-off-by: Hans-Kristian Arntzen <post@arntzen-software.no>
2021-11-09 14:47:10 +01:00
Hans-Kristian Arntzen
35d2f1e87f
vkd3d: Correctly check for SM 6.6 required features.
...
Remove the experimental flag and unconditionally enable SM 6.6 if
available.
Signed-off-by: Hans-Kristian Arntzen <post@arntzen-software.no>
2021-11-01 14:20:38 +01:00
Hans-Kristian Arntzen
6966cd2f33
vkd3d-shader: Reflect CS WaveSize.
...
Signed-off-by: Hans-Kristian Arntzen <post@arntzen-software.no>
2021-11-01 14:20:38 +01:00
Hans-Kristian Arntzen
daa96ba879
idl: Add new OPTIONS feature structs.
...
Signed-off-by: Hans-Kristian Arntzen <post@arntzen-software.no>
2021-11-01 14:20:38 +01:00
Hans-Kristian Arntzen
6548e4fd00
vkd3d: Add VKD3D_CONFIG for experimentally enabling SM 6.6.
...
To be used for bringup and removed when we complete the support.
Signed-off-by: Hans-Kristian Arntzen <post@arntzen-software.no>
2021-10-26 15:32:36 +02:00
Hans-Kristian Arntzen
1a57aa841a
idl: Add new SM 6.6 root signature flags.
...
Signed-off-by: Hans-Kristian Arntzen <post@arntzen-software.no>
2021-10-26 15:32:36 +02:00
Hans-Kristian Arntzen
740e23ea8a
vkd3d: Add VKD3D_CONFIG to force non-invariant position.
...
It's common enough that new games break on RDNA2 because of this that we
should enable this by default. This matches DXVK behavior.
SOTTR gets a special weird exception, just like DXVK. The shaders are
broken enough that the proper fix is actually precise, not invariant.
This will be addressed at some later point.
Signed-off-by: Hans-Kristian Arntzen <post@arntzen-software.no>
2021-10-18 15:51:20 +02:00
Hans-Kristian Arntzen
26bd08bbde
vkd3d-shader: Add global quirks for vkd3d_shader_quirk_info.
...
Will be used for VKD3D_CONFIG overrides.
Signed-off-by: Hans-Kristian Arntzen <post@arntzen-software.no>
2021-10-18 15:51:20 +02:00
Hans-Kristian Arntzen
32c5abf496
vkd3d-shader: Add INVARIANT_POSITION quirk.
...
Signed-off-by: Hans-Kristian Arntzen <post@arntzen-software.no>
2021-10-18 15:51:20 +02:00
Hans-Kristian Arntzen
2152500014
vkd3d-shader: Refactor out quirk selection.
...
Signed-off-by: Hans-Kristian Arntzen <post@arntzen-software.no>
2021-10-18 15:51:20 +02:00
Hans-Kristian Arntzen
dda02faf89
vkd3d: Pad reserved resources to 64k alignment.
...
Fix GPU crashes when attempting to bind non-aligned reserved resource.
Signed-off-by: Hans-Kristian Arntzen <post@arntzen-software.no>
2021-10-18 14:58:34 +02:00
Hans-Kristian Arntzen
f98702603d
vkd3d-shader: Add SPIR-V extension for PrimitiveCulling.
...
Signed-off-by: Hans-Kristian Arntzen <post@arntzen-software.no>
2021-10-12 16:04:30 +02:00
Hans-Kristian Arntzen
6866b45637
vkd3d: Add CONFIG flag for enabling DXR 1.1.
...
We cannot support ExecuteIndirect with TraceRays() for time being.
Signed-off-by: Hans-Kristian Arntzen <post@arntzen-software.no>
2021-10-12 16:04:30 +02:00
Joshua Ashton
4c959c8a77
vkd3d: Add vkd3d_string_compare helper
...
Compares a string with a given comparison mode.
Signed-off-by: Joshua Ashton <joshua@froggi.es>
2021-10-07 10:18:47 +01:00
Joshua Ashton
6dbb4f6dfe
vkd3d: Add vkd3d_string_ends_with helper
...
Checks if a string ends with another string.
Signed-off-by: Joshua Ashton <joshua@froggi.es>
2021-10-07 10:18:47 +01:00
Hans-Kristian Arntzen
cd3d759b95
vkd3d: Enable VK_KHR_shader_integer_dot_product.
...
Accelerates SM 6.4 packed ops if present.
Signed-off-by: Hans-Kristian Arntzen <post@arntzen-software.no>
2021-10-05 15:38:59 +02:00
Danylo Piliaiev
77c67e2bf5
vkd3d: Use 64bit atomics on all 64bit platforms
...
Previous check was not exhausting.
Closes : #830
Signed-off-by: Danylo Piliaiev <dpiliaiev@igalia.com>
2021-10-05 13:22:25 +02:00
Hans-Kristian Arntzen
0c2ddb89cd
vkd3d: Add CONFIG for forced CACHED memory.
...
Very useful for capturing. Speeds up a ton.
Signed-off-by: Hans-Kristian Arntzen <post@arntzen-software.no>
2021-09-27 14:48:26 +02:00
Hans-Kristian Arntzen
173b8ecef0
vkd3d: Add workaround for DEATHLOOP.
...
Game attempts to create a host visible resource with
ALLOW_RENDER_TARGET flag. We cannot make this work on NVIDIA, but the
game never seems to actually create an RTV, so as a workaround, nop out
the flag, which does make it work after all :3
Signed-off-by: Hans-Kristian Arntzen <post@arntzen-software.no>
2021-09-17 14:21:09 +02:00
Hans-Kristian Arntzen
a4b082a828
vkd3d-shader: Add helper to parse output signature.
...
Signed-off-by: Hans-Kristian Arntzen <post@arntzen-software.no>
2021-09-16 16:57:28 +02:00
Hans-Kristian Arntzen
a8f623e60d
vkd3d: Negate upload_hvv config.
...
Enable resizable BAR style allocations by default, and add option to
disable it.
Signed-off-by: Hans-Kristian Arntzen <post@arntzen-software.no>
2021-09-16 16:10:57 +02:00
Hans-Kristian Arntzen
12066a2b67
vkd3d: Add debug config to log resizable BAR allocations.
...
Signed-off-by: Hans-Kristian Arntzen <post@arntzen-software.no>
2021-09-16 16:10:57 +02:00
Hans-Kristian Arntzen
b54a1a6c2b
vkd3d: Fix MSVC build.
...
Signed-off-by: Hans-Kristian Arntzen <post@arntzen-software.no>
2021-09-02 16:56:39 +02:00
rochaudhari
0828aec4f6
vkd3d: Implement new interfaces required for DX12 DLSS support.
...
Adds ID3D12GraphicsCommandListExt and ID3D12DeviceExt interfaces.
Signed-off-by: Roshan Chaudhari <rochaudhari@nvidia.com>
2021-08-27 11:37:15 +02:00
Hans-Kristian Arntzen
c2473fb873
tests: Improve log quality.
...
Set test name equal to the test that is actually running, not a global
"d3d12" which isn't very useful for a case with multiple files since
line number alone isn't enough to know where to look.
Signed-off-by: Hans-Kristian Arntzen <post@arntzen-software.no>
2021-08-26 14:05:23 +02:00
Hans-Kristian Arntzen
4a6fba9f56
tests: Make some statics in headers extern.
...
Signed-off-by: Hans-Kristian Arntzen <post@arntzen-software.no>
2021-08-26 14:05:23 +02:00
Hans-Kristian Arntzen
9d5cf16fc3
tests: Move common test code to its own file.
...
Some ifdef jank required since the various headers declare the main function.
Some additional jank with INITGUID, otherwise we get multiple
declaration errors.
Signed-off-by: Hans-Kristian Arntzen <post@arntzen-software.no>
2021-08-26 14:05:23 +02:00
Joshua Ashton
1b957a1f74
vkd3d: Add config to use host-visible vram for UPLOAD heap
...
Adds the "upload_hvv" config flag, which will make D3D12_HEAP_TYPE_UPLOAD attempt to use host-visible VRAM for allocations.
This takes advantage of large or resizable BAR if available.
I see a perf delta of 83-84 -> 92-94 (~12%) when using this in Horizon Zero Dawn.
Signed-off-by: Joshua Ashton <joshua@froggi.es>
2021-08-23 13:24:43 +02:00
Hans-Kristian Arntzen
5df4a5c083
vkd3d-shader: Add 16-bit feature usage to meta.
...
Signed-off-by: Hans-Kristian Arntzen <post@arntzen-software.no>
2021-07-28 15:28:19 +02:00
Joshua Ashton
a53a7f8d7c
vkd3d-shader: Restrict descriptor-qa extras and logic to VKD3D_ENABLE_DESCRIPTOR_QA
...
Signed-off-by: Joshua Ashton <joshua@froggi.es>
2021-07-08 16:52:58 +02:00
Hans-Kristian Arntzen
37e8f42f4a
vkd3d: Move patch vertex count to meta struct.
...
Will make it easier to implement for DXIL.
Signed-off-by: Hans-Kristian Arntzen <post@arntzen-software.no>
2021-07-07 15:58:45 +02:00
Hans-Kristian Arntzen
d19821ba84
vkd3d-shader: Change cs_workgroup_size type.
...
DXIL C API takes unsigned* not uint32_t*, avoid potential warnings.
Signed-off-by: Hans-Kristian Arntzen <post@arntzen-software.no>
2021-07-07 15:58:45 +02:00
Hans-Kristian Arntzen
419790ac77
vkd3d: Add wave size workaround for GravityMark.
...
Signed-off-by: Hans-Kristian Arntzen <post@arntzen-software.no>
2021-07-02 15:15:42 +02:00
Hans-Kristian Arntzen
92c4f861e7
vkd3d-shader: Report CS workgroup size metadata.
...
Signed-off-by: Hans-Kristian Arntzen <post@arntzen-software.no>
2021-07-02 15:15:42 +02:00
Hans-Kristian Arntzen
c1860a1ead
vkd3d: Add VKD3D_CONFIG flags for forcing EXCLUSIVE queue modes.
...
Helps in some cases, but we cannot do this by default :(
Signed-off-by: Hans-Kristian Arntzen <post@arntzen-software.no>
2021-06-29 12:24:24 +02:00
Hans-Kristian Arntzen
12e0aa2a46
vkd3d-shader: Query if subgroup size is used.
...
Lets calling code know if it should use ALLOW_VARYING_SUBGROUP_SIZE.
To avoid too much churn on pipeline caches, only add the flag when
needed.
Signed-off-by: Hans-Kristian Arntzen <post@arntzen-software.no>
2021-06-25 15:08:53 +02:00
Georg Lehmann
1af017c284
include: Add some new dxgi formats.
...
Signed-off-by: Georg Lehmann <dadschoorse@gmail.com>
2021-06-24 12:55:17 +02:00
Hans-Kristian Arntzen
1ea31701c5
vkd3d: Move F1 2020 workaround over to quirks system.
...
Signed-off-by: Hans-Kristian Arntzen <post@arntzen-software.no>
2021-06-17 16:42:14 +02:00
Hans-Kristian Arntzen
a08e493a3a
vkd3d-shader: Add interface for shader workarounds.
...
Don't really have much of a choice for the short term. :\
Signed-off-by: Hans-Kristian Arntzen <post@arntzen-software.no>
2021-06-17 16:42:14 +02:00
rochaudhari
ba997f0736
vk-headers: Update subprojects/Vulkan-Headers to 1.2.180
...
This is needed for VK_NVX_binary_import and VK_NVX_image_view_handle.
Signed-off-by: Roshan Chaudhari <rochaudhari@nvidia.com>
Reviewed-by: Liam Middlebrook <lmiddlebrook@nvidia.com>
2021-06-10 11:26:34 +02:00
Hans-Kristian Arntzen
a3fb2f1cd6
vkd3d-shader: Opt-in to early fragment tests with descriptor QA.
...
Since we introduce side effects, avoid full late-Z for everything, which
is slow, and not necessarily correct either.
Signed-off-by: Hans-Kristian Arntzen <post@arntzen-software.no>
2021-05-26 17:26:01 +02:00
Hans-Kristian Arntzen
e60fab591b
vkd3d: Add more enums/name LUTs for descriptor QA.
...
Signed-off-by: Hans-Kristian Arntzen <post@arntzen-software.no>
2021-05-26 17:26:01 +02:00
Hans-Kristian Arntzen
815277e392
vkd3d: Add data structures for descriptor QA.
...
Signed-off-by: Hans-Kristian Arntzen <post@arntzen-software.no>
2021-05-26 17:26:01 +02:00
Hans-Kristian Arntzen
5e67d30883
vkd3d: Add config option for descriptor QA.
...
Signed-off-by: Hans-Kristian Arntzen <post@arntzen-software.no>
2021-05-26 17:26:01 +02:00
Hans-Kristian Arntzen
0d5f1d7784
vkd3d-shader: Add way to pass down descriptor QA buffers.
...
Signed-off-by: Hans-Kristian Arntzen <post@arntzen-software.no>
2021-05-26 17:26:01 +02:00
Hans-Kristian Arntzen
c7d9faedea
vkd3d: Add atomic OR support.
...
Signed-off-by: Hans-Kristian Arntzen <post@arntzen-software.no>
2021-05-26 17:26:01 +02:00
Joshua Ashton
a3ad7cae90
vkd3d-shader: Remove type/next from interface structures
...
This was never really used for anything useful.
Signed-off-by: Joshua Ashton <joshua@froggi.es>
2021-04-20 18:25:41 +02:00
Joshua Ashton
0c8349cb8e
vkd3d-shader: Remove vkd3d_shader_domain_shader_compile_arguments
...
This is never used by anything, and all the info is in the shader anyway.
Signed-off-by: Joshua Ashton <joshua@froggi.es>
2021-04-20 18:25:41 +02:00
Joshua Ashton
220e1146ee
vkd3d-shader: Make vkd3d_shader_transform_feedback_info a member
...
Moves it into vkd3d_shader_interface_info, this doesn't need to be
a pNext.
Signed-off-by: Joshua Ashton <joshua@froggi.es>
2021-04-20 18:25:41 +02:00
Joshua Ashton
3e4a8b1504
vkd3d: Remove type/next from vkd3d device/instance structures
...
There's really no reason to overcomplicate adding optional extensions this way.
Signed-off-by: Joshua Ashton <joshua@froggi.es>
2021-04-20 18:25:41 +02:00
Joshua Ashton
bd988f2b74
vkd3d: Remove vkd3d_optional_device_extensions_info
...
Roll this into vkd3d_device_create_info, no need for this to be a pNext thing.
Additionally, fix some memory leaks on device creation failure.
Signed-off-by: Joshua Ashton <joshua@froggi.es>
2021-04-20 18:25:41 +02:00
Joshua Ashton
59148c1932
vkd3d: Remove vkd3d_optional_instance_extensions_info
...
Roll this into vkd3d_instance_create_info, no need for this to be a pNext thing.
Additionally, fix some memory leaks on instance creation failure.
Signed-off-by: Joshua Ashton <joshua@froggi.es>
2021-04-20 18:25:41 +02:00
Philip Rebohle
f06f94bfb4
vkd3d: Enable multi_queue by default.
...
And replace option with a single_queue flag to do the opposite.
Signed-off-by: Philip Rebohle <philip.rebohle@tu-dortmund.de>
2021-04-19 16:40:49 +02:00
Georg Lehmann
21dabb315d
vkd3d: Unify _mm_pause detection.
...
Signed-off-by: Georg Lehmann <dadschoorse@gmail.com>
2021-04-19 12:05:12 +02:00
Hans-Kristian Arntzen
744497274c
vkd3d-shader: Verify that we compile expected shader stage.
...
Signed-off-by: Hans-Kristian Arntzen <post@arntzen-software.no>
2021-04-15 16:24:05 +02:00
Georg Lehmann
2c3988e6df
tests: Add env var to exclude tests.
...
Signed-off-by: Georg Lehmann <dadschoorse@gmail.com>
2021-04-15 15:10:25 +02:00
Joshua Ashton
043fd304f8
vkd3d-shader: Add force_tgsm_barriers config flag
...
Signed-off-by: Joshua Ashton <joshua@froggi.es>
2021-04-12 16:29:57 +02:00
Joshua Ashton
7cfe17d2f5
vkd3d-shader: Passthrough vkd3d_config_flags
...
Signed-off-by: Joshua Ashton <joshua@froggi.es>
2021-04-12 16:29:57 +02:00
Joshua Ashton
41df41305e
include: Move vkd3d_config_flags to public header
...
Signed-off-by: Joshua Ashton <joshua@froggi.es>
2021-04-12 16:29:57 +02:00
Joshua Ashton
4e20fd2f58
include: Define D3D12EnableExperimentalFeatures
...
Including associated UUIDs.
Signed-off-by: Joshua Ashton <joshua@froggi.es>
2021-04-12 13:22:01 +02:00
Joshua Ashton
2fa97aa0fb
vkd3d: Move API versions to public header
...
Signed-off-by: Joshua Ashton <joshua@froggi.es>
2021-03-22 14:29:45 +01:00
Hans-Kristian Arntzen
52a9c85bf2
vkd3d: Implement ClearState.
...
Signed-off-by: Hans-Kristian Arntzen <post@arntzen-software.no>
2021-03-18 10:50:21 +01:00
Joshua Ashton
43e7316591
tests: Default VKD3D_TEST_DEBUG to 1
...
Signed-off-by: Joshua Ashton <joshua@froggi.es>
2021-03-16 21:43:01 +01:00
Hans-Kristian Arntzen
4f2776ff93
vkd3d-shader: Dump RT export SPIR-V.
...
Need one unique blob per export.
Signed-off-by: Hans-Kristian Arntzen <post@arntzen-software.no>
2021-03-12 12:20:10 +01:00
Hans-Kristian Arntzen
ce62d3d700
vkd3d: Fix MSVC build errors.
...
args... is a GNU extension.
Signed-off-by: Hans-Kristian Arntzen <post@arntzen-software.no>
2021-03-10 10:48:01 +00:00
Hans-Kristian Arntzen
0bf3a1d441
vkd3d-shader: Recognize recent descriptor range flag.
...
Signed-off-by: Hans-Kristian Arntzen <post@arntzen-software.no>
2021-03-10 11:46:05 +01:00
Joshua Ashton
64a6bae1a0
vkd3d: Remove vkd3d_application_info structure
...
This thing has no right to exist.
We don't get this information in D3D12 and it's getting in the way of me refactoring config flags.
Signed-off-by: Joshua Ashton <joshua@froggi.es>
2021-03-02 11:09:29 +01:00
Joshua Ashton
04b86b80b6
include: Define WKPID_D3DDebugObjectName and friends
...
Signed-off-by: Joshua Ashton <joshua@froggi.es>
2021-02-25 21:51:43 +01:00
Joshua Ashton
a76daad03f
vkd3d-common: Add vkd3d_strdup_n
...
There is no strndup on Windows.
Signed-off-by: Joshua Ashton <joshua@froggi.es>
2021-02-25 21:51:43 +01:00
Hans-Kristian Arntzen
a90ed938b4
vkd3d-shader: Pass down SBT descriptor size to dxil-spirv.
...
Signed-off-by: Hans-Kristian Arntzen <post@arntzen-software.no>
2021-02-23 12:28:19 +01:00
Hans-Kristian Arntzen
3442d44649
vkd3d: Add aligned allocation helpers.
...
Signed-off-by: Hans-Kristian Arntzen <post@arntzen-software.no>
2021-02-23 12:28:19 +01:00
Hans-Kristian Arntzen
ea088ceecf
vkd3d: Use UINT64* instead of uint64_t* in 64-bit CAS.
...
Avoids alignment warnings on 32-bit.
Signed-off-by: Hans-Kristian Arntzen <post@arntzen-software.no>
2021-02-16 16:14:14 +00:00
Joshua Ashton
9b2841b50f
tests: Fix -Wsign-compare warnings
...
Signed-off-by: Joshua Ashton <joshua@froggi.es>
2021-02-15 17:54:54 +01:00
Georg Lehmann
eaab2388b1
vkd3d: Fix warning with vkd3d_atomic_ptr*.
...
Signed-off-by: Georg Lehmann <dadschoorse@gmail.com>
2021-02-15 15:47:17 +01:00
Philip Rebohle
7549d70fbf
vkd3d: Fix compiler errors when using vkd3d_atomic_ptr_store_explicit.
...
Atomic stores do not return anything, so we cannot cast to void* here.
Signed-off-by: Philip Rebohle <philip.rebohle@tu-dortmund.de>
2021-02-11 15:15:59 +00:00
Joshua Ashton
fccbd3b5e2
vkd3d: Eliminate wchar_size, use UTF-16 string literals
...
Achieves this with C standard stuff alone, and no compiler hacks.
Signed-off-by: Joshua Ashton <joshua@froggi.es>
2021-02-09 11:26:28 +01:00
Hans-Kristian Arntzen
13af141e84
common: Add truncated wide export strcmp.
...
Needed for GetShaderStackSize().
Signed-off-by: Hans-Kristian Arntzen <post@arntzen-software.no>
2021-02-05 10:05:07 +01:00
Hans-Kristian Arntzen
859066cd9b
vkd3d-shader: Add ray-tracing pipeline support to DXIL.
...
Also updates relevant submodules.
Signed-off-by: Hans-Kristian Arntzen <post@arntzen-software.no>
2021-02-05 10:05:07 +01:00
Hans-Kristian Arntzen
1784351dcf
vkd3d-shader: Move root parameter structs to vkd3d-shader.
...
Need it here since local root signatures need to know
the physical layout of the record buffer up front.
Signed-off-by: Hans-Kristian Arntzen <post@arntzen-software.no>
2021-02-05 10:05:07 +01:00
Hans-Kristian Arntzen
fdcf583cbc
vkd3d: Rename COUNTER buffer to AUX_BUFFER.
...
We will use the same pointer buffer to handle acceleration structures,
so unify this buffer under a new name. Simplifies some of the binding
code since SRV path and UAV path looks more similar now.
Only difference is that UAV path uses BDA -> uint32_t,
and SRV uses BDA -> RTAccelerationStructure.
RT requires BDA, so the fallback descriptor set (storage texel buffer) is never used for RT.
Signed-off-by: Hans-Kristian Arntzen <post@arntzen-software.no>
2021-02-05 10:05:07 +01:00
Hans-Kristian Arntzen
86da5d9bad
common: Add string utilities for dealing with entry point conventions.
...
Used across both vkd3d-shader and vkd3d, so makes sense to move this to
common code.
Signed-off-by: Hans-Kristian Arntzen <post@arntzen-software.no>
2021-02-05 10:05:07 +01:00
Hans-Kristian Arntzen
dd2a963ae7
idl: Add D3D_FEATURE_LEVEL_12_2.
...
Signed-off-by: Hans-Kristian Arntzen <post@arntzen-software.no>
2021-01-26 15:00:15 +01:00
Hans-Kristian Arntzen
326d1cde60
vkd3d-shader: Remove DXIL being optional.
...
We always build with DXIL, not using autotools anymore.
Signed-off-by: Hans-Kristian Arntzen <post@arntzen-software.no>
2021-01-25 14:03:37 +01:00
Hans-Kristian Arntzen
6b363e53d2
vkd3d: Actually compare against hashmap entry and not against itself.
...
Signed-off-by: Hans-Kristian Arntzen <post@arntzen-software.no>
2020-12-05 15:09:39 +01:00
Hans-Kristian Arntzen
e6961afca6
vkd3d-shader: Emit typed format for UAVs which use atomics.
...
Mesa will assert if not, and the format must be known here.
Signed-off-by: Hans-Kristian Arntzen <post@arntzen-software.no>
2020-12-04 16:08:26 +01:00
Hans-Kristian Arntzen
f67f55827e
vkd3d: Parse patch version of PACKAGE_NAME as well.
...
Signed-off-by: Hans-Kristian Arntzen <post@arntzen-software.no>
2020-12-03 15:05:13 +01:00
Hans-Kristian Arntzen
adf0be5bf1
vkd3d: Lower contention when spinlocking writers.
...
Signed-off-by: Hans-Kristian Arntzen <post@arntzen-software.no>
2020-12-02 13:12:56 +01:00
Hans-Kristian Arntzen
b3024365d0
vkd3d: Add a reader-writer spinlock.
...
Signed-off-by: Hans-Kristian Arntzen <post@arntzen-software.no>
2020-12-02 13:12:56 +01:00
Hans-Kristian Arntzen
c2c674194d
vkd3d: Add Add/Sub/And atomic u32 intrinsics.
...
Will be used for reader-writer spinlocks.
Signed-off-by: Hans-Kristian Arntzen <post@arntzen-software.no>
2020-12-02 13:12:56 +01:00
Hans-Kristian Arntzen
f96e60b6ac
vkd3d: Make hashmap compatible with reader-writer locks.
...
Yield insertion when there is a match.
Signed-off-by: Hans-Kristian Arntzen <post@arntzen-software.no>
2020-12-02 13:12:56 +01:00
Joshua Ashton
22794c67a4
include: Add missing enum flag operator definitions
...
Signed-off-by: Joshua Ashton <joshua@froggi.es>
2020-11-25 15:58:45 +01:00
Joshua Ashton
3e5a3c835a
include: Fix definition of D3D12_RESOURCE_ALIASING_BARRIER
...
Signed-off-by: Joshua Ashton <joshua@froggi.es>
2020-11-25 15:58:45 +01:00
Joshua Ashton
6b9f7b7339
include: Fix typo in d3d12 header
...
Signed-off-by: Joshua Ashton <joshua@froggi.es>
2020-11-25 15:58:45 +01:00