D861 - Legacy streamout runs as an exact compute dispatch

Status: decided Date: 2026-10-14

Transform feedback from a legacy vertex shader is carried out by the command processor as exact compute dispatches (D705, D746) of that vertex program. A draw left rasterizing is then drawn as well, its stores dropped there (D881).

Refused by name:

Why: GCTS00001's KHR-GL30.clip_distance cases read their vertex outputs back through transform feedback. radeonsi turns NGG off for streamout on this generation and submits a legacy vertex shader. orbistoun runs every vertex program as an NGG mesh shader and has no legacy vertex path, so the command processor stopped at the begin packet and at the draw. A streamout pass that draws nothing is a compute program over guest memory. The exact dispatch path already writes back precisely the words such a program stores.

Rejected: