From: Chad Versace Date: Thu, 9 Aug 2012 16:15:36 +0000 (-0700) Subject: intel: Refactor intel_downsample_for_dri2_flush X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=38b748ce29a6415558bbe4886589134e3db047c8;p=mesa.git intel: Refactor intel_downsample_for_dri2_flush Move it from intel_screen.c to intel_context.c. Redeclare as non-static. A future commit will use it in multiple files. Reviewed-by: Eric Anholt Signed-off-by: Chad Versace --- diff --git a/src/mesa/drivers/dri/intel/intel_context.c b/src/mesa/drivers/dri/intel/intel_context.c index a39462bbb56..c37d89d1150 100644 --- a/src/mesa/drivers/dri/intel/intel_context.c +++ b/src/mesa/drivers/dri/intel/intel_context.c @@ -241,6 +241,36 @@ intelGetString(struct gl_context * ctx, GLenum name) } } +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; + + /* 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 intel_flush_front(struct gl_context *ctx) { diff --git a/src/mesa/drivers/dri/intel/intel_context.h b/src/mesa/drivers/dri/intel/intel_context.h index 063cc34acee..5075601d587 100644 --- a/src/mesa/drivers/dri/intel/intel_context.h +++ b/src/mesa/drivers/dri/intel/intel_context.h @@ -577,6 +577,10 @@ void intel_update_renderbuffers(__DRIcontext *context, __DRIdrawable *drawable); void intel_prepare_render(struct intel_context *intel); +void +intel_downsample_for_dri2_flush(struct intel_context *intel, + __DRIdrawable *drawable); + void i915_set_buf_info_for_region(uint32_t *state, struct intel_region *region, uint32_t buffer_id); void intel_init_texture_formats(struct gl_context *ctx); diff --git a/src/mesa/drivers/dri/intel/intel_screen.c b/src/mesa/drivers/dri/intel/intel_screen.c index 034499bf801..f4c16022c38 100644 --- a/src/mesa/drivers/dri/intel/intel_screen.c +++ b/src/mesa/drivers/dri/intel/intel_screen.c @@ -162,36 +162,6 @@ static const __DRItexBufferExtension intelTexBufferExtension = { intelSetTexBuffer2, }; -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; - - /* 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) {