Mesa (master): intel: Use the GLSL-based meta clear when available.

Eric Anholt anholt at kemper.freedesktop.org
Wed Jul 20 18:05:30 UTC 2011


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

Author: Eric Anholt <eric at anholt.net>
Date:   Sun Jul 17 14:55:10 2011 -0700

intel: Use the GLSL-based meta clear when available.

Improves firefox-talos-gfx performance under GL when 3D clears are
enabled:
[  0]       gl-before     firefox-talos-gfx   20.193   20.251   0.27%    3/3
[  0]       gl-after      firefox-talos-gfx   18.013   18.040   0.19%    3/3

---

 src/mesa/drivers/dri/intel/intel_clear.c |    5 ++++-
 1 files changed, 4 insertions(+), 1 deletions(-)

diff --git a/src/mesa/drivers/dri/intel/intel_clear.c b/src/mesa/drivers/dri/intel/intel_clear.c
index 5ab9873..81c062f 100644
--- a/src/mesa/drivers/dri/intel/intel_clear.c
+++ b/src/mesa/drivers/dri/intel/intel_clear.c
@@ -188,7 +188,10 @@ intelClear(struct gl_context *ctx, GLbitfield mask)
 
    if (tri_mask) {
       debug_mask("tri", tri_mask);
-      _mesa_meta_Clear(&intel->ctx, tri_mask);
+      if (ctx->Extensions.ARB_fragment_shader)
+	 _mesa_meta_glsl_Clear(&intel->ctx, tri_mask);
+      else
+	 _mesa_meta_Clear(&intel->ctx, tri_mask);
    }
 }
 




More information about the mesa-commit mailing list