aco: adjust fix_exports() for VS/TES as NGG and non-monolithic shaders

Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24907>
This commit is contained in:
Samuel Pitoiset 2023-08-28 16:51:17 +02:00 committed by Marge Bot
parent bfb39031f1
commit ee8ba0f98f

View file

@ -1017,6 +1017,13 @@ fix_exports(asm_context& ctx, std::vector<uint32_t>& out, Program* program)
* exports MRTZ (if present) and the epilog exports colors.
*/
exported |= program->stage.hw == AC_HW_PIXEL_SHADER && program->info.has_epilog;
/* Do not abort for VS/TES as NGG if they are non-monolithic shaders
* because a jump would be emitted.
*/
exported |= (program->stage.sw == SWStage::VS || program->stage.sw == SWStage::TES) &&
program->stage.hw == AC_HW_NEXT_GEN_GEOMETRY_SHADER &&
!program->info.is_monolithic;
}
++it;
}