i965: For fast color clears, only check the color of live channels.

When deciding if a clear color is suitable for fast clear,
take into account if a color channel is active in the
buffer format.

Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
This commit is contained in:
Kevin Rogovin 2014-03-25 08:37:16 +02:00 committed by Kenneth Graunke
parent ee4484be3d
commit fe635d51ff

View file

@ -153,7 +153,8 @@ is_color_fast_clear_compatible(struct brw_context *brw,
return false;
for (int i = 0; i < 4; i++) {
if (color->f[i] != 0.0 && color->f[i] != 1.0) {
if (color->f[i] != 0.0 && color->f[i] != 1.0 &&
_mesa_format_has_color_component(format, i)) {
perf_debug("Clear color unsupported by fast color clear. "
"Falling back to slow clear.\n");
return false;