D881 - A legacy vertex shader draws as a mesh shader that assembles its own primitives

Status: decided Date: 2026-10-14

A draw whose VGT_SHADER_STAGES_EN sets no PRIMGEN_EN and no stage before the vertex shader runs a legacy vertex shader. Its module is still made at the mesh stage (D688), with these differences.

A stream that never wrote VGT_SHADER_STAGES_EN is not taken for a legacy draw.

Why: radeonsi turns NGG off on GFX10 for every program with transform-feedback outputs, whether or not feedback is active at the draw. Such a program was bound to no vertex shader at all, and the draw ran whatever was bound before it. GCTS00001's KHR-GL30.transform_feedback group stopped at its first draw.

Rejected: