Erik Faye-Lund
29ffc79410
meson: don't pass vk wsi args where they don't belong
...
Only code that cares about Vulkan WSI should get the corresponding
arguments passed. Otherwise, the Vulkan headers might end up including
other headers that we don't have the correct dependencies passed for.
So let's give those a dedicated variable, and only pass that where it's
actually needed.
Fixes: b39958a3a1 ("anv,nir: Move the ANV YCbCr lowering pass to common code")
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/8193
Reviewed-by: Yonggang Luo <luoyonggang@gmail.com>
Reviewed-by: Adam Jackson <ajax@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21185 >
2023-02-15 18:35:14 +00:00
Jesse Natalie
87e83ce58e
dzn: Enable KHR_storage_buffer_storage_class
...
It's required for VK1.1 and Mesa's SPIR-V parser handles it for us.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21261 >
2023-02-14 23:28:29 +00:00
Giancarlo Devich
11bec22647
d3d12: Don't clear d3d12_shader_key
...
The shader key structure is quite large and memsetting it to zero to be
able to create or often simply find an existing shader is responsible
for a large portion of CPU usage during benchmarks.
This change is more surgical about what, when, and how things get
cleared.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21247 >
2023-02-13 22:57:03 +00:00
Jesse Natalie
7ead717393
dzn: Enable 16bit types when supported
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21029 >
2023-02-11 06:12:23 +00:00
Jesse Natalie
d7f9e2db59
dzn: Get options4
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21029 >
2023-02-11 06:12:23 +00:00
Jesse Natalie
08fc7315c5
dzn: Delete unused extensions table
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21029 >
2023-02-11 06:12:23 +00:00
Jesse Natalie
cc906c0eed
dzn: Enable get_surface_capabilities2
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21029 >
2023-02-11 06:12:23 +00:00
Jesse Natalie
a7d4309234
spirv2dxil: Support 16bit types
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21029 >
2023-02-11 06:12:23 +00:00
Jesse Natalie
536ab16bc1
spirv2dxil: Move shader model into runtime conf struct
...
We'll want to use it to control the shape of the nir that we generate
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21029 >
2023-02-11 06:12:23 +00:00
Jesse Natalie
4c527f4fc0
spirv2dxil: Lower unaligned loads and stores
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21029 >
2023-02-11 06:12:23 +00:00
Jesse Natalie
9e2683c6f0
spirv2dxil: Set min UBO/SSBO alignments
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21029 >
2023-02-11 06:12:23 +00:00
Jesse Natalie
58e7acb0e2
microsoft/compiler: Support lowering SSBO accesses to 16bit vectors
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21029 >
2023-02-11 06:12:23 +00:00
Jesse Natalie
0f56fc09d9
microsoft/compiler: Support raw buffer load/store intrinsics with 16bit alignment
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21029 >
2023-02-11 06:12:23 +00:00
Jesse Natalie
196dc72838
microsoft/compiler: Handle 48-bit stores to SSBO/shared
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21029 >
2023-02-11 06:12:23 +00:00
Jesse Natalie
c994c8b3fd
microsoft/compiler: Pass an alignment to constant buffer load lowering
...
This means we can stop doing conditionals and shifts if we know the
alignment of a load for a small amount of data.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21029 >
2023-02-11 06:12:23 +00:00
Jesse Natalie
7fcb60be37
microsoft/compiler: Simplify bitpacking for load/store lowering with nir_extract_bits
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21029 >
2023-02-11 06:12:23 +00:00
Jesse Natalie
7830901751
microsoft/compiler: Pass deref modes to unaligned pass and handle push const
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21029 >
2023-02-11 06:12:23 +00:00
Jesse Natalie
facd2e4fdb
microsoft/compiler: Move unaligned load/store pass from CL
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21029 >
2023-02-11 06:12:23 +00:00
Jesse Natalie
f50843fcdb
microsoft/compiler: Handle undef-rounding f2f16 as rtz
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21029 >
2023-02-11 06:12:23 +00:00
Jesse Natalie
8782a0b8df
microsoft/compiler: Ensure native_low_precision is set for 16-bit bitcasts/stores
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21029 >
2023-02-11 06:12:23 +00:00
Jesse Natalie
4d76d46c13
microsoft/compiler: Handle frcp for float16/float64
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21029 >
2023-02-11 06:12:23 +00:00
Jesse Natalie
ed13c2261c
microsoft/compiler: Handle struct consts in DXIL module dumper
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21029 >
2023-02-11 06:12:23 +00:00
Jesse Natalie
25ee07373c
nir_lower_fp16_casts: Allow opting out of lowering certain rounding modes
...
Reviewed-by: Giancarlo Devich <gdevich@microsoft.com>
Reviewed-by: Faith Ekstrand <faith.ekstrand@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21029 >
2023-02-11 06:12:23 +00:00
Jesse Natalie
e9ab33c9a1
microsoft/clc: Set features that are used by CL tests
...
Reviewed-by: Karol Herbst <kherbst@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21168 >
2023-02-11 05:24:08 +00:00
Ian Romanick
ea413e826b
nir: Eliminate nir_op_f2b
...
Builds on the work of !15121 . This gets to delete even more code
because many drivers shared a lot of code for i2b and f2b.
No shader-db or fossil-db changes on any Intel platform.
v2: Rebase on 1a35acd8d9 .
v3: Update a comment in nir_opcodes_c.py. Suggested by Konstantin.
v4: Another rebase. Remove f2b stuff from Midgard.
Reviewed-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20509 >
2023-02-03 22:39:57 +00:00
Jesse Natalie
237e12c2df
dzn, driconf: Add a driconf entry for NMS to claim wide line support
...
Reviewed-by: Giancarlo Devich <gdevich@microsoft.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20959 >
2023-01-30 21:17:25 +00:00
Jesse Natalie
c0122b81a4
dzn: Consider linked shaders when computing DXIL hash
...
Fixes 3DMark Wild Lands. Otherwise, we'd end up loading a DXIL shader
that had invalid linkage with another shader in the pipeline. We can
only load a DXIL shader if it's being linked against the same before
and after as a previous compilation.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20962 >
2023-01-27 20:56:01 +00:00
Erik Faye-Lund
b6a344f4ba
meson: do not reconstruct ICD paths
...
Meson will already construct these paths for us, so let's reuse them
instead of throwing away the result and recontstructing them.
Reviewed-by: Eric Engestrom <eric@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20907 >
2023-01-27 11:35:50 +00:00
Jesse Natalie
1c5a64296d
CI/windows: Don't limit deqp-runner to 4 jobs
...
If FDO_CI_CONCURRENT is set, use that, otherwise let deqp-runner
choose concurrency based on system CPU cores.
Reviewed-by: Daniel Stone <daniels@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20924 >
2023-01-27 01:49:19 +00:00
Jesse Natalie
2010b91547
dzn: Report as a software device for non-Windows
...
Fixes: 5f1b8b3e6c ("dzn: Use DXGI swapchains")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20939 >
2023-01-26 19:00:31 +00:00
Jesse Natalie
cdd1588d55
dzn: Don't recursively lock the physical device enum mutex
...
Fixes: cfa260cd27 ("dzn: Use common physical device list/enumeration helpers")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20939 >
2023-01-26 19:00:31 +00:00
Jesse Natalie
40a2b50599
dzn: Fix Windows WSI
...
This was a merge conflict from the Win32 WSI DXGI swapchain changes.
I missed moving a new line of code that was added when rearranging
things for using the common helpers.
Fixes: cfa260cd ("dzn: Use common physical device list/enumeration helpers")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20944 >
2023-01-26 18:03:50 +00:00
Jesse Natalie
a08d6d8b59
dzn: Support Vulkan 1.2
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20919 >
2023-01-26 03:16:50 +00:00
Jesse Natalie
9d89b7e4a8
dzn: Ensure we don't mix DSV+simultaneous-access
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20919 >
2023-01-26 03:16:50 +00:00
Jesse Natalie
4daeac01c5
dzn: Enhanced barriers fixes/workarounds
...
Fix: Acquire/release should have one valid access/sync and one set
to none.
Workaround: D3D doesn't like simultaneous access resources leaving
COMMON layout, nor does it like setting UAV/RTV access bits for the
COMMON layout.
Use UNDEFINED -> UNDEFINED layout transitions, where the access bits
just aren't validated.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20919 >
2023-01-26 03:16:50 +00:00
Jesse Natalie
c413c3dffc
dzn: Always do clears with copies on non-graphics queues
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20919 >
2023-01-26 03:16:50 +00:00
Jesse Natalie
948ff5b8e2
dzn: Support float control
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20919 >
2023-01-26 03:16:50 +00:00
Jesse Natalie
f391c2db62
dzn: Cache GPUVA for buffers
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20919 >
2023-01-26 03:16:50 +00:00
Jesse Natalie
34f372c47c
dzn: Handle separate stencil usage
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20919 >
2023-01-26 03:16:50 +00:00
Jesse Natalie
789acc2ffb
dzn: Fix dynamic rendering clear load op for non-multiview
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20919 >
2023-01-26 03:16:50 +00:00
Jesse Natalie
e88070b1da
microsoft/compiler: Support float controls
...
Float controls are emitted as function attributes on the entrypoint.
These function attributes are not the standard build-in LLVM kind, but
are strings, which the DXIL backend didn't know how to emit. So, this
change adds string attribute support and uses it for fp32 ftz/preserve.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20919 >
2023-01-26 03:16:50 +00:00
Jesse Natalie
81b5f6a3fd
dzn: Use core feature matching logic instead of rolling our own
...
This will print nice messages on unsupported features
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20801 >
2023-01-24 11:00:05 -08:00
Jesse Natalie
db083070f0
dzn: Implement subgroup size control extension
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20801 >
2023-01-24 11:00:05 -08:00
Jesse Natalie
a041cd48f4
dzn: Support more subgroup/quad ops
...
See the comment around supported shader stages - to avoid
introducing CTS failures, vertex/geometry support for
subgroups are turned off since they cannot support quads.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20801 >
2023-01-24 11:00:05 -08:00
Jesse Natalie
9d26aa99d5
spirv2dxil: Support subgroup SPIR-V caps
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20801 >
2023-01-24 11:00:05 -08:00
Jesse Natalie
a8329595fa
spirv2dxil: Lower some wave op properties
...
DXIL has no concept of subgroup mask ops, relative
shuffle ops, and everything is scalar.
Most wave broadcast ops support i1 overloads, except
for quad swap operations. Go figure. Use lower_bit_size
to promote those to i32 instead.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20801 >
2023-01-24 11:00:05 -08:00
Jesse Natalie
f58d763363
microsoft/compiler: Support emitting the SM6.6 wave size tag
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20801 >
2023-01-24 11:00:05 -08:00
Jesse Natalie
2c5d96bb58
microsoft/compiler: Implement more wave/quad ops
...
This handles ballot, vote, shuffle, broadcast, and quads
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20801 >
2023-01-24 11:00:05 -08:00
Jesse Natalie
a318c101bb
microsoft/compiler: Handle i1 overloads
...
Some wave ops can have bool/i1 overloads
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20801 >
2023-01-24 11:00:05 -08:00
Jesse Natalie
e1b6e0748f
microsoft/compiler: Handle i2i1 and u2u1
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20801 >
2023-01-24 11:00:05 -08:00