some clean-up of ST_NEW_ shader flags
This commit is contained in:
@@ -416,7 +416,7 @@ const struct st_tracked_state st_update_shader = {
|
|||||||
.name = "st_update_shader",
|
.name = "st_update_shader",
|
||||||
.dirty = {
|
.dirty = {
|
||||||
.mesa = 0,
|
.mesa = 0,
|
||||||
.st = ST_NEW_LINKAGE
|
.st = ST_NEW_SHADER
|
||||||
},
|
},
|
||||||
.update = update_linkage
|
.update = update_linkage
|
||||||
};
|
};
|
||||||
|
@@ -56,15 +56,7 @@ static void st_bind_program( GLcontext *ctx,
|
|||||||
{
|
{
|
||||||
struct st_context *st = st_context(ctx);
|
struct st_context *st = st_context(ctx);
|
||||||
|
|
||||||
switch (target) {
|
st->dirty.st |= ST_NEW_SHADER;
|
||||||
case GL_VERTEX_PROGRAM_ARB:
|
|
||||||
st->dirty.st |= ST_NEW_VERTEX_PROGRAM;
|
|
||||||
break;
|
|
||||||
case GL_FRAGMENT_PROGRAM_ARB:
|
|
||||||
st->dirty.st |= ST_NEW_FRAGMENT_PROGRAM;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
st->dirty.st |= ST_NEW_LINKAGE;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@@ -77,9 +69,7 @@ static void st_use_program( GLcontext *ctx,
|
|||||||
{
|
{
|
||||||
struct st_context *st = st_context(ctx);
|
struct st_context *st = st_context(ctx);
|
||||||
|
|
||||||
st->dirty.st |= ST_NEW_VERTEX_PROGRAM;
|
st->dirty.st |= ST_NEW_SHADER;
|
||||||
st->dirty.st |= ST_NEW_FRAGMENT_PROGRAM;
|
|
||||||
st->dirty.st |= ST_NEW_LINKAGE;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@@ -126,7 +116,7 @@ static struct gl_program *st_new_program( GLcontext *ctx,
|
|||||||
return _mesa_new_program(ctx, target, id);
|
return _mesa_new_program(ctx, target, id);
|
||||||
}
|
}
|
||||||
|
|
||||||
st->dirty.st |= ST_NEW_LINKAGE;
|
st->dirty.st |= ST_NEW_SHADER;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@@ -180,9 +170,6 @@ static void st_program_string_notify( GLcontext *ctx,
|
|||||||
if (target == GL_FRAGMENT_PROGRAM_ARB) {
|
if (target == GL_FRAGMENT_PROGRAM_ARB) {
|
||||||
struct st_fragment_program *stfp = (struct st_fragment_program *) prog;
|
struct st_fragment_program *stfp = (struct st_fragment_program *) prog;
|
||||||
|
|
||||||
if (prog == &ctx->FragmentProgram._Current->Base)
|
|
||||||
st->dirty.st |= ST_NEW_FRAGMENT_PROGRAM;
|
|
||||||
|
|
||||||
stfp->serialNo++;
|
stfp->serialNo++;
|
||||||
|
|
||||||
stfp->param_state = stfp->Base.Base.Parameters->StateFlags;
|
stfp->param_state = stfp->Base.Base.Parameters->StateFlags;
|
||||||
@@ -190,9 +177,6 @@ static void st_program_string_notify( GLcontext *ctx,
|
|||||||
else if (target == GL_VERTEX_PROGRAM_ARB) {
|
else if (target == GL_VERTEX_PROGRAM_ARB) {
|
||||||
struct st_vertex_program *stvp = (struct st_vertex_program *) prog;
|
struct st_vertex_program *stvp = (struct st_vertex_program *) prog;
|
||||||
|
|
||||||
if (prog == &ctx->VertexProgram._Current->Base)
|
|
||||||
st->dirty.st |= ST_NEW_VERTEX_PROGRAM;
|
|
||||||
|
|
||||||
stvp->serialNo++;
|
stvp->serialNo++;
|
||||||
|
|
||||||
stvp->param_state = stvp->Base.Base.Parameters->StateFlags;
|
stvp->param_state = stvp->Base.Base.Parameters->StateFlags;
|
||||||
@@ -202,7 +186,7 @@ static void st_program_string_notify( GLcontext *ctx,
|
|||||||
_tnl_program_string(ctx, target, prog);
|
_tnl_program_string(ctx, target, prog);
|
||||||
}
|
}
|
||||||
|
|
||||||
st->dirty.st |= ST_NEW_LINKAGE;
|
st->dirty.st |= ST_NEW_SHADER;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@@ -45,7 +45,7 @@ struct cso_blend;
|
|||||||
#define ST_NEW_MESA 0x1 /* Mesa state has changed */
|
#define ST_NEW_MESA 0x1 /* Mesa state has changed */
|
||||||
#define ST_NEW_FRAGMENT_PROGRAM 0x2
|
#define ST_NEW_FRAGMENT_PROGRAM 0x2
|
||||||
#define ST_NEW_VERTEX_PROGRAM 0x4
|
#define ST_NEW_VERTEX_PROGRAM 0x4
|
||||||
#define ST_NEW_LINKAGE 0x8
|
#define ST_NEW_SHADER 0x8
|
||||||
|
|
||||||
|
|
||||||
struct st_state_flags {
|
struct st_state_flags {
|
||||||
|
Reference in New Issue
Block a user