Makefile | 17 debian/changelog | 2 include/GL/internal/dri_interface.h | 2 src/glx/x11/glxcmds.c | 10 src/mesa/drivers/dri/common/dri_util.h | 22 src/mesa/drivers/dri/i965/brw_sf_state.c | 25 src/mesa/drivers/dri/intel/intel_blit.c | 1 src/mesa/drivers/dri/intel/intel_buffers.c | 297 ---- src/mesa/drivers/dri/intel/intel_buffers.h | 2 src/mesa/drivers/dri/intel/intel_context.c | 2 src/mesa/drivers/dri/intel/intel_fbo.c | 39 src/mesa/drivers/dri/intel/intel_fbo.h | 28 src/mesa/drivers/dri/intel/intel_pixel_copy.c | 6 src/mesa/drivers/dri/intel/intel_screen.c | 8 src/mesa/drivers/dri/intel/intel_screen.h | 4 src/mesa/drivers/glslcompiler/Makefile | 2 src/mesa/drivers/windows/gdi/mesa.def | 5 src/mesa/main/api_validate.c | 33 src/mesa/main/colormac.h | 4 src/mesa/main/enable.c | 4 src/mesa/main/texformat.c | 48 src/mesa/main/texformat.h | 4 src/mesa/main/texformat_tmp.h | 51 src/mesa/main/texstore.c | 107 + src/mesa/main/texstore.h | 2 src/mesa/main/version.h | 2 src/mesa/shader/arbprogram.c | 1 src/mesa/shader/slang/slang_compile.c | 2 src/mesa/shader/slang/slang_emit.c | 3 src/mesa/shader/slang/slang_link.c | 4 src/mesa/shader/slang/slang_mem.c | 2 src/mesa/swrast/s_span.c | 1 src/mesa/swrast/s_texfilter.c | 5 src/mesa/tnl/t_vertex.c | 45 src/mesa/tnl/t_vertex.h | 12 windows/VC8/mesa/gdi/gdi.vcproj | 11 windows/VC8/mesa/gdi/gdi_staticCRT.vcproj | 261 +++ windows/VC8/mesa/glu/glu.vcproj | 27 windows/VC8/mesa/glu/glu_staticCRT.vcproj | 1019 +++++++++++++ windows/VC8/mesa/mesa/dosfile | 1761 +++++++++++++++++++++++ windows/VC8/mesa/mesa/dosfile2 | 1762 +++++++++++++++++++++++ windows/VC8/mesa/mesa/mesa.vcproj | 120 - windows/VC8/mesa/mesa/mesa_staticCRT.vcproj | 1768 ++++++++++++++++++++++++ windows/VC8/mesa/mesa_staticCRT.sln | 46 windows/VC8/mesa/osmesa/osmesa.vcproj | 4 windows/VC8/mesa/osmesa/osmesa_staticCRT.vcproj | 240 +++ windows/VC8/progs/demos/gears.vcproj | 9 windows/VC8/progs/demos/gears_staticCRT.vcproj | 238 +++ windows/VC8/progs/glut/glut.vcproj | 10 windows/VC8/progs/glut/glut_staticCRT.vcproj | 454 ++++++ windows/VC8/progs/progs_staticCRT.sln | 31 51 files changed, 8019 insertions(+), 544 deletions(-)
New commits: commit fcfec668657ec360aa748a97da9afc6b8932fdac Author: Julien Cristau <jcris...@debian.org> Date: Tue Jan 20 18:50:10 2009 +0000 update changelog diff --git a/debian/changelog b/debian/changelog index 8a94518..052d3db 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,4 +1,4 @@ -mesa (7.3~rc2-1) UNRELEASED; urgency=low +mesa (7.3~rc3-1) UNRELEASED; urgency=low * New upstream release candidate. commit 39e6d0d8108fe6d222865e7bb9de1e3cea18b4c4 Author: Timo Aaltonen <tjaal...@cc.hut.fi> Date: Tue Jan 20 11:45:35 2009 -0500 [intel] Go back to using the typedef for the sarea struct The upstream linux kernel headers and libdrm kernel headers disagree on the tag name for the sarea struct: _drm_i915_sarea vs drm_i915_sarea. They both typedef it to drm_i915_sarea_t though, so just use that. diff --git a/src/mesa/drivers/dri/intel/intel_buffers.c b/src/mesa/drivers/dri/intel/intel_buffers.c index 0cb3162..0fd2f16 100644 --- a/src/mesa/drivers/dri/intel/intel_buffers.c +++ b/src/mesa/drivers/dri/intel/intel_buffers.c @@ -156,7 +156,7 @@ intelWindowMoved(struct intel_context *intel) if (!intel->intelScreen->driScrnPriv->dri2.enabled && intel->intelScreen->driScrnPriv->ddx_version.minor >= 7) { - volatile struct drm_i915_sarea *sarea = intel->sarea; + volatile drm_i915_sarea_t *sarea = intel->sarea; drm_clip_rect_t drw_rect = { .x1 = dPriv->x, .x2 = dPriv->x + dPriv->w, .y1 = dPriv->y, .y2 = dPriv->y + dPriv->h }; drm_clip_rect_t planeA_rect = { .x1 = sarea->planeA_x, .y1 = sarea->planeA_y, diff --git a/src/mesa/drivers/dri/intel/intel_context.c b/src/mesa/drivers/dri/intel/intel_context.c index 7b7f7d8..c4a24d7 100644 --- a/src/mesa/drivers/dri/intel/intel_context.c +++ b/src/mesa/drivers/dri/intel/intel_context.c @@ -886,7 +886,7 @@ intelContendedLock(struct intel_context *intel, GLuint flags) { __DRIdrawablePrivate *dPriv = intel->driDrawable; __DRIscreenPrivate *sPriv = intel->driScreen; - volatile struct drm_i915_sarea *sarea = intel->sarea; + volatile drm_i915_sarea_t *sarea = intel->sarea; int me = intel->hHWContext; drmGetLock(intel->driFd, intel->hHWContext, flags); diff --git a/src/mesa/drivers/dri/intel/intel_screen.c b/src/mesa/drivers/dri/intel/intel_screen.c index fc4e82b..7042c25 100644 --- a/src/mesa/drivers/dri/intel/intel_screen.c +++ b/src/mesa/drivers/dri/intel/intel_screen.c @@ -134,7 +134,7 @@ intelPrintDRIInfo(intelScreenPrivate * intelScreen, static void -intelPrintSAREA(const struct drm_i915_sarea * sarea) +intelPrintSAREA(const drm_i915_sarea_t * sarea) { fprintf(stderr, "SAREA: sarea width %d height %d\n", sarea->width, sarea->height); @@ -161,7 +161,7 @@ intelPrintSAREA(const struct drm_i915_sarea * sarea) */ void intelUpdateScreenFromSAREA(intelScreenPrivate * intelScreen, - struct drm_i915_sarea * sarea) + drm_i915_sarea_t * sarea) { intelScreen->width = sarea->width; intelScreen->height = sarea->height; @@ -244,7 +244,7 @@ static GLboolean intelInitDriver(__DRIscreenPrivate *sPriv) { intelScreenPrivate *intelScreen; I830DRIPtr gDRIPriv = (I830DRIPtr) sPriv->pDevPriv; - struct drm_i915_sarea *sarea; + drm_i915_sarea_t *sarea; if (sPriv->devPrivSize != sizeof(I830DRIRec)) { fprintf(stderr, @@ -264,7 +264,7 @@ static GLboolean intelInitDriver(__DRIscreenPrivate *sPriv) intelScreen->driScrnPriv = sPriv; sPriv->private = (void *) intelScreen; - sarea = (struct drm_i915_sarea *) + sarea = (drm_i915_sarea_t *) (((GLubyte *) sPriv->pSAREA) + gDRIPriv->sarea_priv_offset); intelScreen->sarea = sarea; diff --git a/src/mesa/drivers/dri/intel/intel_screen.h b/src/mesa/drivers/dri/intel/intel_screen.h index cf5359b..fcd0d9c 100644 --- a/src/mesa/drivers/dri/intel/intel_screen.h +++ b/src/mesa/drivers/dri/intel/intel_screen.h @@ -68,7 +68,7 @@ typedef struct __DRIscreenPrivate *driScrnPriv; - volatile struct drm_i915_sarea *sarea; + volatile drm_i915_sarea_t *sarea; int drmMinor; @@ -94,7 +94,7 @@ extern void intelUnmapScreenRegions(intelScreenPrivate * intelScreen); extern void intelUpdateScreenFromSAREA(intelScreenPrivate * intelScreen, - struct drm_i915_sarea * sarea); + drm_i915_sarea_t * sarea); extern void intelDestroyContext(__DRIcontextPrivate * driContextPriv); commit b5da7feee03abd7ca52312476bd75d28d1afddf4 Author: Owain G. Ainsworth <o...@openbsd.org> Date: Wed Jan 14 01:14:32 2009 +0000 Remove intel pageflipping support in its entirety. It's been broken and deprecated for a while, so it's time to die. This has the wonderful benefit of cleaning up the code a fair amount; making it marginally less twisty. I'm unsure if the for loops in IntelWindowMoved are still needed. diff --git a/src/mesa/drivers/dri/intel/intel_blit.c b/src/mesa/drivers/dri/intel/intel_blit.c index 2f1639d..208f90c 100644 --- a/src/mesa/drivers/dri/intel/intel_blit.c +++ b/src/mesa/drivers/dri/intel/intel_blit.c @@ -544,7 +544,6 @@ intelClearWithBlit(GLcontext *ctx, GLbitfield mask) _mesa_debug(ctx, "hardware blit clear buf %d rb id %d\n", buf, irb->Base.Name); */ - intel_wait_flips(intel); assert(b.x1 < b.x2); assert(b.y1 < b.y2); diff --git a/src/mesa/drivers/dri/intel/intel_buffers.c b/src/mesa/drivers/dri/intel/intel_buffers.c index 4d036de..0cb3162 100644 --- a/src/mesa/drivers/dri/intel/intel_buffers.c +++ b/src/mesa/drivers/dri/intel/intel_buffers.c @@ -43,22 +43,6 @@ #include "vblank.h" #include "i915_drm.h" -/* This block can be removed when libdrm >= 2.3.1 is required */ - -#ifndef DRM_IOCTL_I915_FLIP - -#define DRM_VBLANK_FLIP 0x8000000 - -typedef struct drm_i915_flip { - int pipes; -} drm_i915_flip_t; - -#undef DRM_IOCTL_I915_FLIP -#define DRM_IOCTL_I915_FLIP DRM_IOW(DRM_COMMAND_BASE + DRM_I915_FLIP, \ - drm_i915_flip_t) - -#endif - #define FILE_DEBUG_FLAG DEBUG_BLIT /** @@ -143,8 +127,7 @@ intel_get_cliprects(struct intel_context *intel, *num_cliprects = 1; *x_off = 0; *y_off = 0; - } else if (intel->front_cliprects || - intel_fb->pf_active || dPriv->numBackClipRects == 0) { + } else if (intel->front_cliprects || dPriv->numBackClipRects == 0) { /* use the front clip rects */ *cliprects = dPriv->pClipRects; *num_cliprects = dPriv->numClipRects; @@ -160,76 +143,6 @@ intel_get_cliprects(struct intel_context *intel, } } -static void -intelUpdatePageFlipping(struct intel_context *intel, - GLint areaA, GLint areaB) -{ - __DRIdrawablePrivate *dPriv = intel->driDrawable; - struct intel_framebuffer *intel_fb = dPriv->driverPrivate; - GLboolean pf_active; - GLint pf_planes; - - /* Update page flipping info */ - pf_planes = 0; - - if (areaA > 0) - pf_planes |= 1; - - if (areaB > 0) - pf_planes |= 2; - - intel_fb->pf_current_page = (intel->sarea->pf_current_page >> - (intel_fb->pf_planes & 0x2)) & 0x3; - - intel_fb->pf_num_pages = 2; - - pf_active = pf_planes && (pf_planes & intel->sarea->pf_active) == pf_planes; - - if (INTEL_DEBUG & DEBUG_LOCK) - if (pf_active != intel_fb->pf_active) - _mesa_printf("%s - Page flipping %sactive\n", __progname, - pf_active ? "" : "in"); - - if (pf_active) { - /* Sync pages between planes if flipping on both at the same time */ - if (pf_planes == 0x3 && pf_planes != intel_fb->pf_planes && - (intel->sarea->pf_current_page & 0x3) != - (((intel->sarea->pf_current_page) >> 2) & 0x3)) { - drm_i915_flip_t flip; - - if (intel_fb->pf_current_page == - (intel->sarea->pf_current_page & 0x3)) { - /* XXX: This is ugly, but emitting two flips 'in a row' can cause - * lockups for unknown reasons. - */ - intel->sarea->pf_current_page = - intel->sarea->pf_current_page & 0x3; - intel->sarea->pf_current_page |= - ((intel_fb->pf_current_page + intel_fb->pf_num_pages - 1) % - intel_fb->pf_num_pages) << 2; - - flip.pipes = 0x2; - } else { - intel->sarea->pf_current_page = - intel->sarea->pf_current_page & (0x3 << 2); - intel->sarea->pf_current_page |= - (intel_fb->pf_current_page + intel_fb->pf_num_pages - 1) % - intel_fb->pf_num_pages; - - flip.pipes = 0x1; - } - - drmCommandWrite(intel->driFd, DRM_I915_FLIP, &flip, sizeof(flip)); - } - - intel_fb->pf_planes = pf_planes; - } - - intel_fb->pf_active = pf_active; - intel_flip_renderbuffers(intel_fb); - intel_draw_buffer(&intel->ctx, intel->ctx.DrawBuffer); -} - /** * This will be called whenever the currently bound window is moved/resized. * XXX: actually, it seems to NOT be called when the window is only moved (BP). @@ -256,8 +169,6 @@ intelWindowMoved(struct intel_context *intel) GLint areaB = driIntersectArea( drw_rect, planeB_rect ); GLuint flags = dPriv->vblFlags; - intelUpdatePageFlipping(intel, areaA, areaB); - /* Update vblank info */ if (areaB > areaA || (areaA == areaB && areaB > 0)) { @@ -282,7 +193,7 @@ intelWindowMoved(struct intel_context *intel) vbl.request.type |= DRM_VBLANK_SECONDARY; } - for (i = 0; i < intel_fb->pf_num_pages; i++) { + for (i = 0; i < 2; i++) { if (!intel_fb->color_rb[i] || (intel_fb->vbl_waited - intel_fb->color_rb[i]->vbl_pending) <= (1<<23)) @@ -306,7 +217,7 @@ intelWindowMoved(struct intel_context *intel) intel_fb->vbl_waited = dPriv->vblSeq; - for (i = 0; i < intel_fb->pf_num_pages; i++) { + for (i = 0; i < 2; i++) { if (intel_fb->color_rb[i]) intel_fb->color_rb[i]->vbl_pending = intel_fb->vbl_waited; } @@ -545,176 +456,6 @@ intelClear(GLcontext *ctx, GLbitfield mask) } } - -/* Emit wait for pending flips */ -void -intel_wait_flips(struct intel_context *intel) -{ - struct intel_framebuffer *intel_fb = - (struct intel_framebuffer *) intel->ctx.DrawBuffer; - struct intel_renderbuffer *intel_rb = - intel_get_renderbuffer(&intel_fb->Base, - intel_fb->Base._ColorDrawBufferIndexes[0] == - BUFFER_FRONT_LEFT ? BUFFER_FRONT_LEFT : - BUFFER_BACK_LEFT); - - if (intel->intelScreen->driScrnPriv->dri2.enabled) - return; - - if (intel_fb->Base.Name == 0 && intel_rb && - intel_rb->pf_pending == intel_fb->pf_seq) { - GLint pf_planes = intel_fb->pf_planes; - BATCH_LOCALS; - - /* Wait for pending flips to take effect */ - BEGIN_BATCH(2, NO_LOOP_CLIPRECTS); - OUT_BATCH(pf_planes & 0x1 ? (MI_WAIT_FOR_EVENT | MI_WAIT_FOR_PLANE_A_FLIP) - : 0); - OUT_BATCH(pf_planes & 0x2 ? (MI_WAIT_FOR_EVENT | MI_WAIT_FOR_PLANE_B_FLIP) - : 0); - ADVANCE_BATCH(); - - intel_rb->pf_pending--; - } -} - - -/* Flip the front & back buffers - */ -static GLboolean -intelPageFlip(const __DRIdrawablePrivate * dPriv) -{ - struct intel_context *intel; - int ret; - struct intel_framebuffer *intel_fb = dPriv->driverPrivate; - - if (INTEL_DEBUG & DEBUG_IOCTL) - fprintf(stderr, "%s\n", __FUNCTION__); - - assert(dPriv); - assert(dPriv->driContextPriv); - assert(dPriv->driContextPriv->driverPrivate); - - intel = (struct intel_context *) dPriv->driContextPriv->driverPrivate; - - if (intel->intelScreen->drmMinor < 9) - return GL_FALSE; - - intelFlush(&intel->ctx); - - ret = 0; - - LOCK_HARDWARE(intel); - - if (dPriv->numClipRects && intel_fb->pf_active) { - drm_i915_flip_t flip; - - flip.pipes = intel_fb->pf_planes; - - ret = drmCommandWrite(intel->driFd, DRM_I915_FLIP, &flip, sizeof(flip)); - } - - UNLOCK_HARDWARE(intel); - - if (ret || !intel_fb->pf_active) - return GL_FALSE; - - if (!dPriv->numClipRects) { - usleep(10000); /* throttle invisible client 10ms */ - } - - intel_fb->pf_current_page = (intel->sarea->pf_current_page >> - (intel_fb->pf_planes & 0x2)) & 0x3; - - if (dPriv->numClipRects != 0) { - intel_get_renderbuffer(&intel_fb->Base, BUFFER_FRONT_LEFT)->pf_pending = - intel_get_renderbuffer(&intel_fb->Base, BUFFER_BACK_LEFT)->pf_pending = - ++intel_fb->pf_seq; - } - - intel_flip_renderbuffers(intel_fb); - intel_draw_buffer(&intel->ctx, &intel_fb->Base); - - return GL_TRUE; -} - -static GLboolean -intelScheduleSwap(__DRIdrawablePrivate * dPriv, GLboolean *missed_target) -{ - struct intel_framebuffer *intel_fb = dPriv->driverPrivate; - unsigned int interval; - struct intel_context *intel = - intelScreenContext(dPriv->driScreenPriv->private); - const intelScreenPrivate *intelScreen = intel->intelScreen; - unsigned int target; - drm_i915_vblank_swap_t swap; - GLboolean ret; - - if (!dPriv->vblFlags || - (dPriv->vblFlags & VBLANK_FLAG_NO_IRQ) || - intelScreen->drmMinor < (intel_fb->pf_active ? 9 : 6)) - return GL_FALSE; - - interval = driGetVBlankInterval(dPriv); - - swap.seqtype = DRM_VBLANK_ABSOLUTE; - - if (dPriv->vblFlags & VBLANK_FLAG_SYNC) { - swap.seqtype |= DRM_VBLANK_NEXTONMISS; - } else if (interval == 0) - return GL_FALSE; - - swap.drawable = dPriv->hHWDrawable; - target = swap.sequence = dPriv->vblSeq + interval; - - if ( dPriv->vblFlags & VBLANK_FLAG_SECONDARY ) { - swap.seqtype |= DRM_VBLANK_SECONDARY; - } - - LOCK_HARDWARE(intel); - - intel_batchbuffer_flush(intel->batch); - - if ( intel_fb->pf_active ) { - swap.seqtype |= DRM_VBLANK_FLIP; - - intel_fb->pf_current_page = (((intel->sarea->pf_current_page >> - (intel_fb->pf_planes & 0x2)) & 0x3) + 1) % - intel_fb->pf_num_pages; - } - - if (!drmCommandWriteRead(intel->driFd, DRM_I915_VBLANK_SWAP, &swap, - sizeof(swap))) { - dPriv->vblSeq = swap.sequence; - swap.sequence -= target; - *missed_target = swap.sequence > 0 && swap.sequence <= (1 << 23); - - intel_get_renderbuffer(&intel_fb->Base, BUFFER_BACK_LEFT)->vbl_pending = - intel_get_renderbuffer(&intel_fb->Base, - BUFFER_FRONT_LEFT)->vbl_pending = - dPriv->vblSeq; - - if (swap.seqtype & DRM_VBLANK_FLIP) { - intel_flip_renderbuffers(intel_fb); - intel_draw_buffer(&intel->ctx, intel->ctx.DrawBuffer); - } - - ret = GL_TRUE; - } else { - if (swap.seqtype & DRM_VBLANK_FLIP) { - intel_fb->pf_current_page = ((intel->sarea->pf_current_page >> - (intel_fb->pf_planes & 0x2)) & 0x3) % - intel_fb->pf_num_pages; - } - - ret = GL_FALSE; - } - - UNLOCK_HARDWARE(intel); - - return ret; -} - void intelSwapBuffers(__DRIdrawablePrivate * dPriv) { @@ -736,22 +477,22 @@ intelSwapBuffers(__DRIdrawablePrivate * dPriv) _mesa_notifySwapBuffers(ctx); /* flush pending rendering comands */ - if (!intelScheduleSwap(dPriv, &missed_target)) { - driWaitForVBlank(dPriv, &missed_target); + /* + * The old swapping ioctl was incredibly racy, just wait for vblank + * and do the swap ourselves. + */ + driWaitForVBlank(dPriv, &missed_target); - /* - * Update each buffer's vbl_pending so we don't get too out of - * sync - */ - intel_get_renderbuffer(&intel_fb->Base, - BUFFER_BACK_LEFT)->vbl_pending = - intel_get_renderbuffer(&intel_fb->Base, - BUFFER_FRONT_LEFT)->vbl_pending = - dPriv->vblSeq; - if (!intelPageFlip(dPriv)) { - intelCopyBuffer(dPriv, NULL); - } - } + /* + * Update each buffer's vbl_pending so we don't get too out of + * sync + */ + intel_get_renderbuffer(&intel_fb->Base, + BUFFER_BACK_LEFT)->vbl_pending = dPriv->vblSeq; + intel_get_renderbuffer(&intel_fb->Base, + BUFFER_FRONT_LEFT)->vbl_pending = dPriv->vblSeq; + + intelCopyBuffer(dPriv, NULL); intel_fb->swap_count++; (*psp->systemTime->getUST) (&ust); diff --git a/src/mesa/drivers/dri/intel/intel_buffers.h b/src/mesa/drivers/dri/intel/intel_buffers.h index e5afb37..0be1cee 100644 --- a/src/mesa/drivers/dri/intel/intel_buffers.h +++ b/src/mesa/drivers/dri/intel/intel_buffers.h @@ -45,8 +45,6 @@ extern struct intel_region *intel_readbuf_region(struct intel_context *intel); extern struct intel_region *intel_drawbuf_region(struct intel_context *intel); -extern void intel_wait_flips(struct intel_context *intel); - extern void intelSwapBuffers(__DRIdrawablePrivate * dPriv); extern void intelWindowMoved(struct intel_context *intel); diff --git a/src/mesa/drivers/dri/intel/intel_fbo.c b/src/mesa/drivers/dri/intel/intel_fbo.c index 54f2fa5..7cf1261 100644 --- a/src/mesa/drivers/dri/intel/intel_fbo.c +++ b/src/mesa/drivers/dri/intel/intel_fbo.c @@ -77,43 +77,6 @@ intel_get_renderbuffer(struct gl_framebuffer *fb, int attIndex) return NULL; } - -void -intel_flip_renderbuffers(struct intel_framebuffer *intel_fb) -{ - int current_page = intel_fb->pf_current_page; - int next_page = (current_page + 1) % intel_fb->pf_num_pages; - struct gl_renderbuffer *tmp_rb; - - /* Exchange renderbuffers if necessary but make sure their reference counts - * are preserved. - */ - if (intel_fb->color_rb[current_page] && - intel_fb->Base.Attachment[BUFFER_FRONT_LEFT].Renderbuffer != - &intel_fb->color_rb[current_page]->Base) { - tmp_rb = NULL; - _mesa_reference_renderbuffer(&tmp_rb, - intel_fb->Base.Attachment[BUFFER_FRONT_LEFT].Renderbuffer); - tmp_rb = &intel_fb->color_rb[current_page]->Base; - _mesa_reference_renderbuffer( - &intel_fb->Base.Attachment[BUFFER_FRONT_LEFT].Renderbuffer, tmp_rb); - _mesa_reference_renderbuffer(&tmp_rb, NULL); - } - - if (intel_fb->color_rb[next_page] && - intel_fb->Base.Attachment[BUFFER_BACK_LEFT].Renderbuffer != - &intel_fb->color_rb[next_page]->Base) { - tmp_rb = NULL; - _mesa_reference_renderbuffer(&tmp_rb, - intel_fb->Base.Attachment[BUFFER_BACK_LEFT].Renderbuffer); - tmp_rb = &intel_fb->color_rb[next_page]->Base; - _mesa_reference_renderbuffer( - &intel_fb->Base.Attachment[BUFFER_BACK_LEFT].Renderbuffer, tmp_rb); - _mesa_reference_renderbuffer(&tmp_rb, NULL); - } -} - - struct intel_region * intel_get_rb_region(struct gl_framebuffer *fb, GLuint attIndex) { @@ -351,7 +314,7 @@ intel_resize_buffers(GLcontext *ctx, struct gl_framebuffer *fb, } /* Make sure all window system renderbuffers are up to date */ - for (i = 0; i < 3; i++) { + for (i = 0; i < 2; i++) { struct gl_renderbuffer *rb = &intel_fb->color_rb[i]->Base; /* only resize if size is changing */ diff --git a/src/mesa/drivers/dri/intel/intel_fbo.h b/src/mesa/drivers/dri/intel/intel_fbo.h index c57a01c..b7e9280 100644 --- a/src/mesa/drivers/dri/intel/intel_fbo.h +++ b/src/mesa/drivers/dri/intel/intel_fbo.h @@ -39,14 +39,7 @@ struct intel_framebuffer { struct gl_framebuffer Base; - struct intel_renderbuffer *color_rb[3]; - - /* Drawable page flipping state */ - GLboolean pf_active; - GLuint pf_seq; - GLint pf_planes; - GLint pf_current_page; - GLint pf_num_pages; + struct intel_renderbuffer *color_rb[2]; /* VBI */ @@ -76,8 +69,6 @@ struct intel_renderbuffer GLuint PairedDepth; /**< only used if this is a depth renderbuffer */ GLuint PairedStencil; /**< only used if this is a stencil renderbuffer */ - GLuint pf_pending; /**< sequence number of pending flip */ - GLuint vbl_pending; /**< vblank sequence number of pending flip */ uint8_t *span_cache; commit 0f548dbc9811838362c8cfaecc10f1fbe8c3dd8d Author: Brian Paul <bri...@vmware.com> Date: Tue Jan 20 09:21:32 2009 -0700 glsl: silence unused var warnings diff --git a/src/mesa/shader/slang/slang_mem.c b/src/mesa/shader/slang/slang_mem.c index 21d6bfc..9224578 100644 --- a/src/mesa/shader/slang/slang_mem.c +++ b/src/mesa/shader/slang/slang_mem.c @@ -184,6 +184,7 @@ _slang_realloc(void *oldBuffer, GLuint oldSize, GLuint newSize) #else GET_CURRENT_CONTEXT(ctx); slang_mempool *pool = (slang_mempool *) ctx->Shader.MemPool; + (void) pool; if (newSize < oldSize) { return oldBuffer; @@ -235,6 +236,7 @@ _slang_free(void *addr) if (addr) { GET_CURRENT_CONTEXT(ctx); slang_mempool *pool = (slang_mempool *) ctx->Shader.MemPool; + (void) pool; ASSERT(is_valid_address(pool, addr)); } #endif commit 9d216be8cfe57f88cd2d890c2334df8ff5c30436 Author: Brian Paul <bri...@vmware.com> Date: Tue Jan 20 09:20:41 2009 -0700 mesa: silence uninitialized var warnings diff --git a/src/mesa/swrast/s_span.c b/src/mesa/swrast/s_span.c index 214c2a1..7f9cc64 100644 --- a/src/mesa/swrast/s_span.c +++ b/src/mesa/swrast/s_span.c @@ -1032,6 +1032,7 @@ add_specular(GLcontext *ctx, SWspan *span) ASSERT(!ctx->FragmentProgram._Current); ASSERT(span->arrayMask & SPAN_RGBA); ASSERT(swrast->_ActiveAttribMask & FRAG_BIT_COL1); + (void) swrast; /* silence warning */ if (span->array->ChanType == GL_FLOAT) { if ((span->arrayAttribs & FRAG_BIT_COL0) == 0) { diff --git a/src/mesa/swrast/s_texfilter.c b/src/mesa/swrast/s_texfilter.c index 6b1dfd5..a095b25 100644 --- a/src/mesa/swrast/s_texfilter.c +++ b/src/mesa/swrast/s_texfilter.c @@ -2064,6 +2064,7 @@ clamp_rect_coord_linear(GLenum wrapMode, GLfloat coord, GLint max, default: _mesa_problem(NULL, "bad wrapMode in clamp_rect_coord_linear"); i0 = i1 = 0; + fcol = 0.0F; } *i0out = i0; *i1out = i1; @@ -2872,6 +2873,8 @@ sample_depth_texture( GLcontext *ctx, texcoords[i][1]); slice = clamp_rect_coord_nearest(tObj->WrapR, texcoords[i][2], depth); break; + default: + col = row = slice = 0; } if (col >= 0 && row >= 0 && col < width && row < height && @@ -2982,6 +2985,8 @@ sample_depth_texture( GLcontext *ctx, texcoords[i][1], &j0, &j1, &b); slice = clamp_rect_coord_nearest(tObj->WrapR, texcoords[i][2], depth); break; + default: + slice = 0; } useBorderTexel = 0; commit eb26cc6cf5ba0b8ff4c7d85da8f421839691186a Author: Brian Paul <bri...@vmware.com> Date: Tue Jan 20 09:17:12 2009 -0700 mesa: silence compiler warning at -O2 diff --git a/src/mesa/shader/arbprogram.c b/src/mesa/shader/arbprogram.c index 760dac2..7c2b747 100644 --- a/src/mesa/shader/arbprogram.c +++ b/src/mesa/shader/arbprogram.c @@ -807,6 +807,7 @@ _mesa_GetProgramLocalParameterdvARB(GLenum target, GLuint index, { GET_CURRENT_CONTEXT(ctx); GLfloat floatParams[4]; + ASSIGN_4V(floatParams, 0.0F, 0.0F, 0.0F, 0.0F); _mesa_GetProgramLocalParameterfvARB(target, index, floatParams); if (ctx->ErrorValue == GL_NO_ERROR) { COPY_4V(params, floatParams); commit bb63a663b1a3a3a3f27ebc8b1a678c3bc7cc4a69 Author: Brian Paul <bri...@vmware.com> Date: Tue Jan 20 09:13:41 2009 -0700 mesa: bump version to 7.3-rc3 diff --git a/Makefile b/Makefile index 894e373..ebc5254 100644 --- a/Makefile +++ b/Makefile @@ -174,10 +174,10 @@ ultrix-gcc: # Rules for making release tarballs -DIRECTORY = Mesa-7.3-rc2 -LIB_NAME = MesaLib-7.3-rc2 -DEMO_NAME = MesaDemos-7.3-rc2 -GLUT_NAME = MesaGLUT-7.3-rc2 +DIRECTORY = Mesa-7.3-rc3 +LIB_NAME = MesaLib-7.3-rc3 +DEMO_NAME = MesaDemos-7.3-rc3 +GLUT_NAME = MesaGLUT-7.3-rc3 MAIN_FILES = \ $(DIRECTORY)/Makefile* \ diff --git a/src/mesa/main/version.h b/src/mesa/main/version.h index 24495d6..3d874c8 100644 --- a/src/mesa/main/version.h +++ b/src/mesa/main/version.h @@ -31,7 +31,7 @@ #define MESA_MAJOR 7 #define MESA_MINOR 3 #define MESA_PATCH 0 -#define MESA_VERSION_STRING "7.3-rc2" +#define MESA_VERSION_STRING "7.3-rc3" /* To make version comparison easy */ #define MESA_VERSION(a,b,c) (((a) << 16) + ((b) << 8) + (c)) commit dace4e3e2a4646d7512028c9aaff6b4a1fc16b3f Author: Brian Paul <bri...@vmware.com> Date: Tue Jan 20 09:13:06 2009 -0700 mesa: inlclude whole windows/VC8/ directory in tarballs diff --git a/Makefile b/Makefile index 55d2e39..894e373 100644 --- a/Makefile +++ b/Makefile @@ -298,14 +298,7 @@ MAIN_FILES = \ $(DIRECTORY)/vms/analyze_map.com \ $(DIRECTORY)/vms/xlib.opt \ $(DIRECTORY)/vms/xlib_share.opt \ - $(DIRECTORY)/windows/VC8/mesa/mesa.sln \ - $(DIRECTORY)/windows/VC8/mesa/gdi/gdi.vcproj \ - $(DIRECTORY)/windows/VC8/mesa/glu/glu.vcproj \ - $(DIRECTORY)/windows/VC8/mesa/mesa/mesa.vcproj \ - $(DIRECTORY)/windows/VC8/mesa/osmesa/osmesa.vcproj \ - $(DIRECTORY)/windows/VC8/progs/progs.sln \ - $(DIRECTORY)/windows/VC8/progs/demos/gears.vcproj \ - $(DIRECTORY)/windows/VC8/progs/glut/glut.vcproj + $(DIRECTORY)/windows/VC8/ DRI_FILES = \ commit bbda892c551e7d3f2d94cc877cc6e80f8568fa99 Author: Thomas Henn <thomas.h...@igd.fraunhofer.de> Date: Tue Jan 20 09:05:18 2009 -0700 windows: new VC8 projects statically linked against libcmt diff --git a/windows/VC8/mesa/gdi/gdi_staticCRT.vcproj b/windows/VC8/mesa/gdi/gdi_staticCRT.vcproj new file mode 100644 index 0000000..47bd522 --- /dev/null +++ b/windows/VC8/mesa/gdi/gdi_staticCRT.vcproj @@ -0,0 +1,261 @@ +<?xml version="1.0" encoding="Windows-1252"?> +<VisualStudioProject + ProjectType="Visual C++" + Version="8,00" + Name="gdi_staticCRT" + ProjectGUID="{A1B24907-E196-4826-B6AF-26723629B633}" + RootNamespace="gdi" + > + <Platforms> + <Platform + Name="Win32" + /> + </Platforms> + <ToolFiles> + </ToolFiles> + <Configurations> + <Configuration + Name="Debug|Win32" + OutputDirectory=".\Debug" + IntermediateDirectory=".\Debug" + ConfigurationType="2" + InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC70.vsprops" + UseOfMFC="0" + ATLMinimizesCRunTimeLibraryUsage="false" + CharacterSet="2" + > + <Tool + Name="VCPreBuildEventTool" + /> + <Tool + Name="VCCustomBuildTool" + /> + <Tool + Name="VCXMLDataGeneratorTool" + /> + <Tool + Name="VCWebServiceProxyGeneratorTool" + /> + <Tool + Name="VCMIDLTool" + PreprocessorDefinitions="_DEBUG" + MkTypLibCompatible="true" + SuppressStartupBanner="true" + TargetEnvironment="1" + TypeLibraryName=".\Debug/gdi.tlb" + /> + <Tool + Name="VCCLCompilerTool" + Optimization="0" + AdditionalIncludeDirectories="../../../../include,../../../../src/mesa,../../../../src/mesa/main,../../../../src/mesa/glapi,../../../../src/mesa/swrast,../../../../src/mesa/shader" + PreprocessorDefinitions="_DEBUG;WIN32;_WINDOWS;_USRDLL;GDI_EXPORTS;MESA_MINWARN" + BasicRuntimeChecks="3" + RuntimeLibrary="1" + PrecompiledHeaderFile=".\Debug/gdi.pch" + AssemblerListingLocation=".\Debug/" + ObjectFile=".\Debug/" + ProgramDataBaseFileName=".\Debug/" + BrowseInformation="1" + WarningLevel="3" + SuppressStartupBanner="true" + DebugInformationFormat="3" + CompileAs="0" + /> + <Tool + Name="VCManagedResourceCompilerTool" + /> + <Tool + Name="VCResourceCompilerTool" + PreprocessorDefinitions="_DEBUG" + Culture="1033" + /> + <Tool + Name="VCPreLinkEventTool" + /> + <Tool + Name="VCLinkerTool" + AdditionalOptions="/MACHINE:I386" + OutputFile="Debug/OPENGL32.DLL" + LinkIncremental="1" + SuppressStartupBanner="true" + AdditionalLibraryDirectories="../mesa/Debug" + ModuleDefinitionFile="..\..\..\..\src\mesa\drivers\windows\gdi\mesa.def" + GenerateDebugInformation="true" + ProgramDatabaseFile=".\Debug/OPENGL32.pdb" + ImportLibrary=".\Debug/OPENGL32.lib" + /> + <Tool + Name="VCALinkTool" + /> + <Tool + Name="VCManifestTool" + /> + <Tool + Name="VCXDCMakeTool" + /> + <Tool + Name="VCBscMakeTool" + /> + <Tool + Name="VCFxCopTool" + /> + <Tool + Name="VCAppVerifierTool" + /> + <Tool + Name="VCWebDeploymentTool" + /> + <Tool + Name="VCPostBuildEventTool" + CommandLine="if not exist ..\..\..\..\lib md ..\..\..\..\lib
copy Debug\OPENGL32.LIB ..\..\..\..\lib
copy Debug\OPENGL32.DLL ..\..\..\..\lib
if exist ..\..\..\..\progs\demos copy Debug\OPENGL32.DLL ..\..\..\..\progs\demos
" + /> + </Configuration> + <Configuration + Name="Release|Win32" + OutputDirectory=".\Release" + IntermediateDirectory=".\Release" + ConfigurationType="2" + InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC70.vsprops" + UseOfMFC="0" + ATLMinimizesCRunTimeLibraryUsage="false" + CharacterSet="2" + > + <Tool + Name="VCPreBuildEventTool" + /> + <Tool + Name="VCCustomBuildTool" + /> + <Tool + Name="VCXMLDataGeneratorTool" + /> + <Tool + Name="VCWebServiceProxyGeneratorTool" + /> + <Tool + Name="VCMIDLTool" + PreprocessorDefinitions="NDEBUG" + MkTypLibCompatible="true" + SuppressStartupBanner="true" + TargetEnvironment="1" + TypeLibraryName=".\Release/gdi.tlb" + /> + <Tool + Name="VCCLCompilerTool" + InlineFunctionExpansion="1" + AdditionalIncludeDirectories="../../main,../../../../include,../../../../src/mesa,../../../../src/mesa/main,../../../../src/mesa/glapi,../../../../src/mesa/swrast,../../../../src/mesa/shader" + PreprocessorDefinitions="NDEBUG;WIN32;_WINDOWS;_USRDLL;GDI_EXPORTS;MESA_MINWARN" + StringPooling="true" + RuntimeLibrary="0" + EnableFunctionLevelLinking="true" + PrecompiledHeaderFile=".\Release/gdi.pch" + AssemblerListingLocation=".\Release/" + ObjectFile=".\Release/" + ProgramDataBaseFileName=".\Release/" + WarningLevel="3" + SuppressStartupBanner="true" + CompileAs="0" + /> + <Tool + Name="VCManagedResourceCompilerTool" + /> + <Tool + Name="VCResourceCompilerTool" + PreprocessorDefinitions="NDEBUG" + Culture="1033" + /> + <Tool + Name="VCPreLinkEventTool" + /> + <Tool + Name="VCLinkerTool" + AdditionalOptions="/MACHINE:I386" + OutputFile="Release/OPENGL32.DLL" + LinkIncremental="1" + SuppressStartupBanner="true" + AdditionalLibraryDirectories="../mesa/Release" + ModuleDefinitionFile="..\..\..\..\src\mesa\drivers\windows\gdi\mesa.def" -- To UNSUBSCRIBE, email to debian-x-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org