mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-01-22 10:40:22 +01:00
mesa/st: allow using nir for ff-fragment shaders
This is similar to what we do for ff-vertex shaders. Reviewed-by: Adam Jackson <ajax@redhat.com> Acked-by: Marek Olšák <marek.olsak@amd.com> Reviewed-by: Emma Anholt <emma@anholt.net> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22755>
This commit is contained in:
parent
793840937f
commit
5e997beeb7
1 changed files with 6 additions and 3 deletions
|
|
@ -865,7 +865,7 @@ st_translate_fragment_program(struct st_context *st,
|
|||
|
||||
/* Translate to NIR. ATI_fs translates at variant time. */
|
||||
if (!prog->ati_fs) {
|
||||
if (prog->nir)
|
||||
if (prog->nir && prog->arb.Instructions)
|
||||
ralloc_free(prog->nir);
|
||||
|
||||
if (prog->serialized_nir) {
|
||||
|
|
@ -874,8 +874,11 @@ st_translate_fragment_program(struct st_context *st,
|
|||
}
|
||||
|
||||
prog->state.type = PIPE_SHADER_IR_NIR;
|
||||
prog->nir = st_translate_prog_to_nir(st, prog,
|
||||
MESA_SHADER_FRAGMENT);
|
||||
if (prog->arb.Instructions)
|
||||
prog->nir = st_translate_prog_to_nir(st, prog,
|
||||
MESA_SHADER_FRAGMENT);
|
||||
else
|
||||
st_prog_to_nir_postprocess(st, prog->nir, prog);
|
||||
prog->info = prog->nir->info;
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue