Karol Herbst [Sun, 4 Jun 2023 14:35:44 +0000 (16:35 +0200)]
gallium: add simd_sizes to pipe_compute_state_object_info
Signed-off-by: Karol Herbst <git@karolherbst.de>
Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22893>
Karol Herbst [Thu, 11 May 2023 11:27:38 +0000 (13:27 +0200)]
llvmpipe: report the proper subgroup size
Signed-off-by: Karol Herbst <git@karolherbst.de>
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22893>
Karol Herbst [Wed, 10 May 2023 12:03:06 +0000 (14:03 +0200)]
clc: rework optional subgroup feature
OpenCL 3.0 core requires __opencl_c_subgroups to be set, the OpenCL
cl_khr_subgroups extenions can only be enabled if and only if the driver
guarentees independent forward progress between subgroups.
See CL_DEVICE_SUB_GROUP_INDEPENDENT_FORWARD_PROGRESS for more information.
Signed-off-by: Karol Herbst <git@karolherbst.de>
Reviewed-by: Nora Allen <blackcatgames@protonmail.com>
Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22893>
Karol Herbst [Sat, 6 May 2023 18:58:22 +0000 (20:58 +0200)]
vtn: more CL subgroups
v2: handle ExecutionModes
Signed-off-by: Karol Herbst <git@karolherbst.de>
Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Reviewed-by: Nora Allen <blackcatgames@protonmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22893>
Karol Herbst [Sat, 6 May 2023 19:03:53 +0000 (21:03 +0200)]
docs: add missing get_compute_state_info documentation
Signed-off-by: Karol Herbst <git@karolherbst.de>
Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22893>
Alyssa Rosenzweig [Thu, 6 Jul 2023 13:00:35 +0000 (09:00 -0400)]
v3dv: Use vk_index_type_to_bytes
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Reviewed-by: Faith Ekstrand <faith.ekstrand@collabora.com>
Reviewed-by: Alejandro Piñeiro <apinheiro@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24017>
Alyssa Rosenzweig [Thu, 6 Jul 2023 12:59:59 +0000 (08:59 -0400)]
lavapipe: Use vk_index_type_to_bytes
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Reviewed-by: Faith Ekstrand <faith.ekstrand@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24017>
Alyssa Rosenzweig [Thu, 6 Jul 2023 12:58:54 +0000 (08:58 -0400)]
vulkan: Add vk_index_type_to_bytes helper
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Reviewed-by: Faith Ekstrand <faith.ekstrand@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24017>
Yonggang Luo [Thu, 29 Jun 2023 20:25:26 +0000 (04:25 +0800)]
etnaviv: Convert to use nir_foreach_function_impl
Signed-off-by: Yonggang Luo <luoyonggang@gmail.com>
Reviewed-by: Christian Gmeiner <cgmeiner@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24037>
Friedrich Vock [Tue, 4 Jul 2023 10:20:01 +0000 (12:20 +0200)]
meson: Prefix Vulkan "Ray Tracing" summary with "Intel"
This only applies to Intel's ray tracing. With RADV also having
ray tracing support that is always compiled in, seeing
"Ray Tracing: NO" is a bit misleading.
Reviewed-by: Joshua Ashton <joshua@froggi.es>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24008>
Lucas Stach [Mon, 12 Jun 2023 10:35:07 +0000 (12:35 +0200)]
etnaviv: blt: fix multisampled blits
The BLT blit currently assumes that all blits with src samples > 1
are downsampling blits. This isn't correct, as we can also blit
between two multisampled resources with src and dst samples > 1.
Signed-off-by: Lucas Stach <l.stach@pengutronix.de>
Reviewed-by: Christian Gmeiner <cgmeiner@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23595>
Lucas Stach [Mon, 12 Jun 2023 10:04:59 +0000 (12:04 +0200)]
etnaviv: rs: fix multisampled blits
When blitting between two multisampled resources, the blit region needs
to be scaled by the number of samples. Currently this is only done
correctly for downsampling blits where src samples > dst samples. Fix
it to also work as expected when src samples == dst samples.
Signed-off-by: Lucas Stach <l.stach@pengutronix.de>
Reviewed-by: Christian Gmeiner <cgmeiner@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23595>
Lucas Stach [Mon, 12 Jun 2023 10:38:30 +0000 (12:38 +0200)]
etnaviv: move resource level dimension members to make comments line up
Width and height of the resource level are stored in pixels, while
the padded dimensions are stored in samples. Move the members to
make them line up with the comments.
Signed-off-by: Lucas Stach <l.stach@pengutronix.de>
Reviewed-by: Christian Gmeiner <cgmeiner@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23595>
Gert Wollny [Thu, 6 Jul 2023 19:29:53 +0000 (21:29 +0200)]
r600/sfn: Shorten array elements live range
If an array is accessed indirectly, add a buffer live range of
one cycle before (for write) or after (for read), instead of pinning
the array from the start.
Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24036>
Gert Wollny [Thu, 6 Jul 2023 18:15:40 +0000 (20:15 +0200)]
r600/sfn: Be more conservative with AR re-use
If we try to re-use the AR register after a new CF was started
we will get into trouble, because it is no longer loaded, so
clear the AR register handle when we hit a non-ALU instruction
while scanning the shader to split AR loads. With that
dependencies will be set accodingly.
Fixes:
d21054b4bc92a1a9240841dca719f81a142fd5cc
r600/sfn: Add pass to split address and index register loads
Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24036>
Gert Wollny [Sun, 25 Jun 2023 10:13:23 +0000 (12:13 +0200)]
r600: Pre-EG - Set wrap texture modes to repeat when seemless cube is used
On Pre-Evergreen hardware we have a flag
"Force Clamp X,Y policy to wrap for CubeMaps"
but it doesn't seem to affect how border clamping is done. With
bf3027 this is set to PIPE_TEX_WRAP_CLAMP_TO_EDGE for cube maps,
and results in the regression reported in #9028.
Forcing repeat mode fixes the issue.
Fixes:
bf3027c3916ad5be172c22851e7172671709a9bc
mesa/st: Normalize wrap modes for seamless cubes
Related: https://gitlab.freedesktop.org/mesa/mesa/-/issues/9028
Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23848>
Yiwei Zhang [Thu, 6 Jul 2023 23:14:21 +0000 (16:14 -0700)]
venus: recheck valid bit after acquiring lock to init ahb mem type bits
Fixes:
432ffaf10a5 ("venus: refactor ahb buffer mem type bits cache to be lazy")
Signed-off-by: Yiwei Zhang <zzyiwei@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24033>
Emma Anholt [Thu, 1 Dec 2022 21:41:50 +0000 (13:41 -0800)]
ci/radv: Add testing of the GLES CTS using ANGLE on stoney.
We're interested in a Vulkan-only stack in Chrome OS, where Android's GLES
would be provided by ANGLE-over-Venus-over-RADV. Let's get some testing
covering ANGLE-on-RADV first.
This is structured as a single partial job pre-merge to catch most
regressions, and 2 longer manual jobs to do full coverage for when you
need to update the xfails list.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20163>
Emma Anholt [Thu, 1 Dec 2022 23:53:55 +0000 (15:53 -0800)]
ci/radv+radeonsi: Fix the combo rules to include core vulkan changes.
We were retesting on core GL changes, and radeonsi and radv driver
changes, but not core VK changes. Affects amd-raven-skqp.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20163>
Emma Anholt [Thu, 1 Dec 2022 19:54:03 +0000 (11:54 -0800)]
ci/anv: Add testing of the GLES CTS using ANGLE on TGL.
We're interested in a Vulkan-only stack in Chrome OS, where Android's GLES
would be provided by ANGLE-over-Venus-over-ANV. Let's get some testing
covering ANGLE-on-ANV first.
This is structured as a single partial job pre-merge to catch most
regressions, and a longer manual job to do full coverage for when you need
to update the xfails list.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20163>
David Heidelberg [Thu, 29 Sep 2022 17:40:53 +0000 (19:40 +0200)]
ci/x86: Build ANGLE for testing layering on VK drivers.
Signed-off-by: David Heidelberg <david.heidelberg@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20163>
Emma Anholt [Mon, 5 Dec 2022 17:27:51 +0000 (09:27 -0800)]
ci/amd: Report flakes to #amd-ci on OFTC.
Until we get better tooling for crawling job logs, this is our best way of
tracking and updating flaky tests.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20163>
Emma Anholt [Tue, 27 Jun 2023 19:46:00 +0000 (12:46 -0700)]
ci: Clean up .intel-rules definition.
The "!reference" syntax means we can just pull the two driver's rulesets
together.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20163>
Emma Anholt [Tue, 27 Jun 2023 19:41:21 +0000 (12:41 -0700)]
ci/anv: Make anv-manual-rules actually manual on anv-only changes.
I guess that's why I've seen some zink-anv-tgl-full runs (the only
consumer) happen on people's MRs that I hadn't kicked off myself.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20163>
Yiwei Zhang [Thu, 6 Jul 2023 22:13:25 +0000 (15:13 -0700)]
venus: refactor query batch handling
Signed-off-by: Yiwei Zhang <zzyiwei@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24009>
Yiwei Zhang [Thu, 6 Jul 2023 20:18:00 +0000 (13:18 -0700)]
venus: cache query batches at cmd pool
Signed-off-by: Yiwei Zhang <zzyiwei@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24009>
Yiwei Zhang [Thu, 6 Jul 2023 19:34:39 +0000 (12:34 -0700)]
venus: refactor vn_cmd_add_query_feedback and miscs
There's no functional changes:
1. remove unused function arg and use snake case
2. do early return for direct recording (avoid dup feedback checks)
3. use vk_alloc instead of vk_zalloc if applicable
4. move local struct closer to usage, and use assignment
5. convert secondary cmd in_render_pass condition check to assert
6. avoid redundant list_del upon freeing up
Signed-off-by: Yiwei Zhang <zzyiwei@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24009>
Yiwei Zhang [Tue, 4 Jul 2023 22:36:31 +0000 (15:36 -0700)]
venus: cmd to reuse alloc copy from cmd pool
Directly use the alloc callback upon pool reset/destroy since the compat
is blessed by the spec.
Signed-off-by: Yiwei Zhang <zzyiwei@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24009>
Yiwei Zhang [Tue, 4 Jul 2023 22:21:23 +0000 (15:21 -0700)]
venus: track pool in cmd and track device in pool
Signed-off-by: Yiwei Zhang <zzyiwei@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24009>
Yiwei Zhang [Tue, 4 Jul 2023 23:17:47 +0000 (16:17 -0700)]
venus: fix leaks from tracked present src images
The cmd can be reset and freed during render pass recording as well.
Cc: mesa-stable
Signed-off-by: Yiwei Zhang <zzyiwei@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24009>
Yiwei Zhang [Tue, 4 Jul 2023 21:44:49 +0000 (14:44 -0700)]
venus: fix a cmd tmp storage leak
When the pool is destroyed, cmds are implicitly freed. Cmd level allocs
have to be cleaned up to avoid leak.
Cc: mesa-stable
Signed-off-by: Yiwei Zhang <zzyiwei@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24009>
Yiwei Zhang [Tue, 27 Jun 2023 00:27:44 +0000 (17:27 -0700)]
venus: extend VkBuffer cache to cover concurrent sharing
vkd3d-proton always use concurrent sharing when there exists multiple
queue families, and all queue families are used. This change adds the
exact simple case to the existing cache.
Signed-off-by: Yiwei Zhang <zzyiwei@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23916>
Yiwei Zhang [Wed, 28 Jun 2023 23:00:11 +0000 (16:00 -0700)]
venus: refactor buffer cache related bits
Simplify returns and reorder inits.
Signed-off-by: Yiwei Zhang <zzyiwei@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23916>
Yiwei Zhang [Wed, 28 Jun 2023 22:55:09 +0000 (15:55 -0700)]
venus: refactor ahb buffer mem type bits cache to be lazy
Signed-off-by: Yiwei Zhang <zzyiwei@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23916>
Christian Gmeiner [Thu, 6 Jul 2023 08:49:37 +0000 (10:49 +0200)]
ci/etnaviv: update ci expectation
Signed-off-by: Christian Gmeiner <cgmeiner@igalia.com>
Acked-by: Emma Anholt <emma@anholt.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24029>
Lionel Landwerlin [Tue, 4 Jul 2023 07:02:41 +0000 (10:02 +0300)]
docs/features: add hasvk entries
Automatically generated using
https://github.com/djdeath/mesa-jhbuild/blob/master/update_features.py
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Acked-by: Emma Anholt <emma@anholt.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23986>
Lionel Landwerlin [Tue, 4 Jul 2023 06:58:40 +0000 (09:58 +0300)]
docs/features: add more missing extensions
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Acked-by: Emma Anholt <emma@anholt.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23986>
Sil Vilerino [Thu, 6 Jul 2023 15:48:48 +0000 (11:48 -0400)]
frontend/va: Remove fence_server_sync for surface in vlVaHandleVAProcPipelineParameterBufferType
Fixes:
fb1783616e3 ("frontend/va: Add video processing async fence support")
Reviewed-by: Ruijing Dong <ruijing.dong@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24023>
Sil Vilerino [Thu, 6 Jul 2023 14:39:15 +0000 (10:39 -0400)]
frontend/va: Fix vaSyncSurface and vaQuerySurface status for drivers not implementing get_processor_fence
Reviewed-by: Ruijing Dong <ruijing.dong@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24023>
Eric Engestrom [Thu, 6 Jul 2023 17:19:58 +0000 (18:19 +0100)]
docs/codingstyle: fix clang-format command
I should've copy/pasted it back into my terminal to double-check it.
The `-o` is incorrect (it splits each char that matches into its own
line) and there's a missing `^` to remove lines that start with a hash
even if they contain anything else.
Signed-off-by: Eric Engestrom <eric@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24028>
Eric Engestrom [Thu, 6 Jul 2023 16:29:00 +0000 (17:29 +0100)]
zink/ci: fix skips & flakes for zink+radv on vangogh & navi10
These are regexes, not globs.
Signed-off-by: Eric Engestrom <eric@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24021>
Eric Engestrom [Thu, 6 Jul 2023 16:56:46 +0000 (17:56 +0100)]
etnaviv/ci: fix skips definition
Skips are regexes, not globs :)
Signed-off-by: Eric Engestrom <eric@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24025>
Eric Engestrom [Thu, 6 Jul 2023 16:47:02 +0000 (17:47 +0100)]
intel/ci: fix skips definitions
Skips are regexes, not globs :)
Signed-off-by: Eric Engestrom <eric@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24024>
Eric Engestrom [Thu, 6 Jul 2023 16:38:55 +0000 (17:38 +0100)]
panfrost/ci: drop invalid skips that are already marked as known flakes
Skips are regexes, which means the `*` would've needed to be escaped. As
is, they can't match any existing test.
Since these lines are also all in `-fails.txt` as `Crash`es, let's just
remove them from the skips.
Signed-off-by: Eric Engestrom <eric@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24022>
Mike Blumenkrantz [Thu, 6 Jul 2023 16:23:13 +0000 (12:23 -0400)]
zink: fix anv ci flakes (for real this time)
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24020>
Mike Blumenkrantz [Mon, 19 Jun 2023 15:47:22 +0000 (11:47 -0400)]
vk/wsi: add error logging for syncfile import/export failures
these are otherwise pretty obscure
Acked-by: Daniel Stone <daniels@collabora.com>
Reviewed-by: Joshua Ashton <joshua@froggi.es>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23835>
Mike Blumenkrantz [Thu, 15 Jun 2023 17:26:23 +0000 (13:26 -0400)]
vk/wsi: unify dmabuf exporting
Acked-by: Daniel Stone <daniels@collabora.com>
Reviewed-by: Joshua Ashton <joshua@froggi.es>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23835>
Mike Blumenkrantz [Thu, 15 Jun 2023 14:36:19 +0000 (10:36 -0400)]
vk/wsi/x11: stop roundtripping on presentation
there's no requirement to return SUBOPTIMAL based on processed events
at present time, nor is SURFACE_LOST required here vs as a result of
acquire, so allow both of these conditions to be reported there instead
improves presentation perf by ~60%
Acked-by: Daniel Stone <daniels@collabora.com>
Reviewed-by: Adam Jackson <ajax@redhat.com>
Reviewed-by: Joshua Ashton <joshua@froggi.es>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23835>
Mike Blumenkrantz [Tue, 13 Jun 2023 20:55:45 +0000 (16:55 -0400)]
vk/wsi/x11: handle geometry updating more asynchronously
this uses geometry updates from events when possible in order to avoid
roundtripping during vkGetPhysicalDeviceSurfaceCapabilitiesKHR, which
significantly improves wsi performance in severely bottlenecked scenarios
now that roundtripping is completely eliminated from acquires in most scenarios,
this improves acquire perf by 10%+
Acked-by: Daniel Stone <daniels@collabora.com>
Reviewed-by: Adam Jackson <ajax@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23835>
Mike Blumenkrantz [Tue, 13 Jun 2023 20:18:44 +0000 (16:18 -0400)]
vk/wsi/x11: move surface alpha check from get_caps to creation
this makes get_caps a bit less heavy
Acked-by: Daniel Stone <daniels@collabora.com>
Reviewed-by: Adam Jackson <ajax@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23835>
xurui [Thu, 6 Jul 2023 03:04:10 +0000 (11:04 +0800)]
zink: Free the cdt when an error occurs
Signed-off-by: xurui <xurui@kylinos.cn>
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24012>
Lionel Landwerlin [Tue, 4 Jul 2023 12:06:50 +0000 (15:06 +0300)]
nir/opt_shrink_vectors: enable sparse intrinsics shrinking
Image sparse loads can be stripped from their sparse component if
unused and turned into non sparse variants.
Texture sparse accesses can also be turned off if unused.
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Reviewed-by: Rhys Perry <pendingchaos02@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23995>
Lionel Landwerlin [Sat, 1 Jul 2023 20:36:19 +0000 (23:36 +0300)]
intel/fs: disable coarse pixel shader with interpolater messages at sample
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Cc: mesa-stable
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/9292
Reviewed-by: Emma Anholt <emma@anholt.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23962>
Antonio Gomes [Wed, 5 Jul 2023 01:08:01 +0000 (22:08 -0300)]
rusticl: Drop Program::kernel_count
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23999>
Antonio Gomes [Wed, 5 Jul 2023 00:33:41 +0000 (21:33 -0300)]
rusticl: Drop some Kernel data and have a NirKernelBuild ref instead
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23999>
Erik Faye-Lund [Mon, 26 Jun 2023 07:43:07 +0000 (09:43 +0200)]
tgsi: uint -> unsigned
Reviewed-by: Yonggang Luo <luoyonggang@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24002>
Erik Faye-Lund [Mon, 26 Jun 2023 08:25:50 +0000 (10:25 +0200)]
tgsi: uint -> uint32_t
Reviewed-by: Yonggang Luo <luoyonggang@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24002>
Erik Faye-Lund [Mon, 26 Jun 2023 09:57:39 +0000 (11:57 +0200)]
tgsi: use enum for interpolate-mode
Reviewed-by: Yonggang Luo <luoyonggang@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24002>
Erik Faye-Lund [Mon, 26 Jun 2023 09:30:57 +0000 (11:30 +0200)]
tgsi: use enum for shader-type
Reviewed-by: Yonggang Luo <luoyonggang@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24002>
Erik Faye-Lund [Mon, 26 Jun 2023 09:51:26 +0000 (11:51 +0200)]
tgsi: use enum for property-name
Reviewed-by: Yonggang Luo <luoyonggang@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24002>
Erik Faye-Lund [Mon, 26 Jun 2023 09:21:08 +0000 (11:21 +0200)]
tgsi: use enum for tgsi-file type
Reviewed-by: Yonggang Luo <luoyonggang@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24002>
Erik Faye-Lund [Mon, 26 Jun 2023 08:31:40 +0000 (10:31 +0200)]
tgsi: use stdint.h types
Reviewed-by: Yonggang Luo <luoyonggang@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24002>
Erik Faye-Lund [Fri, 30 Jun 2023 11:24:36 +0000 (13:24 +0200)]
tgsi: use enum instead of defines
Reviewed-by: Yonggang Luo <luoyonggang@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24002>
Erik Faye-Lund [Mon, 26 Jun 2023 07:43:07 +0000 (09:43 +0200)]
aux/util: uint -> unsigned
Reviewed-by: Yonggang Luo <luoyonggang@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24002>
Erik Faye-Lund [Mon, 26 Jun 2023 08:31:37 +0000 (10:31 +0200)]
aux/util: use stdint.h types
Reviewed-by: Yonggang Luo <luoyonggang@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24002>
Erik Faye-Lund [Fri, 23 Jun 2023 14:46:48 +0000 (16:46 +0200)]
aux/util: use unsigned instead of uint
Reviewed-by: Yonggang Luo <luoyonggang@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24002>
Erik Faye-Lund [Fri, 23 Jun 2023 14:50:49 +0000 (16:50 +0200)]
aux/util: use enum for primitive-type
Reviewed-by: Yonggang Luo <luoyonggang@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24002>
Erik Faye-Lund [Fri, 23 Jun 2023 14:48:29 +0000 (16:48 +0200)]
aux/util: match type of pipe_draw_start_count_bias::start/count
Reviewed-by: Yonggang Luo <luoyonggang@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24002>
Erik Faye-Lund [Fri, 23 Jun 2023 14:46:30 +0000 (16:46 +0200)]
aux/util: use enum for render-condition
Reviewed-by: Yonggang Luo <luoyonggang@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24002>
Erik Faye-Lund [Fri, 23 Jun 2023 14:43:42 +0000 (16:43 +0200)]
aux/pp: use unsigned instead of uint
Reviewed-by: Yonggang Luo <luoyonggang@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24002>
Erik Faye-Lund [Fri, 23 Jun 2023 14:21:37 +0000 (16:21 +0200)]
gallivm: use unsigned instead of uint
Reviewed-by: Yonggang Luo <luoyonggang@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24002>
Erik Faye-Lund [Fri, 23 Jun 2023 14:19:10 +0000 (16:19 +0200)]
pipebuffer: use unsigned instead of uint
Reviewed-by: Yonggang Luo <luoyonggang@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24002>
Erik Faye-Lund [Fri, 23 Jun 2023 14:17:11 +0000 (16:17 +0200)]
aux/trace: use stdint.h types
...as well as stdbool.h ;)
Reviewed-by: Yonggang Luo <luoyonggang@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24002>
Erik Faye-Lund [Mon, 26 Jun 2023 13:38:30 +0000 (15:38 +0200)]
math: drop MAT_[ST][XYZ] defines
These were used a single time each, and that argually made the code a
bit more confusing to read. Let's just drop these, and use the correct
indexes directly.
Reviewed-by: Yonggang Luo <luoyonggang@gmail.com>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24003>
Erik Faye-Lund [Mon, 26 Jun 2023 13:24:38 +0000 (15:24 +0200)]
math: remove unused defines
Since libmesa_classic got removed, we no longer have the assembly
sources that used these defines, so let's get rid of them.
Reviewed-by: Yonggang Luo <luoyonggang@gmail.com>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24003>
Erik Faye-Lund [Mon, 26 Jun 2023 13:52:55 +0000 (15:52 +0200)]
math: fix indentation in m_matrix.[ch]
Reviewed-by: Yonggang Luo <luoyonggang@gmail.com>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24003>
Zhang Ning [Fri, 9 Jun 2023 01:52:18 +0000 (09:52 +0800)]
lima: use u_pipe_screen_lookup_or_create in the renderonly path too
close #8739
Signed-off-by: Zhang Ning <zhangn1985@outlook.com>
Reviewed-by: Erico Nunes <nunes.erico@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23538>
QwertyChouskie [Thu, 6 Jul 2023 04:32:31 +0000 (04:32 +0000)]
docs/features.txt(fix): mark VK_EXT_pipeline_robustness as supported on radv
This was implemented in https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23912
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24013>
Marek Olšák [Thu, 22 Jun 2023 11:15:02 +0000 (07:15 -0400)]
vbo: correctly restore _VaryingInputs for display list fast path
Fixes:
3a294ff0 - mesa: move the _mesa_set_varying_vp_inputs call to where the state changes
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/9007
Acked-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23796>
Timothy Arceri [Wed, 5 Jul 2023 02:48:34 +0000 (12:48 +1000)]
st/glsl: merge st_glsl_to_ir.cpp with st_glsl_to_nir.cpp
There is no longer any other IR so lets finally merge these together
to make the code easier to follow.
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22846>
Timothy Arceri [Wed, 5 Jul 2023 02:35:51 +0000 (12:35 +1000)]
st/glsl: merge st_link_glsl_to_nir() into st_link_nir()
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22846>
Timothy Arceri [Wed, 5 Jul 2023 02:31:30 +0000 (12:31 +1000)]
st/glsl: merge link_shader() into st_link_nir()
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22846>
Timothy Arceri [Thu, 22 Jun 2023 04:33:53 +0000 (14:33 +1000)]
glsl: remove glsl ir optimisation loop from linker
We no longer need to call this here and can depend on the glsl_to_nir
pass to call it and clean up anything it cannot handle. Everything
else can now depend on the nir optimisation passes.
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22846>
Timothy Arceri [Thu, 22 Jun 2023 04:26:12 +0000 (14:26 +1000)]
glsl: move store_fragdepth_layout() to nir linker
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22846>
Timothy Arceri [Wed, 21 Jun 2023 03:26:10 +0000 (13:26 +1000)]
glsl: drop link_invalidate_variable_locations()
All this code does is reinitialise the values to what the original
ir_variable() call already set them too. This code is very old dating
to the initial glsl compiler support, it has probably been unrequired
for a long time now.
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22846>
Timothy Arceri [Wed, 21 Jun 2023 03:09:51 +0000 (13:09 +1000)]
glsl: set last_vert_prog in the nir linker
Another step to removing the GLSL IR linker
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22846>
Timothy Arceri [Wed, 21 Jun 2023 03:02:46 +0000 (13:02 +1000)]
glsl: inline link_varyings()
Most code has already been moved to the NIR linker.
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22846>
Timothy Arceri [Wed, 5 Apr 2023 04:05:59 +0000 (14:05 +1000)]
glsl: remove the always_active_io flag from GLSL IR
No longer used.
Reviewed-by: Emma Anholt <emma@anholt.net>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22846>
Timothy Arceri [Wed, 5 Apr 2023 04:01:34 +0000 (14:01 +1000)]
glsl: move disable_varying_optimizations_for_sso() to NIR linker
Reviewed-by: Emma Anholt <emma@anholt.net>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22846>
Timothy Arceri [Wed, 5 Apr 2023 02:09:19 +0000 (12:09 +1000)]
nir/glsl: add nir_var_declared_implicitly enum
This will be used in the following patch.
Reviewed-by: Emma Anholt <emma@anholt.net>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22846>
Timothy Arceri [Wed, 5 Apr 2023 02:30:24 +0000 (12:30 +1000)]
glsl: drop the dce of global vars from GLSL IR linker
All this does is compilcate things such as forcing us to set
var->data.always_active_io in the glsl linker. Just let NIR clean
these up for us instead.
A Zink test hits a new assert but this is not a regression it just
uncovers an existing mesa bug.
Reviewed-by: Emma Anholt <emma@anholt.net>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22846>
Timothy Arceri [Thu, 4 May 2023 02:13:44 +0000 (12:13 +1000)]
glsl: remove unused system vars
System vars are added to the resource list as inputs so remove any
dead ones before building the list.
Reviewed-by: Emma Anholt <emma@anholt.net>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22846>
Timothy Arceri [Thu, 4 May 2023 01:24:07 +0000 (11:24 +1000)]
glsl: remove unused buffer objects with packed layout
These are currently removed by the GLSL IR DCE pass but we will
drop that in a following patch. Also there are scenarios where these
might not be detected as unused until the NIR optimisations have
been run so we really need to do it here too anyway.
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Reviewed-by: Emma Anholt <emma@anholt.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22846>
Timothy Arceri [Thu, 6 Apr 2023 04:18:44 +0000 (14:18 +1000)]
glsl: call assign_attribute_or_color_locations() in NIR linker
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22846>
Timothy Arceri [Thu, 6 Apr 2023 04:17:12 +0000 (14:17 +1000)]
glsl: port assign location code for VS inputs or FS outputs
Here we port the code to the NIR linker.
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22846>
Timothy Arceri [Thu, 22 Jun 2023 00:33:41 +0000 (10:33 +1000)]
glsl: move lowering linker code out of st
Move all these lowering calls into the linker where they belong. This
makes future changes to the linker more flexible and is needed to
allow some following patches as we need to call things in a specific
order.
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22846>
Timothy Arceri [Thu, 22 Jun 2023 00:24:05 +0000 (10:24 +1000)]
glsl: move some compiler code out of st
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22846>
Timothy Arceri [Thu, 22 Jun 2023 00:18:53 +0000 (10:18 +1000)]
mesa: add some new constants
These will be used by the compiler in a following patch.
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22846>
Timothy Arceri [Thu, 6 Apr 2023 01:58:16 +0000 (11:58 +1000)]
glsl: add some more c wrappers for string_to_uint_map
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22846>
Iago Toral Quiroga [Wed, 5 Jul 2023 08:38:07 +0000 (10:38 +0200)]
broadcom/compiler: don't leak v3d_compile when finding a new best strategy
If we had selected a best strategy and find an even better one we need to
make sure we free the previous one.
Reviewed-by: Alejandro Piñeiro <apinheiro@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24001>