[Mesa-dev] [PATCH 2/2] mesa: Add _NEW_RASTERIZER_DISCARD as synonym for _NEW_TRANSFORM.
Marek Olšák
maraeo at gmail.com
Wed Dec 21 13:13:50 PST 2011
For the series:
Reviewed-by: Marek Olšák <maraeo at gmail.com>
Marek
On Wed, Dec 21, 2011 at 1:41 AM, Paul Berry <stereotype441 at gmail.com> wrote:
> This makes it easier to keep track of which dirty bits correspond to
> which pieces of context, since it makes _NEW_RASTERIZER_DISCARD
> correspond with ctx->RasterDiscard.
> ---
> src/mesa/drivers/dri/i965/brw_gs.c | 5 +++--
> src/mesa/main/enable.c | 2 +-
> src/mesa/main/mtypes.h | 6 ++++++
> src/mesa/state_tracker/st_atom_rasterizer.c | 4 ++--
> 4 files changed, 12 insertions(+), 5 deletions(-)
>
> diff --git a/src/mesa/drivers/dri/i965/brw_gs.c b/src/mesa/drivers/dri/i965/brw_gs.c
> index 2495ad5..886bf98 100644
> --- a/src/mesa/drivers/dri/i965/brw_gs.c
> +++ b/src/mesa/drivers/dri/i965/brw_gs.c
> @@ -209,7 +209,7 @@ static void populate_key( struct brw_context *brw,
> }
> }
> /* On Gen6, GS is also used for rasterizer discard. */
> - /* _NEW_TRANSFORM_FEEDBACK */
> + /* _NEW_RASTERIZER_DISCARD */
> if (ctx->RasterDiscard) {
> key->need_gs_prog = true;
> key->rasterizer_discard = true;
> @@ -258,7 +258,8 @@ const struct brw_tracked_state brw_gs_prog = {
> .dirty = {
> .mesa = (_NEW_LIGHT |
> _NEW_TRANSFORM |
> - _NEW_TRANSFORM_FEEDBACK),
> + _NEW_TRANSFORM_FEEDBACK |
> + _NEW_RASTERIZER_DISCARD),
> .brw = BRW_NEW_PRIMITIVE,
> .cache = CACHE_NEW_VS_PROG
> },
> diff --git a/src/mesa/main/enable.c b/src/mesa/main/enable.c
> index 749ae98..270b240 100644
> --- a/src/mesa/main/enable.c
> +++ b/src/mesa/main/enable.c
> @@ -890,7 +890,7 @@ _mesa_set_enable(struct gl_context *ctx, GLenum cap, GLboolean state)
> case GL_RASTERIZER_DISCARD:
> CHECK_EXTENSION(EXT_transform_feedback, cap);
> if (ctx->RasterDiscard != state) {
> - FLUSH_VERTICES(ctx, _NEW_TRANSFORM);
> + FLUSH_VERTICES(ctx, _NEW_RASTERIZER_DISCARD);
> ctx->RasterDiscard = state;
> }
> break;
> diff --git a/src/mesa/main/mtypes.h b/src/mesa/main/mtypes.h
> index ff97ea9..3d3b006 100644
> --- a/src/mesa/main/mtypes.h
> +++ b/src/mesa/main/mtypes.h
> @@ -3073,6 +3073,12 @@ struct gl_matrix_stack
> #define _NEW_FRAG_CLAMP (1 << 29)
> #define _NEW_TRANSFORM_FEEDBACK (1 << 30) /**< gl_context::TransformFeedback */
> #define _NEW_ALL ~0
> +
> +/**
> + * We use _NEW_TRANSFORM for GL_RASTERIZER_DISCARD. This #define is for
> + * clarity.
> + */
> +#define _NEW_RASTERIZER_DISCARD _NEW_TRANSFORM
> /*@}*/
>
>
> diff --git a/src/mesa/state_tracker/st_atom_rasterizer.c b/src/mesa/state_tracker/st_atom_rasterizer.c
> index 7ebc872..2d6ad45 100644
> --- a/src/mesa/state_tracker/st_atom_rasterizer.c
> +++ b/src/mesa/state_tracker/st_atom_rasterizer.c
> @@ -258,7 +258,7 @@ static void update_raster_state( struct st_context *st )
> raster->clamp_fragment_color = ctx->Color._ClampFragmentColor;
> raster->gl_rasterization_rules = 1;
>
> - /* _NEW_TRANSFORM */
> + /* _NEW_RASTERIZER_DISCARD */
> raster->rasterizer_discard = ctx->RasterDiscard;
>
> cso_set_rasterizer(st->cso_context, raster);
> @@ -276,7 +276,7 @@ const struct st_tracked_state st_update_rasterizer = {
> _NEW_PROGRAM |
> _NEW_SCISSOR |
> _NEW_FRAG_CLAMP |
> - _NEW_TRANSFORM), /* mesa state dependencies*/
> + _NEW_RASTERIZER_DISCARD), /* mesa state dependencies*/
> ST_NEW_VERTEX_PROGRAM, /* state tracker dependencies */
> },
> update_raster_state /* update function */
> --
> 1.7.6.4
>
More information about the mesa-dev
mailing list