Просмотр исходного кода

st/mesa: exit st_translate_fragment_program() earlier for NIR path

This avoids a bunch of scanning that is only used by the TGSI path.

Reviewed-by: Marek Olšák <marek.olsak@amd.com>
tags/18.1-branchpoint
Timothy Arceri 7 лет назад
Родитель
Сommit
bc71e20993
1 измененных файлов: 6 добавлений и 6 удалений
  1. 6
    6
      src/mesa/state_tracker/st_program.c

+ 6
- 6
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;

Загрузка…
Отмена
Сохранить