From bc71e20993a456ab17e1775bf905fa000aae4c71 Mon Sep 17 00:00:00 2001 From: Timothy Arceri Date: Thu, 5 Apr 2018 16:20:23 +1000 Subject: [PATCH] st/mesa: exit st_translate_fragment_program() earlier for NIR path MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit This avoids a bunch of scanning that is only used by the TGSI path. Reviewed-by: Marek Olšák --- src/mesa/state_tracker/st_program.c | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/src/mesa/state_tracker/st_program.c b/src/mesa/state_tracker/st_program.c index 5bf76e1b888..a740c874c9e 100644 --- a/src/mesa/state_tracker/st_program.c +++ b/src/mesa/state_tracker/st_program.c @@ -645,6 +645,12 @@ bool st_translate_fragment_program(struct st_context *st, struct st_fragment_program *stfp) { + /* We have already compiled to NIR so just return */ + if (stfp->shader_program) { + st_store_ir_in_disk_cache(st, &stfp->Base, true); + return true; + } + ubyte outputMapping[2 * FRAG_RESULT_MAX]; ubyte inputMapping[VARYING_SLOT_MAX]; ubyte inputSlotToAttr[VARYING_SLOT_MAX]; @@ -900,12 +906,6 @@ st_translate_fragment_program(struct st_context *st, } } - /* We have already compiled to NIR so just return */ - if (stfp->shader_program) { - st_store_ir_in_disk_cache(st, &stfp->Base, true); - return true; - } - ureg = ureg_create_with_screen(PIPE_SHADER_FRAGMENT, st->pipe->screen); if (ureg == NULL) return false; -- 2.30.2