From 6d3a2c97f4a78e85545286e0e126cd3a27bd1cbd Mon Sep 17 00:00:00 2001 From: Luca Barbieri Date: Sun, 5 Sep 2010 18:49:54 +0200 Subject: glsl: make compiler options per-target This allows us to specify different options, especially useful for chips without unified shaders. Signed-off-by: Ian Romanick --- src/mesa/state_tracker/st_extensions.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) (limited to 'src/mesa/state_tracker') diff --git a/src/mesa/state_tracker/st_extensions.c b/src/mesa/state_tracker/st_extensions.c index acb9526c01..82be149433 100644 --- a/src/mesa/state_tracker/st_extensions.c +++ b/src/mesa/state_tracker/st_extensions.c @@ -68,6 +68,7 @@ void st_init_limits(struct st_context *st) struct pipe_screen *screen = st->pipe->screen; struct gl_constants *c = &st->ctx->Const; struct gl_program_constants *pc; + unsigned i; c->MaxTextureLevels = _min(screen->get_param(screen, PIPE_CAP_MAX_TEXTURE_2D_LEVELS), @@ -136,8 +137,9 @@ void st_init_limits(struct st_context *st) /* Is TGSI_OPCODE_CONT supported? */ /* XXX separate query for early function return? */ - st->ctx->Shader.EmitContReturn = - screen->get_param(screen, PIPE_CAP_TGSI_CONT_SUPPORTED); + for(i = 0; i < MESA_SHADER_TYPES; ++i) + st->ctx->ShaderCompilerOptions[i].EmitContReturn = + screen->get_param(screen, PIPE_CAP_TGSI_CONT_SUPPORTED); /* Quads always follow GL provoking rules. */ c->QuadsFollowProvokingVertexConvention = GL_FALSE; -- cgit v1.2.3