Commit graph

176840 commits

Author SHA1 Message Date
Samuel Pitoiset
6ad8abf7aa radv: use the maximum possible workgroup size for TCS epilogs
It's similar to when the patch control points value is dynamic.

Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24643>
2023-08-22 06:10:32 +00:00
Chia-I Wu
e74c3dbb70 ac/surface: limit RADEON_SURF_NO_TEXTURE to color surfaces
For z surfaces, flags.texture should be based on
RADEON_SURF_TC_COMPATIBLE_HTILE alone.  Otherwise, addrlib could pick a
_X/_T swizzle mode for a MSAA depth texture, which is said to be broken:

  When _X/_T swizzle mode was used for MSAA depth texture, TC will get zplane
  equation from wrong address within memory range a tile covered and use the
  garbage data for compressed Z reading which finally leads to corruption.

Fixes: de0885cdb8 ("amd/surface: add RADEON_SURF_NO_TEXTURE flag")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24767>
2023-08-22 02:36:20 +00:00
Dave Airlie
21778950e1 lavapipe: use vk_buffer_range common code.
trivial switch over.

Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24822>
2023-08-22 02:13:10 +00:00
Dave Airlie
d4f5ac5025 lavapipe: use vk_buffer common code.
This is a trivial swapover to the common runtime code for buffers.

Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24822>
2023-08-22 02:13:10 +00:00
Mike Blumenkrantz
d9942442f2 zink: handle patch variable locations for separate shaders better
these don't overlap with other locations so they can keep whatever their
current assignments are

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24757>
2023-08-22 01:31:35 +00:00
Mike Blumenkrantz
ca987c0dfb zink: wait on async fence during ctx program removal
removed=true implies that no async jobs are outstanding

fixes #9580

cc: mesa-stable

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24811>
2023-08-22 00:58:56 +00:00
Dave Airlie
0a90994fce llvmpipe/cs: drop tgsi for compute/mesh/task shader internals.
This drops the info from the compute shader infrastructure.

Reviewed-by: Emma Anholt <emma@anholt.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24804>
2023-08-22 09:53:42 +10:00
Dave Airlie
6222d0633d llvmpipe/cs: convert to using tgsi->nir
Step 1 to removing tgsi info from llvmpipe

Reviewed-by: Emma Anholt <emma@anholt.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24804>
2023-08-22 09:53:42 +10:00
Dave Airlie
e32510be82 llvmpipe/fs: move some tgsi checks in nir path to nir code.
This just does the equivalent checks using NIR instead of tgsi
translated info.

Reviewed-by: Emma Anholt <emma@anholt.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24804>
2023-08-22 09:53:42 +10:00
Dave Airlie
156d509ca4 gallivm/nir: avoid using params->info
This shouldn't be needed.

Reviewed-by: Emma Anholt <emma@anholt.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24804>
2023-08-22 09:53:42 +10:00
Dave Airlie
8e2f020bb4 llvmpipe/fs: drop cbuf 0 since it's lowered now.
Reviewed-by: Emma Anholt <emma@anholt.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24804>
2023-08-22 09:53:42 +10:00
Dave Airlie
5120139958 gallivm: drop unused info parameter
This isn't used.

Reviewed-by: Emma Anholt <emma@anholt.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24804>
2023-08-22 09:53:42 +10:00
David Heidelberg
6079c3ca49 ci: disable Material Testers.x86_64_2020.04.08_13.38_frame799.rdc trace
This change will be revert as soon, as Collabora proxy gets fixed.

Signed-off-by: David Heidelberg <david.heidelberg@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24819>
2023-08-21 22:31:21 +00:00
Pavel Ondračka
df11f3f7e6 r300: remove the nrt main optimization loop
Most of it is already called during finalize_nir, so here we do just some final
polishing.

This brings some minor but reproducible compile-time speedups (dEQP on my RV370
and AMD Ryzen 9 3900X at 8 threads goes from 80s to 74s).

RV530 shader-db:
total instructions in shared programs: 130303 -> 130275 (-0.02%)
instructions in affected programs: 1661 -> 1633 (-1.69%)
helped: 9
HURT: 2

instructions helped:   shaders/godot3.4/10-36.shader_test FS:            163 -> 162 (-0.61%)
instructions helped:   shaders/tropics/240.shader_test VS:               144 -> 140 (-2.78%)
instructions helped:   shaders/tropics/246.shader_test VS:               137 -> 133 (-2.92%)
instructions helped:   shaders/tropics/222.shader_test VS:               131 -> 127 (-3.05%)
instructions helped:   shaders/tropics/228.shader_test VS:               128 -> 124 (-3.12%)
instructions helped:   shaders/tropics/252.shader_test VS:               126 -> 122 (-3.17%)
instructions helped:   shaders/tropics/234.shader_test VS:               121 -> 117 (-3.31%)
instructions helped:   shaders/tropics/216.shader_test VS:               104 -> 100 (-3.85%)
instructions helped:   shaders/tropics/210.shader_test VS:               101 -> 97 (-3.96%)

instructions HURT:   shaders/yofrankie/15.shader_test FS:              211 -> 213 (0.95%)
instructions HURT:   shaders/yofrankie/42.shader_test FS:              295 -> 298 (1.02%)

Signed-off-by: Pavel Ondračka <pavel.ondracka@gmail.com>
Reviewed-by: Emma Anholt <emma@anholt.net>
Reviewed-by: Filip Gawin <filip.gawin@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23437>
2023-08-21 20:10:40 +00:00
Pavel Ondračka
4c122086b6 r300: simplify ntr_get_gl_varying_semantic
We support TEXCOORDS since d4b8e8a481

Signed-off-by: Pavel Ondračka <pavel.ondracka@gmail.com>
Reviewed-by: Emma Anholt <emma@anholt.net>
Reviewed-by: Filip Gawin <filip.gawin@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23437>
2023-08-21 20:10:40 +00:00
Pavel Ondračka
85c10bab8c r300: remove unused barrier code from ntr
Signed-off-by: Pavel Ondračka <pavel.ondracka@gmail.com>
Reviewed-by: Emma Anholt <emma@anholt.net>
Reviewed-by: Filip Gawin <filip.gawin@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23437>
2023-08-21 20:10:40 +00:00
Pavel Ondračka
b5c2833258 r300: remove some unsupported texture opcodes
Signed-off-by: Pavel Ondračka <pavel.ondracka@gmail.com>
Reviewed-by: Emma Anholt <emma@anholt.net>
Reviewed-by: Filip Gawin <filip.gawin@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23437>
2023-08-21 20:10:40 +00:00
Pavel Ondračka
e363b2a77f r300: simplify ntr_try_store_in_tgsi_output
r300 doesn't support anything besides vertex and fragment shaders.

Signed-off-by: Pavel Ondračka <pavel.ondracka@gmail.com>
Reviewed-by: Emma Anholt <emma@anholt.net>
Reviewed-by: Filip Gawin <filip.gawin@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23437>
2023-08-21 20:10:40 +00:00
Pavel Ondračka
12e9c20bfb r300: simplify ntr_output_decl
We have no tesselation.

Signed-off-by: Pavel Ondračka <pavel.ondracka@gmail.com>
Reviewed-by: Emma Anholt <emma@anholt.net>
Reviewed-by: Filip Gawin <filip.gawin@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23437>
2023-08-21 20:10:40 +00:00
Pavel Ondračka
b3cf43bda3 r300: simplify ntr_setup_uniforms
Signed-off-by: Pavel Ondračka <pavel.ondracka@gmail.com>
Reviewed-by: Emma Anholt <emma@anholt.net>
Reviewed-by: Filip Gawin <filip.gawin@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23437>
2023-08-21 20:10:40 +00:00
Pavel Ondračka
0b11a9d893 r300: remove some virglrenderer specifics from ntr
Signed-off-by: Pavel Ondračka <pavel.ondracka@gmail.com>
Reviewed-by: Emma Anholt <emma@anholt.net>
Reviewed-by: Filip Gawin <filip.gawin@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23437>
2023-08-21 20:10:40 +00:00
Pavel Ondračka
5d567f0c1b r300: simplify ntr_emit_load_input
r300 doesn't support anything besides vertex and fragment shaders.

Signed-off-by: Pavel Ondračka <pavel.ondracka@gmail.com>
Reviewed-by: Emma Anholt <emma@anholt.net>
Reviewed-by: Filip Gawin <filip.gawin@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23437>
2023-08-21 20:10:40 +00:00
Pavel Ondračka
8facefb451 r300: simplify ntr_emit_load_ubo
Signed-off-by: Pavel Ondračka <pavel.ondracka@gmail.com>
Reviewed-by: Emma Anholt <emma@anholt.net>
Reviewed-by: Filip Gawin <filip.gawin@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23437>
2023-08-21 20:10:40 +00:00
Pavel Ondračka
608613b937 r300: remove ntr default options
r300 sets its own options.

Signed-off-by: Pavel Ondračka <pavel.ondracka@gmail.com>
Reviewed-by: Emma Anholt <emma@anholt.net>
Reviewed-by: Filip Gawin <filip.gawin@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23437>
2023-08-21 20:10:40 +00:00
Pavel Ondračka
30b62b7733 r300: remove unused ntr default settings
Signed-off-by: Pavel Ondračka <pavel.ondracka@gmail.com>
Reviewed-by: Emma Anholt <emma@anholt.net>
Reviewed-by: Filip Gawin <filip.gawin@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23437>
2023-08-21 20:10:39 +00:00
Pavel Ondračka
1c045c54b7 r300: remove unneeded 64bit and atomic lowering passes
Signed-off-by: Pavel Ondračka <pavel.ondracka@gmail.com>
Reviewed-by: Emma Anholt <emma@anholt.net>
Reviewed-by: Filip Gawin <filip.gawin@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23437>
2023-08-21 20:10:39 +00:00
Pavel Ondračka
6b3be0cc2a r300: remove the unneeded ntr_lower_vec_to_reg callback
Signed-off-by: Pavel Ondračka <pavel.ondracka@gmail.com>
Reviewed-by: Emma Anholt <emma@anholt.net>
Reviewed-by: Filip Gawin <filip.gawin@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23437>
2023-08-21 20:10:39 +00:00
Pavel Ondračka
b60b27c762 r300: remove more ntr unused helpers
Signed-off-by: Pavel Ondračka <pavel.ondracka@gmail.com>
Reviewed-by: Emma Anholt <emma@anholt.net>
Reviewed-by: Filip Gawin <filip.gawin@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23437>
2023-08-21 20:10:39 +00:00
Pavel Ondračka
868eee6e18 r300: simplify vectorization rules
Signed-off-by: Pavel Ondračka <pavel.ondracka@gmail.com>
Reviewed-by: Emma Anholt <emma@anholt.net>
Reviewed-by: Filip Gawin <filip.gawin@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23437>
2023-08-21 20:10:39 +00:00
Pavel Ondračka
0f63a92328 r300: remove more unused 64-bit pieces from ntr
Signed-off-by: Pavel Ondračka <pavel.ondracka@gmail.com>
Reviewed-by: Emma Anholt <emma@anholt.net>
Reviewed-by: Filip Gawin <filip.gawin@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23437>
2023-08-21 20:10:39 +00:00
Pavel Ondračka
c8ef840081 r300: remove ntr_tgsi_usage_mask
This is just u_bit_consecutive for non-64bit.

Signed-off-by: Pavel Ondračka <pavel.ondracka@gmail.com>
Reviewed-by: Emma Anholt <emma@anholt.net>
Reviewed-by: Filip Gawin <filip.gawin@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23437>
2023-08-21 20:10:39 +00:00
Pavel Ondračka
e81c64f2fa r300: remove unused integer support in ntr
Signed-off-by: Pavel Ondračka <pavel.ondracka@gmail.com>
Reviewed-by: Emma Anholt <emma@anholt.net>
Reviewed-by: Filip Gawin <filip.gawin@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23437>
2023-08-21 20:10:39 +00:00
Pavel Ondračka
fcefbf9599 r300: remove irrelevant opcodes in ntr
Remove anything unsupported by the hardware, including the 64bit
variants.

Signed-off-by: Pavel Ondračka <pavel.ondracka@gmail.com>
Reviewed-by: Emma Anholt <emma@anholt.net>
Reviewed-by: Filip Gawin <filip.gawin@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23437>
2023-08-21 20:10:39 +00:00
Pavel Ondračka
98ae4efcec r300: remove unused intrinsics in ntr
Signed-off-by: Pavel Ondračka <pavel.ondracka@gmail.com>
Reviewed-by: Emma Anholt <emma@anholt.net>
Reviewed-by: Filip Gawin <filip.gawin@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23437>
2023-08-21 20:10:39 +00:00
Pavel Ondračka
553c1d33dd r300: add lower_sqrt to nir option
This is now by default for ntt, but we will get rid of the default
definitions soon.

Signed-off-by: Pavel Ondračka <pavel.ondracka@gmail.com>
Reviewed-by: Emma Anholt <emma@anholt.net>
Reviewed-by: Filip Gawin <filip.gawin@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23437>
2023-08-21 20:10:39 +00:00
Pavel Ondračka
ed8b7eaec9 r300: copy ntt to r300 compiler
Signed-off-by: Pavel Ondračka <pavel.ondracka@gmail.com>
Reviewed-by: Emma Anholt <emma@anholt.net>
Reviewed-by: Filip Gawin <filip.gawin@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23437>
2023-08-21 20:10:39 +00:00
Tatsuyuki Ishi
6c5512568b radv/amdgpu: Do not pass in a BO handle when clearing PRT VA region.
This field is invalid to access for virtual BOs.

Fixes: a931d5a4a4 ("radv/winsys: clear the PRT VA range when destroying a virtual BO")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24805>
2023-08-21 17:24:35 +00:00
M Henning
2b78fe5b95 nv/codegen: Delete OP_POW
Reviewed-by: Karol Herbst <kherbst@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24796>
2023-08-21 15:34:14 +00:00
M Henning
4ac1f4bf7d nv50_ir_from_nir: Use nir's lower_fpow
Reviewed-by: Karol Herbst <kherbst@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24796>
2023-08-21 15:34:14 +00:00
George Ouzounoudis
eb5cabf3ae nouveau/codegen: Add a 4th optimization level for MemoryOpts
MemoryOpt optimization pass makes some tests in NVK fail. Until its
fixed in codegen or implemented on NIR instead, move it to a 4th level.
This affects the GL driver as well, but less often.

Fixes dEQP-VK.pipeline.monolithic.dynamic_control_points.change_output*

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24705>
2023-08-21 14:26:34 +00:00
Konstantin Seurer
2943bc34e9 radv: Remove leaf_args::dst_offset
We can use first_id instead.

Reviewed-by: Friedrich Vock <friedrich.vock@gmx.de>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24756>
2023-08-21 12:45:06 +00:00
Konstantin Seurer
90a24c7cb3 radv: Add internal_nodes_offset to scratch_layout
It shouldn't be a part of bvh_state.

Reviewed-by: Friedrich Vock <friedrich.vock@gmx.de>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24756>
2023-08-21 12:45:06 +00:00
Samuel Pitoiset
85cc70a629 zink/ci: update list of expected failures for NAVI10
This matches recent VanGogh CI list changes.

Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24807>
2023-08-21 12:12:22 +00:00
Erik Faye-Lund
db8e49682d docs: expand mobile-menu without js
Without javascript support, a user can't expand the menu. So let's
leave it always-expanded in that case.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24721>
2023-08-21 12:03:20 +00:00
Samuel Pitoiset
b8b42be555 radv/amdgpu: add support for submitting external IBs with the chained path
External IBs are currently only used for DGC. With the chained path,
these IBs will only be used to workaround missing IB2 packet on the
compute queue, which is rare enough to care about chaining inside CS.

Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24207>
2023-08-21 10:52:13 +00:00
Samuel Pitoiset
33f584f033 radv/amdgpu: allow to execute external IBs on the compute queue
IB2 isn't supported on ACE, so external IBs should be submitted as IB1.

Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24207>
2023-08-21 10:52:13 +00:00
Samuel Pitoiset
e3fae01730 Revert "radv/amdgpu: skip adding per VM BOs for sparse during CS BO list build"
This reverts commit 51caece74c.

Cc: mesa-stable
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24774>
2023-08-21 09:42:51 +00:00
Samuel Pitoiset
f67eb9ce07 Revert "radv/amdgpu: workaround a kernel bug when replacing sparse mappings"
This workaround was added temporarily but it can actually cause
stuttering in some games like Forza Horizon 5.

The kernel fix
(https://lists.freedesktop.org/archives/amd-gfx/2023-June/094648.html)
landed in some stable kernels (5.15.121+, 6.1.40+ and 6.4.5+). Sadly,
older stable kernels don't have it, so you might experiment random GPU
hangs in games that use sparse mapping. Please ensure your kernel is
up-to-date for the best experience.

This reverts commit 9b00867327.

Cc: mesa-stable
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/9443
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24774>
2023-08-21 09:42:51 +00:00
Christian Gmeiner
9153dc327f etnaviv: unbreak cmdline compiler
Fixes the following assert:
  etnaviv_compiler: ../src/compiler/glsl_types.cpp:1219: static const glsl_type* glsl_type::get_array_instance(const glsl_type*, unsigned int, unsigned int): Assertion `glsl_type_users > 0' failed.

Signed-off-by: Christian Gmeiner <cgmeiner@igalia.com>
Reviewed-by: Karol Herbst <kherbst@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24753>
2023-08-21 05:13:16 +00:00
Eric Engestrom
953ac9da79 v3d/qpu: fix type of function argument
Fixes: 05c7d9715b ("broadcom: Add V3D 3.3 QPU instruction pack, unpack, and disasm.")
Signed-off-by: Eric Engestrom <eric@igalia.com>
Reviewed-by: Alejandro Piñeiro <apinheiro@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24787>
2023-08-20 04:58:17 +00:00