Commit Graph

178561 Commits

Author SHA1 Message Date
Samuel Pitoiset
aabf53ce6b radv/ci: remove duplicate skipped tests for RAVEN/STONEY
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25556>
2023-10-05 12:34:59 +00:00
Georg Lehmann
34d8fa6185 aco/gfx11: optimize dual source export
We can combine dpp with the v_cndmask_b32.

Foz-DB Navi31:
Totals from 222 (0.28% of 79330) affected shaders:
Instrs: 564392 -> 563373 (-0.18%); split: -0.19%, +0.01%
CodeSize: 2867040 -> 2864728 (-0.08%); split: -0.09%, +0.01%
Latency: 4278957 -> 4275199 (-0.09%); split: -0.09%, +0.00%
InvThroughput: 586636 -> 585824 (-0.14%); split: -0.14%, +0.00%
SClause: 20210 -> 20211 (+0.00%); split: -0.02%, +0.02%
Copies: 39763 -> 39778 (+0.04%); split: -0.13%, +0.17%
PreVGPRs: 13924 -> 13922 (-0.01%)

Reviewed-by: Rhys Perry <pendingchaos02@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25541>
2023-10-05 10:37:34 +00:00
Ganesh Belgur Ramachandra
e3e47aa96e radeonsi: "clear_12bytes_buffer" shader in nir
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25221>
2023-10-05 09:43:11 +00:00
Ganesh Belgur Ramachandra
3f44a8321f radeonsi: "clear_render_target_1d_array" shader in nir
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25221>
2023-10-05 09:43:11 +00:00
Ganesh Belgur Ramachandra
d0b14c56ea radeonsi: "clear_render_target" shader in nir
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25221>
2023-10-05 09:43:11 +00:00
Marek Olšák
9f569acf20 ac/surface: don't require exact pitch for gfx6-8 tiled imports
It was reported that it broke Stoney. Something probably uses a suboptimal
pitch, like minigbm.

Fixes: 7d066330e0 - ac/surface: relax custom pitch requirements to any multiple of 256B on gfx10.3+

Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25540>
2023-10-05 07:27:02 +00:00
Marek Olšák
340218c51e radeonsi: upload shaders via a staging buffer so as not to map VRAM directly
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25494>
2023-10-04 23:53:19 -04:00
Marek Olšák
23af6d3d35 radeonsi: add another aux context for uploading shaders
When the first auxiliary context is locked and wants to compile and upload
a shader asynchronously, we need to use another auxiliary context
in the compiler thread because the first one is locked at that point.

This adds an array of auxiliary contexts into si_screen and changes how aux
contexts are accessed.

Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25494>
2023-10-04 23:53:16 -04:00
Sviatoslav Peleshko
8361cd4c4c intel/eu/validate: Validate "packed word exception" stricter
Fixes: 75b7f5a2 ("i965: Validate "Region Alignment Rules"")
Signed-off-by: Sviatoslav Peleshko <sviatoslav.peleshko@globallogic.com>
Reviewed-by: Emma Anholt <emma@anholt.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25378>
2023-10-05 01:41:42 +00:00
Sviatoslav Peleshko
8f23b45252 intel/fs: Fix "packed word exception" condition for register regioning
Fixes: a6bf5f88 ("i965/fs: Enforce common regioning restrictions by SIMD splitting.")
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/9432
Signed-off-by: Sviatoslav Peleshko <sviatoslav.peleshko@globallogic.com>
Reviewed-by: Emma Anholt <emma@anholt.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25378>
2023-10-05 01:41:42 +00:00
Faith Ekstrand
922bd13152 nvk: Use align() and align64() instead of ALIGN_POT
For one thing, they actually assert that the alignment factor is a power
of two.  More importantly, though, because they're real functions and
not macros, they up-cast the alignment to a full uint32_t or uint64_t
before doing the alignment calculation.  If you do ALIGN_POT() on a
64-bit value with a 32-bit alignment, it truncates to 32 bits because
the NOT is done before the up-cast due to C implicit cast rules.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25555>
2023-10-04 20:15:55 -05:00
Faith Ekstrand
07744ba67e nvk: Handle zero-sized sparse buffers
In the zero case, we don't want to allocate any VMA.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25555>
2023-10-04 20:15:54 -05:00
Konstantin Seurer
20e8760c75 zink: Enable edge flags with points
Fixes: 90a8525 ("zink: handle edgeflags")
Reviewed-by: Antonino Maniscalco <antonino.maniscalco@collabora.com>
Acked-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25335>
2023-10-04 23:20:52 +00:00
Konstantin Seurer
4625e18619 nir/passthrough_gs: Support edge flags with points
Fixes: 24535ff ("nir: handle edge flags in nir_create_passthrough_gs")
Reviewed-by: Antonino Maniscalco <antonino.maniscalco@collabora.com>
Acked-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25335>
2023-10-04 23:20:52 +00:00
Konstantin Seurer
3bf60f904b zink: Initialize primitive types to an invalid value
The memory is zero initialized which corresponds to MESA_PRIM_POINTS.

Fixes: 659c39f ("zink: rework primitive rasterization type logic")
Reviewed-by: Antonino Maniscalco <antonino.maniscalco@collabora.com>
Acked-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25335>
2023-10-04 23:20:52 +00:00
Leo Liu
867a995ce7 ac/gpu_info: override ib_size_alignment for VCN_DEC and JPEG
With the commit 4f660f99 ("ac/gpu_info: pad IBs according to ib_size_alignment"),
we found kernel isn't reporting ib_base/size_alignment correctly, thus causing
VCN_DEC and JPEG functions broken. We will fix the kernel and bump the kernel
version, and now for the older kernel, we need this override.

closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/9916

Signed-off-by: Leo Liu <leo.liu@amd.com>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25511>
2023-10-04 22:58:47 +00:00
Igor Torrente
f0762f003d zink: fix for startup crash of weston running on top of zink + venus
Venus asserts if we are transitioning to/from
`VK_IMAGE_LAYOUT_PRESENT_SRC_KHR` if we are not dealing with a wsi
image.

Now we detects this case and avoid transition the layout in this case.

Signed-off-by: Igor Torrente <igor.torrente@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25423>
2023-10-04 22:28:32 +00:00
Marek Olšák
59ea386065 gallium/util: add more tests for compute-only contexts
Acked-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25389>
2023-10-04 21:39:34 +00:00
Marek Olšák
b9289c51b5 gallium/util: fix GALLIUM_TESTS=1 by using cso_set_vertex_buffers_and_elements
util_draw_user_vertex_buffer no longer works with u_vbuf.
Add util_draw_user_vertices that does the right thing and use it.

Acked-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25389>
2023-10-04 21:39:34 +00:00
Faith Ekstrand
fac31bb7bd nvk: Take GETPARAM_EXEC_PUSH_MAX into account
Reviewed-by: Danilo Krummrich <dakr@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25444>
2023-10-04 20:50:34 +00:00
Faith Ekstrand
0756a13aba drm-uapi: Sync nouveau_drm.h
From https://cgit.freedesktop.org/drm-misc/

    commit d59e75eef52d89201aaf5342a3ac23ddf3e9b112
    Author: Danilo Krummrich <dakr@redhat.com>
    Date:   Mon Oct 2 15:46:48 2023 +0200

        drm/nouveau: exec: report max pushs through getparam

Reviewed-by: Danilo Krummrich <dakr@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25444>
2023-10-04 20:50:34 +00:00
Gert Wollny
247946a5e4 mesa: check numlevels and numlayers when creating a texture view
v2: Compare against zero only, because the values are unsigned and
    can't be negative (Tapani Pälli)

CC: mesa-stable

Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
Reviewed-by: Emma Anholt <emma@anholt.net> (v1)
Reviewed-by: Tapani Pälli <tapani.palli@intel.com>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25532>
2023-10-04 19:58:08 +00:00
Eric Engestrom
9ec0c90d6d docs: update calendar for 23.1.9
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25547>
2023-10-04 19:49:14 +00:00
Eric Engestrom
2b36bd246d docs: add sha256sum for 23.1.9
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25547>
2023-10-04 19:49:14 +00:00
Eric Engestrom
45181a9539 docs: add release notes for 23.1.9
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25547>
2023-10-04 19:49:14 +00:00
Rhys Perry
1a268dc59d aco: disable FI for quad/masked swizzle
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com>
Reviewed-by: Georg Lehmann <dadschoorse@gmail.com>
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/8330
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25525>
2023-10-04 18:53:43 +00:00
Rhys Perry
ad5be40303 nir: add fetch inactive index to quad_swizzle_amd/masked_swizzle_amd
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com>
Reviewed-by: Georg Lehmann <dadschoorse@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25525>
2023-10-04 18:53:43 +00:00
Rhys Perry
0e79f76aa5 aco: add fetch_inactive field to DPP instructions
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com>
Reviewed-by: Georg Lehmann <dadschoorse@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25525>
2023-10-04 18:53:43 +00:00
Rhys Perry
26fce534b5 aco: shrink DPP8_instruction
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com>
Reviewed-by: Georg Lehmann <dadschoorse@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25525>
2023-10-04 18:53:43 +00:00
Leandro Ribeiro
e90b5385a0 egl: move is_render_node flag to platform_wayland
This flag is being used only by platform_wayland. So move it to be
included by the #ifdef HAVE_WAYLAND_PLATFORM in struct dri2_egl_display.

Signed-off-by: Leandro Ribeiro <leandro.ribeiro@collabora.com>
Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Reviewed-by: Simon Ser <contact@emersion.fr>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25504>
2023-10-04 17:01:42 +00:00
Leandro Ribeiro
394c3b97f1 egl: make explicit that we don't support render nodes for software EGLDevice
Currently we verify that by checking if the EGLDevice has a NULL
drmDevicePtr.

We have a proper way of checking that with _eglDeviceSupports(dev,
_EGL_DEVICE_SOFTWARE), so use that to make things more explicit.

Signed-off-by: Leandro Ribeiro <leandro.ribeiro@collabora.com>
Reviewed-by: Eric Engestrom <eric@igalia.com>
Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Reviewed-by: Simon Ser <contact@emersion.fr>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25504>
2023-10-04 17:01:42 +00:00
Leandro Ribeiro
950825cb36 egl: simplify _eglAddDRMDevice()
We only create EGLDevice's for render-capable devices, so it's better
to document that in the code and simplify this function.

Signed-off-by: Leandro Ribeiro <leandro.ribeiro@collabora.com>
Reviewed-by: Eric Engestrom <eric@igalia.com>
Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Reviewed-by: Simon Ser <contact@emersion.fr>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25504>
2023-10-04 17:01:42 +00:00
Leandro Ribeiro
f0861645bb egl: remove unused parameter from _eglAddDRMDevice()
No callers are using the _EGLDevice **out_dev parameter which is being
set by this function. So just drop it.

Signed-off-by: Leandro Ribeiro <leandro.ribeiro@collabora.com>
Reviewed-by: Eric Engestrom <eric@igalia.com>
Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Reviewed-by: Simon Ser <contact@emersion.fr>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25504>
2023-10-04 17:01:41 +00:00
Leandro Ribeiro
7de445e69a egl: rewrite outdated comment in _eglFindDevice()
_eglAddDevice() has been renamed to _eglFindDevice(). But the comment
describing what this function does is outdated. Rewrite this comment.

Signed-off-by: Leandro Ribeiro <leandro.ribeiro@collabora.com>
Reviewed-by: Eric Engestrom <eric@igalia.com>
Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Reviewed-by: Simon Ser <contact@emersion.fr>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25504>
2023-10-04 17:01:41 +00:00
Carsten Haitzler
a4f7f9975a panfrost: Add GPU variant of G57 to the set of known ids
There already is a G57 ID, but this is for a MTK variant that is not
actually the original design. The original design is 0x9091 not
0x9093.

Signed-off-by: Carsten Haitzler <carsten.haitzler@foss.arm.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25026>
2023-10-04 16:32:05 +00:00
Danylo Piliaiev
47fb3f06c4 tu: Add push_consts_per_stage debug option
Signed-off-by: Danylo Piliaiev <dpiliaiev@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25086>
2023-10-04 15:51:54 +00:00
Danylo Piliaiev
a5f0f7d4b1 turnip,ir3: Implement A7XX push consts load via preamble
New push consts loading consist of:
- Push consts are set for the entire pipeline via HLSQ_SHARED_CONSTS_IMM
  array which could fit up to 256b of push consts.
- For each shader stage that uses push consts READ_IMM_SHARED_CONSTS
  should be set in HLSQ_*_CNTL, otherwise push consts may get overwritten
  by new push consts that are set after the draw.
- Push consts are loaded into consts reg file in a shader preamble via
  stsc at the very start of the preamble.

OPC_PUSH_CONSTS_LOAD_MACRO is used instead of directly translating NIR
intrinsic into stsc because: we don't want to teach legalize pass how
to set (ss) between stores and loads of consts reg file, don't want for
stsc to be reordered, etc.

Signed-off-by: Danylo Piliaiev <dpiliaiev@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25086>
2023-10-04 15:51:54 +00:00
Danylo Piliaiev
e39b6e2b9b freedreno: Make possible to specify A7XX feature flags
Previously the idea was for each generation to have unique list
of feature flags, now it makes more sense for new generation
to have only new flags defined and "inherit" older gen flags.

Signed-off-by: Danylo Piliaiev <dpiliaiev@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25086>
2023-10-04 15:51:54 +00:00
Danylo Piliaiev
823b3bfeea ir3,tu: Refactor push consts info plumbing
In preparation for a new way to pass push consts into a shader,
introduced in a7xx.

Signed-off-by: Danylo Piliaiev <dpiliaiev@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25086>
2023-10-04 15:51:54 +00:00
Danylo Piliaiev
d5d7631060 freedreno/registers: Refine a7xx push consts registers
Signed-off-by: Danylo Piliaiev <dpiliaiev@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25086>
2023-10-04 15:51:54 +00:00
Samuel Pitoiset
b8ad3ddb1e radv: fix emulated geometry shader primitives/invocations queries
If both are used together, only the geometry shader primitives were
copied.

Found by inspection.

Cc: mesa-stable
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25543>
2023-10-04 15:16:36 +00:00
Samuel Pitoiset
c3d823765a radv/ci: rename GFX1100 lists to NAVI31
The chip has been renamed.

Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25542>
2023-10-04 14:20:34 +00:00
Eric Engestrom
86bdabb4c2 ci: fix shebang in build-deqp-runner.sh
We use bash features such as `pushd`, so be accurate in the shebang,
even though in practice this is sourced not executed so this shebang
only serves our editors.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25430>
2023-10-04 13:39:36 +00:00
Marek Olšák
bc432ab9a0 radeonsi/ci: update navi10 results
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25515>
2023-10-04 12:35:15 +00:00
Marek Olšák
f4d08bf92d Revert "radeonsi: specialize si_draw_rectangle using a C++ template"
This reverts commit cd7e20f513.

Navi1x turns off NGG when streamout queries are active, which breaks
the assumption of specialized si_draw_rectangle that NGG is always
enabled on Navi1x.

Fixes: cd7e20f513

Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25515>
2023-10-04 12:35:15 +00:00
Karol Herbst
93d5d85d35 rusticl: fix clippys bool_to_int_with_if
New in clippy-1.65

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25538>
2023-10-04 11:44:51 +00:00
Martin Roukala (né Peres)
cbdd4f5373 zink/ci: remove 19 tests from the zink-radv-polaris10-fails list
It seems that most crashes in glgetteximage-related tests were fixed,
likely by [1] \o/.

[1]: https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25460

Signed-off-by: Martin Roukala (né Peres) <martin.roukala@mupuf.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25535>
2023-10-04 11:13:29 +00:00
Georg Lehmann
0e819465b3 aco: print final ir instead if printing asm is unsupported
Not a perfect replacement, but it's better than nothing.

Reviewed-by: Rhys Perry <pendingchaos02@gmail.com>
Reviewed-by: Timur Kristóf <timur.kristof@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25522>
2023-10-04 08:35:48 +00:00
Georg Lehmann
73605d46dd aco: assume newer generation will use GFX11 wait_imm packing
Reviewed-by: Rhys Perry <pendingchaos02@gmail.com>
Reviewed-by: Timur Kristóf <timur.kristof@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25522>
2023-10-04 08:35:48 +00:00
Georg Lehmann
73e85c6691 aco: assume new generations are unsupported by clrx
clrx hasn't seen any changes since 2021. I guess the only reson to keep it is
GFX6 support.

Reviewed-by: Rhys Perry <pendingchaos02@gmail.com>
Reviewed-by: Timur Kristóf <timur.kristof@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25522>
2023-10-04 08:35:48 +00:00