mesa/st: compute support for glsl_to_nir

Signed-off-by: Rob Clark <robdclark@gmail.com>
Reviewed-by: Eric Anholt <eric@anholt.net>
This commit is contained in:
Rob Clark
2017-04-04 15:55:25 -04:00
parent 53aa109ba2
commit 5f7e55582e
4 changed files with 32 additions and 1 deletions

View File

@@ -1798,6 +1798,19 @@ st_translate_compute_program(struct st_context *st,
struct ureg_program *ureg;
struct pipe_shader_state prog;
if (stcp->shader_program) {
nir_shader *nir = st_glsl_to_nir(st, &stcp->Base, stcp->shader_program,
MESA_SHADER_COMPUTE);
/* no compute variants: */
st_finalize_nir(st, &stcp->Base, nir);
stcp->tgsi.ir_type = PIPE_SHADER_IR_NIR;
stcp->tgsi.prog = nir;
return true;
}
ureg = ureg_create_with_screen(PIPE_SHADER_COMPUTE, st->pipe->screen);
if (ureg == NULL)
return false;