panfrost: Allow uploading fragment SPDs

SPDs don't have the state dependence that fragment RSDs do.

Signed-off-by: Alyssa Rosenzweig <alyssa@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15204>
This commit is contained in:
Alyssa Rosenzweig 2021-11-18 23:38:50 -05:00 committed by Marge Bot
parent e42b0c68f4
commit 087b63cb07

View file

@ -86,8 +86,10 @@ panfrost_shader_compile(struct pipe_screen *pscreen,
/* Don't upload RSD for fragment shaders since they need draw-time
* merging for e.g. depth/stencil/alpha */
bool upload = stage != MESA_SHADER_FRAGMENT;
* merging for e.g. depth/stencil/alpha. RSDs are replaced by simpler
* shader program descriptors on Valhall, which can be preuploaded even
* for fragment shaders. */
bool upload = !(stage == MESA_SHADER_FRAGMENT && dev->arch <= 7);
screen->vtbl.prepare_shader(state, desc_pool, upload);
panfrost_analyze_sysvals(state);