From: Vasily Khoruzhick Date: Fri, 16 Aug 2019 05:17:26 +0000 (-0700) Subject: glsl/standalone: init shader stage in init_gl_program() X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=0e394cda0db60ce8b584aac37913b793847ad518;p=mesa.git glsl/standalone: init shader stage in init_gl_program() Otherwise lima standalone compiler fails when trying to compile fragment shader with: lima_compiler: ../src/compiler/nir/nir.c:55: nir_shader_create: Assertion `si->stage == stage' failed Reviewed-by: Qiang Yu Reviewed-by: Matt Turner Signed-off-by: Vasily Khoruzhick --- diff --git a/src/compiler/glsl/standalone.cpp b/src/compiler/glsl/standalone.cpp index 7b3d358ca96..b32fb626ef6 100644 --- a/src/compiler/glsl/standalone.cpp +++ b/src/compiler/glsl/standalone.cpp @@ -44,6 +44,7 @@ #include "builtin_functions.h" #include "opt_add_neg_to_sub.h" #include "main/mtypes.h" +#include "program/program.h" class dead_variable_visitor : public ir_hierarchical_visitor { public: @@ -98,11 +99,12 @@ private: }; static void -init_gl_program(struct gl_program *prog, bool is_arb_asm) +init_gl_program(struct gl_program *prog, bool is_arb_asm, GLenum target) { prog->RefCount = 1; prog->Format = GL_PROGRAM_FORMAT_ASCII_ARB; prog->is_arb_asm = is_arb_asm; + prog->info.stage = (gl_shader_stage)_mesa_program_enum_to_shader_stage(target); } static struct gl_program * @@ -117,7 +119,7 @@ new_program(UNUSED struct gl_context *ctx, GLenum target, case GL_FRAGMENT_PROGRAM_ARB: case GL_COMPUTE_PROGRAM_NV: { struct gl_program *prog = rzalloc(NULL, struct gl_program); - init_gl_program(prog, is_arb_asm); + init_gl_program(prog, is_arb_asm, target); return prog; } default: