st/mesa: don't generate NIR for ARB_vp/fp if NIR is not preferred

Fixes: 5d0630e504 "st/mesa: call prog_to_nir sooner for ARB_fp"
Fixes: a3de63fbb3 "st/mesa: don't generate VS TGSI if NIR is enabled"

Reviewed-by: Eric Anholt <eric@anholt.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6442>
(cherry picked from commit 2424485fb4)
This commit is contained in:
Marek Olšák 2020-08-12 11:09:43 -04:00 committed by Dylan Baker
parent 786e6a2af8
commit 83df231acd
2 changed files with 4 additions and 2 deletions

View file

@ -1597,7 +1597,7 @@
"description": "st/mesa: don't generate NIR for ARB_vp/fp if NIR is not preferred",
"nominated": true,
"nomination_type": 1,
"resolution": 0,
"resolution": 1,
"master_sha": null,
"because_sha": "5d0630e5043fc25aea3788c6a94059e2aceedf06"
},

View file

@ -510,7 +510,8 @@ st_translate_vertex_program(struct st_context *st,
stp->affected_states |= ST_NEW_VS_CONSTANTS;
/* Translate to NIR if preferred. */
if (st->pipe->screen->get_shader_param(st->pipe->screen,
if (PIPE_SHADER_IR_NIR ==
st->pipe->screen->get_shader_param(st->pipe->screen,
PIPE_SHADER_VERTEX,
PIPE_SHADER_CAP_PREFERRED_IR)) {
assert(!stp->glsl_to_tgsi);
@ -889,6 +890,7 @@ st_translate_fragment_program(struct st_context *st,
/* Translate to NIR. */
if (!stfp->ati_fs &&
PIPE_SHADER_IR_NIR ==
st->pipe->screen->get_shader_param(st->pipe->screen,
PIPE_SHADER_FRAGMENT,
PIPE_SHADER_CAP_PREFERRED_IR)) {