mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-05-05 22:38:05 +02:00
svga: Add render_condition boolean flag in struct svga_context
set render_condition flag when driver performs conditional rendering. Blit using DXPredCopyRegion command gets affected by conditional rendering so We should check this flag while performing blit operation Tested with piglit tests. v2: As per Charmaine's comment, setting render_condition flag if svga_query is valid. Tested with pigit tests. Reviewed-by: Brian Paul <brianp@vmware.com> Reviewed-by: Charmaine Lee <charmainel@vmware.com>
This commit is contained in:
parent
2cff6f4512
commit
03e1b7cacd
3 changed files with 6 additions and 1 deletions
|
|
@ -589,6 +589,8 @@ struct svga_context
|
|||
SVGA3dQueryId query_id;
|
||||
boolean cond;
|
||||
} pred;
|
||||
|
||||
boolean render_condition;
|
||||
};
|
||||
|
||||
/* A flag for each state_tracker state object:
|
||||
|
|
|
|||
|
|
@ -265,7 +265,8 @@ can_blit_via_copy_region_vgpu10(struct svga_context *svga,
|
|||
blit_info->mask != (PIPE_MASK_ZS))
|
||||
return false;
|
||||
|
||||
if (blit_info->alpha_blend || blit_info->render_condition_enable ||
|
||||
if (blit_info->alpha_blend ||
|
||||
(svga->render_condition && blit_info->render_condition_enable) ||
|
||||
blit_info->scissor_enable)
|
||||
return false;
|
||||
|
||||
|
|
|
|||
|
|
@ -1242,6 +1242,8 @@ svga_render_condition(struct pipe_context *pipe, struct pipe_query *q,
|
|||
svga->pred.query_id = queryId;
|
||||
svga->pred.cond = condition;
|
||||
}
|
||||
|
||||
svga->render_condition = (sq != NULL);
|
||||
}
|
||||
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue