Mesa (master): i965: For fast color clears, only check the color of live channels.

Kenneth Graunke kwg at kemper.freedesktop.org
Tue Mar 25 22:59:41 UTC 2014


Module: Mesa
Branch: master
Commit: fe635d51ff95def49f5941ebf6ca5f1dbbef3d30
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=fe635d51ff95def49f5941ebf6ca5f1dbbef3d30

Author: Kevin Rogovin <kevin.rogovin at intel.com>
Date:   Tue Mar 25 08:37:16 2014 +0200

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 at whitecape.org>

---

 src/mesa/drivers/dri/i965/brw_blorp_clear.cpp |    3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/src/mesa/drivers/dri/i965/brw_blorp_clear.cpp b/src/mesa/drivers/dri/i965/brw_blorp_clear.cpp
index fd18b45..d16da97 100644
--- a/src/mesa/drivers/dri/i965/brw_blorp_clear.cpp
+++ b/src/mesa/drivers/dri/i965/brw_blorp_clear.cpp
@@ -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;




More information about the mesa-commit mailing list