i915: Don't call _mesa_meta_glsl_Clear() on gen2
authorVille Syrjälä <ville.syrjala@linux.intel.com>
Tue, 8 Jul 2014 13:13:58 +0000 (16:13 +0300)
committerVille Syrjälä <ville.syrjala@linux.intel.com>
Thu, 13 Nov 2014 17:13:27 +0000 (19:13 +0200)
Gen2 doesn't have fragment shaders so we shouldn't be calling
_mesa_meta_glsl_Clear() on gen2. Restore the appropriate
ARB_fragment_shader check to the clear path which was lost in:

 commit 94f22fbe787214580a1a13a774114d2650c166cb
 Author: Tapani Pälli <tapani.palli@intel.com>
 Date:   Wed Aug 8 20:46:45 2012 +0300

    intel: use _mesa_meta_Clear with OpenGL ES 1.1 v2

v2: Fix spelling in commit message

Reviewed-by: Eric Anholt <eric@anholt.net>
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
src/mesa/drivers/dri/i915/intel_clear.c

index 1762c1d5a0b21cd383654e2805cec33b489f61b0..5374e19ba7365fa51fd19de1cfafba0d5410ca0e 100644 (file)
@@ -179,7 +179,7 @@ intelClear(struct gl_context *ctx, GLbitfield mask)
 
    if (tri_mask) {
       debug_mask("tri", tri_mask);
-      if (ctx->API == API_OPENGLES)
+      if (ctx->API == API_OPENGLES || !ctx->Extensions.ARB_fragment_shader)
         _mesa_meta_Clear(&intel->ctx, tri_mask);
       else
         _mesa_meta_glsl_Clear(&intel->ctx, tri_mask);