[Mesa-dev] [PATCH 1/5] i965: Move BEGIN_BATCH() into same control flow as ADVANCE_BATCH().

Iago Toral itoral at igalia.com
Mon Jul 13 01:25:50 PDT 2015


I think Chris did not review this one:

Reviewed-by: Iago Toral Quiroga <itoral at igalia.com>

Iago

On Fri, 2015-07-10 at 11:44 -0700, Matt Turner wrote:
> BEGIN_BATCH() and ADVANCE_BATCH() will contain "do {" and "} while (0)"
> respectively to allow declaring local variables used by intervening
> OUT_BATCH macros. As such, BEGIN_BATCH() and ADVANCE_BATCH() need to be
> in the same control flow.
> ---
>  src/mesa/drivers/dri/i965/brw_draw.c | 4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)
> 
> diff --git a/src/mesa/drivers/dri/i965/brw_draw.c b/src/mesa/drivers/dri/i965/brw_draw.c
> index 69ad4d4..ec13473 100644
> --- a/src/mesa/drivers/dri/i965/brw_draw.c
> +++ b/src/mesa/drivers/dri/i965/brw_draw.c
> @@ -261,17 +261,17 @@ static void brw_emit_prim(struct brw_context *brw,
>        indirect_flag = 0;
>     }
>  
> +   BEGIN_BATCH(brw->gen >= 7 ? 7 : 6);
> +
>     if (brw->gen >= 7) {
>        if (brw->predicate.state == BRW_PREDICATE_STATE_USE_BIT)
>           predicate_enable = GEN7_3DPRIM_PREDICATE_ENABLE;
>        else
>           predicate_enable = 0;
>  
> -      BEGIN_BATCH(7);
>        OUT_BATCH(CMD_3D_PRIM << 16 | (7 - 2) | indirect_flag | predicate_enable);
>        OUT_BATCH(hw_prim | vertex_access_type);
>     } else {
> -      BEGIN_BATCH(6);
>        OUT_BATCH(CMD_3D_PRIM << 16 | (6 - 2) |
>                  hw_prim << GEN4_3DPRIM_TOPOLOGY_TYPE_SHIFT |
>                  vertex_access_type);




More information about the mesa-dev mailing list