agx: Remove bogus gl_Position assertion

It is reasonable not to write gl_Position in a transform feedback program.

Fixes rendering of the apitrace of Domekeeper in #7798.

Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21266>
This commit is contained in:
Alyssa Rosenzweig
2023-02-10 17:21:17 -05:00
committed by Marge Bot
parent eeae9b93de
commit 6214c9921a
+4 -1
View File
@@ -1762,7 +1762,10 @@ agx_remap_varyings_vs(nir_shader *nir, struct agx_varyings_vs *varyings)
for (unsigned i = 0; i < ARRAY_SIZE(varyings->slots); ++i)
varyings->slots[i] = ~0;
assert(nir->info.outputs_written & VARYING_BIT_POS);
/* gl_Position is implicitly written, although it may validly be absent in
* vertex programs run only for transform feedback. Those ignore their
* varyings so it doesn't matter what we do here as long as we don't fail.
*/
varyings->slots[VARYING_SLOT_POS] = base;
base += 4;