Commit graph

211685 commits

Author SHA1 Message Date
Mike Blumenkrantz
fe82d156bf zink: flag pipeline_changed when updating shader modules
this otherwise breaks everything when switching from pipeline -> shobj draw

cc: mesa-stable

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37239>
2025-09-08 15:04:32 -04:00
Rob Clark
15ee3873aa freedreno/registers: Update GMU register xml
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
Synced from kernel commit f23e09a60d48 ("drm/msm: Update GMU register
xml").

Update GMU register xml with additional definitions for a7x family.

Signed-off-by: Rob Clark <rob.clark@oss.qualcomm.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37216>
2025-09-08 18:28:24 +00:00
Rob Clark
a31dc3c5af freedreno/registers: Generate _HI/LO builders for reg64
Mesa has shifted more things to reg64 instead of seperate 32b HI/LO
reg32's.  This works better with the "new-style" c++ builders that
mesa has been migrating to for a6xx+ (to better handle register
shuffling between gens), but it leaves the C builders with missing
_HI/LO builders.

So handle the special case of reg64, automatically generating the
missing _HI/LO builders.  (This is for the benefit of the kernel
which cannot use the c++ builders.)

Signed-off-by: Rob Clark <rob.clark@oss.qualcomm.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37216>
2025-09-08 18:28:24 +00:00
Rob Clark
04e2140d8b freedreno/registers: remove python 3.9 dependency for compiling msm
Synced from kernel commit bb1953588068 ("drm/msm: remove python 3.9
dependency for compiling msm").

Since commit 5acf49119630 ("drm/msm: import gen_header.py script from Mesa"),
compilation is broken on machines having python versions older than 3.9
due to dependency on argparse.BooleanOptionalAction.

Switch to use simple bool for the validate flag to remove the dependency.

Signed-off-by: Rob Clark <rob.clark@oss.qualcomm.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37216>
2025-09-08 18:28:24 +00:00
Rob Clark
91ff96b513 freedreno/registers: Remove license/etc from generated headers
Since these generated files are no longer checked in, either in mesa or
in the linux kernel, simplify things by dropping the verbose generated
comment.

These were semi-nerf'd on the kernel side, in the name of build
reproducibility, by commit ba64c6737f86 ("drivers: gpu: drm: msm:
registers: improve reproducibility"), but in a way that was semi-
kernel specific.  We can just reduce the divergence between kernel
and mesa by just dropping all of this.

Signed-off-by: Rob Clark <rob.clark@oss.qualcomm.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37216>
2025-09-08 18:28:24 +00:00
Rob Clark
a70279adc2 freedreno/registers: Re-enable validation for gen_header.py
Commit 84e93daa26 ("freedreno/registers: allow skipping the
validation") synced a change that made validation optional for
kernel builds, to avoid a lxml dependency for kernel builds.
But this inadvertantly also disabled schema validation on the
mesa side.  CI (and meson "test" target) still validates the
xml against the schema, but it is easier if this is also done
as part of the normal build to avoid suprises from Marge.

Fixes: 84e93daa26 ("freedreno/registers: allow skipping the validation")
Signed-off-by: Rob Clark <rob.clark@oss.qualcomm.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37216>
2025-09-08 18:28:23 +00:00
Christian Gmeiner
6e0f9e8f67 etnaviv: Replace unsupported blit debug message with detailed dump and assertion
Replace the basic debug message for unsupported blits with a comprehensive
dump of the blit parameters and make it a hard failure. This helps identify
exactly what blit operations are not supported and ensures they don't fail
silently in debug builds.

Signed-off-by: Christian Gmeiner <cgmeiner@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37034>
2025-09-08 18:14:21 +00:00
Jose Maria Casanova Crespo
914b60f0dd v3dv: Fix stencil clear values for only stencil clears
The attachment loadOp for stencil buffers is not stored at
attachment->desc.loadOp. It is stored at attachment->desc.stencilLoadOp
so v3dv was ignoring the clear values for stencil if the depth buffer
wasn't setup with the VK_ATTACHMENT_LOAD_OP_CLEAR.

Fixes: 4d0e497a3e ("v3dv: implement support for depth testing")
Reviewed-by: Iago Toral Quiroga <itoral@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37228>
2025-09-08 17:57:33 +00:00
Lars-Ivar Hesselberg Simonsen
ae9edb6fc0 radv/ci: Add uncovered CTS issue to gfx1201 fails
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
gfx1201 has started hitting some failures in
dEQP-VK.glsl.bfloat16.constant* that seem to be caused by a CTS issue.

Suggested-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36985>
2025-09-08 16:54:06 +00:00
Lars-Ivar Hesselberg Simonsen
66cd23aa73 panvk/ci: Add uncovered CTS issue to flakes
The change to the implicit subpass barriers uncovered a CTS bug that is
now hitting CI. The issue is fixed in vulkan-cts-1.4.2.1, but CI is
currently on vulkan-cts-1.4.1.1.

Reviewed-by: Faith Ekstrand <faith.ekstrand@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36985>
2025-09-08 16:54:06 +00:00
Lars-Ivar Hesselberg Simonsen
e6dae6ef5f vulkan: Optimize implicit end_subpass barrier
Rather than adding an implicit barrier on the last subpass
unconditionally, track in what subpasses attachments are used for the
last time and only add dependencies if none exist and there might be an
image transition.

Reviewed-by: Faith Ekstrand <faith.ekstrand@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36985>
2025-09-08 16:54:06 +00:00
Lars-Ivar Hesselberg Simonsen
eccc198284 vulkan: Optimize implicit begin_subpass barrier
Rather than adding an implicit barrier on the first subpass
unconditionally, track in what subpasses attachments are used for the
first time and only add dependencies if none exist and there might be an
image transition.

Reviewed-by: Faith Ekstrand <faith.ekstrand@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36985>
2025-09-08 16:54:06 +00:00
Lars-Ivar Hesselberg Simonsen
c0def2cf27 vulkan: Add transition_view_mask calculation
Refactor out a function to calculate the view mask for required layout
transitions. This will be used in the following commits.

Reviewed-by: Faith Ekstrand <faith.ekstrand@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36985>
2025-09-08 16:54:06 +00:00
Lars-Ivar Hesselberg Simonsen
067305e4c6 vulkan: Find first_subpass when creating renderpass
Like last_subpass, add a per-view mask of what subpass first uses an
attachment. This is required for optimizing out some barriers later.

Note that this requires us to do another loop over the subpasses.

Reviewed-by: Faith Ekstrand <faith.ekstrand@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36985>
2025-09-08 16:54:06 +00:00
Lars-Ivar Hesselberg Simonsen
3bad2ae069 vulkan: Stop combining subpass dependencies
Rather than OR-ing all subpass dependencies together in the Vulkan layer,
pass an array of barriers down to the drivers and allow them to do the
OR-ing if needed.

Reviewed-by: Faith Ekstrand <faith.ekstrand@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36985>
2025-09-08 16:54:05 +00:00
serguei
3d8fa90845 Revert "ci: disable Collabora's farm due to maintenance"
This reverts commit 084add9959.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37219>
2025-09-08 16:16:52 +00:00
Mike Blumenkrantz
504a522a1e zink: toggle ctx->has_swapchain when flushing clears
this otherwise breaks resolve handling

Fixes: b122c3eaa9 ("zink: unify/fix clear flushing")

Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/13841
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/13847
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37234>
2025-09-08 15:37:53 +00:00
Connor Abbott
764b3d9161 tu: Implement transient attachments and lazily allocated memory
Transient attachments have been in Vulkan since 1.0, and are a way to
avoid allocating memory for attachments that can be stored entirely in
tile memory. The driver exposes a memory type with LAZILY_ALLOCATED_BIT,
and apps use this type to allocate images with TRANSIENT_ATTACHMENT
usage, which are restricted to color/depth/stencil/input attachment
usage. The driver is supposed to then delay allocating memory until it
knows that one of the images bound to the VkDeviceMemory must have
actual backing memory.

Implement this using the "lazy VMA" mechanism added earlier. We reserve
an iova range for lazy BOs, and only allocate them if we chose sysmem
rendering or there is a LOAD_OP_LOAD/STORE_OP_STORE. Because we never
split render passes and force sysmem instead, we don't have to deal with
the additional complexity of that here and just allocate everything.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37151>
2025-09-08 15:22:17 +00:00
Connor Abbott
3b990ba210 tu: Make tu_image point to tu_device_memory instead of tu_bo
Up until now tu_device_memory (turnip's VkDeviceMemory) was a thin
wrapper around tu_bo (the GEM BO), so when binding an image to a
VkDeviceMemory we could just store the BO. But now we have to skip
allocating the BO unless we need to for lazily-allocated memory, and the
tracking for that needs to happen at the API level instead of the
kernel/GEM level, so store the tu_device_memory instead.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37151>
2025-09-08 15:22:17 +00:00
Connor Abbott
88d001383a tu: Add support for a "lazy" sparse VMA
Add an extremely limited form of sparse where zeroing memory is not
supported and only one BO can be fully bound to the sparse VMA
immediately when it's created. This can be implemented on drm/msm even
without VM_BIND, by just reserving the iova range. However kgsl doesn't
let us control iova offsets, so we have to use "real" sparse support to
implement it. In effect this lets us reserve an iova range and then
"lazily" allocate the BO. This will be used for transient allocations in
Vulkan when we have to fallback to sysmem.

As part of this we add skeleton sparse VMA support to virtio, which is
just enough for lazy VMAs.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37151>
2025-09-08 15:22:17 +00:00
Connor Abbott
93a80f4bb9 tu/drm: Split out iova allocation and BO allocation
Reserve an iova range separately before allocating a BO. This reduces
the size of the critical section under the VMA lock and paves the way
for lazy BOs, where iova initialization is separated out.

While we're here, shrink the area where the VMA mutex is applied when
importing a dma-buf. AFAICT it's not useful to lock the entire function,
only the VMA lookup and zombie BO handling.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37151>
2025-09-08 15:22:17 +00:00
Connor Abbott
b663d8f762 freedreno: Add blit_wfi_quirk and use in turnip
When enabling
dEQP-VK.renderpass2.dedicated_allocation.attachment_allocation.grow.17,
we see a hang on a618 when a draw is immediately followed by a blit
without anything in between. The draw and clear are writing completely
different surfaces.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37151>
2025-09-08 15:22:17 +00:00
Derek Foreman
5331de653c zink: Don't use VK_PRESENT_MODE_IMMEDIATE_KHR on wayland
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
Wayland EGL applications often set SwapInterval 0 and then use surface
frame callbacks independently to pace their updates. These applications
don't actually want the display to tear, and we do not currently use
wayland tearing_control protocol on EGL to enable tearing behaviour.

Using a tearing presentation mode in Vulkan will lead to unexpected
behaviour for these applications.

Use MAILBOX on wayland instead.

Signed-off-by: Derek Foreman <derek.foreman@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34842>
2025-09-08 15:07:16 +00:00
Mary Guillemard
67a662ed05 pan/bi: Propagate MKVEC.v2i8 and V2X8_TO_V2X16 for replicate swizzle
On Valhall, we can end up with a lot of convertions for 8-bit and 16-bit
values.

However, since Valhall, we have access to a lot more swizzles on widen
sources.

The idea of this pass is to propagate replicate swizzle usages to
simplify things.

We do not attempt to propagate MKVEC.v2i16 as it is already handled by
bi_lower_swizzle.

This changes the following:
   9 = V2S8_TO_V2S16 !7.b0
   11 = IADD.v2s16 !9.h00, u4
   88 = MKVEC.v2i8 11.b0, u256.b0, u256
   13 = IMUL.v4i8 !88.b0, 8.b0
   14 = V2S8_TO_V2S16 !13.b0
   15 = IADD.v2s16 14.h00, !11.h00
   89 = MKVEC.v2i8 !15.b0, u256.b0, u256
   17 = IMUL.v4i8 !89.b0, !8.b0

Into this:
   11 = IADD.v2s16 !7.b0, u4
   13 = IMUL.v4i8 11.b0, 8.b0
   15 = IADD.v2s16 13.b0, !11.h00
   17 = IMUL.v4i8 !15.b0, !8.b0

Signed-off-by: Mary Guillemard <mary.guillemard@collabora.com>
Reviewed-by: Olivia Lee <olivia.lee@collabora.com>
Reviewed-by: Christoph Pillmayer <christoph.pillmayer@arm.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37167>
2025-09-08 14:25:22 +00:00
Mary Guillemard
59e0a15c47 pan/bi: Make va_optimize_forward run until there is no progress
We are going to do more things here that will likely benefit from
possibly running multiple time.

Signed-off-by: Mary Guillemard <mary.guillemard@collabora.com>
Reviewed-by: Olivia Lee <olivia.lee@collabora.com>
Reviewed-by: Christoph Pillmayer <christoph.pillmayer@arm.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37167>
2025-09-08 14:25:22 +00:00
Eric Engestrom
03ff41e747 intel/perf: fix enum type for eu stall props
src/intel/perf/xe/intel_perf.c:420:27: warning: implicit conversion from enumeration type 'enum drm_xe_eu_stall_property_id' to different enumeration type 'enum drm_xe_oa_property_id' [-Wenum-conversion]

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37172>
2025-09-08 14:12:13 +00:00
Gert Wollny
8f543a0ee1 r600/sfn: Don't fall through if a WaitACK was scheduled
In theory this is of no consequence, but letting the scheduler run
it's normal algorithm is better.

Fixes: a6b6ce84f7 ("r600/sfn: Prepare scheduler to handle WaitAck instructions")

Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37232>
2025-09-08 13:56:11 +00:00
Gert Wollny
10d3b95d54 r600/sfn: start scheduling memory writes earlier
It seems emmitting more than four MEM_RAT instructions in
a row may lead to a GPU hang, so start scheduling free
instructions earlier.

The problem is triggered by
  KHR-GL45.compute_shader.shared-max

Fixes: fc40002de7 ("r600/sfn: Simplify scheduling")

Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37232>
2025-09-08 13:56:11 +00:00
Eric Engestrom
8e2ff175c6 ci/update_traces_checksum: fix regex detecting PIGLIT_REPLAY_DEVICE_NAME in job logs
`declare -x` is one way to export a variable, but there is also `export`.
LAVA uses the former, while CI-tron uses the latter.

LAVA always adds quotes, while CI-tron uses python's `shlex.quote()` [1]
which only adds the quotes when necessary, so let's make those optional
in the regex as well.

[1] https://docs.python.org/3/library/shlex.html#shlex.quote

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37215>
2025-09-08 13:39:39 +00:00
Eric Engestrom
62428ae59b ci/update_traces_checksum: fix decoding of log lines
We don't need to evaluate escape sequences, we should instead read them
verbatim.

Fixes issues like:

    bin/ci/update_traces_checksum.py:45: DeprecationWarning: invalid escape sequence '\.'
    bin/ci/update_traces_checksum.py:45: DeprecationWarning: invalid escape sequence '\ '
    bin/ci/update_traces_checksum.py:45: DeprecationWarning: invalid escape sequence '\;'
    bin/ci/update_traces_checksum.py:45: DeprecationWarning: invalid escape sequence '\_'

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37215>
2025-09-08 13:39:39 +00:00
Eric Engestrom
eb79f6573c zink+radv/ci: comment out the two checksums
We don't (yet) have the ability to say that more than one value is
acceptable, and the yaml module we use complains about duplicate keys,
so let's just comment them out as it doesn't care about missing keys and
doesn't remove comments.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37215>
2025-09-08 13:39:38 +00:00
Erik Faye-Lund
8c8a7da43e zink: use polygonModePointSize instead of open-coding
VK_KHR_maintenance5 added a query for exactly this behavior, so we
should query that instead of manually checking for the one driver where
this is known to be a problem.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37221>
2025-09-08 13:20:47 +00:00
Konstantin Seurer
9a93f794cd radv/bvh: Do not write pointer flag related data on GFX103
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
On GFX103, those fields are unused. VK_BUILD_FLAG_PROPAGATE_CULL_FLAGS
is set if the fields are used so it can be used to skip writing them.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37021>
2025-09-08 12:47:18 +00:00
Erik Faye-Lund
8913e8502d zink: add missing gpl requirement
Without graphicsPipelineLibraryFastLinking, we don't care about
VK_KHR_pipeline_library support, so let's add that to the requirements
file.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37229>
2025-09-08 12:26:22 +00:00
Erik Faye-Lund
313b0ebd83 zink: update profile schema
We're referring to features that requires a newer schema, let's fix that
up.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37229>
2025-09-08 12:26:22 +00:00
David Rosca
c9b2c00de6 radv: Enable VK_EXT_ycbcr_2plane_444_formats
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/9486
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37174>
2025-09-08 11:59:37 +00:00
David Rosca
a758273231 vulkan/format: Map VK_EXT_ycbcr_2plane_444_formats to pipe format
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37174>
2025-09-08 11:59:36 +00:00
David Rosca
10dbb0ed2a util/format: Add VK_EXT_ycbcr_2plane_444_formats formats
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37174>
2025-09-08 11:59:36 +00:00
Patrick Lerda
ef01013b71 r600: update multi_draw_indirect_params drm version requirement
The definitive linux kernel counterpart update is now merged.
The linux kernel commit dc5c742f41c0a1c2b14e4357c752851e015f3bcd
(v6.17-rc1) set the new r600 drm version requirement. This change
updates the drm version accordingly to 2.51.0.

Fixes: 9e1180b335 ("r600: implement ARB_indirect_parameters")
Signed-off-by: Patrick Lerda <patrick9876@free.fr>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37118>
2025-09-08 11:44:18 +00:00
Christian Gmeiner
10b5bbb6dc etnaviv: re-format using clang-format
No manual changes here, this is simply running
$ ninja -C build/ clang-format

Signed-off-by: Christian Gmeiner <cgmeiner@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37227>
2025-09-08 11:29:34 +00:00
Patrick Lerda
df5e8e1252 r600: fix r600_resource_copy_region behavior for some formats
The function resource_copy_region is expected to have a memcpy()
like behavior. Some formats, like r11g11b10_float, do not preserve
the original raw values. This was the problem. This change
updates r600_resource_copy_region() to use the generic copy path
for those formats.

This change takes into account how 8235d3aa19 "radeonsi: preserve
NaNs in draw-based resource_copy_region" proceeds.

This change fixes the remaining khr-gl and deqp-gles31 copy_image tests. This
change was tested on palm, barts and cayman. Here are the tests fixed:
khr-gl4[2-6]/texture_view/view_classes: fail pass
khr-gl4[3-6]/copy_image/functional_src_target_texture_2d_array_src_format_rgb9_e5_dst_target_texture_2d_array_dst_format_r11f_g11f_b10f: fail pass
khr-gl4[3-6]/copy_image/functional_src_target_texture_2d_array_src_format_rgb9_e5_dst_target_texture_3d_dst_format_r11f_g11f_b10f: fail pass
khr-gl4[3-6]/copy_image/functional_src_target_texture_2d_array_src_format_rgb9_e5_dst_target_texture_rectangle_dst_format_r11f_g11f_b10f: fail pass
khr-gl4[3-6]/copy_image/functional_src_target_texture_3d_src_format_rgb9_e5_dst_target_texture_2d_array_dst_format_r11f_g11f_b10f: fail pass
khr-gl4[3-6]/copy_image/functional_src_target_texture_3d_src_format_rgb9_e5_dst_target_texture_3d_dst_format_r11f_g11f_b10f: fail pass
khr-gl4[3-6]/copy_image/functional_src_target_texture_3d_src_format_rgb9_e5_dst_target_texture_rectangle_dst_format_r11f_g11f_b10f: fail pass
khr-gl4[3-6]/copy_image/functional_src_target_texture_rectangle_src_format_rgb9_e5_dst_target_texture_2d_array_dst_format_r11f_g11f_b10f: fail pass
khr-gl4[3-6]/copy_image/functional_src_target_texture_rectangle_src_format_rgb9_e5_dst_target_texture_3d_dst_format_r11f_g11f_b10f: fail pass
khr-gl4[3-6]/copy_image/functional_src_target_texture_rectangle_src_format_rgb9_e5_dst_target_texture_rectangle_dst_format_r11f_g11f_b10f: fail pass
deqp-gles31/functional/copy_image/non_compressed/viewclass_16_bits/.*: fail pass
deqp-gles31/functional/copy_image/non_compressed/viewclass_32_bits/.*: fail pass

Cc: mesa-stable
Signed-off-by: Patrick Lerda <patrick9876@free.fr>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37117>
2025-09-08 11:13:35 +00:00
David Rosca
5e7b6df860 radv/video: Support quantization map on VCN5
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
VCN5 needs to convert the input map image to internal format.

Reviewed-by: Autumn Ashton <misyl@froggi.es>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37156>
2025-09-08 10:52:06 +00:00
David Rosca
a03e055cd3 radv/video: Set rate control to default on reset
If we never get rate control info, we would treat it as rate control
disabled and use QP value from slice info which is always 0 for default
rate control.

Cc: mesa-stable
Reviewed-by: Autumn Ashton <misyl@froggi.es>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37156>
2025-09-08 10:52:05 +00:00
David Rosca
070c3d2b89 ac/vcn: Add RADEON_VCN_IB_COMMON_OP_RESOLVEINPUTPARAMLAYOUT
Reviewed-by: Autumn Ashton <misyl@froggi.es>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37156>
2025-09-08 10:52:05 +00:00
Daniel Schürmann
a53190a426 nir/load_store_vectorize: hoist base addr instead of subtracting
Totals from 3130 (3.92% of 79839) affected shaders: (Navi48)
Instrs: 2634316 -> 2633652 (-0.03%); split: -0.06%, +0.04%
CodeSize: 13999784 -> 13996888 (-0.02%); split: -0.05%, +0.03%
SpillSGPRs: 1771 -> 1778 (+0.40%)
Latency: 27233464 -> 27230934 (-0.01%); split: -0.02%, +0.01%
InvThroughput: 4234587 -> 4234550 (-0.00%); split: -0.00%, +0.00%
VClause: 54684 -> 54689 (+0.01%)
SClause: 62743 -> 62912 (+0.27%); split: -0.08%, +0.35%
Copies: 162594 -> 163729 (+0.70%); split: -0.22%, +0.91%
PreSGPRs: 146909 -> 146914 (+0.00%); split: -0.01%, +0.01%
VALU: 1558771 -> 1558778 (+0.00%)
SALU: 337715 -> 338168 (+0.13%); split: -0.30%, +0.44%

Reviewed-by: Rhys Perry <pendingchaos02@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37163>
2025-09-08 09:56:04 +00:00
Rhys Perry
cfba417316 nir/load_store_vectorize: optimize accesses with u2u64(ishl.nuw(iadd))
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com>
Reviewed-by: Daniel Schürmann <daniel@schuermann.dev>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37163>
2025-09-08 09:56:04 +00:00
Rhys Perry
4bc4322150 nir/load_store_vectorize: call nir_def_num_lsb_zero less
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com>
Reviewed-by: Daniel Schürmann <daniel@schuermann.dev>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37163>
2025-09-08 09:56:03 +00:00
Rhys Perry
491b7e851f nir/load_store_vectorize: refactor entry key creation
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com>
Reviewed-by: Daniel Schürmann <daniel@schuermann.dev>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37163>
2025-09-08 09:56:03 +00:00
Rhys Perry
8888c2471b nir/load_store_vectorize: refactor offset parsing
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com>
Reviewed-by: Daniel Schürmann <daniel@schuermann.dev>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37163>
2025-09-08 09:56:03 +00:00
Daniel Schürmann
acb47d2c78 nir/load_store_vectorize: also parse offsets through u2u64 if additions don't wrap around
Reviewed-by: Rhys Perry <pendingchaos02@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37163>
2025-09-08 09:56:03 +00:00