Yiwei Zhang
eb0ad64e80
venus: add stubs for accel struct host commands
...
They won't be implemented, and the host cmds feature will always be
disabled in venus.
Signed-off-by: Yiwei Zhang <zzyiwei@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33907 >
2025-03-07 22:44:10 +00:00
Yiwei Zhang
3eb554a2b5
venus: support VK_KHR_deferred_host_operations
...
Details are at:
https://gitlab.freedesktop.org/virgl/venus-protocol/-/merge_requests/97
For venus and vkr, we'll use pure driver side impl. Start with (1) and
move towards (2) later as things evolve. We'd like renderer side to be
simple and passive.
Signed-off-by: Yiwei Zhang <zzyiwei@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33907 >
2025-03-07 22:44:10 +00:00
Yiwei Zhang
90f9a1cca5
venus: add a debug option for ray tracing support
...
Signed-off-by: Yiwei Zhang <zzyiwei@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33907 >
2025-03-07 22:44:10 +00:00
Yiwei Zhang
6bac77b75c
venus: sync protocol for ray tracing support
...
Signed-off-by: Yiwei Zhang <zzyiwei@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33907 >
2025-03-07 22:44:10 +00:00
sarbes
a3f827319f
lima: add genxml for texture descriptor
...
This commit adds genxml to Lima, by copying mostly from Asahi. The definition of the texture descriptor has been moved there.
v2:
- remove mipaddress handling, use "shr(6)" modifier
- indent TD parser 8 spaces
v3:
- added copyright
- renamed ushort to unorm16
Reviewed-by: Erico Nunes <nunes.erico@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33385 >
2025-03-07 21:10:20 +00:00
Benjamin Lee
871804a494
panfrost: implement 16-bit pack/unpack intrinsics
...
This significantly improves codegen for the 16-bit ldexp2 lowering.
Signed-off-by: Benjamin Lee <benjamin.lee@collabora.com>
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33781 >
2025-03-07 18:56:33 +00:00
Juan A. Suarez Romero
2662b9b71d
v3d/v3dv/vc4: review all expected timeouts
...
Some of these tests are not valid anymore, others can now be executed
under the time budget.
This commit updates all the expected timeouts.
Reviewed-by: Eric Engestrom <eric@engestrom.ch>
Signed-off-by: Juan A. Suarez Romero <jasuarez@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33913 >
2025-03-07 17:37:18 +00:00
Daniel Schürmann
795706f3d6
zink: enable CapabilityDemoteToHelperInvocation and extension only if required
...
Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33492 >
2025-03-07 15:44:49 +00:00
Daniel Schürmann
efaaaf45d1
zink: clean up HelperInvocation code emission
...
With SPIR-V 1.6 OpIsHelperInvocationEXT was effectively replaced with
Volatile loads of the HelperInvocation built-in variable.
This patch also drops the distinction between is_helper_invocation and
load_helper_invocation.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33492 >
2025-03-07 15:44:49 +00:00
Daniel Schürmann
dbd41e3ddd
nir: set SYSTEM_VALUE_HELPER_INVOCATION read for nir_intrinsic_is_helper_invocation
...
is_helper_invocation is the volatile access of load_helper_invocation.
Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33492 >
2025-03-07 15:44:49 +00:00
Daniel Schürmann
a4cffa91b8
nir: remove nir_lower_discard_if_to_cf option
...
Since removing nir_intrinsic_discard{_if} it has no purpose anymore.
Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33492 >
2025-03-07 15:44:49 +00:00
Daniel Schürmann
276dc751ce
zink: lower {demote|terminate}_if to CF after lowering point smooth
...
This must have slipped somehow.
Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33492 >
2025-03-07 15:44:49 +00:00
Erik Faye-Lund
fa91b41f54
docs/features: add VK_EXT_hdr_metadata
...
This was missed when it was recently added.
Fixes: 4b663d561b ("vulkan/wsi: implement support for VK_EXT_hdr_metadata on Wayland")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33918 >
2025-03-07 15:34:02 +00:00
Erik Faye-Lund
1a1412e66e
docs/features: add missing panvk feature
...
I forgot to document this feature when I added it, whoops!
Fixes: ac05c2a2b8 ("panvk: expose subgroup operations")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33918 >
2025-03-07 15:34:02 +00:00
Georg Lehmann
55921bd7ef
radv/gfx10+: remove null exports if discard isn't used
...
Foz-DB Navi31:
Totals from 1362 (1.71% of 79789) affected shaders:
Instrs: 9879 -> 8497 (-13.99%)
CodeSize: 52004 -> 41028 (-21.11%)
Latency: 48821 -> 27349 (-43.98%)
InvThroughput: 7475 -> 7474 (-0.01%)
SALU: 274 -> 254 (-7.30%)
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33835 >
2025-03-07 15:00:37 +00:00
Georg Lehmann
09ff1c28d8
ac/nir/lower_ps_late: consider dcc decompression for null exports
...
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33835 >
2025-03-07 15:00:37 +00:00
Georg Lehmann
ad73af6e68
radv: add dcc_decompress_gfx11 in radv_graphics_state_key
...
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33835 >
2025-03-07 15:00:37 +00:00
Alyssa Rosenzweig
4da7b12000
panfrost: port to common stats framework
...
this adds full support for executable statistics in panvk.
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Acked-by: Boris Brezillon <boris.brezillon@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33921 >
2025-03-07 13:48:44 +00:00
Georg Lehmann
7b1f1a107e
radv: enable invariant geom for DOOM(2016)
...
Moving alu reordered some fmuls and since we prefer the closest fmul for ffma,
this causes precision to mismatch between depth write and depth test.
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/12016
Cc: mesa-stable
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33933 >
2025-03-07 11:48:38 +00:00
Christian Gmeiner
ae21dd4252
etnaviv/ci: Add missing rev to GC3000
...
A rebase mistake.
Fixes: 71e2ddcede ("etnaviv/ci: Add gles2 run for GC3000")
Signed-off-by: Christian Gmeiner <cgmeiner@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33937 >
2025-03-07 11:14:19 +01:00
Samuel Pitoiset
82ab58f6c6
radv: add RADV_DEBUG=pso_history
...
This dumps pipeline hash + shader VA to /tmp/radv_pso_history.log. Can
be very useful when investigating GPU hangs using UMR to get the fossils
back with the PC.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33912 >
2025-03-07 09:14:18 +01:00
Caio Oliveira
ff59013571
brw: Rework label tracking in assembler
...
For each label store its offset and two lists of uses (for JIP and UIP).
Because the parser itself already restricts what opcodes can use labels
(and which ones), don't re-validate them.
Reviewed-by: Sagar Ghuge <sagar.ghuge@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33522 >
2025-03-06 17:06:20 -08:00
Caio Oliveira
7b45d31df0
brw: Add support for GOTO/JOIN in the assembler
...
Reviewed-by: Sagar Ghuge <sagar.ghuge@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33522 >
2025-03-06 17:06:20 -08:00
Caio Oliveira
9df254731e
brw: Make assembler strict about JIP and UIP order
...
The "JIP:" and "UIP:" markers were being ignored, so was possible
to switch their order in the text but the parser would act as the
same. Just fix the order now and enforce it through the parsing.
Since we are here, remove the "Jump:" and "Pop:" that are not used
for Gfx9+ anymore.
Reviewed-by: Sagar Ghuge <sagar.ghuge@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33522 >
2025-03-06 17:06:19 -08:00
Caio Oliveira
25875f5e79
brw: Remove bblock_t parameters from various passes
...
These are either unused or can be trivially replaced by
a block stored in an instruction.
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33815 >
2025-03-06 23:33:38 +00:00
Caio Oliveira
8e2a7cb42d
brw: Embed at_end() inside brw_builder(brw_shader *) constructor
...
All remaining uses of that constructor would also use at_end(),
and vice-versa. So just implement that behavior in the constructor
itself.
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33815 >
2025-03-06 23:33:38 +00:00
Caio Oliveira
6f37e6f104
brw: Add explicit way to get an empty brw_builder
...
And use brw_builder(brw_shader *) and brw_builder() constructors
where possible.
The way tests are written, it is necessary to initialize an "empty"
builder -- which is later replaced by a proper one. Default parameter
NULL make that initialization implicit.
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33815 >
2025-03-06 23:33:38 +00:00
Caio Oliveira
32e562ae01
brw: Simplify brw_builder "insert before inst" constructor
...
Since brw_inst now has the block it belongs and the block can
reach the shader, the only necessary information to create a
builder is the brw_inst itself.
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33815 >
2025-03-06 23:33:38 +00:00
Caio Oliveira
66307811c3
brw: Remove block parameter from brw_inst::remove()
...
Use brw_inst::block instead.
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33815 >
2025-03-06 23:33:38 +00:00
Caio Oliveira
7924d48bcd
brw: Use brw_inst::block in CSE
...
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33815 >
2025-03-06 23:33:38 +00:00
Caio Oliveira
b0b0fa8624
brw: Use brw_inst::block in Combine Constants
...
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33815 >
2025-03-06 23:33:38 +00:00
Caio Oliveira
07d0af763d
brw: Use brw_inst::block in Def analysis
...
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33815 >
2025-03-06 23:33:38 +00:00
Caio Oliveira
705d448bc3
brw: Add block pointer in brw_inst
...
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33815 >
2025-03-06 23:33:38 +00:00
Caio Oliveira
b71ec53048
brw: Remove unused function
...
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33815 >
2025-03-06 23:33:38 +00:00
Mike Blumenkrantz
7167214cab
zink: support crazy CL buffer-to-texture extension
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33777 >
2025-03-06 23:04:44 +00:00
Mike Blumenkrantz
a6d3078c80
zink: extract some samplerview bind/unbind code
...
no functional changes
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33777 >
2025-03-06 23:04:44 +00:00
Mike Blumenkrantz
952ec2ab55
zink: extract some shader image resource binding code
...
no functional changes
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33777 >
2025-03-06 23:04:44 +00:00
Mike Blumenkrantz
1f6c97f358
zink: disable reordering on compute contexts
...
in theory reordering shouldn't do anything here other than promote
everything to the reorder cmdbuf, which is harder to debug
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33777 >
2025-03-06 23:04:44 +00:00
Samuel Pitoiset
5f177018f7
radv/ci: re-enable ET2C emulation testing on non-native GPUs
...
This env variable was renamed except for CI.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33924 >
2025-03-06 22:09:49 +00:00
Samuel Pitoiset
54242f8f04
ci/b2c: fix passing B2C_* variables
...
Broken search&replace regex.
This fixes GPU hang detection on RADV/CI.
Fixes: bad0197300 ("ci/b2c: pass through all the B2C_* variable without renaming them")
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33924 >
2025-03-06 22:09:49 +00:00
Lakshman Chandu Kondreddy
2cfe070b3b
freedreno: Add support for Adreno623 GPU
...
Add support to enable basic functionality of Adreno623 GPU.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33525 >
2025-03-06 21:48:05 +00:00
Marek Olšák
40aac0681b
ac,radeonsi: define all SDMA DCC fields & use them, enable compressed writes
...
SDMA supports HTILE, but SURF_TYPE must be set correctly.
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33482 >
2025-03-06 21:10:54 +00:00
Marek Olšák
ce0d213ac8
radeonsi: don't cull front/back faces in the hw if the shader culls them
...
This reduces the number of context rolls by not setting
the CULL_FRONT/CULL_BACK register fields.
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33482 >
2025-03-06 21:10:54 +00:00
Marek Olšák
bafab3324e
radeonsi: reflect blitter VS in si_context::num_vertex_elements
...
Set it to 0 if the VS doesn't use VBOs. This fixes an assertion failure.
Fixes: 7bf5d2ce75 - radeonsi: add assertion requiring binding vertex elements before vertex_buffers
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/12698
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33482 >
2025-03-06 21:10:53 +00:00
Marek Olšák
c662fcfa94
radeonsi: lower IO only if io_lowered == false
...
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33482 >
2025-03-06 21:10:53 +00:00
Marek Olšák
53ae218dcd
radeonsi: use the restrict keyword for draw parameters
...
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33482 >
2025-03-06 21:10:53 +00:00
Marek Olšák
95a9df811a
radeonsi: enable Z/S caching in GL2 by default except FurMark
...
This improves performance for several workloads.
Acked-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33482 >
2025-03-06 21:10:52 +00:00
Marek Olšák
36ccc300d8
radeonsi: enable NGG culling when the shader writes the viewport index
...
Only W and face culling is enabled.
Acked-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33482 >
2025-03-06 21:10:52 +00:00
Marek Olšák
356f5b2d2e
radeonsi: move buffer reallocation to a separate function
...
to be used later
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33482 >
2025-03-06 21:10:51 +00:00
Marek Olšák
0f9c972453
radeonsi: use si_is_buffer_idle everywhere
...
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33482 >
2025-03-06 21:10:50 +00:00