asahi: Wire up compute kernels
authorAlyssa Rosenzweig <alyssa@rosenzweig.io>
Sat, 25 Feb 2023 16:55:24 +0000 (11:55 -0500)
committerMarge Bot <emma+marge@anholt.net>
Sun, 5 Mar 2023 19:40:43 +0000 (19:40 +0000)
commit61663859bc9b41177ac399e0fcd411019e733f70
tree6963b3421d6b4af2a9374f6c300a0cf83592decc
parentc086f2770bd9f8714aef7b1c5814e5a38f4b55b5
asahi: Wire up compute kernels

Now that we have multiple sysval tables, implementing compute kernels --
including with indirect dispatch and load_num_workgroups -- is straightforward.
This patch adds the straightforward launch_grid implementation.

As usual needs UAPI support patches to actually do anything, but the relevant
compute tests are passing downstream.

It's not possible to properly test compute shaders support right now (pending
support for images), so we don't update the CAPs or features.txt here. This is
more about flushing out the piles of downstream patches we have (and getting
reviewed!) in preparation for cutting a downstream release soon.

Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21703>
src/gallium/drivers/asahi/agx_nir_lower_sysvals.c
src/gallium/drivers/asahi/agx_state.c
src/gallium/drivers/asahi/agx_state.h