<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html lang="en">
<head>
  <meta http-equiv="content-type" content="text/html; charset=utf-8">
  <title>Mesa Release Notes</title>
  <link rel="stylesheet" type="text/css" href="../mesa.css">
</head>
<body>

<div class="header">
  <h1>The Mesa 3D Graphics Library</h1>
</div>

<iframe src="../contents.html"></iframe>
<div class="content">

<h1>Mesa 7.10.3 Release Notes / June 13, 2011</h1>

<p>
Mesa 7.10.3 is a bug fix release which fixes bugs found since the 7.10.2 release.
</p>
<p>
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.
</p>
<p>
See the <a href="../install.html">Compiling/Installing page</a> for prerequisites
for DRI hardware acceleration.
</p>


<h2>MD5 checksums</h2>
<pre>
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
</pre>


<h2>New features</h2>
<p>None.</p>


<h2>Bug fixes</h2>
<p>This list is likely incomplete.</p>
<ul>

<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=29162">Bug 29162</a> - mesa/darwin is severly broken</li>

<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=31590">Bug 31590</a> - Black space between colors on mole hill example</li>

<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=32395">Bug 32395</a> - [glsl] Incorrect code generation for shadow2DProj() with bias</li>

<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=32564">Bug 32564</a> - [llvmpipe] prog: Unknown command line argument '-disable-mmx'. Try: 'prog -help' with llvm-2.9svn</li>

<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=32835">Bug 32835</a> - [glsl] recursive #define results in infinite stack recursion</li>

<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=33303">Bug 33303</a> - [glsl] ir_constant_expression.cpp:72: virtual ir_constant* ir_expression::constant_expression_value(): Assertion `op[0]-&gt;type-&gt;base_type == op[1]-&gt;type-&gt;base_type' failed.</li>

<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=33314">Bug 33314</a> - [glsl] ir_constant_expression.cpp:122: virtual ir_constant* ir_expression::constant_expression_value(): Assertion `op[0]-&gt;type-&gt;base_type == GLSL_TYPE_BOOL' failed.</li>

<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=33512">Bug 33512</a> - [SNB] case ogles2conform/GL/gl_FragCoord/gl_FragCoord_xy_frag.test and gl_FragCoord_w_frag.test fail</li>

<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=34280">Bug 34280</a> - r200 mesa-7.10 font distortion</li>

<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=34321">Bug 34321</a> - The ARB_fragment_program subset of ARB_draw_buffers not implemented</li>

<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=35603">Bug 35603</a> - GLSL compiler freezes compiling shaders</li>

<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=36173">Bug 36173</a> - struct renderbuffer's 'format' field never set when using FBO</li>

<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=36238">Bug 36238</a> - Mesa release files don't contain scons control files</li>

<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=36410">Bug 36410</a> - [SNB] Rendering errors in 3DMMES subtest taiji</li>

<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=36527">Bug 36527</a> - [wine] Wolfenstein: Failed to translate rgb instruction.</li>

<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=36651">Bug 36651</a> - mesa requires bison and flex to build but configure does not check for them</li>

<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=36738">Bug 36738</a> - Openarena crash with r300g, swrastg + llvm &gt; 2.8</li>

<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=37648">Bug 37648</a> - Logic error in mesa/main/teximage.c:texsubimage</li>

<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=37739">Bug 37739</a> - Color clear of FBO without color buffer crashes</li>

<!-- <li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=">Bug </a> - </li> -->
</ul>


<h2>Changes</h2>
<p>The full set of changes can be viewed by using the following GIT command:</p>

<pre>
  git log mesa-7.10.2..mesa-7.10.3
</pre>

<p>Alan Hourihane (1):</p>
<ul>
  <li>Check for out of memory when creating fence</li>
</ul>

<p>Alex Buell (1):</p>
<ul>
  <li>configure: bump LIBDRM_REQUIRED to 2.4.24</li>
</ul>

<p>Alex Deucher (2):</p>
<ul>
  <li>r600c: add new pci ids</li>
  <li>r600g: add new pci ids</li>
</ul>

<p>Brian Paul (19):</p>
<ul>
  <li>docs: add link to 7.10.2 release notes</li>
  <li>scons: remove dangling reference to state_trackers/python/SConscript</li>
  <li>Makefile: add missing Scons files</li>
  <li>llvmpipe: document issue with LLVM 2.8 and earlier with AVX</li>
  <li>docs: replace llvmpipe/README with docs/llvmpipe.html</li>
  <li>glsl: add static qualifier to silence warning</li>
  <li>glsl: add cast to silence signed/unsigned comparison warning</li>
  <li>mesa: s/height/depth/ in texsubimage()</li>
  <li>mesa: fix void pointer arithmetic warnings</li>
  <li>mesa: add some missing GLAPIENTRY keywords</li>
  <li>mesa: check that flex/bison are installed</li>
  <li>st/mesa: fix incorrect texture level/face/slice accesses</li>
  <li>draw: fix edge flag handling in clipper (for unfilled tris/quads/polygons)</li>
  <li>vbo: check array indexes to prevent negative indexing</li>
  <li>vbo: remove node-&gt;count &gt; 0 test in vbo_save_playback_vertex_list()</li>
  <li>st/mesa: fix software accum buffer format bug</li>
  <li>mesa: add include/c99/inttypes.h include/c99/stdbool.h include/c99/stdint.h files to tarballs</li>
  <li>docs: 7.10.3 release notes skeleton file, links</li>
  <li>mesa: bump version to 7.10.3</li>
</ul>

<p>Carl Worth (2):</p>
<ul>
  <li>glcpp: Simplify calling convention of parser's active_list functions</li>
  <li>glcpp: Fix attempts to expand recursive macros infinitely (bug #32835).</li>
</ul>

<p>Dave Airlie (1):</p>
<ul>
  <li>st/mesa: fix compressed mipmap generation.</li>
</ul>

<p>Eric Anholt (19):</p>
<ul>
  <li>i965: Fix the VS thread limits for GT1, and clarify the WM limits on both.</li>
  <li>glsl: Avoid cascading errors when looking for a scalar boolean and failing.</li>
  <li>glsl: Semantically check the RHS of `&amp;&amp;' even when short-circuiting.</li>
  <li>glsl: Semantically check the RHS of `||' even when short-circuiting.</li>
  <li>glsl: When we've emitted a semantic error for ==, return a bool constant.</li>
  <li>glsl: Perform type checking on "^^" operands.</li>
  <li>intel: Use _mesa_base_tex_format for FBO texture attachments.</li>
  <li>swrast: Don't assert against glReadPixels of GL_RED and GL_RG.</li>
  <li>mesa: Add a gl_renderbuffer.RowStride field like textures have.</li>
  <li>mesa: Add a function to set up the default renderbuffer accessors.</li>
  <li>intel: Use Mesa core's renderbuffer accessors for depth.</li>
  <li>mesa: Use _mesa_get_format_bytes to refactor out the RB get_pointer_*</li>
  <li>mesa: Use _mesa_get_format_bytes to refactor out the RB get_row_*</li>
  <li>mesa: Add renderbuffer accessors for R8/RG88/R16/RG1616.</li>
  <li>swrast: Don't try to adjust_colors for &lt;8bpc when handling R16, RG1616.</li>
  <li>intel: Use mesa core's R8, RG88, R16, RG1616 RB accessors.</li>
  <li>Revert "intel: Add spans code for the ARB_texture_rg support."</li>
  <li>mesa: Add support for the ARB_fragment_program part of ARB_draw_buffers.</li>
  <li>mesa: Add support for OPTION ATI_draw_buffers to ARB_fp.</li>
</ul>

<p>Hans de Goede (1):</p>
<ul>
  <li>texstore: fix regression stricter check for memcpy path for unorm88 and unorm1616</li>
</ul>

<p>Henri Verbeet (3):</p>
<ul>
  <li>mesa: Also update the color draw buffer if it's explicitly set to GL_NONE.</li>
  <li>glx: Destroy dri2Hash on DRI2 display destruction.</li>
  <li>glx: Only remove the glx_display from the list after it's destroyed.</li>
</ul>

<p>Ian Romanick (9):</p>
<ul>
  <li>docs: Add 7.10.2 md5sums</li>
  <li>glsl: Fix off-by-one error setting max_array_access for non-constant indexing</li>
  <li>ir_to_mesa: Handle shadow compare w/projection and LOD bias correctly</li>
  <li>intel: Fix ROUND_DOWN_TO macro</li>
  <li>glsl: Regenerate compiler and glcpp files from cherry picks</li>
  <li>i965: Remove hint_gs_always and resulting dead code</li>
  <li>mesa: Don't try to clear a NULL renderbuffer</li>
  <li>mesa: Ignore blits to/from missing buffers</li>
  <li>docs: Add list of bugs fixed in 7.10.3 release</li>
</ul>

<p>Jeremy Huddleston (18):</p>
<ul>
  <li>apple: Update GL specs</li>
  <li>apple: Rename glcontextmodes.[ch] to glxconfig.[ch]</li>
  <li>apple: Rename __GLcontextModes to struct glx_config</li>
  <li>apple: Rename GLXcontext</li>
  <li>apple: Re-add driContext and do_destroy</li>
  <li>apple: Rename _gl_context_modes_find_visual to glx_config_find_visual</li>
  <li>apple: Rename GLXcontext</li>
  <li>apple: Change from XExtDisplayInfo to struct glx_display</li>
  <li>apple: ifdef out come glapi-foo on darwin</li>
  <li>glx: Dead code removal</li>
  <li>apple: Build darwin using applegl rather than indirect</li>
  <li>apple: Fix build failures in applegl_glx.c</li>
  <li>darwin: Define GALLIUM_DRIVERS_DIRS in darwin config</li>
  <li>apple: Package applegl source into MesaLib tarball</li>
  <li>darwin: Set VG_LIB_{NAME,GLOB} to fix make install</li>
  <li>darwin: Don't link against libGL when building libOSMesa</li>
  <li>darwin: Fix VG_LIB_GLOB to also match the unversioned symlink</li>
  <li>osmesa: Fix missing symbols when GLX_INDIRECT_RENDERING is defined.</li>
</ul>

<p>José Fonseca (13):</p>
<ul>
  <li>llvmpipe: Update readme.</li>
  <li>mesa: GL_PROVOKING_VERTEX_EXT is a GLenum, not GLboolean.</li>
  <li>mesa: Fix GetVertexAttrib* inside display lists.</li>
  <li>draw: Fix draw_variant_output::format's type.</li>
  <li>gallivm: Tell LLVM to not assume a 16-byte aligned stack on x86.</li>
  <li>gallivm: Fix for dynamically linked LLVM 2.8 library.</li>
  <li>st/wgl: Adjust the pbuffer invisible window size.</li>
  <li>st/wgl: Fix debug output format specifiers of stw_framebuffer_get_size().</li>
  <li>st/wgl: Prevent spurious framebuffer sizes when the window is minimized.</li>
  <li>st/wgl: Cope with zero width/height windows.</li>
  <li>st/wgl: Allow to create pbuffers bigger than the desktop.</li>
  <li>st/wgl: Remove buggy assertion.</li>
  <li>wgl: Don't hold on to user supplied HDC.</li>
</ul>

<p>Kenneth Graunke (10):</p>
<ul>
  <li>i965/fs: Switch W and 1/W in Sandybridge interpolation setup.</li>
  <li>i965: Refactor Sandybridge implied move handling.</li>
  <li>i965: Resolve implied moves in brw_dp_READ_4_vs_relative.</li>
  <li>intel: Add IS_GT2 macro for recognizing Sandybridge GT2 systems.</li>
  <li>i965: Allocate the whole URB to the VS and fix calculations for Gen6.</li>
  <li>intel: Support glCopyTexImage() from ARGB8888 to XRGB8888.</li>
  <li>glsl: Fix memory error when creating the supported version string.</li>
  <li>glsl: Regenerate autogenerated file builtin_function.cpp.</li>
  <li>i965: Rename various gen6 #defines to match the documentation.</li>
  <li>i965: Never enable the GS on Gen6.</li>
</ul>

<p>Kostas Georgiou (1):</p>
<ul>
  <li>r600c/g: Add pci id for FirePro 2270</li>
</ul>

<p>Marek Olšák (18):</p>
<ul>
  <li>tgsi/ureg: bump the limit of immediates</li>
  <li>st/mesa: fix changing internal format via RenderbufferStorage</li>
  <li>st/mesa: GenerateMipmap should not be killed by conditional rendering</li>
  <li>swrast: BlitFramebuffer should not be killed by conditional rendering</li>
  <li>st/mesa: BlitFramebuffer should not be killed by conditional rendering</li>
  <li>st/mesa: CopyTex(Sub)Image should not be killed by conditional rendering</li>
  <li>st/mesa: conditional rendering should not kill texture decompression via blit</li>
  <li>mesa: forbid UseProgram to be called inside Begin/End</li>
  <li>mesa: UseShaderProgramEXT and Uniform* shouldn't be allowed inside Begin/End</li>
  <li>mesa: queries of non-existent FBO attachments should return INVALID_OPERATION</li>
  <li>r300g: fix draw_vbo splitting on r3xx-r4xx</li>
  <li>r300g: fix texturing with non-3D textures and wrap R mode set to sample border</li>
  <li>r300g: fix occlusion queries when depth test is disabled or zbuffer is missing</li>
  <li>r300g: clear can be killed by render condition</li>
  <li>st/mesa: remove asserts in st_texture_image_copy</li>
  <li>mesa: fix up assertion in _mesa_source_buffer_exists</li>
  <li>mesa: invalidate framebuffer if internal format of renderbuffer is changed</li>
  <li>mesa: return after invalidating renderbuffer</li>
</ul>

<p>Matt Turner (1):</p>
<ul>
  <li>r300/compiler: align memory allocations to 8-bytes</li>
</ul>

<p>Tom Stellard (3):</p>
<ul>
  <li>r300/compiler: Fix incorrect presubtract conversion</li>
  <li>r300/compiler: Fix dataflow analysis bug with ELSE blocks</li>
  <li>r300/compiler: Limit instructions to 3 source selects</li>
</ul>

<p>Vinson Lee (1):</p>
<ul>
  <li>gallivm: Disable MMX-disabling code on llvm-2.9.</li>
</ul>

<p>Zou Nan hai (1):</p>
<ul>
  <li>i965: Align interleaved URB write length to 2</li>
</ul>

<p>pepp (1):</p>
<ul>
  <li>st/mesa: assign renderbuffer's format field when allocating storage</li>
</ul>

</div>
</body>
</html>
