David Heidelberg
68215332a8
build: pass licensing information in SPDX form
...
Acked-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Acked-by: Dylan Baker <dylan.c.baker@intel.com>
Acked-by: Eric Engestrom <eric@igalia.com>
Acked-by: Daniel Stone <daniels@collabora.com>
Signed-off-by: David Heidelberg <david@ixit.cz>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29972 >
2024-06-29 12:42:49 -07:00
Faith Ekstrand
1604ab0ef7
dozen: Advertise VK_EXT_shader_replicated_composites
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29509 >
2024-06-04 16:34:48 +00:00
Alyssa Rosenzweig
e0aa70bd55
dzn: use common stype debug
...
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Acked-by: Faith Ekstrand <faith.ekstrand@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29009 >
2024-05-10 18:49:38 +00:00
Jesse Natalie
c891a384e7
dzn: Don't copy app indirect args if we don't need to
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28383 >
2024-04-05 00:25:41 +00:00
Jesse Natalie
db16dcf0f9
dzn: Add a hash table of command signatures with non-default strides
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28383 >
2024-04-05 00:25:41 +00:00
Jesse Natalie
d7bd87aa27
dzn: Rework indirect drawing keys for shaders and command signatures
...
When we don't need emulation of first vertex, base instance, draw ID
sysvals, or triangle fans, we can have very simple command signatures
and indirect arg buffer generation shaders. The next step is to handle
the case where everything can be supported straight from the app's
buffer.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28383 >
2024-04-05 00:25:41 +00:00
Jesse Natalie
ccf439629f
dzn: Update pipeline cache params to take all options into account
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28383 >
2024-04-05 00:25:41 +00:00
Jesse Natalie
4de88025cc
dzn: Understand whether first-vertex and base-instance are needed for a pipeline
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28383 >
2024-04-05 00:25:41 +00:00
Jesse Natalie
fbd4e5d8aa
dzn: Query options21
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28383 >
2024-04-05 00:25:41 +00:00
Jesse Natalie
ed465bf738
dzn: Delete dzn structs for indirect draw args and use D3D ones
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28383 >
2024-04-05 00:25:41 +00:00
Jesse Natalie
f6c3d73700
spirv2dxil: Output more specific metadata for whether draw sysvals are needed
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28383 >
2024-04-05 00:25:41 +00:00
Jesse Natalie
30b1a6750c
spirv2dxil: Support passing first vertex / base instance to DXIL backend
...
These values now have 3 modes of operation so switch from a bool to an enum:
1. Zero
2. Native DXIL sysvals
3. "Runtime data" via a constant buffer or root constants
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28383 >
2024-04-05 00:25:41 +00:00
Jesse Natalie
ed757b010a
microsoft/compiler: Improve linking helpers
...
* Take masks instead of shaders
* Be more aggressive at removing sysvals
* Handle loading from outputs
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28535 >
2024-04-04 20:29:10 +00:00
Eric Engestrom
ff37f68740
meson: add VK_DRIVER_FILES to devenv, alongside the old VK_ICD_FILENAMES
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28516 >
2024-04-02 18:08:52 +00:00
Jesse Natalie
007b0fdff0
dzn: Initialize memoryTypeBits for querying properties on imported handles
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28339 >
2024-03-25 19:11:35 +00:00
Jesse Natalie
5957778c16
dzn: Include vulkan_core.h instead of vulkan.h in the device enum header
...
Prevents pulling in X11 "None" define into the DXCore implementation,
which conflicts with updated DXCore headers.
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/10803
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28339 >
2024-03-25 19:11:35 +00:00
Jesse Natalie
c75c485d7d
dzn: Support bufferDeviceAddress
...
Flip on the caps/extensions, use their presence to turn on bindless just like
descriptor_indexing, use the buffer flag to indicate UAV access, and fix up
the getter to return the kind of data we want.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28028 >
2024-03-07 22:35:09 +00:00
Luca Bacci
fe520ecfbf
meson,windows: Use relative paths in Vulkan ICD manifest files
...
See https://github.com/msys2/MINGW-packages/issues/16065
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27468 >
2024-03-01 20:09:59 +00:00
Jesse Natalie
0ac7ea7578
dzn: Fix conditions for barrier in texture-converting copy case
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27864 >
2024-02-29 19:56:59 +00:00
Jesse Natalie
161a90abbd
dzn: Add a driconf option to disable dzn for specific apps and use it for RDR2
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27531 >
2024-02-13 17:53:42 +00:00
Jesse Natalie
660c7fe6a7
dzn: Fix tessellation shader insertion into PSO desc
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27531 >
2024-02-13 17:53:42 +00:00
Jesse Natalie
d5131e5f86
dzn: Simultaneous-access is mutually exclusive with MSAA
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27531 >
2024-02-13 17:53:42 +00:00
Eric Engestrom
5f373dec88
dzn: enable VK_EXT_headless_surface on all platforms except Windows
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27448 >
2024-02-06 20:32:38 +00:00
Jesse Natalie
559f31e202
dzn: Use blits for all non-averaging resolves
...
Trying to do min/max resolves on depth/stencil is failing for me on
hardware, just simplify things and always use a manual resolve for
modes that aren't average.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27348 >
2024-02-02 01:19:52 +00:00
Jesse Natalie
70fa127c97
dzn: Use correct format for depth/stencil resolves
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27348 >
2024-02-02 01:19:52 +00:00
Jesse Natalie
973c5bd047
dzn: Don't resolve for RESOLVE_MODE_NONE
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27348 >
2024-02-02 01:19:52 +00:00
Jesse Natalie
dd7cfd5255
dzn: Add a debug flag for forcing off native view instancing
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27348 >
2024-02-02 01:19:52 +00:00
Jesse Natalie
a85e8058cb
dzn: Support non-static samplers for meta
...
Some hardware that doesn't support true static samplers, emulates it
by copying all static samplers into a reserved portion of every descriptor
heap. To support Vulkan's required 4000 live sampler limit in bindless
mode, D3D is now able to create descriptor heaps which do not have a reserved
portion. Any descriptor heaps above the MaxSamplerDescriptorHeapSizeWithStaticSamplers
limit will not have that reserved portion and cannot be used with static samplers.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27348 >
2024-02-02 01:19:51 +00:00
Jesse Natalie
c286c01136
dzn: Add barrier to copy source for DispatchIndirect copies
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27348 >
2024-02-02 01:19:51 +00:00
Jesse Natalie
581a23c0cc
dzn: Add missing handling of VK_PIPELINE_STAGE_2_DRAW_INDIRECT_BIT
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27348 >
2024-02-02 01:19:51 +00:00
Daniel Schürmann
26c8f13ff5
vulkan: enable VK_KHR_shader_expect_assume
...
This implementation ignores the hints.
Acked-by: Caio Oliveira <caio.oliveira@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27265 >
2024-01-30 19:09:42 +00:00
Jesse Natalie
24f14bfacc
dzn: Add missing blit source barriers for enhanced barriers
...
I was under the impression these would never be needed, since the source
should already be in the right GENERIC_READ layout, but when resolving
rendering attachments with a blit, the source is still in the layout that
it was in at the end of rendering.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27313 >
2024-01-29 17:46:11 +00:00
Jesse Natalie
f91ac2ff41
dzn: Add missing condition to immutable sampler init loop
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27313 >
2024-01-29 17:46:11 +00:00
Jesse Natalie
fd89ca82a6
dzn: Add a stencil blit fallback
...
Not all D3D hardware supports specifying the stencil ref value from the
pixel shader. For such hardware, stencil blits need to do the awful
8-pass one-bit-per-pass discard-to-not-write blit approach.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27313 >
2024-01-29 17:46:11 +00:00
Jesse Natalie
4fede8d419
dzn: Fix path passed to CreateDeviceFactory
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27287 >
2024-01-26 01:30:00 +00:00
Jesse Natalie
fa1c9618f9
dzn: Don't set view instancing mask until after the PSO
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27286 >
2024-01-26 01:05:02 +00:00
Jesse Natalie
9b495ee8a9
dzn: Disable depth/stencil for partial binding from dynamic rendering
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27224 >
2024-01-24 22:32:59 +00:00
Jesse Natalie
f4c6d9d9a9
dzn: Handle VkBindImageMemorySwapchainInfoKHR
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27224 >
2024-01-24 22:32:59 +00:00
Jesse Natalie
df684ee653
dzn: Fix enhanced barrier layout for depth blits
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27224 >
2024-01-24 22:32:59 +00:00
Jesse Natalie
fcd56e31f7
dzn: Implement maintenance3 VariableDescriptorCountLayoutSupport
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27224 >
2024-01-24 22:32:59 +00:00
Jesse Natalie
ebcab145cf
dzn: Add a debug option to enable experimental shader models
...
This allows us to run with unsigned shaders
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27160 >
2024-01-20 00:07:15 +00:00
Jesse Natalie
733b7fe831
microsoft/compiler: Declare shader model 6.8 / validator 1.8
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27160 >
2024-01-20 00:07:15 +00:00
Yonggang Luo
1e6fcd6a61
dzn: Remove #if D3D12_SDK_VERSION blocks now that 611 is required
...
Signed-off-by: Yonggang Luo <luoyonggang@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26794 >
2023-12-22 13:35:35 +00:00
Jesse Natalie
555955fc9f
dzn: Fix 3D to 2D image copies
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26795 >
2023-12-22 00:29:22 +00:00
jphuang
02a873fa2a
dzn: Change dst image layout according to aspect
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26532 >
2023-12-06 03:36:07 +00:00
Yonggang Luo
e568ef122a
d3d12,dzn: Simplify the usage of #include <wsl/winadapter.h>
...
Now wsl/winadapter.h are platform independent
Signed-off-by: Yonggang Luo <luoyonggang@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26508 >
2023-12-05 03:24:30 +00:00
Yonggang Luo
767aa00230
dzn: Fixes -Werror=incompatible-pointer-type
...
Error message:
../../src/microsoft/vulkan/dzn_device.c:3840:108: error: passing argument 5 of 'device->dev13->lpVtbl->OpenExistingHeapFromAddress1' from incompatible pointer type [-Werror=incompatible-pointer-types]
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26508 >
2023-12-05 03:24:30 +00:00
Yonggang Luo
84db4d5698
micosoft: decouple microsoft vulkan driver and compiler from gallium
...
Signed-off-by: Yonggang Luo <luoyonggang@gmail.com>
Acked-by: Jesse Natalie <jenatali@microsoft.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24440 >
2023-11-04 00:02:59 +00:00
Jesse Natalie
e51acb65ac
dzn: Fix memory type sorting
...
For a dGPU, we should have:
1. RAM
2. RAM + write-combined CPU access
3. RAM + cached CPU access
4. VRAM
Eventually there'll be VRAM + write-combined CPU access after 4, using "GPU upload heaps"
For an iGPU, we should have:
1. RAM (declared as device-local)
2. RAM + write-combined CPU access (declared as device-local)
3. RAM + cached CPU access (declared as device-local)
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26037 >
2023-11-03 23:33:02 +00:00
Jesse Natalie
228329f4da
vulkan: Consolidate common ICD methods
...
Reviewed-by: Faith Ekstrand <faith.ekstrand@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25998 >
2023-11-03 20:01:14 +00:00