Commit graph

71150 commits

Author SHA1 Message Date
Gert Wollny
b7ac5d8453 r600/sfn: Optimize pred(not X != 0) to pred(X == 0)
Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37205>
2025-09-09 12:11:54 +00:00
Gert Wollny
125ce0f909 r600/sfh: Handle 64 bit comparisons in predicate optimization
Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37205>
2025-09-09 12:11:54 +00:00
Gert Wollny
abe9b61212 r600/sfn: relax restrictions when optimizing predicate evaluation with a register
If the comparison comes right before the predicate evaluation it still
can be contracted.

Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37205>
2025-09-09 12:11:53 +00:00
Gert Wollny
bbbb2be123 r600/sfn: emit 64 bit predicates like normal ALU ops
Also clean up the scheduler changes we did to deal with one-slot and
two slot predicate ops at the same time.

Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37205>
2025-09-09 12:11:53 +00:00
Gert Wollny
51d8ca2dff r600/sfn: optimize comparison results
* optimize not(compare(a,b)), nir_opt_algebraic does this only if the
  comparison result is used only once, but on a vector arch we still get
  an advantage when doing this, because it reduces dependencies.
* optimize b2f32(compare(a,b)), this is r600 specific

Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37205>
2025-09-09 12:11:53 +00:00
Gert Wollny
82dffae611 r600/sfn: don't use dummy regs in alu ops when no dest register is needed
Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37205>
2025-09-09 12:11:53 +00:00
Gert Wollny
4f1f5aa02d r600/sfn: Add handling of channels for dest-less ALU ops
This will be used to get rid of some dummy register handling.

Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37205>
2025-09-09 12:11:52 +00:00
Gert Wollny
90b2fbbab4 r600/sfn: Pass chan and dest_clamp to alu op if no dest register is given
v2: move common code

Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37205>
2025-09-09 12:11:52 +00:00
Gert Wollny
4dd3951323 r600/sfn: fix op2_pred_sete_64 opcode
Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37205>
2025-09-09 12:11:52 +00:00
Tomeu Vizoso
5eab4f06d5 teflon/tests: Remove dependency on xtensor
Upstream has been moving headers around and breaking users.

Because we don't use it for much right now, drop the dependency
altogether by open coding some rand() helpers.

Issue: https://gitlab.freedesktop.org/mesa/mesa/-/issues/13681
Reviewed-by: Christian Gmeiner <cgmeiner@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37220>
2025-09-09 11:07:19 +02:00
Yonggang Luo
773a7f347a clang-format: Update the .clang-format files to conformance clang-format json-schema
The document is at
https://clang.llvm.org/docs/ClangFormatStyleOptions.html

The json-schema at
https://www.schemastore.org/clang-format.json

Signed-off-by: Yonggang Luo <luoyonggang@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37235>
2025-09-09 07:04:55 +00:00
Karol Herbst
dcfa4fafca rusticl: add a bunch of trivial tests
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35188>
2025-09-09 00:49:33 +00:00
norablackcat
ccf099d0d1 rusticl: add Test targets
v2: Add more targets and a little test lib to add stubs for missing symbols
v3: Condition building tests on a recent enough meson (@leftmostcat)
v4: Set suite parameter for new tests (@leftmostcat)

Reviewed-by: Eric Engestrom <eric@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35188>
2025-09-09 00:49:33 +00:00
Dallas Strouse
6af462b27f rusticl/device: skip loading devices in cfg(test)
Reviewed-by: Eric Engestrom <eric@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35188>
2025-09-09 00:49:33 +00:00
Karol Herbst
85deec44d7 rusticl: specify allowed lints for tests in lib.rs
Sadly, meson doesn't allow us to specify custom flags for test targets yet

Acked-by: Eric Engestrom <eric@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35188>
2025-09-09 00:49:33 +00:00
Karol Herbst
06776969d6 rusticl: drop global allow statements
Just to stay consistent. We might want to use them instead of declaring
them inside meson, but I'd rather prefer we have a consistent list across
all crates and that's easier done in meson.

Reviewed-by: Eric Engestrom <eric@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35188>
2025-09-09 00:49:33 +00:00
norablackcat
af269d3394 rusticl: fix unit tests
Reviewed-by: Eric Engestrom <eric@igalia.com>
Reviewed-by: Karol Herbst <kherbst@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35188>
2025-09-09 00:49:32 +00:00
Karol Herbst
1b777e6cae rusticl: drop unneeded dependency to generated sources
Reviewed-by: Eric Engestrom <eric@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35188>
2025-09-09 00:49:32 +00:00
Mel Henning
eba08245a8 treewide: Spell indices correctly
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
LOLed-by: Alyssa Rosenzweig <alyssa.rosenzweig@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36184>
2025-09-08 23:03:13 +00:00
Christian Gmeiner
72ba6bbbe3 r300: 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>
Reviewed-by: Pavel Ondračka <pavel.ondracka@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37224>
2025-09-08 21:14:53 +00:00
Mike Blumenkrantz
28342d1f11 zink: correctly handle batch_id==0 in check_last_finished()
in some places this assert is used to hang check, but here we
can assume that the batch_id is always valid (i.e., not a hang) and
check it accordingly to avoid spurious crashes

cc: mesa-stable

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37239>
2025-09-08 15:04:33 -04:00
Mike Blumenkrantz
683e3ea0af zink: fix edgeflags check on program creation
can't check the shaders before the shaders are set

Fixes: a93685ef55 ("zink: add `has_edgeflags` flag to zink_shader and zink_gfx_program")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37239>
2025-09-08 15:04:32 -04:00
Mike Blumenkrantz
a11a02d6f6 zink: clamp subgroup op return types to required int/uint types
required by spec

cc: mesa-stable

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37239>
2025-09-08 15:04:32 -04:00
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
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
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
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
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
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
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
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
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
Eric Engestrom
7d56f83875 zink+turnip/ci: document fixed tests
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37217>
2025-09-07 22:25:59 +02:00
Eric Engestrom
0cfc3429fc zink+nvk/ci: document fixed tests
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37217>
2025-09-07 22:25:58 +02:00
Eric Engestrom
e0adaae78a r300/ci: document fixed tests
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37217>
2025-09-07 22:24:31 +02:00
Christoph Neuhauser
2f8b8649f0 iris: Increase max_shader_buffer_size to max_buffer_size
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
This commit increases max_shader_buffer_size to max_buffer_size for Iris.

Signed-off-by: Christoph Neuhauser <christoph.neuhauser@intel.com>
Co-authored-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Reviewed-by: Tapani Pälli <tapani.palli@intel.com>
Cc: mesa-stable
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37182>
2025-09-07 16:17:10 +00:00
Georg Lehmann
87f451aa39 intel/ci: update restricted trace checksums
Caused by https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37113

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37211>
2025-09-06 11:59:16 +02:00
Georg Lehmann
f47e4fee4c mesa: clamp fog scale to -FLT_MAX instead of FLT_MIN
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
FLT_MIN is the smallest positive float, not the smallest negative float.

Fixes: 35ae5dce39 ("mesa: don't pass Infs to the shader via gl_Fog.scale")
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/11412

Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37204>
2025-09-06 07:20:31 +00:00
Yonggang Luo
885323ea3a tgsi/nir: Handling TGSI_OPCODE_RET in tgsi_to_nir
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/11554

The nir_push_if is needed as more instructions will added after `RET`.

Signed-off-by: Yonggang Luo <luoyonggang@gmail.com>
Reviewed-by: Jose Fonseca <jfonseca@vmware.com>
Reviewed-by: Emma Anholt <emma@anholt.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37170>
2025-09-06 01:34:44 +00:00
Faith Ekstrand
446d5ef103 vulkan: Drop the driver_internal from vk_image_view_init/create()
It alwways comes in through the create flags now.

Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com>
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36957>
2025-09-05 23:34:14 +00:00
Connor Abbott
a89f897870 freedreno/ci: Add a750 sparse skips
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/32671>
2025-09-05 16:58:09 +00:00
Mike Blumenkrantz
6596bf69c6 zink: add another flag to determine whether linked program compile is done
it's otherwise possible for this to race and hit the draw before
precompile finishes without ever waiting on the fence

I guess this just worked coincidentally before?

cc: mesa-stable

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37197>
2025-09-05 16:29:15 +00:00
Mike Blumenkrantz
0b586d546d zink: remove rebar requirement for descriptor buffer support
this is not really relevant; if db is supported, use it

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37197>
2025-09-05 16:29:15 +00:00
Mike Blumenkrantz
721af20a58 aux/trace: dump more mesh draw info
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
Reviewed-by: Reviewed-by: Qiang Yu <yuq825@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37196>
2025-09-05 14:53:01 +00:00
Valentine Burley
ed15433c35 zink/ci: Document recent a618 EGL flakes
Signed-off-by: Valentine Burley <valentine.burley@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36787>
2025-09-05 14:03:55 +00:00
Valentine Burley
2bcb25ee27 zink/ci: Enable VVL for Turnip on a618
Signed-off-by: Valentine Burley <valentine.burley@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36787>
2025-09-05 14:03:55 +00:00
Timur Kristóf
038aac57a3 radeonsi: Fix some comments to also include GFX11.5
Just a nitpick.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37121>
2025-09-05 13:42:56 +00:00