On Sat, Jul 21, 2012 at 6:36 PM, Chad Versace <chad.vers...@linux.intel.com> wrote: > CC: Eric Anholt <e...@anholt.net> > CC: Paul Berry <stereotype...@gmail.com> > Signed-off-by: Chad Versace <chad.vers...@linux.intel.com> > --- > src/mesa/drivers/dri/intel/intel_screen.c | 31 > +++++++++++++++++++++++++++++++ > 1 file changed, 31 insertions(+) > > diff --git a/src/mesa/drivers/dri/intel/intel_screen.c > b/src/mesa/drivers/dri/intel/intel_screen.c > index 4a12b67..958ff9f 100644 > --- a/src/mesa/drivers/dri/intel/intel_screen.c > +++ b/src/mesa/drivers/dri/intel/intel_screen.c > @@ -177,6 +177,36 @@ static const __DRItexBufferExtension > intelTexBufferExtension = { > }; > > static void > +intel_downsample_for_dri2_flush(struct intel_context *intel, > + __DRIdrawable *drawable) > +{ > + if (intel->gen < 6) { > + /* MSAA is not supported, so don't waste time checking for > + * a multisample buffer. > + */ > + return; > + } > + > + struct gl_framebuffer *fb = drawable->driverPrivate; > + struct intel_renderbuffer *rb;
Declarations following code will cause a compiler error (depending on the compiler and flags). You might want to fix that, just in case. > + > + /* Usually, only the back buffer will need to be downsampled. However, > + * the front buffer will also need it if the user has rendered into it. > + */ > + static const gl_buffer_index buffers[2] = { > + BUFFER_BACK_LEFT, > + BUFFER_FRONT_LEFT, > + }; > + > + for (int i = 0; i < 2; ++i) { > + rb = intel_get_renderbuffer(fb, buffers[i]); > + if (rb == NULL || rb->mt == NULL) > + continue; > + intel_miptree_downsample(intel, rb->mt); > + } > +} > + > +static void > intelDRI2Flush(__DRIdrawable *drawable) > { > GET_CURRENT_CONTEXT(ctx); > @@ -187,6 +217,7 @@ intelDRI2Flush(__DRIdrawable *drawable) > if (intel->gen < 4) > INTEL_FIREVERTICES(intel); > > + intel_downsample_for_dri2_flush(intel, drawable); > intel->need_throttle = true; > > if (intel->batch.used) > -- > 1.7.11.2 > > _______________________________________________ > mesa-dev mailing list > mesa-dev@lists.freedesktop.org > http://lists.freedesktop.org/mailman/listinfo/mesa-dev _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-dev