diff --git a/src/mesa/program/prog_to_nir.c b/src/mesa/program/prog_to_nir.c index 68f6d778722..7c4bd6357b3 100644 --- a/src/mesa/program/prog_to_nir.c +++ b/src/mesa/program/prog_to_nir.c @@ -835,9 +835,10 @@ setup_registers_and_variables(struct ptn_compile *c) } struct nir_shader * -prog_to_nir(const struct gl_context *ctx, const struct gl_program *prog, - const nir_shader_compiler_options *options) +prog_to_nir(const struct gl_context *ctx, const struct gl_program *prog) { + const struct nir_shader_compiler_options *options = + st_get_nir_compiler_options(ctx->st, prog->info.stage); struct ptn_compile *c; struct nir_shader *s; gl_shader_stage stage = _mesa_program_enum_to_shader_stage(prog->Target); diff --git a/src/mesa/program/prog_to_nir.h b/src/mesa/program/prog_to_nir.h index ad7c8e70c7f..6e5a8ec2843 100644 --- a/src/mesa/program/prog_to_nir.h +++ b/src/mesa/program/prog_to_nir.h @@ -30,8 +30,8 @@ extern "C" { #endif -struct nir_shader *prog_to_nir(const struct gl_context *ctx, const struct gl_program *prog, - const nir_shader_compiler_options *options); +struct nir_shader *prog_to_nir(const struct gl_context *ctx, + const struct gl_program *prog); enum glsl_sampler_dim _mesa_texture_index_to_sampler_dim(gl_texture_index index, bool *is_array); diff --git a/src/mesa/state_tracker/st_program.c b/src/mesa/state_tracker/st_program.c index 4759dd7dbf4..bf31958209b 100644 --- a/src/mesa/state_tracker/st_program.c +++ b/src/mesa/state_tracker/st_program.c @@ -410,22 +410,6 @@ st_prog_to_nir_postprocess(struct st_context *st, nir_shader *nir, nir_validate_shader(nir, "after st/glsl finalize_nir"); } -/** - * Translate ARB (asm) program to NIR - */ -static nir_shader * -st_translate_prog_to_nir(struct st_context *st, struct gl_program *prog, - gl_shader_stage stage) -{ - const struct nir_shader_compiler_options *options = - st_get_nir_compiler_options(st, prog->info.stage); - - /* Translate to NIR */ - nir_shader *nir = prog_to_nir(st->ctx, prog, options); - - return nir; -} - /** * Prepare st_vertex_program info. * @@ -616,8 +600,7 @@ st_translate_vertex_program(struct st_context *st, prog->state.type = PIPE_SHADER_IR_NIR; if (prog->arb.Instructions) - prog->nir = st_translate_prog_to_nir(st, prog, - MESA_SHADER_VERTEX); + prog->nir = prog_to_nir(st->ctx, prog); st_prog_to_nir_postprocess(st, prog->nir, prog); prog->info = prog->nir->info; @@ -1021,8 +1004,7 @@ st_translate_fragment_program(struct st_context *st, prog->state.type = PIPE_SHADER_IR_NIR; if (prog->arb.Instructions) { - prog->nir = st_translate_prog_to_nir(st, prog, - MESA_SHADER_FRAGMENT); + prog->nir = prog_to_nir(st->ctx, prog); } else if (prog->ati_fs) { const struct nir_shader_compiler_options *options = st_get_nir_compiler_options(st, MESA_SHADER_FRAGMENT);