mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2025-12-28 16:50:10 +01:00
gallium: Add util_blend_factor_uses_dest helper
Drivers may be able to optimize cases where blending is enabled but the destination colour is not used. This helps detect that case. Signed-off-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com> Reviewed-by: Eric Anholt <eric@anholt.net> Reviewed-by: Marek Olšák <marek.olsak@amd.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6407>
This commit is contained in:
parent
48a910d1f9
commit
e05930511b
1 changed files with 18 additions and 0 deletions
|
|
@ -114,4 +114,22 @@ util_blend_factor_is_inverted(enum pipe_blendfactor factor)
|
|||
}
|
||||
}
|
||||
|
||||
/* To determine if the destination needs to be read while blending */
|
||||
|
||||
static inline bool
|
||||
util_blend_factor_uses_dest(enum pipe_blendfactor factor, bool alpha)
|
||||
{
|
||||
switch (factor) {
|
||||
case PIPE_BLENDFACTOR_DST_ALPHA:
|
||||
case PIPE_BLENDFACTOR_DST_COLOR:
|
||||
case PIPE_BLENDFACTOR_INV_DST_ALPHA:
|
||||
case PIPE_BLENDFACTOR_INV_DST_COLOR:
|
||||
return true;
|
||||
case PIPE_BLENDFACTOR_SRC_ALPHA_SATURATE:
|
||||
return !alpha;
|
||||
default:
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
#endif /* U_BLEND_H */
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue