diff --git a/src/mesa/state_tracker/st_atom_shader.c b/src/mesa/state_tracker/st_atom_shader.c index f5ccced55bd..97217710548 100644 --- a/src/mesa/state_tracker/st_atom_shader.c +++ b/src/mesa/state_tracker/st_atom_shader.c @@ -225,16 +225,16 @@ st_update_vp( struct st_context *st ) key.clip_negative_one_to_one = st->ctx->Transform.ClipDepthMode == GL_NEGATIVE_ONE_TO_ONE; - if (!st->ctx->GeometryProgram._Current) { + if (!st->ctx->GeometryProgram._Current && + !st->ctx->TessEvalProgram._Current) { /* _NEW_POINT */ key.lower_point_size = st->lower_point_size && !st_point_size_per_vertex(st->ctx); - } - /* _NEW_TRANSFORM */ - if (st->lower_ucp && st_user_clip_planes_enabled(st->ctx) && - !st->ctx->GeometryProgram._Current) - key.lower_ucp = st->ctx->Transform.ClipPlanesEnabled; + /* _NEW_TRANSFORM */ + if (st->lower_ucp && st_user_clip_planes_enabled(st->ctx)) + key.lower_ucp = st->ctx->Transform.ClipPlanesEnabled; + } simple_mtx_lock(&st->ctx->Shared->Mutex); st->vp_variant = st_get_vp_variant(st, stvp, &key); diff --git a/src/mesa/state_tracker/st_context.c b/src/mesa/state_tracker/st_context.c index 1faa87e433d..5189b0cd692 100644 --- a/src/mesa/state_tracker/st_context.c +++ b/src/mesa/state_tracker/st_context.c @@ -260,7 +260,7 @@ st_invalidate_state(struct gl_context *ctx) /* Update the vertex shader if ctx->Point was changed. */ if (st->lower_point_size && new_state & _NEW_POINT) - st->dirty |= ST_NEW_VS_STATE | ST_NEW_GS_STATE; + st->dirty |= ST_NEW_VS_STATE | ST_NEW_TES_STATE | ST_NEW_GS_STATE; /* Which shaders are dirty will be determined manually. */ if (new_state & _NEW_PROGRAM) { @@ -724,15 +724,6 @@ st_create_context_priv(struct gl_context *ctx, struct pipe_context *pipe, st_init_extensions(screen, &ctx->Const, &ctx->Extensions, &st->options, ctx->API); - /* FIXME: add support for geometry and tessellation shaders for - * lower_point_size - */ - assert(!ctx->Extensions.OES_geometry_shader || !st->lower_point_size); - assert(!ctx->Extensions.ARB_tessellation_shader || !st->lower_point_size); - - /* FIXME: add support for tessellation shaders for lower_ucp */ - assert(!ctx->Extensions.ARB_tessellation_shader || !st->lower_ucp); - if (st_have_perfmon(st)) { ctx->Extensions.AMD_performance_monitor = GL_TRUE; }