Samuel Pitoiset [Fri, 18 Aug 2023 14:20:27 +0000 (16:20 +0200)]
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
9b00867327c2b266fcdebcef8bc7e7497eaab06b.
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>
Christian Gmeiner [Thu, 17 Aug 2023 13:19:41 +0000 (15:19 +0200)]
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>
Eric Engestrom [Sat, 19 Aug 2023 01:50:21 +0000 (02:50 +0100)]
v3d/qpu: fix type of function argument
Fixes:
05c7d9715b8a419fd6fb ("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>
Eric Engestrom [Sat, 19 Aug 2023 01:46:25 +0000 (02:46 +0100)]
v3dv: fix shader stage name in error message
Fixes:
60145629a2bdcd4e7835 ("v3dv: initial CreateGraphicsPipeline/DestroyPipeline implementation")
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>
Eric Engestrom [Sat, 19 Aug 2023 01:42:27 +0000 (02:42 +0100)]
v3dv: fix copy/pasted type of `sample`
And use the type in functions instead of a generic `uint32_t` to make it
easier to notice the wrong type.
Fixes:
47e02a2ef11237cf4c2c ("v3dv: add a fast path for vkCmdClearAttachments")
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>
Eric Engestrom [Sat, 19 Aug 2023 01:37:06 +0000 (02:37 +0100)]
v3dv: fix VK_PIPELINE_ROBUSTNESS_{BUFFER,IMAGE}_BEHAVIOR_DEVICE_DEFAULT_EXT copy/paste typo
Fixes:
24d9a80247605ac2c237 ("v3dv: implement VK_EXT_pipeline_robustness")
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>
Bas Nieuwenhuizen [Sun, 23 Apr 2023 23:25:29 +0000 (01:25 +0200)]
docs: Add documentation for gpuvis.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22505>
Bas Nieuwenhuizen [Fri, 14 Apr 2023 12:25:59 +0000 (14:25 +0200)]
vulkan: Add CPU tracing for vkWaitForFences.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22505>
Bas Nieuwenhuizen [Fri, 14 Apr 2023 12:21:38 +0000 (14:21 +0200)]
egl,venus,vulkan,turnip,freedreno: Update CPU trace init to init more than perfetto.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22505>
Bas Nieuwenhuizen [Fri, 14 Apr 2023 12:07:40 +0000 (14:07 +0200)]
util/perf: Add gpuvis integration.
Initial integration, still needs the init functions to be changed
across the codebase.
For the context usage https://github.com/mikesart/gpuvis/pull/82 is
needed to display it correctly in gpuvis.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22505>
Marek Olšák [Fri, 18 Aug 2023 16:05:58 +0000 (12:05 -0400)]
radeonsi: fix templated si_draw_rectangle callback for Navi14
Navi14 is the only gfx10 chip that doesn't enable NGG.
Fixes:
cd7e20f51388 ("radeonsi: specialize si_draw_rectangle using a C++ template")
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24759>
Marek Olšák [Mon, 14 Aug 2023 20:17:58 +0000 (16:17 -0400)]
radeonsi/gfx11: pass attribute ring addr via SGPR instead of memory for blits
This removes the scalar memory load from blit vertex shaders.
Acked-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24759>
Marek Olšák [Wed, 16 Aug 2023 21:49:11 +0000 (17:49 -0400)]
radeonsi: don't pass gl_Layer to PS for blit shaders
This will be required by the next commit to prevent hangs. See the comment.
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24759>
Marek Olšák [Wed, 16 Aug 2023 20:13:23 +0000 (16:13 -0400)]
radeonsi: simplify/merge emit_shader_ngg functions
Acked-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24759>
Marek Olšák [Wed, 16 Aug 2023 20:04:10 +0000 (16:04 -0400)]
radeonsi: improve the heuristic when to use Wave32 for compute shaders
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24759>
Marek Olšák [Wed, 16 Aug 2023 19:45:47 +0000 (15:45 -0400)]
radeonsi: rename uses_subgroup_info to uses_tg_size
that's the name of the SGPR
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24759>
Marek Olšák [Wed, 16 Aug 2023 19:37:59 +0000 (15:37 -0400)]
radeonsi: allow setting any index in radeon_set_sh_reg_idx
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24759>
Marek Olšák [Wed, 16 Aug 2023 19:21:55 +0000 (15:21 -0400)]
ac/surface: add radeon_surf::u::gfx9::uses_custom_pitch
so that we don't try to guess when the pitch is overridden
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24759>
Marek Olšák [Wed, 16 Aug 2023 19:15:00 +0000 (15:15 -0400)]
ac/surface: trivial non-functional changes
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24759>
Marek Olšák [Wed, 16 Aug 2023 19:30:49 +0000 (15:30 -0400)]
ac: add a standalone IB parser program
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24759>
Marek Olšák [Wed, 16 Aug 2023 19:07:25 +0000 (15:07 -0400)]
ac: update gfx11 shadowed register tables
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24759>
Marek Olšák [Wed, 16 Aug 2023 19:05:45 +0000 (15:05 -0400)]
ac: improve the IB parser
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24759>
Marek Olšák [Wed, 16 Aug 2023 19:00:58 +0000 (15:00 -0400)]
ac: change offsets of DMA_DATA dwords to prevent reg offset conflicts
Use non-multiples of 4.
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24759>
Marek Olšák [Wed, 16 Aug 2023 18:56:00 +0000 (14:56 -0400)]
ac: minor updates to packet documentation and definitions
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24759>
Marek Olšák [Wed, 16 Aug 2023 18:45:19 +0000 (14:45 -0400)]
ac: document ac_shader_args::gs_vtx_offset
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24759>
Marek Olšák [Sun, 13 Aug 2023 21:50:47 +0000 (17:50 -0400)]
ac: implement AMD_FORCE_FAMILY properly, remove SI_FORCE_FAMILY
This sets radeon_info for the forced family correctly.
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24759>
Marek Olšák [Sun, 13 Aug 2023 21:33:47 +0000 (17:33 -0400)]
Revert "ac: don't call ac_query_pci_bus_info from ac_query_gpu_info"
This reverts commit
a48642400be86a17d460ce2786988ec67f423f01.
Instead, add a new parameter require_pci_bus_info to control the behavior.
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24759>
Marek Olšák [Thu, 27 Jul 2023 16:46:47 +0000 (12:46 -0400)]
ac/gpu_info: add the /dev/dri/ filename into radeon_info
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24759>
Marek Olšák [Sat, 8 Jul 2023 21:09:15 +0000 (17:09 -0400)]
nir/algebraic: collapse ALU opcodes sourcing NaN
Undef will be replaced by NaN whenever it leads to elimination of FP
instructions. This implements the elimination part.
Reviewed-by: Faith Ekstrand <faith.ekstrand@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24792>
Marek Olšák [Sat, 8 Jul 2023 22:00:45 +0000 (18:00 -0400)]
nir: fix constant evaluation of fddx/fddy sourcing Inf & NaN constant
A derivative of NaN is NaN.
Reviewed-by: Faith Ekstrand <faith.ekstrand@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24792>
Timur Kristóf [Thu, 20 Apr 2023 10:35:01 +0000 (12:35 +0200)]
nir/opt_dead_cf: Remove if branches with undef condition.
Treat them as if the undef were false.
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Reviewed-by: Faith Ekstrand <faith.ekstrand@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24792>
Alyssa Rosenzweig [Fri, 18 Aug 2023 15:58:01 +0000 (11:58 -0400)]
nir/passthrough_gs: Fix array size
Triangle strips with adjacency have 6 vertices input, so we need an array big
enough for all 6 vertices to avoid overflow. Fixes passthrough GS generated for
KHR-GLES31.core.draw_indirect.basic-mode-*-triangle*adj*.
Fixes:
ea14579f3dc ("nir: handle primitives with adjacency")
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Reviewed-by: Antonino Maniscalco <antonino.maniscalco@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24780>
Alyssa Rosenzweig [Fri, 18 Aug 2023 17:10:37 +0000 (13:10 -0400)]
nir/passthrough_gs: Correctly set vertices_in
If the input primitive has adjacency, the output primitive will have fewer
vertices than the input. For example, if we input TRIANGLE_STRIPS_ADJACENCY, we
need to set vertices_in = 6 even though we'll output TRIANGLE_STRIPS with
vertices_out = 3. Respect that, in order to correctly handle adjacency inputs.
Fixes:
ea14579f3dc ("nir: handle primitives with adjacency")
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Reviewed-by: Antonino Maniscalco <antonino.maniscalco@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24780>
Alyssa Rosenzweig [Fri, 18 Aug 2023 16:52:40 +0000 (12:52 -0400)]
nir/lower_helper_writes: Consider bindless images
These need to be handled like other image ops.
Fixes KHR-GLES31.core.shader_image_load_store.basic-allTargets-atomicFS on Asahi
with bindless image access forced.
Fixes:
586da7b3290 ("nir: Add nir_lower_helper_writes pass")
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Reviewed-by: Italo Nicola <italonicola@collabora.com>
Reviewed-by: Faith Ekstrand <faith.ekstrand@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24778>
M Henning [Sat, 12 Aug 2023 03:06:25 +0000 (23:06 -0400)]
nv/codegen: Use nir_lower_clip
Reviewed-by: Karol Herbst <kherbst@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24653>
Eric Engestrom [Sat, 19 Aug 2023 02:14:49 +0000 (03:14 +0100)]
zink: fix format in zink_make_{image,texture}_handle_resident()
`ds->db.format` is a `pipe_format`, while `buffer_infos[handle].format` is
a `VkFormat`; the conversion from one to the other was missing.
Fixes:
99ba529feed6f9917a44 ("zink: implement descriptor buffer handling of bindless texture")
Signed-off-by: Eric Engestrom <eric@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24790>
Eric Engestrom [Sat, 19 Aug 2023 01:30:30 +0000 (02:30 +0100)]
vc4: drop duplicate .lower_ldexp
It's set 3 lines above already.
Fixes:
2a33ea95d66cd7ba83e2 ("glsl: Retire ldexp lowering in favor of the nir lowering flag.")
Signed-off-by: Eric Engestrom <eric@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24786>
Sylvain Munaut [Fri, 11 Aug 2023 12:15:55 +0000 (14:15 +0200)]
egl: Advertise EGL_MESA_gl_interop extension if support present
Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
Acked-by: Antonio Gomes <antoniospg100@gmail.com>
Reviewed-by: Adam Jackson <ajax@redhat.com>
Reviewed-by: Eric Engestrom <eric@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24573>
Sylvain Munaut [Fri, 11 Aug 2023 12:03:17 +0000 (14:03 +0200)]
glx: Advertise GLX_MESA_gl_interop extension if support present
Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
Acked-by: Antonio Gomes <antoniospg100@gmail.com>
Reviewed-by: Adam Jackson <ajax@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24573>
Sylvain Munaut [Fri, 11 Aug 2023 12:02:31 +0000 (14:02 +0200)]
glx: Remove MESA_depth_float_bit from enum
This is not used anywhere. Been there from the beginning of this
file but with no related code in glxextensions.c
Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
Acked-by: Antonio Gomes <antoniospg100@gmail.com>
Reviewed-by: Adam Jackson <ajax@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24573>
Sylvain Munaut [Tue, 8 Aug 2023 00:03:27 +0000 (02:03 +0200)]
egl: Export the MESA GL Interop functions through eglGetProcAddress
Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
Acked-by: Antonio Gomes <antoniospg100@gmail.com>
Reviewed-by: Adam Jackson <ajax@redhat.com>
Reviewed-by: Eric Engestrom <eric@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24573>
Sylvain Munaut [Tue, 8 Aug 2023 00:03:01 +0000 (02:03 +0200)]
glx: Export the MESA GL Interop functions through glXGetProcAddress
Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
Acked-by: Antonio Gomes <antoniospg100@gmail.com>
Reviewed-by: Adam Jackson <ajax@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24573>
Sylvain Munaut [Wed, 9 Aug 2023 10:57:49 +0000 (12:57 +0200)]
glx: Add missing MesaGLInteropGLXFlushObjects
All the plumbing was added in
8d55fb54b15381d7fa950f448e5c67d0556088db
but for some reason the top level access method was not ...
Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
Acked-by: Antonio Gomes <antoniospg100@gmail.com>
Reviewed-by: Adam Jackson <ajax@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24573>
Sylvain Munaut [Tue, 8 Aug 2023 09:20:58 +0000 (11:20 +0200)]
include: Fix the PFN declarations to be pointers as they should
Broken by
b5f9820d905a275bc01bbffa9b4927ec11286f8d back in 2016.
Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
Acked-by: Antonio Gomes <antoniospg100@gmail.com>
Reviewed-by: Adam Jackson <ajax@redhat.com>
Reviewed-by: Eric Engestrom <eric@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24573>
Eric Engestrom [Fri, 18 Aug 2023 17:13:49 +0000 (18:13 +0100)]
egl: bump extension string length
We've actually been over the 1000 char limit for a while, but we didn't
have a driver in CI that enabled enough extensions to notice it.
If all currently supported extensions are enabled, we need 1441 chars.
Let's bump the string to 2048 to have a little bit of margin.
Signed-off-by: Eric Engestrom <eric@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24781>
Alyssa Rosenzweig [Thu, 10 Aug 2023 17:45:27 +0000 (13:45 -0400)]
agx: Lower fquantize2f16
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24616>
Alyssa Rosenzweig [Thu, 10 Aug 2023 18:12:37 +0000 (14:12 -0400)]
nir: Lower fquantize2f16
Passes dEQP-VK.spirv_assembly.*opquantize*.
Unlike the DXIL lowering, this should correctly handle NaNs. (I belive Dozen has
a bug here that is masked by running constant folding early and poor CTS
coverage.) It is also faster than the DXIL lowering for hardware that supports
f2f16 conversions natively. It is not as good as a backend implementation that
could flush-to-zero in hardware... but for a debug instruction it should be more
than good enough.
It might be slightly better to multiply with 0.0 to get the appropriate zero,
but NIR really likes optimizing that out ...
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Reviewed-by: Georg Lehmann <dadschoorse@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24616>
David Heidelberg [Tue, 25 Jul 2023 22:58:06 +0000 (00:58 +0200)]
gtest: backport ansi color fix
Fixes ubsan runs for Mesa3D.
Adds prevents from returning
nullptr by choosing default color.
Upstream PR: https://github.com/google/googletest/pull/4322
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/9404
Signed-off-by: David Heidelberg <david.heidelberg@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24783>
Eric Engestrom [Fri, 18 Aug 2023 16:54:07 +0000 (17:54 +0100)]
ci/freedreno: reuse freedreno_gl_file_list instead of re-definining it
Fixes:
9d442b459a43264c2899 ("ci/freedreno: handle disabling farm properly for each FD/Collabora farm")
Signed-off-by: Eric Engestrom <eric@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24779>
Pavel Ondračka [Thu, 17 Aug 2023 16:07:58 +0000 (18:07 +0200)]
r300: add dEQP baseline for RV370 with forced swtcl
Reviewed-by: Filip Gawin <filip.gawin@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24769>
Pavel Ondračka [Thu, 17 Aug 2023 16:01:28 +0000 (18:01 +0200)]
r300: don't abort on flow control when using draw for vs
It can handle it just fine. Around 250 dEQPs go from Skip to Pass.
Fixes:
1021e2b946b18739b65b575b0770e6158ba05592
Reviewed-by: Filip Gawin <filip.gawin@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24769>
Mike Blumenkrantz [Thu, 17 Aug 2023 15:22:12 +0000 (11:22 -0400)]
r600: better tracking for vertex buffer emission
Fixes:
76725452 (gallium: move vertex stride to CSO)
Reviewed-by: Gert Wollny <gert.wollny@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24754>
Mike Blumenkrantz [Thu, 17 Aug 2023 13:38:13 +0000 (09:38 -0400)]
r600: store the mask of buffers used by a vertex state
Fixes:
76725452 (gallium: move vertex stride to CSO)
Reviewed-by: Gert Wollny <gert.wollny@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24754>
David Rosca [Mon, 14 Aug 2023 18:31:58 +0000 (20:31 +0200)]
radeonsi/vcn: Fix leaking fences in decode
Unref fence used in destroy.
Don't store the fence reference in picture->fence, instead
keep it in the driver. Because only the last fence will
now be valid, check the fence pointer in get_decoder_fence.
Reviewed-by: Leo Liu <leo.liu@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24677>
Faith Ekstrand [Thu, 17 Aug 2023 22:47:42 +0000 (17:47 -0500)]
nir: Use nir_shader_intrinsic_pass() a few places
Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Acked-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24760>
Faith Ekstrand [Thu, 17 Aug 2023 22:51:15 +0000 (17:51 -0500)]
nir: Fix metadata in nir_lower_is_helper_invocation
It does not preserve everything. It adds and removes instructions and
even adds a variable.
Fixes:
f17b41ab4f01 ("nir: add lowering pass for helperInvocationEXT()")
Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Acked-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24760>
Alyssa Rosenzweig [Thu, 3 Aug 2023 20:02:12 +0000 (16:02 -0400)]
nir: Add nir_shader_intrinsics_pass
Like instructions_pass but specialized to intrinsics. More ergnomic for this
extremely common case, and possibly a bit faster by avoiding the extra function
call on non-intrinsics.
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Reviewed-by: Faith Ekstrand <faith.ekstrand@collabora.com>
Acked-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24760>
Konstantin Seurer [Tue, 1 Aug 2023 12:38:19 +0000 (14:38 +0200)]
lavapipe: Advertise AMDX_shader_enqueue
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24512>
Konstantin Seurer [Fri, 4 Aug 2023 13:34:15 +0000 (15:34 +0200)]
lavapipe: Implement AMDX_shader_enqueue commands
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24512>
Konstantin Seurer [Tue, 1 Aug 2023 12:39:03 +0000 (14:39 +0200)]
lavapipe: Implement exec graph pipelines
Just a collection of compute shaders that can enqueue each other.
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24512>
Konstantin Seurer [Sun, 30 Jul 2023 11:06:57 +0000 (13:06 +0200)]
lavapipe: Add lvp_pipeline_type
A boolean is not enough to support exec graph pipelines.
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24512>
Konstantin Seurer [Tue, 1 Aug 2023 12:37:28 +0000 (14:37 +0200)]
spirv: Implement SPV_AMDX_shader_enqueue
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24512>
Konstantin Seurer [Sat, 29 Jul 2023 09:52:45 +0000 (11:52 +0200)]
spirv: Update headers and grammer JSON
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24512>
Konstantin Seurer [Tue, 1 Aug 2023 12:35:21 +0000 (14:35 +0200)]
nir: Add shader enqueue data structures and handling
There are two new variable modes:
- nir_var_mem_node_payload
- nir_var_mem_node_payload_in
Also add a few more intrinsics and some shader info.
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24512>
Konstantin Seurer [Tue, 1 Aug 2023 15:33:34 +0000 (17:33 +0200)]
vulkan Add enqueue entrypoint for CmdDispatchGraphAMDX
The generyted one doesn't copy deep enough.
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24512>
Konstantin Seurer [Mon, 14 Aug 2023 16:26:49 +0000 (18:26 +0200)]
vulkan: Allow beta extensions for physical device properties
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24512>
Konstantin Seurer [Sun, 30 Jul 2023 11:15:18 +0000 (13:15 +0200)]
vulkan: Allow beta extensions for physical device features
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24512>
Konstantin Seurer [Sat, 29 Jul 2023 09:51:51 +0000 (11:51 +0200)]
bin: Update spirv sources
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24512>
Julia Zhang [Mon, 7 Aug 2023 03:07:41 +0000 (11:07 +0800)]
radeonsi: modify algorithm of skipping holes of sparse bo
Modify current algorithm of skipping holes of sparse bo to cover the
following using situations:
1. The whole sparse buffer is uncommitted.
2. More than one page that in the tail of sparse buffer are uncommitted.
Signed-off-by: Julia Zhang <julia.zhang@amd.com>
Acked-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24535>
Flora Cui [Tue, 11 Apr 2023 07:04:02 +0000 (15:04 +0800)]
radeonsi: limit CP DMA to skip holes in sparse bo
CP DMA on gfx9 can't handle the hole in sparse buffer. The fix skip
sparse bo hole so that arb_sparse_buffer-buffer-data &&
arb_sparse_buffer-commit pass
Signed-off-by: Flora Cui <flora.cui@amd.com>
Signed-off-by: Julia Zhang <julia.zhang@amd.com>
Acked-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24535>
Rohan Garg [Tue, 27 Jun 2023 10:17:17 +0000 (12:17 +0200)]
anv: emitting 3DSTATE_PRIMITIVE_REPLICATION is required on Gen12+
This change helps fix the following tests on future platforms:
- func.multiview
- dEQP-VK.fragment_shading_rate.renderpass2.monolithic.multiviewsrlayered.dynamic.attachment.noshaderrate.keep.replace.1x1.samples1.vs
- anything else that uses multiview
Signed-off-by: Rohan Garg <rohan.garg@intel.com>
Reviewed-by: Tapani Pälli <tapani.palli@intel.com>
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24746>
Sviatoslav Peleshko [Mon, 7 Aug 2023 15:46:07 +0000 (18:46 +0300)]
dri: Use RGB internal formats for RGBX formats
These formats do not contain alpha channel, so their internal formats
should reflect that.
Fixes:
bf576772 ("dri_util: add driImageFormatToSizedInternalGLFormat function")
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/9429
Signed-off-by: Sviatoslav Peleshko <sviatoslav.peleshko@globallogic.com>
Reviewed-by: Daniel Stone <daniels@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24580>
David Heidelberg [Fri, 18 Aug 2023 10:20:06 +0000 (12:20 +0200)]
ci/freedreno: another batch of Adreno 530 flakes
Signed-off-by: David Heidelberg <david.heidelberg@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24772>
Samuel Pitoiset [Wed, 9 Aug 2023 15:44:54 +0000 (17:44 +0200)]
radv: stop copying if VS or TES uses the InvocationID built-in
It's only allowed in TCS or GS which means the src shader stage
value is always FALSE.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24691>
Samuel Pitoiset [Thu, 10 Aug 2023 07:24:24 +0000 (09:24 +0200)]
radv: simplify declaring VS specific input SGPRs
stage/previous_stage are actually useless.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24691>
Samuel Pitoiset [Thu, 10 Aug 2023 12:21:50 +0000 (14:21 +0200)]
radv: remove unused param from radv_pipeline_init_multisample_state()
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24691>
Samuel Pitoiset [Fri, 18 Aug 2023 08:23:28 +0000 (10:23 +0200)]
radv: remove radv_cmd_buffer::cached_vertex_formats
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24770>
Samuel Pitoiset [Thu, 17 Aug 2023 10:05:18 +0000 (12:05 +0200)]
radv: fix emitting TCS epilogs for GFX6-9
The number of SGPRs need to be adjusted.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24747>
Samuel Pitoiset [Mon, 14 Aug 2023 08:39:57 +0000 (10:39 +0200)]
radv: add missing comment about TCS_OFFCHIP_LAYOUT_LSHS_VERTEX_STRIDE
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24745>
Samuel Pitoiset [Mon, 14 Aug 2023 08:05:31 +0000 (10:05 +0200)]
radv: reduce TCS_OFFCHIP_LAYOUT_NUM_PATCHES to 6-bits
RADV clamps the number of tess patches to 40.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24745>
Faith Ekstrand [Wed, 16 Aug 2023 16:40:41 +0000 (11:40 -0500)]
nir: Drop nir_push_if_src()
Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24765>
Faith Ekstrand [Thu, 17 Aug 2023 21:44:38 +0000 (16:44 -0500)]
nir: Drop nir_instr_rewrite_src()
Replace all its remaining users with nir_src_rewrite().
Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24729>
Faith Ekstrand [Thu, 17 Aug 2023 21:27:15 +0000 (16:27 -0500)]
nir: Drop most uses if nir_instr_rewrite_src()
Generated by the following semantic patch:
@@
expression I, S, D;
@@
-nir_instr_rewrite_src(I, S, nir_src_for_ssa(D));
+nir_src_rewrite(S, D);
Acked-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24729>
Faith Ekstrand [Thu, 17 Aug 2023 20:46:50 +0000 (15:46 -0500)]
nir: Drop nir_instr_rewrite_src_ssa()
Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24729>
Faith Ekstrand [Thu, 17 Aug 2023 20:44:47 +0000 (15:44 -0500)]
nir: Drop most uses of nir_instr_rewrite_src_ssa()
Generated with the following semantic patch:
@@
expression I, S, D;
@@
-nir_instr_rewrite_src_ssa(I, S, D);
+nir_src_rewrite(S, D);
Acked-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24729>
Faith Ekstrand [Thu, 17 Aug 2023 20:41:41 +0000 (15:41 -0500)]
nir: Drop nir_if_rewrite_condition()
Use nir_src_rewrite() instead. In a couple of cases, we can even drop a
switch on whether or not it's an if source.
Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24729>
Faith Ekstrand [Thu, 17 Aug 2023 21:16:10 +0000 (16:16 -0500)]
nir: Add and use a nir_instr_init_src() helper
This helper exists for a very tiny set of use-cases but it's better to
have the helper live in nir.c than hand-roll it elsewhere.
Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24729>
Faith Ekstrand [Wed, 16 Aug 2023 16:16:00 +0000 (11:16 -0500)]
nir: Add a nir_instr_clear_src() helper and use it
Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24729>
Faith Ekstrand [Thu, 17 Aug 2023 21:38:09 +0000 (16:38 -0500)]
nir/opt_undef: Don't rewrite a bcsel to mov
Technically, it's possible because bcsel has more sources than mov.
However, it's not worth the pain of trying to get it right.
Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24729>
Faith Ekstrand [Thu, 17 Aug 2023 20:26:32 +0000 (15:26 -0500)]
nir: Take a nir_def * in nir_phi_instr_add_src()
Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24729>
Faith Ekstrand [Wed, 16 Aug 2023 15:44:46 +0000 (10:44 -0500)]
nir: Take a nir_def * in nir_tex_instr_add_src()
NIR bits were hand-typed. Driver updates done through the following
semantic patch:
@@
expression T, ST, D;
@@
-nir_tex_instr_add_src(T, ST, nir_src_for_ssa(D));
+nir_tex_instr_add_src(T, ST, D);
Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24729>
Christian Gmeiner [Mon, 24 Jul 2023 08:30:44 +0000 (10:30 +0200)]
ci/etnaviv: update ci expectation
Signed-off-by: Christian Gmeiner <cgmeiner@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24751>
Karol Herbst [Thu, 17 Aug 2023 17:11:52 +0000 (19:11 +0200)]
nv50: limit max code uploads to 0x8000
I have no idea why a bigger size doesn't work, the hardware doesn't
complain, but it turns out that uploading big shaders still causes issues
with the old limit. *shrug*
Fixes:
7f63d2ebdbc ("nv50: fix code uploads bigger than 0x10000 bytes")
Signed-off-by: Karol Herbst <git@karolherbst.de>
Reviewed-by: M Henning <drawoc@darkrefraction.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24758>
Sagar Ghuge [Wed, 16 Aug 2023 18:49:03 +0000 (11:49 -0700)]
iris,crocus: drop unnecessary DEBUG_NO_CCS/NO_HIZ checks
Now isl_surf_supports_ccs helper handles DEBUG_NO_CCS check and
isl_surf_get_hiz_surf handles DEBUG_NO_HIZ, so we don't
need to check it everywhere.
Signed-off-by: Sagar Ghuge <sagar.ghuge@intel.com>
Reviewed-by: Nanley Chery <nanley.g.chery@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24731>
Sagar Ghuge [Wed, 16 Aug 2023 17:11:29 +0000 (10:11 -0700)]
anv,hasvk: drop unnecessary DEBUG_NO_CCS/NO_HIZ checks
Now isl_surf_supports_ccs helper handles DEBUG_NO_CCS check and
isl_surf_get_hiz_surf handles DEBUG_NO_HIZ, so we don't
need to check it everywhere.
Signed-off-by: Sagar Ghuge <sagar.ghuge@intel.com>
Reviewed-by: Nanley Chery <nanley.g.chery@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24731>
Sagar Ghuge [Wed, 16 Aug 2023 18:40:11 +0000 (11:40 -0700)]
intel/isl: Enable INTEL_DEBUG=noccs/nohiz in ISL helpers
Let's enable INTEL_DEBUG=noccs in isl_surf_supports_ccs helper and
INTEL_DEBUG=nohiz in isl_surf_get_hiz_surf helper.
Signed-off-by: Sagar Ghuge <sagar.ghuge@intel.com>
Reviewed-by: Nanley Chery <nanley.g.chery@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24731>
Emma Anholt [Thu, 17 Aug 2023 16:06:19 +0000 (09:06 -0700)]
disk_cache: Disable the "List" test for RO disk cache.
It uses a poll function that waits for a second hoping for another thread
to catch up, which is not a reliable way to do synchronization. The test
has been spuriously failing merges on a regular basis recently.
This is issue #9222, which I'm leaving open until the author can fix the test.
Fixes:
3b69b67545b6 ("util/fossilize_db: add runtime RO foz db loading via FOZ_DBS_DYNAMIC_LIST")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24755>
Igor Torrente [Thu, 10 Aug 2023 16:27:46 +0000 (13:27 -0300)]
zink: Fix one addicional case when running a compositor
Covers the case where the `dri2_init_screen` calls
`pipe_loader_create_screen_vk` directly and not sets
the device major and minor.
Signed-off-by: Igor Torrente <igor.torrente@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24678>
Kenneth Graunke [Mon, 14 Aug 2023 23:59:17 +0000 (16:59 -0700)]
intel/compiler: Respect NIR_DEBUG_PRINT_INTERNAL for DEBUG_OPTIMIZER
If the NIR_DEBUG_PRINT_INTERNAL flag is not set, don't print debugging
information for internal shaders in INTEL_DEBUG=optimizer dumps.
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24684>
Emma Anholt [Thu, 4 May 2023 21:09:56 +0000 (14:09 -0700)]
ci/turnip: Add a660 VK coverage.
1/2 run pre-merge, and a half-hour full run for nightly. Test status
looks very stable so far.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24737>