platform/upstream/mesa.git
2 years agofreedreno: Skip built-in shaders for clover
Rob Clark [Sun, 8 Aug 2021 19:14:55 +0000 (12:14 -0700)]
freedreno: Skip built-in shaders for clover

Avoids assert:

  ../src/compiler/glsl_types.cpp:1134: static const glsl_type *glsl_type::get_array_instance(const glsl_type *, unsigned int, unsigned int): Assertion `glsl_type_users > 0' failed.

caused by us trying to compile built-in shaders (ie. clear, gmem<->mem,
etc) before clover has initialized glsl_types.  But we don't need these
shaders for compute-only contexts.

Signed-off-by: Rob Clark <robdclark@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13300>

2 years agoisaspec: inherite parent's bitset gpu gen requirements
Danylo Piliaiev [Mon, 1 Feb 2021 10:37:49 +0000 (12:37 +0200)]
isaspec: inherite parent's bitset gpu gen requirements

Signed-off-by: Danylo Piliaiev <dpiliaiev@igalia.com>
Signed-off-by: Rob Clark <robdclark@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13300>

2 years agoisaspec: Fix gpu_id for default_options
Rob Clark [Thu, 21 Oct 2021 18:58:08 +0000 (11:58 -0700)]
isaspec: Fix gpu_id for default_options

We forgot to set this.  It starts to matter in the next patch, otherwise
pre-pass to detect branch targets (needed for backwards jumps/branches)
will not work.

Signed-off-by: Rob Clark <robdclark@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13300>

2 years agofreedreno/ir3: use stg.a/ldg.a only if offset is reg or doesn't fit
Danylo Piliaiev [Fri, 8 Oct 2021 15:36:43 +0000 (18:36 +0300)]
freedreno/ir3: use stg.a/ldg.a only if offset is reg or doesn't fit

Signed-off-by: Danylo Piliaiev <dpiliaiev@igalia.com>
Signed-off-by: Rob Clark <robdclark@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13300>

2 years agofreedreno/ir3: Add load/store_global lowering
Rob Clark [Sun, 22 Aug 2021 16:53:56 +0000 (09:53 -0700)]
freedreno/ir3: Add load/store_global lowering

Signed-off-by: Rob Clark <robdclark@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13300>

2 years agofreedreno/ir3: set proper dst size for {store,load}_{global,shared}_ir3
Danylo Piliaiev [Fri, 8 Oct 2021 11:40:52 +0000 (14:40 +0300)]
freedreno/ir3: set proper dst size for {store,load}_{global,shared}_ir3

We want to pass 64b variables.

Signed-off-by: Danylo Piliaiev <dpiliaiev@igalia.com>
Signed-off-by: Rob Clark <robdclark@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13300>

2 years agofreedreno/ir3: disallow immediate addr/offset for ldg/ldg.a
Danylo Piliaiev [Fri, 8 Oct 2021 15:30:11 +0000 (18:30 +0300)]
freedreno/ir3: disallow immediate addr/offset for ldg/ldg.a

Signed-off-by: Danylo Piliaiev <dpiliaiev@igalia.com>
Signed-off-by: Rob Clark <robdclark@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13300>

2 years agofreedreno/ir3: Lower 64b phis
Rob Clark [Sun, 3 Oct 2021 16:36:07 +0000 (09:36 -0700)]
freedreno/ir3: Lower 64b phis

Signed-off-by: Rob Clark <robdclark@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13300>

2 years agoir3/freedreno: add 64b undef lowering
Danylo Piliaiev [Mon, 11 Oct 2021 10:32:29 +0000 (13:32 +0300)]
ir3/freedreno: add 64b undef lowering

Signed-off-by: Danylo Piliaiev <dpiliaiev@igalia.com>
Signed-off-by: Rob Clark <robdclark@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13300>

2 years agofreedreno/ir3: 64b intrinsic lowering
Rob Clark [Sun, 22 Aug 2021 16:21:03 +0000 (09:21 -0700)]
freedreno/ir3: 64b intrinsic lowering

Both for OpenCL and VK_KHR_buffer_device_address

Signed-off-by: Rob Clark <robdclark@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13300>

2 years agonir/lower_amul: do not lower 64bit amul to imul24
Danylo Piliaiev [Tue, 26 Jan 2021 10:11:44 +0000 (12:11 +0200)]
nir/lower_amul: do not lower 64bit amul to imul24

Signed-off-by: Danylo Piliaiev <dpiliaiev@igalia.com>
Signed-off-by: Rob Clark <robdclark@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13300>

2 years agointel/compiler: Set correct cache policy for A64 byte scattered read
Sagar Ghuge [Wed, 20 Oct 2021 17:03:07 +0000 (10:03 -0700)]
intel/compiler: Set correct cache policy for A64 byte scattered read

This doesn't impact any performance since the previous typo value
matches the current cache control value.

Signed-off-by: Sagar Ghuge <sagar.ghuge@intel.com>
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13458>

2 years agoamd/addrlib: cosmetic addrlib update
Marek Olšák [Wed, 22 Sep 2021 07:28:33 +0000 (03:28 -0400)]
amd/addrlib: cosmetic addrlib update

Acked-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13459>

2 years agoamd/addrlib: change how the license is formatted to match internal tree
Marek Olšák [Wed, 22 Sep 2021 07:03:47 +0000 (03:03 -0400)]
amd/addrlib: change how the license is formatted to match internal tree

It's the same MIT license.

Acked-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13459>

2 years agofrontends/va/av1: handle multiple slice params
Sajeesh Sidharthan [Wed, 20 Oct 2021 16:00:38 +0000 (21:30 +0530)]
frontends/va/av1: handle multiple slice params

Multiple slice params in a single vaRenderPicture function call
is not handled. This patch will fix overwriting slice params
when multiple slice params received in one buffer.

Change-Id: I880df5bc35dfbd64382a178074482548882ee4af
Signed-off-by: Sajeesh Sidharthan <sajeesh.sidharthan@amd.com>
Reviewed-by: Leo Liu <leo.liu@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13463>

2 years agoaco: fix loading 64-bit inputs with fragment shaders
Samuel Pitoiset [Tue, 19 Oct 2021 07:16:20 +0000 (09:16 +0200)]
aco: fix loading 64-bit inputs with fragment shaders

Fixes a bunch of 64-bit IO tests with piglit and Zink.

Cc: 21.3 mesa-stable
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Rhys Perry <pendingchaos02@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13454>

2 years agobroadcom/compiler: disallow tsy barrier in thrsw delay slots
Iago Toral Quiroga [Thu, 21 Oct 2021 10:06:16 +0000 (12:06 +0200)]
broadcom/compiler: disallow tsy barrier in thrsw delay slots

A TSY barrier becomes effective at the point of the next thread switch,
so if we have one coming after a previous thread switch we need to
be careful not to emit it in its delay slots, or we would be effectively
moving the barrier earlier than intended.

Fixes simulator assert crash in:
dEQP-VK.graphicsfuzz.two-for-loops-with-barrier-function

Reviewed-by: Alejandro Piñeiro <apinheiro@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13468>

2 years agoturnip: Make copy_format() and tu6_plane_format() return pipe_format
Emma Anholt [Tue, 5 Oct 2021 22:24:31 +0000 (15:24 -0700)]
turnip: Make copy_format() and tu6_plane_format() return pipe_format

[ Connor: Keep the argument to copy_format() a VkFormat, fold in
  plane_format() conversion. ]

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13379>

2 years agoutil: Move freedreno's snorm-to-unorm to util/, adding remaining cases.
Emma Anholt [Wed, 13 Oct 2021 23:39:05 +0000 (16:39 -0700)]
util: Move freedreno's snorm-to-unorm to util/, adding remaining cases.

I want it in turnip too.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13379>

2 years agoturnip: Switch format_to_ifmt() to take a pipe_format.
Emma Anholt [Wed, 6 Oct 2021 04:06:13 +0000 (21:06 -0700)]
turnip: Switch format_to_ifmt() to take a pipe_format.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13379>

2 years agoturnip: Switch tu6_format_color() to a pipe_format.
Emma Anholt [Wed, 6 Oct 2021 03:55:21 +0000 (20:55 -0700)]
turnip: Switch tu6_format_color() to a pipe_format.

To handle Y8 specially, we want a PIPE_FORMAT instead of VK_FORMAT.  There
are some redundant vk-to-pipe conversions, but they're going to go away
shortly.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13379>

2 years agoturnip: Switch tu6_format_texture() to a pipe_format.
Emma Anholt [Wed, 6 Oct 2021 03:46:54 +0000 (20:46 -0700)]
turnip: Switch tu6_format_texture() to a pipe_format.

To handle Y8 specially, we want a PIPE_FORMAT instead of VK_FORMAT.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13379>

2 years agotu/clear_blit: Move around copy_format()/tu6_plane_format()
Connor Abbott [Fri, 15 Oct 2021 09:38:43 +0000 (11:38 +0200)]
tu/clear_blit: Move around copy_format()/tu6_plane_format()

We want these functions to take a Vulkan format and return a
pipe_format, but tu6_plane_format() was getting redundantly called on
the result of copy_format() and copy_format() was also getting called
twice with image to image copies. Pull these functions further up the
call chain so that they're only called once.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13379>

2 years agov3dv: enable Vulkan 1.1
Iago Toral Quiroga [Tue, 7 Sep 2021 06:06:27 +0000 (08:06 +0200)]
v3dv: enable Vulkan 1.1

Reviewed-by: Alejandro Piñeiro <apinheiro@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13465>

2 years agoci/piglit-runner: Fix funny indentation of the piglit-runner command.
Emma Anholt [Thu, 14 Oct 2021 21:15:18 +0000 (14:15 -0700)]
ci/piglit-runner: Fix funny indentation of the piglit-runner command.

Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Reviewed-by: Tomeu Vizoso <tomeu.vizoso@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13372>

2 years agoci/deqp-runner: Move more non-suite logic under the non-suite 'if'.
Emma Anholt [Thu, 14 Oct 2021 21:05:20 +0000 (14:05 -0700)]
ci/deqp-runner: Move more non-suite logic under the non-suite 'if'.

Changing these variables won't do anything for you otherwise.

Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>.
Reviewed-by: Tomeu Vizoso <tomeu.vizoso@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13372>

2 years agoci/deqp-runner: Don't start GPU hang detection for making junit results.
Emma Anholt [Thu, 14 Oct 2021 21:02:40 +0000 (14:02 -0700)]
ci/deqp-runner: Don't start GPU hang detection for making junit results.

It's just CPU-side post-processing, not running tests.

Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Reviewed-by: Tomeu Vizoso <tomeu.vizoso@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13372>

2 years agoci/deqp-runner: Drop LD_LIBRARY_PATH=/usr/local for libkms workaround.
Emma Anholt [Thu, 14 Oct 2021 20:58:32 +0000 (13:58 -0700)]
ci/deqp-runner: Drop LD_LIBRARY_PATH=/usr/local for libkms workaround.

deqp hasn't been linking against that in quite some time.

Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Reviewed-by: Tomeu Vizoso <tomeu.vizoso@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13372>

2 years agoci/deqp-runner: Move remaining asan runs to --env LD_PRELOAD=
Emma Anholt [Mon, 11 Oct 2021 23:07:23 +0000 (16:07 -0700)]
ci/deqp-runner: Move remaining asan runs to --env LD_PRELOAD=

This should improve their reliability and speed a little by getting
deqp-runner off of asan.  This removes the last jobs setting
TEST_LD_PRELOAD, so remove passing that variable around from other
scripts.

Acked-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Reviewed-by: Tomeu Vizoso <tomeu.vizoso@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13372>

2 years agoci/deqp-runner: Drop silly CSV env vars.
Emma Anholt [Tue, 12 Oct 2021 17:37:43 +0000 (10:37 -0700)]
ci/deqp-runner: Drop silly CSV env vars.

One was unused, the other was used once.

Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Reviewed-by: Tomeu Vizoso <tomeu.vizoso@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13372>

2 years agoci/deqp-runner: Use new deqp-runner's built-in renderer/version checks.
Emma Anholt [Mon, 11 Oct 2021 23:27:25 +0000 (16:27 -0700)]
ci/deqp-runner: Use new deqp-runner's built-in renderer/version checks.

This is prettier in the log files, less shell code, and for non-suite mode
adds checking that the driver has the right git sha1.  Also, no need for
suites to have a DEQP_VER to say which dEQP we should run for the renderer
check.

The version checks can help us make sure that GL version exposed doesn't
accidentally regress, and the ".*git" checks that we're using a git
version of Mesa rather than something that snuck in through distro
packages.

Acked-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Reviewed-by: Tomeu Vizoso <tomeu.vizoso@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13372>

2 years agoci/deqp-runner: Simplify the --jobs argument setup.
Emma Anholt [Mon, 11 Oct 2021 23:03:47 +0000 (16:03 -0700)]
ci/deqp-runner: Simplify the --jobs argument setup.

We can use the general "how parallel should we go on this runner?" env var
and save a bunch of massaging env var names.  Fixes how PIGLIT_PARALLEL
looked like it was useful but actually wasn't passed through to HW
runners.

Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Reviewed-by: Tomeu Vizoso <tomeu.vizoso@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13372>

2 years agoci/deqp-runner: Drop SUMMARY_LIMIT env var.
Emma Anholt [Mon, 11 Oct 2021 23:02:50 +0000 (16:02 -0700)]
ci/deqp-runner: Drop SUMMARY_LIMIT env var.

Nobody uses it any more, and you could just put it in DEQP_OPTIONS.

Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Reviewed-by: Tomeu Vizoso <tomeu.vizoso@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13372>

2 years agoradv: Fix memory leak on error path.
Vinson Lee [Mon, 18 Oct 2021 02:55:54 +0000 (19:55 -0700)]
radv: Fix memory leak on error path.

Fix defect reported by Coverity Scan.

Resource leak (RESOURCE_LEAK)
leaked_storage: Variable prolog going out of scope leaks the storage it points to

Fixes: 80841196b2d ("radv: implement dynamic vertex input state using vertex shader prologs")
Suggested-by: Rhys Perry <pendingchaos02@gmail.com>
Signed-off-by: Vinson Lee <vlee@freedesktop.org>
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13402>

2 years agoac/rgp: remove useless code related to GFX6-7
Samuel Pitoiset [Wed, 20 Oct 2021 07:09:04 +0000 (09:09 +0200)]
ac/rgp: remove useless code related to GFX6-7

RGP only supports GFX8+. RADV doesn't allow SQTT on < GFX8 and
RadeonSI only allows it on GFX9+.

Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13451>

2 years agoradv: add an assertion to prevent GPU hangs when VRS isn't supported
Samuel Pitoiset [Thu, 14 Oct 2021 14:21:29 +0000 (16:21 +0200)]
radv: add an assertion to prevent GPU hangs when VRS isn't supported

Just hit this case with a buggy CTS test.

Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13361>

2 years agoutil: Move test sources to tests/ directory
Caio Marcelo de Oliveira Filho [Thu, 21 Oct 2021 03:53:24 +0000 (20:53 -0700)]
util: Move test sources to tests/ directory

Acked-by: Matt Turner <mattst88@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13425>

2 years agoutil: Convert sparse array multithread test to use gtest
Caio Marcelo de Oliveira Filho [Tue, 19 Oct 2021 16:51:59 +0000 (09:51 -0700)]
util: Convert sparse array multithread test to use gtest

Reviewed-by: Dylan Baker <dylan@pnwbakers.com>
Acked-by: Matt Turner <mattst88@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13425>

2 years agoutil: Convert roundeven_test to use gtest
Caio Marcelo de Oliveira Filho [Tue, 19 Oct 2021 16:34:45 +0000 (09:34 -0700)]
util: Convert roundeven_test to use gtest

Reviewed-by: Dylan Baker <dylan@pnwbakers.com>
Acked-by: Matt Turner <mattst88@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13425>

2 years agoutil: Convert rb_tree_test to gtest
Caio Marcelo de Oliveira Filho [Tue, 19 Oct 2021 16:19:27 +0000 (09:19 -0700)]
util: Convert rb_tree_test to gtest

Reviewed-by: Dylan Baker <dylan@pnwbakers.com>
Acked-by: Matt Turner <mattst88@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13425>

2 years agoutil: Convert mesa-sha1_test to use gtest
Caio Marcelo de Oliveira Filho [Tue, 19 Oct 2021 16:11:21 +0000 (09:11 -0700)]
util: Convert mesa-sha1_test to use gtest

Reviewed-by: Dylan Baker <dylan@pnwbakers.com>
Acked-by: Matt Turner <mattst88@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13425>

2 years agoutil: Convert blob_test to use gtest
Caio Marcelo de Oliveira Filho [Tue, 19 Oct 2021 15:47:51 +0000 (08:47 -0700)]
util: Convert blob_test to use gtest

Reviewed-by: Dylan Baker <dylan@pnwbakers.com>
Acked-by: Matt Turner <mattst88@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13425>

2 years agoutil: Convert u_atomic_test to use gtest
Caio Marcelo de Oliveira Filho [Mon, 18 Oct 2021 20:09:10 +0000 (13:09 -0700)]
util: Convert u_atomic_test to use gtest

Reviewed-by: Dylan Baker <dylan@pnwbakers.com>
Acked-by: Matt Turner <mattst88@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13425>

2 years agoutil: Move tests in single file directories to tests/
Caio Marcelo de Oliveira Filho [Mon, 18 Oct 2021 21:00:14 +0000 (14:00 -0700)]
util: Move tests in single file directories to tests/

Acked-by: Emma Anholt <emma@anholt.net>
Reviewed-by: Dylan Baker <dylan@pnwbakers.com>
Acked-by: Matt Turner <mattst88@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13425>

2 years agoutil: Consolidate existing gtests in a single binary
Caio Marcelo de Oliveira Filho [Mon, 18 Oct 2021 20:16:29 +0000 (13:16 -0700)]
util: Consolidate existing gtests in a single binary

Acked-by: Emma Anholt <emma@anholt.net>
Reviewed-by: Dylan Baker <dylan@pnwbakers.com>
Acked-by: Matt Turner <mattst88@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13425>

2 years agodocs: update calendar for 21.3.0-rc2
Eric Engestrom [Wed, 20 Oct 2021 19:51:28 +0000 (20:51 +0100)]
docs: update calendar for 21.3.0-rc2

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13460>

2 years agonir: Use a single binary for gtests
Caio Marcelo de Oliveira Filho [Mon, 18 Oct 2021 15:50:15 +0000 (08:50 -0700)]
nir: Use a single binary for gtests

Less artifacts and less time running linker.  The
load_store_vectorizer test is still split since we need to update
gitlab-ci scripts to skip certain tests in certain builds. Added a
TODO with the concrete suggestion.

Reviewed-by: Emma Anholt <emma@anholt.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13414>

2 years agospirv: Use a single binary for gtests
Caio Marcelo de Oliveira Filho [Mon, 18 Oct 2021 15:56:09 +0000 (08:56 -0700)]
spirv: Use a single binary for gtests

Less artifacts and less time running linker.  Also set the guideline
for future tests to not create new binaries for extra gtests.

Reviewed-by: Dylan Baker <dylan@pnwbakers.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13415>

2 years agoanv: Implement VK_EXT_global_priority_query
Jason Ekstrand [Tue, 25 May 2021 15:30:49 +0000 (10:30 -0500)]
anv: Implement VK_EXT_global_priority_query

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/11250>

2 years agoir3: Use stp/ldp base offset for {load,store}_scratch
Connor Abbott [Mon, 11 Oct 2021 14:43:10 +0000 (16:43 +0200)]
ir3: Use stp/ldp base offset for {load,store}_scratch

When we have a series of loads/stores we were creating a constant for
each one, which isn't great. Furthermore, because the nir pass puts the
offset constant at the top of the shader, it resulted in extra register
pressure and spilling when that happened inside a loop. Fix this by
using the base/offset form of stp and ldp.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13307>

2 years agoir3/cse: Support mov instructions
Connor Abbott [Mon, 11 Oct 2021 14:29:48 +0000 (16:29 +0200)]
ir3/cse: Support mov instructions

This doesn't affect shader-db at all, but it will help clean up the
mov's emitted in the next commit when there are multiple ldp/stp.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13307>

2 years agoaco: simplify emit_stream_output()
Rhys Perry [Tue, 19 Oct 2021 13:27:50 +0000 (14:27 +0100)]
aco: simplify emit_stream_output()

Signed-off-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/13438>

2 years agobroadcom/compiler: remove unused macro and function definition
Alejandro Piñeiro [Mon, 18 Oct 2021 12:58:38 +0000 (14:58 +0200)]
broadcom/compiler: remove unused macro and function definition

Reviewed-by: Iago Toral Quiroga <itoral@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13444>

2 years agoaco: disable mul(cndmask(0, 1, b), a) optimization sometimes
Rhys Perry [Tue, 19 Oct 2021 09:43:03 +0000 (10:43 +0100)]
aco: disable mul(cndmask(0, 1, b), a) optimization sometimes

This optimization doesn't work for SDWA or DPP multiplications and we
can't do it if denormal flushing is required because v_cndmask_b32 doesn't
do that and we can't do it if we can't assume operands are finite because
0.0 * inf is NaN, not 0.

Signed-off-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/13434>

2 years agozink: rescue surfaces/bufferviews for cache hits during deletion
Mike Blumenkrantz [Tue, 19 Oct 2021 17:57:39 +0000 (13:57 -0400)]
zink: rescue surfaces/bufferviews for cache hits during deletion

this is a wild race condition, but it's possible for these to get their
final unref, enter their destructor, and then get a cache hit while waiting
on the lock to remove themselves from the cache

in such a scenario, a second, normal check of the refcount will suffice,
as the increment is atomic, and the value will otherwise be zero

fixes crashes in basemark

cc: mesa-stable

Reviewed-by: Hoe Hao Cheng <haochengho12907@gmail.com>
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13442>

2 years agofreedreno/afuc: Disable the disassembler on 32-bit builds.
Emma Anholt [Mon, 18 Oct 2021 18:42:45 +0000 (11:42 -0700)]
freedreno/afuc: Disable the disassembler on 32-bit builds.

There's an mmap(2 << 32), which armhf can't handle.

Fixes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/5514
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13421>

2 years agoRevert "iris: add tile cache flush to iris_copy_region"
Mykhailo Skorokhodov [Tue, 28 Sep 2021 07:33:26 +0000 (10:33 +0300)]
Revert "iris: add tile cache flush to iris_copy_region"

This reverts commit 27534a49cf3872646cb8ef9371707d74a81b1986

Signed-off-by: Mykhailo Skorokhodov <mykhailo.skorokhodov@globallogic.com>
Reviewed-by: Felix DeGrood <felix.j.degrood@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12979>

2 years agoiris: Add missed tile flush flag
Mykhailo Skorokhodov [Wed, 22 Sep 2021 13:03:23 +0000 (16:03 +0300)]
iris: Add missed tile flush flag

Without adding `PIPE_CONTROL_TILE_CACHE_FLUSH` into `iris_emit_pipe_control`
gen12+ (UHD 750 in my case) has issues with textures.

Related-to: https://gitlab.freedesktop.org/mesa/mesa/-/issues/5029
Fixes: c85ea824('iris: reduce redundant tile cache flushes')

Signed-off-by: Mykhailo Skorokhodov <mykhailo.skorokhodov@globallogic.com>
Reviewed-by: Felix DeGrood <felix.j.degrood@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12979>

2 years agozink: stop leaking descriptor pool references
Mike Blumenkrantz [Wed, 13 Oct 2021 13:56:06 +0000 (09:56 -0400)]
zink: stop leaking descriptor pool references

this never really mattered before, but now these need to actually
get freed

Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13430>

2 years agozink: don't clear descriptor pool cache on context destroy
Mike Blumenkrantz [Tue, 19 Oct 2021 14:19:48 +0000 (10:19 -0400)]
zink: don't clear descriptor pool cache on context destroy

the final ref on pools is owned by their program struct(s), and liveshader
cache can trigger shader deletion after a context is destroyed, so
attempting to prune pools here may end up deleting them before the
last ref is actually removed

Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13430>

2 years agozink: always invalidate descriptor sets on pool free
Mike Blumenkrantz [Thu, 14 Oct 2021 14:08:49 +0000 (10:08 -0400)]
zink: always invalidate descriptor sets on pool free

this used to be bad and only for debugging, but now it's good and useful
for saving memory

Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13430>

2 years agozink: unref descriptor pools in hybrid mode when they explode
Mike Blumenkrantz [Wed, 13 Oct 2021 14:15:37 +0000 (10:15 -0400)]
zink: unref descriptor pools in hybrid mode when they explode

these will no longer be used, so unref them so they can be deleted to
free up some vram in the driver

Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13430>

2 years agozink: remove descriptor pools from hash table on deletion
Mike Blumenkrantz [Wed, 13 Oct 2021 14:15:07 +0000 (10:15 -0400)]
zink: remove descriptor pools from hash table on deletion

ensure these aren't just sitting around stale

Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13430>

2 years agozink: fix descriptor interface param for program_deinit
Mike Blumenkrantz [Wed, 13 Oct 2021 14:03:34 +0000 (10:03 -0400)]
zink: fix descriptor interface param for program_deinit

this should match the _init() method and take the context

Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13430>

2 years agozink: use ctx params for program ref/destroy functions
Mike Blumenkrantz [Wed, 13 Oct 2021 14:27:03 +0000 (10:27 -0400)]
zink: use ctx params for program ref/destroy functions

these are context objects, so destroy with the context

Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13430>

2 years agoradeonsi: don't set inline_uniforms for viewperf because it's enabled by default
Marek Olšák [Mon, 18 Oct 2021 12:16:39 +0000 (08:16 -0400)]
radeonsi: don't set inline_uniforms for viewperf because it's enabled by default

Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13400>

2 years agowinsys/amdgpu: set max_ib_size and max_check_space_size later in cs_check_space
Marek Olšák [Mon, 18 Oct 2021 04:40:54 +0000 (00:40 -0400)]
winsys/amdgpu: set max_ib_size and max_check_space_size later in cs_check_space

If there is enough CS space, don't update them. This eliminates some overhead.

Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13400>

2 years agowinsys/amdgpu: remove force_chaining parameter from cs_check_space
Marek Olšák [Mon, 18 Oct 2021 04:27:15 +0000 (00:27 -0400)]
winsys/amdgpu: remove force_chaining parameter from cs_check_space

it's always false

Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13400>

2 years agoradeonsi: properly destroy buffers on failure
Marek Olšák [Sun, 17 Oct 2021 12:20:12 +0000 (08:20 -0400)]
radeonsi: properly destroy buffers on failure

Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13400>

2 years agoradeonsi: don't sync before clear_buffer and copy_buffer if the buffer is idle
Marek Olšák [Sun, 17 Oct 2021 16:23:17 +0000 (12:23 -0400)]
radeonsi: don't sync before clear_buffer and copy_buffer if the buffer is idle

Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13400>

2 years agoradeonsi: don't update bind_history for internal buffer clears and copies
Marek Olšák [Sun, 17 Oct 2021 10:05:24 +0000 (06:05 -0400)]
radeonsi: don't update bind_history for internal buffer clears and copies

Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13400>

2 years agoradeonsi: don't sync PS or CS before (clear|copy)_buffer based on bind history
Marek Olšák [Sat, 16 Oct 2021 17:02:58 +0000 (13:02 -0400)]
radeonsi: don't sync PS or CS before (clear|copy)_buffer based on bind history

Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13400>

2 years agoradeonsi: rebind a buffer only in shader stages where it's been bound
Marek Olšák [Sat, 16 Oct 2021 16:18:26 +0000 (12:18 -0400)]
radeonsi: rebind a buffer only in shader stages where it's been bound

Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13400>

2 years agoradeonsi: change bind_history to track usage in each shader stage
Marek Olšák [Sat, 16 Oct 2021 16:07:56 +0000 (12:07 -0400)]
radeonsi: change bind_history to track usage in each shader stage

Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13400>

2 years agoradeonsi: add an option to use CPU storage uploads for threaded context
Marek Olšák [Sun, 17 Oct 2021 21:17:14 +0000 (17:17 -0400)]
radeonsi: add an option to use CPU storage uploads for threaded context

It's only enabled for viewperf for now.

Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13400>

2 years agoradeonsi: add SI_MAX_VRAM_MAP_SIZE definition
Marek Olšák [Sun, 17 Oct 2021 15:32:08 +0000 (11:32 -0400)]
radeonsi: add SI_MAX_VRAM_MAP_SIZE definition

Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13400>

2 years agomesa: fix crashes in the no_error path of glUniform
Marek Olšák [Mon, 18 Oct 2021 16:39:08 +0000 (12:39 -0400)]
mesa: fix crashes in the no_error path of glUniform

Fixes: bd2662bfa1c87 - mesa: add KHR_no_error support to glUniform*() functions

Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13417>

2 years agofreedreno/computerator: Fix mergedregs
Rob Clark [Tue, 19 Oct 2021 15:44:08 +0000 (08:44 -0700)]
freedreno/computerator: Fix mergedregs

This was getting set *after* ir3_shader_assemble, which was too late.

Signed-off-by: Rob Clark <robdclark@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13426>

2 years agofreedreno/isa: Fix ldg/stg "halfness"
Rob Clark [Mon, 18 Oct 2021 23:15:26 +0000 (16:15 -0700)]
freedreno/isa: Fix ldg/stg "halfness"

Whether the load dst or store src is a half reg is determined by the
type field, similar to cat5.

Signed-off-by: Rob Clark <robdclark@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13426>

2 years agofreedreno/ir3/tests: Add some 8/16b ldg/stg tests
Rob Clark [Mon, 18 Oct 2021 22:55:30 +0000 (15:55 -0700)]
freedreno/ir3/tests: Add some 8/16b ldg/stg tests

Signed-off-by: Rob Clark <robdclark@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13426>

2 years agofreedreno/ir3/tests: Don't skip encode test if decode fails
Rob Clark [Mon, 18 Oct 2021 22:54:35 +0000 (15:54 -0700)]
freedreno/ir3/tests: Don't skip encode test if decode fails

Signed-off-by: Rob Clark <robdclark@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13426>

2 years agoaco: fix emitting stream outputs when the first component isn't zero
Samuel Pitoiset [Tue, 19 Oct 2021 11:27:55 +0000 (13:27 +0200)]
aco: fix emitting stream outputs when the first component isn't zero

Fixes a bunch of XFB piglit tests with Zink.

Cc: 21.3 mesa-stable
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Rhys Perry <pendingchaos02@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13437>

2 years agoaco: fix invalid IR generated for b2f64 when the dest is a VGPR
Samuel Pitoiset [Tue, 19 Oct 2021 12:01:45 +0000 (14:01 +0200)]
aco: fix invalid IR generated for b2f64 when the dest is a VGPR

Fixes few 64-bit piglit tests with Zink.

Cc: 21.3 mesa-stable
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Rhys Perry <pendingchaos02@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13435>

2 years agogallium/u_threaded: implement pipelined partial buffer uploads using CPU storage
Marek Olšák [Sun, 17 Oct 2021 21:16:09 +0000 (17:16 -0400)]
gallium/u_threaded: implement pipelined partial buffer uploads using CPU storage

This removes resource_copy_region for BufferSubData. Drivers have to opt in
to use this.

See the comment in the header file.

Acked-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Reviewed-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13399>

2 years agogallium,vbo: add PIPE_BIND_VERTEX_STATE for display lists
Marek Olšák [Sun, 17 Oct 2021 18:06:50 +0000 (14:06 -0400)]
gallium,vbo: add PIPE_BIND_VERTEX_STATE for display lists

Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Reviewed-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13399>

2 years agoac/llvm: accept primitives whose face culling determinant is Inf or NaN
Marek Olšák [Fri, 15 Oct 2021 09:25:39 +0000 (05:25 -0400)]
ac/llvm: accept primitives whose face culling determinant is Inf or NaN

Based on https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13299/diffs

Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13380>

2 years agoac/llvm: add helper ac_build_is_inf_or_nan
Marek Olšák [Fri, 15 Oct 2021 09:23:02 +0000 (05:23 -0400)]
ac/llvm: add helper ac_build_is_inf_or_nan

Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13380>

2 years agoac/llvm: use fmac instead of mul+sub in face culling
Marek Olšák [Fri, 15 Oct 2021 08:48:51 +0000 (04:48 -0400)]
ac/llvm: use fmac instead of mul+sub in face culling

Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13380>

2 years agoradv: do not remove PSIZ for streamout shaders
Samuel Pitoiset [Mon, 18 Oct 2021 15:30:46 +0000 (17:30 +0200)]
radv: do not remove PSIZ for streamout shaders

It might still be read later from the streamout buffer.

Fixes a regression with
ext_transform_feedback-builtin-varyings gl_PointSize and Zink.

Fixes: 92e1981a800 ("radv: Remove PSIZ output when it isn't needed.")
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Timur Kristóf <timur.kristof@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13413>

2 years agomeson: disable -Werror=thread-safety on FreeBSD
Jan Beich [Sat, 20 Feb 2021 12:30:56 +0000 (12:30 +0000)]
meson: disable -Werror=thread-safety on FreeBSD

Annotated <pthread.h> exposes too many errors in Mesa that are
non-trivial to fix and keep working without FreeBSD CI.

Fixes: 0d5fe24c9b7d ("macros: Add thread-safety annotation macros")
Reviewed-by: Eric Engestrom <eric@engestrom.ch>
Cc: mesa-stable
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9168>

2 years agollvmpipe: swizzle image stores for CL BGRA
Dave Airlie [Mon, 18 Oct 2021 07:14:41 +0000 (17:14 +1000)]
llvmpipe: swizzle image stores for CL BGRA

OpenCL requires image stores to BGRA to work, so add the swizzle
code here.

Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13404>

2 years agozink: align pipe_resource and sampler_view allocations to cachelines
Mike Blumenkrantz [Mon, 18 Oct 2021 14:54:58 +0000 (10:54 -0400)]
zink: align pipe_resource and sampler_view allocations to cachelines

this eliminates false sharing for atomics

Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13431>

2 years agozink: don't ralloc zink_resource structs
Mike Blumenkrantz [Mon, 18 Oct 2021 14:52:44 +0000 (10:52 -0400)]
zink: don't ralloc zink_resource structs

the hash tables can just have their own contexts and be freed explicitly

Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13431>

2 years agolavapipe: clamp attachment clear rect sizes
Mike Blumenkrantz [Mon, 4 Oct 2021 15:48:55 +0000 (11:48 -0400)]
lavapipe: clamp attachment clear rect sizes

this is a spec violation, but crashing isn't cool, so do a little clamping

Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13349>

2 years agolavapipe: pull layer count from render state during resolve
Mike Blumenkrantz [Fri, 1 Oct 2021 23:06:43 +0000 (19:06 -0400)]
lavapipe: pull layer count from render state during resolve

vk_framebuffer may be null

Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13349>

2 years agolavapipe: remove lvp_subpass::has_color_att
Mike Blumenkrantz [Fri, 1 Oct 2021 22:00:05 +0000 (18:00 -0400)]
lavapipe: remove lvp_subpass::has_color_att

unused

Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13349>

2 years agolavapipe: simplify some attachment derefs
Mike Blumenkrantz [Fri, 1 Oct 2021 20:16:30 +0000 (16:16 -0400)]
lavapipe: simplify some attachment derefs

Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13349>

2 years agolavapipe: store subpass directly to rendering_state
Mike Blumenkrantz [Fri, 1 Oct 2021 20:13:08 +0000 (16:13 -0400)]
lavapipe: store subpass directly to rendering_state

this is fewer array derefs

Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13349>

2 years agolavapipe: remove last VK_ATTACHMENT_UNUSED check
Mike Blumenkrantz [Fri, 1 Oct 2021 19:57:58 +0000 (15:57 -0400)]
lavapipe: remove last VK_ATTACHMENT_UNUSED check

these are all just null checks now

Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13349>

2 years agolavapipe: remove lvp_subpass_attachment and use lvp_render_pass_attachment refs
Mike Blumenkrantz [Fri, 1 Oct 2021 19:53:34 +0000 (15:53 -0400)]
lavapipe: remove lvp_subpass_attachment and use lvp_render_pass_attachment refs

this is one fewer indirect reference that allows removing a bunch of stuff from
renderpass creation

now also unused subpass attachments are just NULL pointers, making detection simpler

Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13349>