# Mesa 7.10.3 Release Notes / June 13, 2011

Mesa 7.10.3 is a bug fix release which fixes bugs found since the 7.10.2 release.

Mesa 7.10.3 implements the OpenGL 2.1 API, but the version reported by glGetString(GL_VERSION) depends on the particular driver being used. Some drivers don’t support all the features required in OpenGL 2.1.

See the Compiling/Installing page for prerequisites for DRI hardware acceleration.

## MD5 checksums

    d77b02034c11d6c2a55c07f82367d780  MesaLib-7.10.3.tar.gz
    8c38fe8266be8e1ed1d84076ba5a703b  MesaLib-7.10.3.tar.bz2
    614d063ecd170940d9ae7b355d365d59  MesaLib-7.10.3.zip
    8768fd562ede7ed763d92b2d22232d7a  MesaGLUT-7.10.3.tar.gz
    1496415b89da9549f0f3b34d9622e2e2  MesaGLUT-7.10.3.tar.bz2
    1f29d0e7398fd3bf9f36f5db02941198  MesaGLUT-7.10.3.zip

## New features

None.

## Bug fixes

This list is likely incomplete.

- Bug 29162 - mesa/darwin is severly broken

- Bug 31590 - Black space between colors on mole hill example

- Bug 32395 - [glsl] Incorrect code generation for shadow2DProj() with bias

- Bug 32564 - [llvmpipe] prog: Unknown command line argument ‘-disable-mmx’. Try: ‘prog -help’ with llvm-2.9svn

- Bug 32835 - [glsl] recursive #define results in infinite stack recursion

- Bug 33303 - [glsl] ir_constant_expression.cpp:72: virtual ir_constant* ir_expression::constant_expression_value(): Assertion `op[0]->type->base_type == op[1]->type->base_type’ failed.

- Bug 33314 - [glsl] ir_constant_expression.cpp:122: virtual ir_constant* ir_expression::constant_expression_value(): Assertion `op[0]->type->base_type == GLSL_TYPE_BOOL’ failed.

- Bug 33512 - [SNB] case ogles2conform/GL/gl_FragCoord/gl_FragCoord_xy_frag.test and gl_FragCoord_w_frag.test fail

- Bug 34280 - r200 mesa-7.10 font distortion

- Bug 34321 - The ARB_fragment_program subset of ARB_draw_buffers not implemented

- Bug 35603 - GLSL compiler freezes compiling shaders

- Bug 36173 - struct renderbuffer’s ‘format’ field never set when using FBO

- Bug 36238 - Mesa release files don’t contain scons control files

- Bug 36410 - [SNB] Rendering errors in 3DMMES subtest taiji

- Bug 36527 - [wine] Wolfenstein: Failed to translate rgb instruction.

- Bug 36651 - mesa requires bison and flex to build but configure does not check for them

- Bug 36738 - Openarena crash with r300g, swrastg + llvm > 2.8

- Bug 37648 - Logic error in mesa/main/teximage.c:texsubimage

- Bug 37739 - Color clear of FBO without color buffer crashes

## Changes

The full set of changes can be viewed by using the following GIT command:

    git log mesa-7.10.2..mesa-7.10.3

Alan Hourihane (1):

- Check for out of memory when creating fence

Alex Buell (1):

- configure: bump LIBDRM_REQUIRED to 2.4.24

Alex Deucher (2):

- r600c: add new pci ids

- r600g: add new pci ids

Brian Paul (19):

- docs: add link to 7.10.2 release notes

- scons: remove dangling reference to state_trackers/python/SConscript

- Makefile: add missing Scons files

- llvmpipe: document issue with LLVM 2.8 and earlier with AVX

- docs: replace llvmpipe/README with docs/llvmpipe.html

- glsl: add static qualifier to silence warning

- glsl: add cast to silence signed/unsigned comparison warning

- mesa: s/height/depth/ in texsubimage()

- mesa: fix void pointer arithmetic warnings

- mesa: add some missing GLAPIENTRY keywords

- mesa: check that flex/bison are installed

- st/mesa: fix incorrect texture level/face/slice accesses

- draw: fix edge flag handling in clipper (for unfilled tris/quads/polygons)

- vbo: check array indexes to prevent negative indexing

- vbo: remove node->count > 0 test in vbo_save_playback_vertex_list()

- st/mesa: fix software accum buffer format bug

- mesa: add include/c99/inttypes.h include/c99/stdbool.h include/c99/stdint.h files to tarballs

- docs: 7.10.3 release notes skeleton file, links

- mesa: bump version to 7.10.3

Carl Worth (2):

- glcpp: Simplify calling convention of parser’s active_list functions

- glcpp: Fix attempts to expand recursive macros infinitely (bug #32835).

Dave Airlie (1):

- st/mesa: fix compressed mipmap generation.

Eric Anholt (19):

- i965: Fix the VS thread limits for GT1, and clarify the WM limits on both.

- glsl: Avoid cascading errors when looking for a scalar boolean and failing.

- glsl: Semantically check the RHS of `&&’ even when short-circuiting.

- glsl: Semantically check the RHS of `||’ even when short-circuiting.

- glsl: When we’ve emitted a semantic error for ==, return a bool constant.

- glsl: Perform type checking on “^^” operands.

- intel: Use _mesa_base_tex_format for FBO texture attachments.

- swrast: Don’t assert against glReadPixels of GL_RED and GL_RG.

- mesa: Add a gl_renderbuffer.RowStride field like textures have.

- mesa: Add a function to set up the default renderbuffer accessors.

- intel: Use Mesa core’s renderbuffer accessors for depth.

- mesa: Use _mesa_get_format_bytes to refactor out the RB get_pointer_*

- mesa: Use _mesa_get_format_bytes to refactor out the RB get_row_*

- mesa: Add renderbuffer accessors for R8/RG88/R16/RG1616.

- swrast: Don’t try to adjust_colors for <8bpc when handling R16, RG1616.

- intel: Use mesa core’s R8, RG88, R16, RG1616 RB accessors.

- Revert “intel: Add spans code for the ARB_texture_rg support.”

- mesa: Add support for the ARB_fragment_program part of ARB_draw_buffers.

- mesa: Add support for OPTION ATI_draw_buffers to ARB_fp.

Hans de Goede (1):

- texstore: fix regression stricter check for memcpy path for unorm88 and unorm1616

Henri Verbeet (3):

- mesa: Also update the color draw buffer if it’s explicitly set to GL_NONE.

- glx: Destroy dri2Hash on DRI2 display destruction.

- glx: Only remove the glx_display from the list after it’s destroyed.

Ian Romanick (9):

- docs: Add 7.10.2 md5sums

- glsl: Fix off-by-one error setting max_array_access for non-constant indexing

- ir_to_mesa: Handle shadow compare w/projection and LOD bias correctly

- intel: Fix ROUND_DOWN_TO macro

- glsl: Regenerate compiler and glcpp files from cherry picks

- i965: Remove hint_gs_always and resulting dead code

- mesa: Don’t try to clear a NULL renderbuffer

- mesa: Ignore blits to/from missing buffers

- docs: Add list of bugs fixed in 7.10.3 release

Jeremy Huddleston (18):

- apple: Update GL specs

- apple: Rename glcontextmodes.[ch] to glxconfig.[ch]

- apple: Rename __GLcontextModes to struct glx_config

- apple: Rename GLXcontext

- apple: Re-add driContext and do_destroy

- apple: Rename _gl_context_modes_find_visual to glx_config_find_visual

- apple: Rename GLXcontext

- apple: Change from XExtDisplayInfo to struct glx_display

- apple: ifdef out come glapi-foo on darwin

- glx: Dead code removal

- apple: Build darwin using applegl rather than indirect

- apple: Fix build failures in applegl_glx.c

- darwin: Define GALLIUM_DRIVERS_DIRS in darwin config

- apple: Package applegl source into MesaLib tarball

- darwin: Set VG_LIB_{NAME,GLOB} to fix make install

- darwin: Don’t link against libGL when building libOSMesa

- darwin: Fix VG_LIB_GLOB to also match the unversioned symlink

- osmesa: Fix missing symbols when GLX_INDIRECT_RENDERING is defined.

José Fonseca (13):

- llvmpipe: Update readme.

- mesa: GL_PROVOKING_VERTEX_EXT is a GLenum, not GLboolean.

- mesa: Fix GetVertexAttrib* inside display lists.

- draw: Fix draw_variant_output::format’s type.

- gallivm: Tell LLVM to not assume a 16-byte aligned stack on x86.

- gallivm: Fix for dynamically linked LLVM 2.8 library.

- st/wgl: Adjust the pbuffer invisible window size.

- st/wgl: Fix debug output format specifiers of stw_framebuffer_get_size().

- st/wgl: Prevent spurious framebuffer sizes when the window is minimized.

- st/wgl: Cope with zero width/height windows.

- st/wgl: Allow to create pbuffers bigger than the desktop.

- st/wgl: Remove buggy assertion.

- wgl: Don’t hold on to user supplied HDC.

Kenneth Graunke (10):

- i965/fs: Switch W and 1/W in Sandybridge interpolation setup.

- i965: Refactor Sandybridge implied move handling.

- i965: Resolve implied moves in brw_dp_READ_4_vs_relative.

- intel: Add IS_GT2 macro for recognizing Sandybridge GT2 systems.

- i965: Allocate the whole URB to the VS and fix calculations for Gen6.

- intel: Support glCopyTexImage() from ARGB8888 to XRGB8888.

- glsl: Fix memory error when creating the supported version string.

- glsl: Regenerate autogenerated file builtin_function.cpp.

- i965: Rename various gen6 #defines to match the documentation.

- i965: Never enable the GS on Gen6.

Kostas Georgiou (1):

- r600c/g: Add pci id for FirePro 2270

Marek Olšák (18):

- tgsi/ureg: bump the limit of immediates

- st/mesa: fix changing internal format via RenderbufferStorage

- st/mesa: GenerateMipmap should not be killed by conditional rendering

- swrast: BlitFramebuffer should not be killed by conditional rendering

- st/mesa: BlitFramebuffer should not be killed by conditional rendering

- st/mesa: CopyTex(Sub)Image should not be killed by conditional rendering

- st/mesa: conditional rendering should not kill texture decompression via blit

- mesa: forbid UseProgram to be called inside Begin/End

- mesa: UseShaderProgramEXT and Uniform* shouldn’t be allowed inside Begin/End

- mesa: queries of non-existent FBO attachments should return INVALID_OPERATION

- r300g: fix draw_vbo splitting on r3xx-r4xx

- r300g: fix texturing with non-3D textures and wrap R mode set to sample border

- r300g: fix occlusion queries when depth test is disabled or zbuffer is missing

- r300g: clear can be killed by render condition

- st/mesa: remove asserts in st_texture_image_copy

- mesa: fix up assertion in _mesa_source_buffer_exists

- mesa: invalidate framebuffer if internal format of renderbuffer is changed

- mesa: return after invalidating renderbuffer

Matt Turner (1):

- r300/compiler: align memory allocations to 8-bytes

Tom Stellard (3):

- r300/compiler: Fix incorrect presubtract conversion

- r300/compiler: Fix dataflow analysis bug with ELSE blocks

- r300/compiler: Limit instructions to 3 source selects

Vinson Lee (1):

- gallivm: Disable MMX-disabling code on llvm-2.9.

Zou Nan hai (1):

- i965: Align interleaved URB write length to 2

pepp (1):

- st/mesa: assign renderbuffer’s format field when allocating storage