platform/upstream/mesa.git
13 months agoaco/tests: add discard export target tests
Rhys Perry [Fri, 2 Jun 2023 12:36:55 +0000 (13:36 +0100)]
aco/tests: add discard export target tests

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

13 months agoaco: fix has_color_exports=true for mrtz exports
Rhys Perry [Thu, 1 Jun 2023 15:18:27 +0000 (16:18 +0100)]
aco: fix has_color_exports=true for mrtz exports

V_008DFC_SQ_EXP_NULL is after V_008DFC_SQ_EXP_MRTZ.

Signed-off-by: Rhys Perry <pendingchaos02@gmail.com>
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Qiang Yu <yuq825@gmail.com>
Tested-by: Mikhail Gavrilov mikhail.v.gavrilov@gmail.com
Fixes: d3611af3896 ("aco: support nir_export_amd with ps targets")
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/9135
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23371>

13 months agoRevert "ci: disable Collabora's LAVA lab for maintance"
Sergi Blanch Torne [Mon, 5 Jun 2023 08:31:30 +0000 (10:31 +0200)]
Revert "ci: disable Collabora's LAVA lab for maintance"

This reverts commit https://gitlab.freedesktop.org/mesa/mesa/-/commit/7059aa2f842aae442e75b4d6e9d4a37bf4489bff

Signed-off-by: Sergi Blanch Torne <sergi.blanch.torne@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23429>

13 months agor300: enable PIPE_CAP_TGSI_TEXCOORD
Pavel Ondračka [Fri, 28 Apr 2023 11:17:52 +0000 (13:17 +0200)]
r300: enable PIPE_CAP_TGSI_TEXCOORD

Signed-off-by: Pavel Ondračka <pavel.ondracka@gmail.com>
Acked-by: Emma Anholt <emma@anholt.net>
Reviewed-by: Filip Gawin <filip.gawin@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23299>

13 months agov3d: Z/S blit require Z/S formats
Juan A. Suarez Romero [Thu, 1 Jun 2023 07:48:52 +0000 (09:48 +0200)]
v3d: Z/S blit require Z/S formats

Similar to checking that a z/s format can not be used for color
blit with tile-based blit path, color format can not be used for z/s
blit.

Reviewed-by: Iago Toral Quiroga <itoral@igalia.com>
Signed-off-by: Juan A. Suarez Romero <jasuarez@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23390>

13 months agor300: remove nir round lowering
Pavel Ondračka [Sat, 3 Jun 2023 12:22:49 +0000 (14:22 +0200)]
r300: remove nir round lowering

We should only see round from lowered ARR and in that case we want
to reconstruct the ARR, not lower it.

Signed-off-by: Pavel Ondračka <pavel.ondracka@gmail.com>
Reviewed-by: Filip Gawin <filip.gawin@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23419>

13 months agor300: fuse ROUND and ARL to ARR
Pavel Ondračka [Sat, 3 Jun 2023 12:20:05 +0000 (14:20 +0200)]
r300: fuse ROUND and ARL to ARR

Signed-off-by: Pavel Ondračka <pavel.ondracka@gmail.com>
Reviewed-by: Filip Gawin <filip.gawin@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23419>

13 months agopvr: Fix signed comparison
Vinson Lee [Sat, 3 Jun 2023 23:16:41 +0000 (16:16 -0700)]
pvr: Fix signed comparison

Fix defect reported by Coverity Scan.

Unsigned compared against 0 (NO_EFFECT)
unsigned_compare: This less-than-zero comparison of an unsigned value is never true. val < 0U.
unsigned_conversion: val is converted to an unsigned type because it's compared to an unsigned constant.

Fixes: 480bdff4b52 ("pvr: Add support to process transfer and blit cmds")
Signed-off-by: Vinson Lee <vlee@freedesktop.org>
Reviewed-by: Karmjit Mahil <Karmjit.Mahil@imgtec.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23416>

13 months agoUprev Piglit to 5036601c43fff63f7be5cd8ad7b319a5c1f6652c
Collabora's Gfx CI Team [Mon, 5 Jun 2023 00:06:30 +0000 (00:06 +0000)]
Uprev Piglit to 5036601c43fff63f7be5cd8ad7b319a5c1f6652c

https://gitlab.freedesktop.org/mesa/piglit/-/compare/d8c08d123fadb986e9a8a7887b922ff63fcff52e...5036601c43fff63f7be5cd8ad7b319a5c1f6652c

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

13 months agolavapipe: when in doubt, swizzle the swizzle
Dave Airlie [Mon, 5 Jun 2023 07:34:20 +0000 (17:34 +1000)]
lavapipe: when in doubt, swizzle the swizzle

instead of swizzling.

Fixes a bunch of broken depth/stencil swizzling tests in CTS
dEQP-VK.pipeline.monolithic.sampler.border_swizzle.s8_uint_stencil.argb.transparent_black.gather_0.no_swizzle_hint

v2: kusma had nicer ideas.

Fixes: 7826648e14105 ("lavapipe: fix depth texturing swizzle")
Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23428>

13 months agoci: disable Collabora's LAVA lab for maintance
Sergi Blanch Torne [Mon, 5 Jun 2023 07:28:56 +0000 (09:28 +0200)]
ci: disable Collabora's LAVA lab for maintance

This is to inform you of some planned downtime in the LAVA lab as follows:
    Start: 2023-06-05 08:00 GMT
    End: 2023-06-05 12:00 GMT

Signed-off-by: Sergi Blanch Torne <sergi.blanch.torne@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23426>

13 months agoutil: Replace all usage of PIPE_TIMEOUT_INFINITE with OS_TIMEOUT_INFINITE
Yonggang Luo [Fri, 2 Jun 2023 09:48:20 +0000 (17:48 +0800)]
util: Replace all usage of PIPE_TIMEOUT_INFINITE with OS_TIMEOUT_INFINITE

They are exactly the same, so it's safe to do the replace
Also gen OS_TIMEOUT_INFINITE var with rusticl_mesa_bindings_rs by OS_ prefix and
include "util/os_time.h" in rusticl/rusticl_mesa_bindings.h

Reviewed-by: Jesse Natalie <jenatali@microsoft.com>
Signed-off-by: Yonggang Luo <luoyonggang@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23401>

13 months agoci/fedora: re-enable ccache
David Heidelberg [Thu, 1 Jun 2023 10:10:01 +0000 (12:10 +0200)]
ci/fedora: re-enable ccache

Works well with Fedora 38, the offending bug was fixed.

Reviewed-by: Eric Engestrom <eric@igalia.com>
Signed-off-by: David Heidelberg <david.heidelberg@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23425>

13 months agoci: use bash arrays in Fedora script + shebang change
David Heidelberg [Thu, 1 Jun 2023 09:35:00 +0000 (11:35 +0200)]
ci: use bash arrays in Fedora script + shebang change

We not passing very long string, but multiple separate packages, using
the array seems to be more logical and clear solution, without
shellcheck complaining about word spliting and risk making of accidental
mistakes (missed backslash etc.).

Shebang change, because let's have it same everywhere.

Reviewed-by: Eric Engestrom <eric@igalia.com>
Signed-off-by: David Heidelberg <david.heidelberg@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23425>

13 months agonv50: Fix memory leak in error path
Vinson Lee [Sat, 3 Jun 2023 23:32:44 +0000 (16:32 -0700)]
nv50: Fix memory leak in error path

Fix defect reported by Coverity Scan.

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

Fixes: a1571333804 ("nvc0/nv50: support and enable EXT_memory_object*")
Signed-off-by: Vinson Lee <vlee@freedesktop.org>
Reviewed-by: Karol Herbst <kherbst@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23417>

13 months agonir: Remove unnecessary assert in nir_before_src
Friedrich Vock [Wed, 12 Apr 2023 15:15:29 +0000 (17:15 +0200)]
nir: Remove unnecessary assert in nir_before_src

This condition can occur in the wild (more specifically in RT shader
call lowering), and it is handled correctly.

Cc: mesa-stable
Reviewed-by: Timothy Arceri <tarceri@itsqueeze.com>
Reviewed-by: Konstantin Seurer <konstantin.seurer@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22536>

13 months agonir: Rematerialize derefs in use blocks before repairing SSA
Friedrich Vock [Mon, 17 Apr 2023 13:58:39 +0000 (15:58 +0200)]
nir: Rematerialize derefs in use blocks before repairing SSA

nir_repair_ssa_impl may insert phi nodes for any deref, but if the deref mode is uniform, validation fails.
To fix this, rematerialize the derefs in the blocks they are used to avoid generating phi nodes for them.

Cc: mesa-stable
Reviewed-by: Timothy Arceri <tarceri@itsqueeze.com>
Reviewed-by: Konstantin Seurer <konstantin.seurer@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22536>

13 months agoamd/ci: run gl(es) cts & piglit on radeonsi on vangogh
Eric Engestrom [Wed, 10 May 2023 14:47:10 +0000 (15:47 +0100)]
amd/ci: run gl(es) cts & piglit on radeonsi on vangogh

Manual/post-merge for now because radeonsi isn't a priority for the few
steamdecks that we have in CI and we need to keep them free for merging
MRs.

Signed-off-by: Eric Engestrom <eric@igalia.com>
Acked-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22990>

13 months agodocs: Update document about pipe_prim_type with mesa_prim
Yonggang Luo [Thu, 1 Jun 2023 15:06:19 +0000 (23:06 +0800)]
docs: Update document about pipe_prim_type with mesa_prim

Signed-off-by: Yonggang Luo <luoyonggang@gmail.com>
Acked-by: Marek Olšák <marek.olsak@amd.com>
Acked-by: Jesse Natalie <jenatali@microsoft.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23369>

13 months agocompiler: Rename shader_prim to mesa_prim and replace all usage of pipe_prim_type...
Yonggang Luo [Thu, 1 Jun 2023 15:03:34 +0000 (23:03 +0800)]
compiler: Rename shader_prim to mesa_prim and replace all usage of pipe_prim_type with mesa_prim

This is a prepare step to remove depends on p_defines.h in src/util/*

This is done by:
replace pipe_prim_type with mesa_prim
replace shader_prim with mesa_prim
replace PIPE_PRIM_MAX  with MESA_PRIM_COUNT
replace SHADER_PRIM_  with MESA_PRIM_
replace PIPE_PRIM_ with MESA_PRIM_

This patch only replace code only

Signed-off-by: Yonggang Luo <luoyonggang@gmail.com>
Acked-by: Marek Olšák <marek.olsak@amd.com>
Acked-by: Jesse Natalie <jenatali@microsoft.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23369>

13 months agocompiler: Add SHADER_PRIM_COUNT to be SHADER_PRIM_MAX + 1
Yonggang Luo [Thu, 1 Jun 2023 13:59:37 +0000 (21:59 +0800)]
compiler: Add SHADER_PRIM_COUNT to be SHADER_PRIM_MAX + 1

This is a prepare step for replace all usage of pipe_prim_type and shader_prim with mesa_prim
And the newly added MESA_PRIM_COUNT in latter patch will equal to SHADER_PRIM_COUNT

Signed-off-by: Yonggang Luo <luoyonggang@gmail.com>
Acked-by: Marek Olšák <marek.olsak@amd.com>
Acked-by: Jesse Natalie <jenatali@microsoft.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23369>

13 months agocompiler: Getting shader_prim to be PACKED that consistence with pipe_prim_type
Yonggang Luo [Thu, 1 Jun 2023 13:44:15 +0000 (21:44 +0800)]
compiler: Getting shader_prim to be PACKED that consistence with pipe_prim_type

This is a prepare step for replace all usage of pipe_prim_type and shader_prim with mesa_prim

Signed-off-by: Yonggang Luo <luoyonggang@gmail.com>
Acked-by: Marek Olšák <marek.olsak@amd.com>
Acked-by: Jesse Natalie <jenatali@microsoft.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23369>

13 months agomicrosoft/compiler: Getting function impl to be consistence with decl in dxil_enums.*
Yonggang Luo [Thu, 1 Jun 2023 13:54:52 +0000 (21:54 +0800)]
microsoft/compiler: Getting function impl to be consistence with decl in dxil_enums.*

This is a prepare step for add PACKED attribute on shader_prim

Signed-off-by: Yonggang Luo <luoyonggang@gmail.com>
Acked-by: Marek Olšák <marek.olsak@amd.com>
Acked-by: Jesse Natalie <jenatali@microsoft.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23369>

13 months agointel/tools/error2aub: Fix potential out of bounds read
Dylan Baker [Thu, 1 Jun 2023 22:32:15 +0000 (15:32 -0700)]
intel/tools/error2aub: Fix potential out of bounds read

Originally the engines size was set to I915_ENGINE_CLASS_VIDEO + 1,
where video was the largest value, and INVALID had a value of -1. Since
then a COMPUTE member was added to the enum, and the INTEL_ENGINE class
moved invalid to the last value.

CID: 1530425
Reviewed-by: David Heidelberg <david.heidelberg@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23384>

13 months agovulkan/wsi: fix double free on error condition
Iván Briano [Thu, 1 Jun 2023 21:18:21 +0000 (14:18 -0700)]
vulkan/wsi: fix double free on error condition

On error during wsi_wl_surface_create_swapchain(),
wsi_wl_swapchain_chain_free() is called, followed by vk_free() of the
recently freed chain.
Move the vk_free() to wsi_wl_swapchain_destroy() to avoid the double
free.

Fixes dEQP-VK.wsi.wayland.swapchain.simulate_oom.*

Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23383>

13 months agoiris: Implement external object implicit syncronization for Xe kmd
José Roberto de Souza [Tue, 14 Feb 2023 20:23:50 +0000 (12:23 -0800)]
iris: Implement external object implicit syncronization for Xe kmd

Signed-off-by: José Roberto de Souza <jose.souza@intel.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22544>

13 months agoiris: Add iris_implicit_sync struct and functions to do implicit synchronization...
Paulo Zanoni [Tue, 31 Jan 2023 22:01:31 +0000 (14:01 -0800)]
iris: Add iris_implicit_sync struct and functions to do implicit synchronization for Xe kmd

Signed-off-by: José Roberto de Souza <jose.souza@intel.com>
Signed-off-by: Paulo Zanoni <paulo.r.zanoni@intel.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22544>

13 months agoiris: Extend iris_bo_wait_syncobj() to wait on external implicit syncobj
Paulo Zanoni [Thu, 10 Nov 2022 06:47:48 +0000 (22:47 -0800)]
iris: Extend iris_bo_wait_syncobj() to wait on external implicit syncobj

This way we can guarantee that external bos are also idle in other
process.

Signed-off-by: José Roberto de Souza <jose.souza@intel.com>
Signed-off-by: Paulo Zanoni <paulo.r.zanoni@intel.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22544>

13 months agoiris: Add functions to import and export implicit sync state
Paulo Zanoni [Tue, 31 Jan 2023 21:54:22 +0000 (13:54 -0800)]
iris: Add functions to import and export implicit sync state

Xe KMD is not going to support implicit synchronization, so we need to
use extra ioctls to import/export implicit synchronization state from
gem BOs from/to drm syncobjs.

Signed-off-by: José Roberto de Souza <jose.souza@intel.com>
Signed-off-by: Paulo Zanoni <paulo.r.zanoni@intel.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22544>

13 months agoiris: Attach a dma-buf to bo flink
José Roberto de Souza [Tue, 13 Dec 2022 19:29:33 +0000 (11:29 -0800)]
iris: Attach a dma-buf to bo flink

Bo flink shares a bo in the same GPU between process, flink precedes
dma-buf so it lacks features like syncronization.
So to workaround that, here during iris_bo_flink() it is
attaching a dma-buf to the bo.

Then in imported process it tries to attach a dma-buf again but
as it was already create it is just ref counted.

From this point on importer and exporter can syncronize access like
any other dma-buf.

Signed-off-by: José Roberto de Souza <jose.souza@intel.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22544>

13 months agoiris: Store prime fd of external bos for Xe KMD
Paulo Zanoni [Wed, 9 Nov 2022 00:58:05 +0000 (16:58 -0800)]
iris: Store prime fd of external bos for Xe KMD

In the next patches this prime fd will be needed to do implict
synchronization in external bos for Xe KMD as it don't have implict
syncronization in KMD side.

Signed-off-by: José Roberto de Souza <jose.souza@intel.com>
Signed-off-by: Paulo Zanoni <paulo.r.zanoni@intel.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22544>

13 months agohasvk: Use intel_ioctl() helper for GEM_SET_TILING
Dmitry Osipenko [Thu, 30 Mar 2023 18:21:24 +0000 (21:21 +0300)]
hasvk: Use intel_ioctl() helper for GEM_SET_TILING

Replace opencoded ioctl() usage with a common intel_ioctl() helper.

Reviewed-by: José Roberto de Souza <jose.souza@intel.com>
Signed-off-by: Dmitry Osipenko <dmitry.osipenko@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23399>

13 months agoanv: Use intel_ioctl() helper for GEM_SET_TILING
Dmitry Osipenko [Thu, 30 Mar 2023 18:20:42 +0000 (21:20 +0300)]
anv: Use intel_ioctl() helper for GEM_SET_TILING

Replace opencoded ioctl() usage with a common intel_ioctl() helper.

Reviewed-by: José Roberto de Souza <jose.souza@intel.com>
Signed-off-by: Dmitry Osipenko <dmitry.osipenko@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23399>

13 months agointel/dev: Use intel_ioctl() helper for GEM_SET_TILING
Dmitry Osipenko [Thu, 30 Mar 2023 18:20:22 +0000 (21:20 +0300)]
intel/dev: Use intel_ioctl() helper for GEM_SET_TILING

Replace opencoded ioctl() usage with a common intel_ioctl() helper.

Reviewed-by: José Roberto de Souza <jose.souza@intel.com>
Signed-off-by: Dmitry Osipenko <dmitry.osipenko@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23399>

13 months agoiris/bufmgr: Use intel_ioctl() helper for GEM_SET_TILING
Dmitry Osipenko [Sat, 14 Jan 2023 19:00:25 +0000 (22:00 +0300)]
iris/bufmgr: Use intel_ioctl() helper for GEM_SET_TILING

Replace opencoded ioctl() usage with a common intel_ioctl() helper.

Reviewed-by: José Roberto de Souza <jose.souza@intel.com>
Signed-off-by: Dmitry Osipenko <dmitry.osipenko@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23399>

13 months agoci: rename x86 and amd64 to x86_64, armhf to arm32, and i386 to x86_32
David Heidelberg [Fri, 26 May 2023 17:10:57 +0000 (19:10 +0200)]
ci: rename x86 and amd64 to x86_64, armhf to arm32, and i386 to x86_32

Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/8049

Reviewed-by: Yonggang Luo <luoyonggang@gmail.com>
Signed-off-by: David Heidelberg <david.heidelberg@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23282>

13 months agodzn: Fix incremental binding of VBs
Jesse Natalie [Fri, 2 Jun 2023 18:14:37 +0000 (11:14 -0700)]
dzn: Fix incremental binding of VBs

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

13 months agodzn: Don't create D3D objects for secondary command buffers
Jesse Natalie [Thu, 1 Jun 2023 22:25:08 +0000 (15:25 -0700)]
dzn: Don't create D3D objects for secondary command buffers

We emulate secondary command buffers via record/replay, we don't
need actual D3D objects, and having them can cause debug layer errors
due to getting out of sync with the state of the Vulkan object.

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

13 months agoanv: Remove alignment to aux ratio on size of main surface
Zhang, Jianxun [Tue, 16 May 2023 21:31:05 +0000 (14:31 -0700)]
anv: Remove alignment to aux ratio on size of main surface

The existing 4KB alignment is sufficient for both 1MB and
64KB alignment requirements of CCS buffer.

Signed-off-by: Zhang, Jianxun <jianxun.zhang@intel.com>
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23002>

13 months agoanv: Support 1MB AUX mapping (MTL)
Zhang, Jianxun [Fri, 12 May 2023 19:32:57 +0000 (12:32 -0700)]
anv: Support 1MB AUX mapping (MTL)

Replace the hardcoded 64KB granularity with a value
provided by AUX module that returns either 64KB(TGL)
or 1MB(MTL) of the running system.

Signed-off-by: Zhang, Jianxun <jianxun.zhang@intel.com>
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23002>

13 months agoisl: use generated workaround helpers for Wa_1806565034
Mark Janes [Tue, 14 Mar 2023 21:50:00 +0000 (14:50 -0700)]
isl: use generated workaround helpers for Wa_1806565034

This workaround was enabled for gen12+, but only applies to gen12.0.

Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21912>

13 months agorusticl/device: set preferred vector size of doubles if fp64 is enabled
Karol Herbst [Fri, 2 Jun 2023 12:34:15 +0000 (14:34 +0200)]
rusticl/device: set preferred vector size of doubles if fp64 is enabled

Fixes: 400847a9900 ("rusticl/device: improve advertisement of fp64 support")
Signed-off-by: Karol Herbst <git@karolherbst.de>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23391>

13 months agopvr: Implement ZLS subtile alignment
Matt Coster [Mon, 27 Feb 2023 12:33:31 +0000 (12:33 +0000)]
pvr: Implement ZLS subtile alignment

This is a workaround for the edge case where a depth buffer is smaller
than a single tile size.

Signed-off-by: Matt Coster <matt.coster@imgtec.com>
Reviewed-by: Karmjit Mahil <Karmjit.Mahil@imgtec.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23313>

13 months agopvr: Rename ds_{image,iview} in pvr_gfx_sub_cmd_job_init()
Matt Coster [Mon, 27 Feb 2023 12:26:53 +0000 (12:26 +0000)]
pvr: Rename ds_{image,iview} in pvr_gfx_sub_cmd_job_init()

The added prefix makes it clear we're referencing the depth/stencil
attachment.

Signed-off-by: Matt Coster <matt.coster@imgtec.com>
Reviewed-by: Karmjit Mahil <Karmjit.Mahil@imgtec.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23313>

13 months agopvr: Publicise some static functions from pvr_blit.c
Matt Coster [Mon, 27 Feb 2023 12:19:57 +0000 (12:19 +0000)]
pvr: Publicise some static functions from pvr_blit.c

These will be used to implement ZLS subtile alignment. One function
that was already public has also had its declaration moved from
pvr_private.h to the newly created pvr_blit.h.

Signed-off-by: Matt Coster <matt.coster@imgtec.com>
Reviewed-by: Karmjit Mahil <Karmjit.Mahil@imgtec.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23313>

13 months agopvr: Add pvr_image_view_get_image()
Matt Coster [Mon, 27 Feb 2023 09:08:02 +0000 (09:08 +0000)]
pvr: Add pvr_image_view_get_image()

This replaces the pattern of vk_to_pvr_image(iview->vk.image).

Signed-off-by: Matt Coster <matt.coster@imgtec.com>
Reviewed-by: Karmjit Mahil <Karmjit.Mahil@imgtec.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23313>

13 months agopvr: Cleanup in pvr_process_cmd_buffer()
Matt Coster [Mon, 27 Feb 2023 09:00:36 +0000 (09:00 +0000)]
pvr: Cleanup in pvr_process_cmd_buffer()

Renaming all barrier structs allows the pvr_process_event_cmd_barrier()
calls to be placed on a single line.

Signed-off-by: Matt Coster <matt.coster@imgtec.com>
Reviewed-by: Karmjit Mahil <Karmjit.Mahil@imgtec.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23313>

13 months agopvr: Add wait_on_previous_transfer flag to graphics subcommand
Matt Coster [Tue, 13 Dec 2022 10:12:45 +0000 (10:12 +0000)]
pvr: Add wait_on_previous_transfer flag to graphics subcommand

This inserts a barrier before the fragment job to wait on the previous
transfer job.

Signed-off-by: Matt Coster <matt.coster@imgtec.com>
Reviewed-by: Karmjit Mahil <Karmjit.Mahil@imgtec.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23313>

13 months agopvr: Use pvr_sub_cmd_event union members directly
Matt Coster [Fri, 20 Jan 2023 10:31:12 +0000 (10:31 +0000)]
pvr: Use pvr_sub_cmd_event union members directly

This has the benefit of replacing some explicit asserts with static type
checking.

Signed-off-by: Matt Coster <matt.coster@imgtec.com>
Reviewed-by: Karmjit Mahil <Karmjit.Mahil@imgtec.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23313>

13 months agopvr: Move pvr_get_isp_num_tiles_xy() to rogue_hw_utils.h
Matt Coster [Tue, 13 Dec 2022 10:05:41 +0000 (10:05 +0000)]
pvr: Move pvr_get_isp_num_tiles_xy() to rogue_hw_utils.h

Rename s/pvr/rogue/ to match the other functions in that file.

Signed-off-by: Matt Coster <matt.coster@imgtec.com>
Reviewed-by: Karmjit Mahil <Karmjit.Mahil@imgtec.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23313>

13 months agoradv/rt: Fix pipeline libraries
Konstantin Seurer [Fri, 19 May 2023 10:23:55 +0000 (12:23 +0200)]
radv/rt: Fix pipeline libraries

This was completely broken, because radv_create_group_handles would
access OOB stages.

Reviewed-by: Konstantin Seurer <konstantin.seurer@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23128>

13 months agopvr: Fix segfault in pvr_physical_device_init()
Matt Coster [Tue, 16 May 2023 08:07:48 +0000 (09:07 +0100)]
pvr: Fix segfault in pvr_physical_device_init()

This was introduced (by me) in a previous commit. Part of pdevice->vk
was initialised before calling vk_physical_device_init() which then
overwrite our values.

Fixes: 4ba553ab9ad ("pvr: Use common vkGetPhysicalDeviceFeatures2() implementation")

Signed-off-by: Matt Coster <matt.coster@imgtec.com>
Reviewed-by: Karmjit Mahil <Karmjit.Mahil@imgtec.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23366>

13 months agonir: print locations for per-vertex fragment shader inputs
Samuel Pitoiset [Wed, 31 May 2023 06:42:13 +0000 (08:42 +0200)]
nir: print locations for per-vertex fragment shader inputs

Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Reviewed-by: Rhys Perry <pendingchaos02@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23254>

13 months agonir/lower_io: add nir_intrinsic_load_input_vertex to is_input()
Samuel Pitoiset [Wed, 22 Jun 2022 07:13:46 +0000 (09:13 +0200)]
nir/lower_io: add nir_intrinsic_load_input_vertex to is_input()

To add the const offset to the base index.

Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Reviewed-by: Rhys Perry <pendingchaos02@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23254>

13 months agospirv,nir: add support for SpvDecorationPerVertexKHR
Samuel Pitoiset [Fri, 27 May 2022 07:16:09 +0000 (09:16 +0200)]
spirv,nir: add support for SpvDecorationPerVertexKHR

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/23254>

13 months agospirv,nir: add support for BaryCoord{NoPersp}KHR builtins
Samuel Pitoiset [Thu, 12 May 2022 13:50:04 +0000 (15:50 +0200)]
spirv,nir: add support for BaryCoord{NoPersp}KHR builtins

This introduces new intrinsics nir_intrinsic_load_barycentric_coord_xxx
with 3-components instead of expanding the existing ones that are
supposed to interpolate input varyings, while BaryCoord is a sysval
on most hardware.

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/23254>

13 months agospirv: add support for SpvCapabilityFragmentBarycentricKHR
Samuel Pitoiset [Fri, 6 May 2022 12:00:40 +0000 (14:00 +0200)]
spirv: add support for SpvCapabilityFragmentBarycentricKHR

Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Reviewed-by: Rhys Perry <pendingchaos02@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23254>

13 months agozink: update profiles schema
Erik Faye-Lund [Wed, 31 May 2023 18:25:24 +0000 (20:25 +0200)]
zink: update profiles schema

The 0.8.1-251 release has shipped, which contains the latest bits we
need in order to be clean here. Let's bump the bumpbump-bump.

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

13 months agodraw: add (disabled) vertex dumping for non-linear emit
Mike Blumenkrantz [Wed, 31 May 2023 16:09:31 +0000 (12:09 -0400)]
draw: add (disabled) vertex dumping for non-linear emit

matches linear path

Reviewed-by: Roland Scheidegger <sroland@vmware.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23368>

13 months agolavapipe: don't pass indirect info in streamout draws
Mike Blumenkrantz [Wed, 31 May 2023 20:40:58 +0000 (16:40 -0400)]
lavapipe: don't pass indirect info in streamout draws

this is otherwise broken for a sequence like draw_indirect -> draw_indirect_bc

cc: mesa-stable

Reviewed-by: Roland Scheidegger <sroland@vmware.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23368>

13 months agolavapipe: stop setting patch vertices constantly
Mike Blumenkrantz [Wed, 31 May 2023 19:31:14 +0000 (15:31 -0400)]
lavapipe: stop setting patch vertices constantly

this pollutes gallium traces and makes debugging more annoying

Reviewed-by: Roland Scheidegger <sroland@vmware.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23368>

13 months agolavapipe: bump max push constant size
Mike Blumenkrantz [Tue, 30 May 2023 14:40:36 +0000 (10:40 -0400)]
lavapipe: bump max push constant size

this matches vkd3d-proton requirements

Reviewed-by: Roland Scheidegger <sroland@vmware.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23368>

13 months agolavapipe: fix DS3 min sample setting
Mike Blumenkrantz [Wed, 31 May 2023 19:25:41 +0000 (15:25 -0400)]
lavapipe: fix DS3 min sample setting

if a DS3 pipeline enabling dynamic samples is not bound when samples
are set dynamically, then such a pipeline is later bound, min samples
would have been incorrectly set to 1

instead, flag the update for later and do it just before draw

cc: mesa-stable

Reviewed-by: Roland Scheidegger <sroland@vmware.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23368>

13 months agoradv: Guard against misplaced RGP barrier markers.
Tatsuyuki Ishi [Wed, 1 Feb 2023 08:40:02 +0000 (17:40 +0900)]
radv: Guard against misplaced RGP barrier markers.

RGP will crash if we emit a layout transition marker outside a barrier.
If this happens, trigger an assertion if its enabled or silently discard
the marker otherwise to avoid traces that cannot be opened.

Also, guard against attempts to start barrier markers recursively, since
this will corrupt the internal start/end matching.

Closes: <https://gitlab.freedesktop.org/mesa/mesa/-/issues/7971>
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21033>

13 months agoradv: Add RGP barrier markers for render pass transition and copy.
Tatsuyuki Ishi [Wed, 1 Feb 2023 08:27:26 +0000 (17:27 +0900)]
radv: Add RGP barrier markers for render pass transition and copy.

This allows them to be attributed to the correct event instead of being
blend to the previous barrier.

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

13 months agoradeonsi: enable aco for mono standalone vs
Qiang Yu [Fri, 28 Apr 2023 03:54:56 +0000 (11:54 +0800)]
radeonsi: enable aco for mono standalone vs

Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Signed-off-by: Qiang Yu <yuq825@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23096>

13 months agoac/llvm: remove unused barrier implementation
Qiang Yu [Tue, 16 May 2023 02:43:41 +0000 (10:43 +0800)]
ac/llvm: remove unused barrier implementation

memory buffer barrier is still used when nir lowering, will
be removed later.

Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Signed-off-by: Qiang Yu <yuq825@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23096>

13 months agoradeonsi: always use scoped barrier
Qiang Yu [Tue, 16 May 2023 02:22:17 +0000 (10:22 +0800)]
radeonsi: always use scoped barrier

aco has removed non-scoped barrier support.

Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Signed-off-by: Qiang Yu <yuq825@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23096>

13 months agoradeonsi: use nir_umul_high for fast udiv
Qiang Yu [Thu, 11 May 2023 11:41:20 +0000 (19:41 +0800)]
radeonsi: use nir_umul_high for fast udiv

nir has dedicated alu op for it. Also for removing int64
multiply which aco does not support.

Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Signed-off-by: Qiang Yu <yuq825@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23096>

13 months agoradeonsi: calculate needed lds size when upload raw binary for vs
Qiang Yu [Wed, 10 May 2023 08:06:08 +0000 (16:06 +0800)]
radeonsi: calculate needed lds size when upload raw binary for vs

ELF do the same when upload binary. We can't do this when
compile, because it's know when draw time in radeonsi.

Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Signed-off-by: Qiang Yu <yuq825@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23096>

13 months agoradeonsi: fill aco shader info for mono standalone vs
Qiang Yu [Fri, 28 Apr 2023 07:51:09 +0000 (15:51 +0800)]
radeonsi: fill aco shader info for mono standalone vs

Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Signed-off-by: Qiang Yu <yuq825@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23096>

13 months agonir,ac/llvm,radeonsi: replace nir_buffer_atomic_add_amd with ssbo atomic
Qiang Yu [Tue, 16 May 2023 08:05:34 +0000 (16:05 +0800)]
nir,ac/llvm,radeonsi: replace nir_buffer_atomic_add_amd with ssbo atomic

Now that radeonsi support pass desc to ssbo atomic ops,
we can use ssbo atomic instead. aco does not implement
nir_buffer_atomic_add either.

Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Signed-off-by: Qiang Yu <yuq825@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23096>

13 months agoac/llvm,radeonsi: lower nir_load_ring_esgs_amd in abi
Qiang Yu [Wed, 17 May 2023 08:06:15 +0000 (16:06 +0800)]
ac/llvm,radeonsi: lower nir_load_ring_esgs_amd in abi

It's not implemented by aco. So move the code from llvm
to nir.

Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Signed-off-by: Qiang Yu <yuq825@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23096>

13 months agoac/llvm,radeonsi: lower nir_load_ordered_id_amd in abi
Qiang Yu [Tue, 16 May 2023 08:11:21 +0000 (16:11 +0800)]
ac/llvm,radeonsi: lower nir_load_ordered_id_amd in abi

aco does not implement it.

Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Signed-off-by: Qiang Yu <yuq825@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23096>

13 months agoac/llvm,radeonsi: lower nir_load_packed_passthrough_primitive_amd in abi
Qiang Yu [Wed, 10 May 2023 08:43:58 +0000 (16:43 +0800)]
ac/llvm,radeonsi: lower nir_load_packed_passthrough_primitive_amd in abi

aco does not implement it.

Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Signed-off-by: Qiang Yu <yuq825@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23096>

13 months agoac/llvm,radeonsi: lower nir_load_initial_edgeflags_amd in abi
Qiang Yu [Fri, 28 Apr 2023 08:31:37 +0000 (16:31 +0800)]
ac/llvm,radeonsi: lower nir_load_initial_edgeflags_amd in abi

Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Signed-off-by: Qiang Yu <yuq825@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23096>

13 months agoac/llvm,radeonsi: lower load_workgroup_num_input_(vertices|primitives) in abi
Qiang Yu [Fri, 28 Apr 2023 06:35:41 +0000 (14:35 +0800)]
ac/llvm,radeonsi: lower load_workgroup_num_input_(vertices|primitives) in abi

Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Signed-off-by: Qiang Yu <yuq825@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23096>

13 months agoac/llvm,radeonsi: lower nir_load_merged_wave_info_amd in abi
Qiang Yu [Fri, 28 Apr 2023 06:31:09 +0000 (14:31 +0800)]
ac/llvm,radeonsi: lower nir_load_merged_wave_info_amd in abi

aco does not implement it.

Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Signed-off-by: Qiang Yu <yuq825@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23096>

13 months agoac/llvm,radeonsi: lower nir_load_gs_vertex_offset_amd in abi
Qiang Yu [Fri, 28 Apr 2023 06:24:24 +0000 (14:24 +0800)]
ac/llvm,radeonsi: lower nir_load_gs_vertex_offset_amd in abi

aco does not implement this.

Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Signed-off-by: Qiang Yu <yuq825@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23096>

13 months agoradeonsi: add scratch offset vs args explicitly for aco
Qiang Yu [Fri, 28 Apr 2023 03:18:00 +0000 (11:18 +0800)]
radeonsi: add scratch offset vs args explicitly for aco

Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Signed-off-by: Qiang Yu <yuq825@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23096>

13 months agoradeonsi: resolve lds ngg aco symbols
Qiang Yu [Thu, 27 Apr 2023 09:46:29 +0000 (17:46 +0800)]
radeonsi: resolve lds ngg aco symbols

Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Signed-off-by: Qiang Yu <yuq825@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23096>

13 months agoaco: use ac_get_image_dim for array check when image intrinsic
Qiang Yu [Tue, 30 May 2023 11:22:48 +0000 (19:22 +0800)]
aco: use ac_get_image_dim for array check when image intrinsic

This is to avoid missing array flag when <=GFX8 and 3D image
in which case is treated as 2D array image.

Reviewed-by: Rhys Perry <pendingchaos02@gmail.com>
Signed-off-by: Qiang Yu <yuq825@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23094>

13 months agoaco: implement nir_bindless_image_fragment_mask_load_amd
Qiang Yu [Thu, 18 May 2023 02:07:43 +0000 (10:07 +0800)]
aco: implement nir_bindless_image_fragment_mask_load_amd

Reviewed-by: Rhys Perry <pendingchaos02@gmail.com>
Sigend-off-by: Qiang Yu <yuq825@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23094>

13 months agoaco: implement nir_xfb_counter_sub_amd
Qiang Yu [Tue, 16 May 2023 09:28:18 +0000 (17:28 +0800)]
aco: implement nir_xfb_counter_sub_amd

Reviewed-by: Rhys Perry <pendingchaos02@gmail.com>
Signed-off-by: Qiang Yu <yuq825@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23094>

13 months agoaco: use gds reg when ordered xfb counter add
Qiang Yu [Tue, 16 May 2023 08:54:59 +0000 (16:54 +0800)]
aco: use gds reg when ordered xfb counter add

This is currently only used by radeonsi.

Reviewed-by: Rhys Perry <pendingchaos02@gmail.com>
Signed-off-by: Qiang Yu <yuq825@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23094>

13 months agoaco/assembler: handle ds_(add|sub)_gs_reg_rtn encoding
Qiang Yu [Tue, 16 May 2023 08:48:38 +0000 (16:48 +0800)]
aco/assembler: handle ds_(add|sub)_gs_reg_rtn encoding

They are different than normal DS instructions, only
use DATA[0], not use ADDR.

Reviewed-by: Rhys Perry <pendingchaos02@gmail.com>
Signed-off-by: Qiang Yu <yuq825@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23094>

13 months agoaco: implement load buffer with ACCESS_USES_FORMAT_AMD
Qiang Yu [Thu, 11 May 2023 07:39:16 +0000 (15:39 +0800)]
aco: implement load buffer with ACCESS_USES_FORMAT_AMD

This is used by radeonsi for vs input load and cdna
image load emulation.

Reviewed-by: Rhys Perry <pendingchaos02@gmail.com>
Signed-off-by: Qiang Yu <yuq825@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23094>

13 months agoac/nir/ngg: don't use 8bit alu ops
Qiang Yu [Wed, 10 May 2023 06:11:48 +0000 (14:11 +0800)]
ac/nir/ngg: don't use 8bit alu ops

aco doesn't support 8bit alu ops and radeonsi won't
call nir_lower_bit_size for most alu ops, so just
don't use 8bit alu ops (they will be lowered to 32bit
anyway if we do).

Reviewed-by: Rhys Perry <pendingchaos02@gmail.com>
Signed-off-by: Qiang Yu <yuq825@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23094>

13 months agoaco,radv: remove unused aco_shader_info fields
Qiang Yu [Fri, 28 Apr 2023 07:36:43 +0000 (15:36 +0800)]
aco,radv: remove unused aco_shader_info fields

Reviewed-by: Rhys Perry <pendingchaos02@gmail.com>
Signed-off-by: Qiang Yu <yuq825@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23094>

13 months agoaco: implement two load lds ngg intrininsic for radeonsi
Qiang Yu [Thu, 27 Apr 2023 09:01:56 +0000 (17:01 +0800)]
aco: implement two load lds ngg intrininsic for radeonsi

Reviewed-by: Rhys Perry <pendingchaos02@gmail.com>
Signed-off-by: Qiang Yu <yuq825@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23094>

13 months agoci/turnip: Update full-run xfails.
Emma Anholt [Wed, 17 May 2023 22:28:04 +0000 (15:28 -0700)]
ci/turnip: Update full-run xfails.

The big pile of crashes were all either not covered by the fractional run
and a full run hadn't been run to update them, or unsupported where
Crash->Skip is not being reported as UnexpectedPass.

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

13 months agoci: Respect $HTTP_PROXY for ci_run_n_monitor
Daniel Stone [Wed, 31 May 2023 17:50:11 +0000 (18:50 +0100)]
ci: Respect $HTTP_PROXY for ci_run_n_monitor

We need to explicitly tell AIOHTTP that it's OK to take the HTTP proxy
from the environment.

Signed-off-by: Daniel Stone <daniels@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23341>

13 months agoci/crocus: Add a missing xfail.
Emma Anholt [Thu, 1 Jun 2023 20:53:13 +0000 (13:53 -0700)]
ci/crocus: Add a missing xfail.

Probably more fallout from debian 12 uprev.

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

13 months agocrocus: Fix regression from !20153
Emma Anholt [Thu, 1 Jun 2023 20:50:24 +0000 (13:50 -0700)]
crocus: Fix regression from !20153

The MR fixed iris in 14dec0c1479aa149edead1e95b7feb1669ccc4c1, but didn't
do the same fix for crocus.

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

13 months agoRevert "ci: disable anholt's farm"
Emma Anholt [Thu, 1 Jun 2023 19:53:56 +0000 (12:53 -0700)]
Revert "ci: disable anholt's farm"

Things are back up.  This reverts commit
520c5091d7de4290f87bb984a59e7ac2993471a4.

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

13 months agoci/freedreno: Update minetest hash.
Emma Anholt [Thu, 1 Jun 2023 19:50:21 +0000 (12:50 -0700)]
ci/freedreno: Update minetest hash.

1 different pixel, undetectable change.

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

13 months agomesa: Use shared NIR code for ARB_vp and FF VS position transformation.
Emma Anholt [Wed, 31 May 2023 18:58:10 +0000 (11:58 -0700)]
mesa: Use shared NIR code for ARB_vp and FF VS position transformation.

Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23111>

13 months agomesa/ffvs: Fix mvp_with_dp4 position transformation.
Emma Anholt [Wed, 31 May 2023 18:49:47 +0000 (11:49 -0700)]
mesa/ffvs: Fix mvp_with_dp4 position transformation.

Copy and paste mistake, but didn't affect anybody since this knob is
disconnected at the moment.

Fixes: c5b3d488f9be ("mesa/main: make ffvertex output nir")
Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23111>

13 months agomesa: Use the NIR pass for fixed function fog.
Emma Anholt [Tue, 16 May 2023 23:54:20 +0000 (16:54 -0700)]
mesa: Use the NIR pass for fixed function fog.

Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23111>

13 months agomesa/ati_fs: Move prog->SamplersUsed/TexturesUsed setup to EndFragmentShader.
Emma Anholt [Thu, 18 May 2023 16:32:54 +0000 (09:32 -0700)]
mesa/ati_fs: Move prog->SamplersUsed/TexturesUsed setup to EndFragmentShader.

No need to have st_program.c come back into ATI_fs for this when it's a
property of program generation.  ARB programs set these up in their
translation, as well.

Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23111>