diff --git a/src/compiler/shader_info.h b/src/compiler/shader_info.h index 768f0531bc7..6c05f3807ee 100644 --- a/src/compiler/shader_info.h +++ b/src/compiler/shader_info.h @@ -32,6 +32,9 @@ extern "C" { #endif typedef struct shader_info { + /** The shader stage, such as MESA_SHADER_VERTEX. */ + gl_shader_stage stage; + const char *name; /* Descriptive name provided by the client; may be NULL */ diff --git a/src/mesa/program/program.c b/src/mesa/program/program.c index e5eb06cb4b7..27ae1c6d0ee 100644 --- a/src/mesa/program/program.c +++ b/src/mesa/program/program.c @@ -190,6 +190,7 @@ _mesa_init_gl_program(struct gl_program *prog, GLenum target, GLuint id) prog->Target = target; prog->RefCount = 1; prog->Format = GL_PROGRAM_FORMAT_ASCII_ARB; + prog->info.stage = _mesa_program_enum_to_shader_stage(target); /* default mapping from samplers to texture units */ for (i = 0; i < MAX_SAMPLERS; i++)