Commit graph

212322 commits

Author SHA1 Message Date
Igor Naigovzin
6c0017be38 zink: fix clamping gl_Layer output to 0 when framebuffer is not layered
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
The previous implementation was using temporal clamping variable within geometry shader.
    It caused the framebuffer_layer_id input to be ignored, so gl_Layer would end up with a value of 0.
    The fix removes the use of the temp variable.

    Tested using CTS 4.6.6.0 test cases:
    ./glcts --deqp-case=dEQP-GL45-ES31.functional.geometry_shading.layered.fragment_layer_cubemap
    ./glcts --deqp-case=dEQP-GL45-ES31.functional.geometry_shading.layered.fragment_layer_3d
    ./glcts --deqp-case=dEQP-GL45-ES31.functional.geometry_shading.layered.fragment_layer_2d_array
    ./glcts --deqp-case=dEQP-GL45-ES31.functional.geometry_shading.layered.fragment_layer_2d_multisample_array

    These tests fail before and pass after the change.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37069>
2025-09-04 12:35:53 +00:00
Alejandro Piñeiro
388f9ccd97 docs: GL_ARB_compute_shader is not a ES extension
Without this commit, GL_ARB_compute_shader appears as both an OpenGL
and an OpenGL ES extension.

But this is not an OpenGL ES extension. One of the main differences is
that the minimum value for WORK_GROUP_INVOCATIONS on
GL_ARB_compute_shader is 1024, while the minimum value required for
the OpenGL ES 3.1 spec is 128. So for example, both v3d and panfrost
doesn't expose ARB_compute_shader, while it supports compute shader on
OpenGL 3.1, so the docs are wrong.

I guess that the reason of re-using ARB_compute_shader is because
there isn't an OES compute shader extension. There was an EXT
extension though, so this is similar to geometry shader, where there
you had ARB_geometry_shader4, but it was superseded by OpenGL
3.2. This commit follows geometry shader approach, and just adds a
"Compute shader" feature on OpenGL ES 3.1

Reviewed-by: Juan A. Suarez <jasuarez@igalia.com>
Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37131>
2025-09-04 14:26:21 +02:00
Lionel Landwerlin
262baafe27 anv: fix partial queries
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
Partial results should be computed for all types of queries.

Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Cc: mesa-stable
Reviewed-by: Alyssa Rosenzweig <alyssa.rosenzweig@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36916>
2025-09-04 13:25:26 +03:00
Eric Engestrom
d698251e32 radv/ci: document whether ci-tron jobs runs on an APU or a dGPU
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37124>
2025-09-04 09:47:21 +00:00
Eric Engestrom
1a1e21e725 radv/ci: deduplicate navi10 GPU_VERSION
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37124>
2025-09-04 09:47:21 +00:00
Eric Engestrom
263d260494 ci_run_n_monitor: add --job-tags filter
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
This allows limiting to eg. `--target '(zink-)?radv-.*' --job-tags
'farm:(mupuf|keywords)'` to only run radv jobs on DUTs in these two
farms.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37100>
2025-09-04 09:19:32 +00:00
Eric Engestrom
d2c3c92f5e ci/gitlab_gql: keep track of job tags
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37100>
2025-09-04 09:19:32 +00:00
Eric Engestrom
f74df30d6a bin/ci: let filter_dag() caller define job filter once (instead of 3 times)
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37100>
2025-09-04 09:19:31 +00:00
Corentin Noël
e83561bbb7 android: Only include libdrm_intel for i915 as iris do not depend on it
Signed-off-by: Corentin Noël <corentin.noel@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37165>
2025-09-04 07:53:36 +00:00
Job Noorman
9d4ba885bb ir3/ra: make main shader reg select independent of preamble
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
ir3_ra allocates registers in a round-robin fashion to avoid false
dependencies. In order to do this, it keeps track of a "file start"
register for each register file and will search starting from there for
available registers.

This file start is initialized at the beginning of RA of kept across
blocks, including across the preamble. This means that a change that
only affects the preamble may cause changes in how registers are
allocated in the main shader. This may result in more or less copies,
and more or less false dependencies which changes the behavior of
postsched.

Changes in the preamble affecting the main shader makes it more
difficult to analyze shader-db results, as I often find myself chasing
down a regression that is just caused by RA/postsched "bad luck" in a
main shader that didn't actually change. Prevent this by resetting the
file start at the beginning of the main shader.

Totals:
Instrs: 364710030 -> 364631384 (-0.02%); split: -0.19%, +0.17%
CodeSize: 926766046 -> 926671488 (-0.01%); split: -0.10%, +0.09%
NOPs: 47703035 -> 47653319 (-0.10%); split: -1.05%, +0.94%
MOVs: 17072354 -> 17075112 (+0.02%); split: -1.28%, +1.29%
COVs: 4098062 -> 4096784 (-0.03%); split: -0.04%, +0.01%
Full: 15164359 -> 15112404 (-0.34%); split: -0.34%, +0.00%
(ss): 7818796 -> 7819147 (+0.00%); split: -1.10%, +1.11%
(sy): 3985674 -> 3983435 (-0.06%); split: -0.72%, +0.67%
(ss)-stall: 26535279 -> 26525929 (-0.04%); split: -1.36%, +1.32%
(sy)-stall: 111983489 -> 111716382 (-0.24%); split: -1.26%, +1.02%
Last helper: 116734916 -> 116595531 (-0.12%); split: -0.62%, +0.50%
Cat0: 53338794 -> 53289450 (-0.09%); split: -0.94%, +0.85%
Cat1: 22352349 -> 22328303 (-0.11%); split: -1.28%, +1.17%
Cat2: 155348173 -> 155348012 (-0.00%); split: -0.00%, +0.00%
Cat7: 9314194 -> 9309099 (-0.05%); split: -0.88%, +0.82%

Totals from 224302 (16.59% of 1352016) affected shaders:
Instrs: 148838101 -> 148759455 (-0.05%); split: -0.47%, +0.42%
CodeSize: 404838970 -> 404744412 (-0.02%); split: -0.22%, +0.20%
NOPs: 26261983 -> 26212267 (-0.19%); split: -1.90%, +1.71%
MOVs: 8372715 -> 8375473 (+0.03%); split: -2.60%, +2.63%
COVs: 2061488 -> 2060210 (-0.06%); split: -0.09%, +0.02%
Full: 3420300 -> 3368345 (-1.52%); split: -1.52%, +0.00%
(ss): 3848423 -> 3848774 (+0.01%); split: -2.24%, +2.25%
(sy): 2021040 -> 2018801 (-0.11%); split: -1.43%, +1.32%
(ss)-stall: 13554064 -> 13544714 (-0.07%); split: -2.65%, +2.59%
(sy)-stall: 59778475 -> 59511368 (-0.45%); split: -2.36%, +1.91%
Last helper: 52847662 -> 52708277 (-0.26%); split: -1.38%, +1.12%
Cat0: 29270336 -> 29220992 (-0.17%); split: -1.72%, +1.55%
Cat1: 10820261 -> 10796215 (-0.22%); split: -2.63%, +2.41%
Cat2: 57289060 -> 57288899 (-0.00%); split: -0.00%, +0.00%
Cat7: 5686726 -> 5681631 (-0.09%); split: -1.43%, +1.34%

Signed-off-by: Job Noorman <jnoorman@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37003>
2025-09-04 05:58:09 +00:00
Olivia Lee
bb14ea5c19 v3dv: replace vk_to_mesa_prim with vk_topology_to_mesa from vulkan/util
Signed-off-by: Olivia Lee <olivia.lee@collabora.com>
Reviewed-by: Alejandro Piñeiro <apinheiro@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37038>
2025-09-03 22:04:14 -07:00
Olivia Lee
dccb431254 lavapipe: replace vk_conv_topology with vk_topology_to_mesa from vulkan/util
Signed-off-by: Olivia Lee <olivia.lee@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37038>
2025-09-03 22:04:14 -07:00
Olivia Lee
554a0be553 hk: replace vk_conv_topology with vk_topology_to_mesa from vulkan/util
Signed-off-by: Olivia Lee <olivia.lee@collabora.com>
Reviewed-by: Mary Guillemard <mary.guillemard@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37038>
2025-09-03 22:04:14 -07:00
Olivia Lee
5faa62f91e vulkan/util: add vk_topology_to_mesa helper function
Something like this already exists in a few drivers, move it to common
code. This specific version was pulled from honeykrisp, which is the
only one that handles META_RECT_LIST_MESA.

Signed-off-by: Olivia Lee <olivia.lee@collabora.com>
Reviewed-by: Mary Guillemard <mary.guillemard@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37038>
2025-09-03 22:04:14 -07:00
Yiwei Zhang
ed80e33f51 tu: properly implement VkBindMemoryStatus from maint6
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
Per spec: If the maintenance6 feature is enabled, this command must
attempt to perform all of the memory binding operations described by
pBindInfos, and must not early exit on the first failure.

Reviewed-by: Connor Abbott <cwabbott0@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37099>
2025-09-04 02:29:33 +00:00
Yiwei Zhang
cef48af271 tu: bind aliased wsi image at memory offset zero
The vulkan spec says that we should ignore memoryOffset when
VkBindImageMemorySwapchainInfoKHR is present. wsi common assumes that we
bind the wsi image at offset 0, so set the offset to 0. This change
aligns with common wsi, and also obeys dedicated alloc requirement.

Fixes: f887116c49 ("turnip: adopt wsi_common_get_memory")
Reviewed-by: Connor Abbott <cwabbott0@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37099>
2025-09-04 02:29:33 +00:00
Yiwei Zhang
ee7666e3df vulkan/util: drop unused vk_select_android_external_format
Acked-by: Connor Abbott <cwabbott0@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37099>
2025-09-04 02:29:32 +00:00
Yiwei Zhang
96ac80aed1 tu: simplify AHB image view format resolving for external format
vk_image_view_init has resolved the external format already.

Acked-by: Connor Abbott <cwabbott0@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37099>
2025-09-04 02:29:32 +00:00
Yiwei Zhang
76370c1edf tu: drop redundant Android headers
compile and cross-compile tested

Acked-by: Connor Abbott <cwabbott0@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37099>
2025-09-04 02:29:31 +00:00
Yonggang Luo
949a056934 tgsi: Fixes ntt_should_vectorize_io parameters
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
Fixes: 5f757bb95c ("nir: Make the load_store_vectorizer provide align_mul + align_offset.")

This is found when I am trying to narrow bit_size and num_components to uint8_t

Signed-off-by: Yonggang Luo <luoyonggang@gmail.com>
Reviewed-by: Emma Anholt <emma@anholt.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37042>
2025-09-04 01:42:19 +00:00
Sagar Ghuge
bc8e29c04e iris: Emit state cache invalidation after every compute dispatch
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
Implement HSD 16028171704/14025112257:
   LSC state cache livelock:- Once state cache entries are full,
   subsequent walker dispatches with two threads per thread group maybe
   gets stuck infinitely because of state cache live lock.

   One thread continuously stuck in loop doing UGM fence + evict and UGM
   read is waiting on UGM read to have certain value. while other thread
   supposed to update the value that first thread is waiting for. But
   since entries are full in state cache, there is second thread never
   make progress.

Closes: #12352
Signed-off-by: Sagar Ghuge <sagar.ghuge@intel.com>
Reviewed-by: Tapani Pälli <tapani.palli@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37128>
2025-09-04 00:14:48 +00:00
Sagar Ghuge
ebbc358db5 blorp: Emit state cache invalidation after every compute dispatch
Implement HSD 16028171704/14025112257:
   LSC state cache livelock:- Once state cache entries are full,
   subsequent walker dispatches with two threads per thread group maybe
   gets stuck infinitely because of state cache live lock.

   One thread continuously stuck in loop doing UGM fence + evict and UGM
   read is waiting on UGM read to have certain value. while other thread
   supposed to update the value that first thread is waiting for. But
   since entries are full in state cache, there is second thread never
   make progress.

Closes: #12352
Signed-off-by: Sagar Ghuge <sagar.ghuge@intel.com>
Reviewed-by: Tapani Pälli <tapani.palli@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37128>
2025-09-04 00:14:48 +00:00
Sagar Ghuge
3e0ad0176b anv: Emit state cache invalidation after every compute dispatch
Implement HSD 16028171704/14025112257:
   LSC state cache livelock:- Once state cache entries are full,
   subsequent walker dispatches with two threads per thread group maybe
   gets stuck infinitely because of state cache live lock.

   One thread continuously stuck in loop doing UGM fence + evict and UGM
   read is waiting on UGM read to have certain value. while other thread
   supposed to update the value that first thread is waiting for. But
   since entries are full in state cache, there is second thread never
   make progress.

Closes: #12352
Signed-off-by: Sagar Ghuge <sagar.ghuge@intel.com>
Reviewed-by: Tapani Pälli <tapani.palli@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37128>
2025-09-04 00:14:48 +00:00
Eric R. Smith
b03cd7bdce panfrost: align spills to reduce TLS memory usage
When spilling registers on Valhall we are careful to leave the TLS
pointer aligned on 16 byte boundaries (so as to avoid accesses
crossing those boundaries). However, within the spill code we don't
need to have 16 byte alignment for spills of 32 or 64 bit values.
In the common case where most spills are 32 bits, we can save nearly
75% of the memory used by just aligning to 32 bit boundaries.

Reviewed-by: Aksel Hjerpbakk <aksel.hjerpbakk@arm.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36676>
2025-09-03 23:54:32 +00:00
Faith Ekstrand
acd7cae0fa turnip: Use vk_drm_syncobj_copy_payloads
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36948>
2025-09-03 23:11:10 +00:00
Valentine Burley
c6ce1a0caf zink/ci: Disable zink-anv-cml-asan
Too flaky at the moment with no quick fix.

Signed-off-by: Valentine Burley <valentine.burley@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37154>
2025-09-03 22:52:43 +00:00
Christian Gmeiner
b4bac915f0 etnaviv: Add support for ARB_texture_gather
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
The hardware support for tg4 is unclear from  RE and feature databases.
Enable this extension on halti5 GPUs as a conservative starting point.

Support for 128 bit formats is missing, so it's gated behind ETNA_MESA_DEBUG=deqp.

Signed-off-by: Christian Gmeiner <cgmeiner@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36622>
2025-09-03 22:07:26 +00:00
Christian Gmeiner
870252379c etnaviv: nir: Add nir_texop_tg4 offset lowering
Implement offset lowering by converting pixel offsets to normalized
coordinate space and adjusting coordinates accordingly.

Signed-off-by: Christian Gmeiner <cgmeiner@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36622>
2025-09-03 22:07:26 +00:00
Christian Gmeiner
561faa2259 etnaviv: isa: Add tg4 instruction
This instruction is used to implement textureGather.

Blob generates such tex_gather's for dEQP-GLES31.functional.texture.gather.*

Signed-off-by: Christian Gmeiner <cgmeiner@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36622>
2025-09-03 22:07:26 +00:00
Christian Gmeiner
aa91ece579 etnaviv: Enable texture_multisample for deqp testing
This makes running GLES3.1 deqp easier.

Signed-off-by: Christian Gmeiner <cgmeiner@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36622>
2025-09-03 22:07:26 +00:00
Job Noorman
f46e2baeb3 ir3/spill: initialize base reg as late as possible
We currently insert the base reg at the very start of the shader. This
prevents enabling early preamble even if nothing is spilled in the
preamble.

Prevent this by keeping track of the least common ancestor of all block
that spill/reload and moving the base reg there.

Totals:
Instrs: 48207402 -> 48210556 (+0.01%); split: -0.00%, +0.01%
CodeSize: 101907026 -> 101909942 (+0.00%); split: -0.00%, +0.00%
NOPs: 8386320 -> 8387956 (+0.02%); split: -0.01%, +0.03%
MOVs: 1468853 -> 1469173 (+0.02%); split: -0.02%, +0.04%
COVs: 823724 -> 823852 (+0.02%); split: -0.00%, +0.02%
(ss): 1113167 -> 1113157 (-0.00%); split: -0.01%, +0.01%
(sy): 552317 -> 552306 (-0.00%); split: -0.01%, +0.00%
(ss)-stall: 4013046 -> 4013109 (+0.00%); split: -0.00%, +0.00%
(sy)-stall: 16741190 -> 16740000 (-0.01%); split: -0.02%, +0.01%
Preamble Instrs: 11506988 -> 11506257 (-0.01%); split: -0.01%, +0.00%
Early Preamble: 121339 -> 121367 (+0.02%)
Last helper: 11686328 -> 11686316 (-0.00%); split: -0.00%, +0.00%
Cat0: 9241457 -> 9243099 (+0.02%); split: -0.01%, +0.03%
Cat1: 2353411 -> 2354995 (+0.07%); split: -0.04%, +0.11%
Cat2: 17468471 -> 17468507 (+0.00%); split: -0.00%, +0.00%
Cat7: 1637795 -> 1637687 (-0.01%); split: -0.01%, +0.00%

Totals from 48 (0.03% of 164705) affected shaders:
Instrs: 347473 -> 350627 (+0.91%); split: -0.40%, +1.31%
CodeSize: 565490 -> 568406 (+0.52%); split: -0.23%, +0.74%
NOPs: 70496 -> 72132 (+2.32%); split: -1.07%, +3.39%
MOVs: 27524 -> 27844 (+1.16%); split: -1.23%, +2.39%
COVs: 6275 -> 6403 (+2.04%); split: -0.38%, +2.42%
(ss): 8850 -> 8840 (-0.11%); split: -0.76%, +0.64%
(sy): 4666 -> 4655 (-0.24%); split: -0.69%, +0.45%
(ss)-stall: 12116 -> 12179 (+0.52%); split: -0.65%, +1.17%
(sy)-stall: 266208 -> 265018 (-0.45%); split: -1.08%, +0.63%
Preamble Instrs: 20657 -> 19926 (-3.54%); split: -3.56%, +0.02%
Early Preamble: 0 -> 28 (+inf%)
Last helper: 25507 -> 25495 (-0.05%); split: -0.12%, +0.07%
Cat0: 76458 -> 78100 (+2.15%); split: -0.99%, +3.14%
Cat1: 82669 -> 84253 (+1.92%); split: -1.11%, +3.03%
Cat2: 89414 -> 89450 (+0.04%); split: -0.09%, +0.13%
Cat7: 8595 -> 8487 (-1.26%); split: -1.33%, +0.07%

Signed-off-by: Job Noorman <jnoorman@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36667>
2025-09-03 21:17:57 +00:00
Caio Oliveira
4e253184de brw: Run validation as soon as we have the CFG around
Fixes: affa7567c2 ("intel/brw: Add phases to backend")
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37148>
2025-09-03 20:42:05 +00:00
Mike Blumenkrantz
28c2c0fedc mesa/varray: inline a bunch of functions
this cuts the cpu time of update_array() in viewperf catia by 80%

Reviewed-by: Christian Gmeiner <cgmeiner@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37142>
2025-09-03 20:10:53 +00:00
Mike Blumenkrantz
7984a16e27 tc: don't unset resolve resource in set_framebuffer_state
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
this breaks the whole mechanism

Fixes: 2eb45daa9c ("gallium: de-pointerize pipe_surface")

Acked-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37166>
2025-09-03 19:42:52 +00:00
Eric R. Smith
e3552c427e panfrost: fix debug print of spilled registers
We were testing some conditions in the wrong order, so spilled
registers were being printed as if they were uniforms. This is
incorrect, but only subtly so, and lead to confusion.

Fixes: 6c64ad934f ("panfrost: spill registers in SSA form")
Reviewed-by: Mary Guillemard <mary.guillemard@collabora.com>
Reviewed-by: Ashley Smith <ashley.smith@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37092>
2025-09-03 16:19:42 -03:00
Eric R. Smith
d482b6ca68 panfrost: fix typo in register allocation
The intention of the code was to allow PHI values to be propagated
if they were in registers (as opposed to in memory). As written though
values were never propagated. I think this typo was due to some
debug code that wasn't removed properly.

Fixes: 6c64ad934f ("panfrost: spill registers in SSA form")
Reviewed-by: Mary Guillemard <mary.guillemard@collabora.com>
Reviewed-by: Ashley Smith <ashley.smith@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37092>
2025-09-03 16:19:29 -03:00
Mary Guillemard
fac8c9def0 pan/bi: Reintroduce bi_fuse_small_int_to_f32 on v11+
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
On v11+, all small integers instruction variants are gone, however we
can now use widen on src0 just fine.

That mean we can get ride of mid conversion by relying on swizzle
instead while respecting signess of the inner instruction.

This helps a little bit on clpeak with panvk+clvk, shader-db is also
happy:

Totals:
Instrs: 109541 -> 109354 (-0.17%)
CodeSize: 1110528 -> 1108864 (-0.15%)
Estimated normalized CVT cycles: 667.609375 -> 664.5625 (-0.46%)

Totals from 17 (2.12% of 803) affected shaders:
Instrs: 13637 -> 13450 (-1.37%)
CodeSize: 112256 -> 110592 (-1.48%)
Estimated normalized CVT cycles: 100.203125 -> 97.15625 (-3.04%)

Signed-off-by: Mary Guillemard <mary.guillemard@collabora.com>
Reviewed-by: Eric R. Smith <eric.smith@collabora.com>
Reviewed-by: Christoph Pillmayer <christoph.pillmayer@arm.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37125>
2025-09-03 17:32:02 +00:00
Yiwei Zhang
611749a7f9 nvk: bind aliased wsi image at memory offset zero
This aligns with common wsi, and also obeys dedicated alloc requirement.

Fixes: 273df23a21 ("nvk: adopt wsi_common_get_memory")
Reviewed-by: Faith Ekstrand <faith.ekstrand@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37152>
2025-09-03 16:29:34 +00:00
Yiwei Zhang
94d8a4a465 radv: bind aliased wsi image at memory offset zero
This aligns with common wsi, and also obeys dedicated alloc requirement.

Fixes: 825c05a7e8 ("radv: adopt wsi_common_get_memory")
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37152>
2025-09-03 16:29:34 +00:00
Danylo Piliaiev
902cebc9f0 tu: Prevent dangling start_sysmem_clear_all tracepoint
We may exit early from tu_clear_sysmem_attachments without end_
tracepoint. Move the start_ tracepoint to fix that.

Signed-off-by: Danylo Piliaiev <dpiliaiev@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37162>
2025-09-03 16:00:56 +00:00
Danylo Piliaiev
482e0d0d1e tu: Reset rp_trace on tu_reset_cmd_buffer
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
Secondary command buffers with RENDER_PASS_CONTINUE_BIT don't reset
rp_trace, and without reset we get garbage tracepoints.

Fixes garbage sysmem_clear_all tracepoints in some games running
though DXVK.

Fixes: 630380349b ("tu: Give renderpass events a separate trace buffer")

Signed-off-by: Danylo Piliaiev <dpiliaiev@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37161>
2025-09-03 15:42:11 +00:00
Erik Faye-Lund
12e36c8871 panvk: expose missed vulkan 1.4 properties
AFAICT, we support these. So let's expose the properties here!

Reviewed-by: Yiwei Zhang <zzyiwei@chromium.org>
Reviewed-by: Christoph Pillmayer <christoph.pillmayer@arm.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37136>
2025-09-03 15:02:15 +00:00
Erik Faye-Lund
9da4eb4a4e panvk: explicitly list unsupported features
We already do this many places, let's add the missing ones for the core
Vulkan versions.

Reviewed-by: Yiwei Zhang <zzyiwei@chromium.org>
Reviewed-by: Christoph Pillmayer <christoph.pillmayer@arm.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37136>
2025-09-03 15:02:15 +00:00
Erik Faye-Lund
2f79a3a81d panvk: clean up limits and properties
Similar to what we do for features here, let's group things a bit more
consistently.

Reviewed-by: Yiwei Zhang <zzyiwei@chromium.org>
Reviewed-by: Christoph Pillmayer <christoph.pillmayer@arm.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37136>
2025-09-03 15:02:14 +00:00
Erik Faye-Lund
bb26502c77 panvk: clean up feature-bits
The feature bits have been added a bit willy-nilly, let's clean that up
a bit.

The general structure here is that if something is part of a specific
Vulkan version, we list the feature under there in the order they are
defined in the version-specific structure. If not, we list it under
an extension. Clean up so each version is in it's own block.

Reviewed-by: Yiwei Zhang <zzyiwei@chromium.org>
Reviewed-by: Christoph Pillmayer <christoph.pillmayer@arm.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37136>
2025-09-03 15:02:14 +00:00
Erik Faye-Lund
166d650c10 panvk: fix up vk1.4 properties
These two properties reports how the interaction between MSAA coverage
and occlusion queries works. We need to report the correct value here,
otherwise applications might misbehave.

Fixes: 5ee3c10d1e ("panvk: advertise vulkan 1.4 on v10+")
Reviewed-by: Christoph Pillmayer <christoph.pillmayer@arm.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37136>
2025-09-03 15:02:13 +00:00
David Rosca
ac896c0327 util/format: Add RGB lowering for single plane YUV formats
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
This fixes a regression with Y8_400 format, which needs to return
R8 as plane format.

Fixes: 5e01ec4bd0 ("util/format: Auto-generate a bunch of YUV helpers")
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37056>
2025-09-03 12:51:23 +00:00
Eric Engestrom
cb1c059138 docs: add sha sum for 25.2.2
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37160>
2025-09-03 12:46:21 +00:00
Eric Engestrom
84a4d34666 docs: add release notes for 25.2.2
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37160>
2025-09-03 12:46:21 +00:00
Eric Engestrom
97f7aa7725 docs: update calendar for 25.2.2
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37160>
2025-09-03 12:46:21 +00:00