<!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">
  The Mesa 3D Graphics Library
</div>

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

<h1>Mesa 10.4.3 Release Notes / January 24, 2015</h1>

<p>
Mesa 10.4.3 is a bug fix release which fixes bugs found since the 10.4.2 release.
</p>
<p>
Mesa 10.4.3 implements the OpenGL 3.3 API, but the version reported by
glGetString(GL_VERSION) or glGetIntegerv(GL_MAJOR_VERSION) /
glGetIntegerv(GL_MINOR_VERSION) depends on the particular driver being used.
Some drivers don't support all the features required in OpenGL 3.3.  OpenGL
3.3 is <strong>only</strong> available if requested at context creation
because compatibility contexts are not supported.
</p>

<h2>SHA256 checksums</h2>
<pre>
c53eaafc83d9c6315f63e0904d9954d929b841b0b2be7a328eeb6e14f1376129  MesaLib-10.4.3.tar.gz
ef6ecc9c2f36c9f78d1662382a69ae961f38f03af3a0c3268e53f351aa1978ad  MesaLib-10.4.3.tar.bz2
179325fc8ec66529d3b0d0c43ef61a33a44d91daa126c3bbdd1efdfd25a7db1d  MesaLib-10.4.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=80568">Bug 80568</a> - [gen4] GPU Crash During Google Chrome Operation</li>

<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=85367">Bug 85367</a> - [gen4] GPU hang in glmark-es2</li>

<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=85696">Bug 85696</a> - r600g+nine: Bioshock shader failure after 7b1c0cbc90d456384b0950ad21faa3c61a6b43ff</li>

<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=88219">Bug 88219</a> - include/c11/threads_posix.h:197: undefined reference to `pthread_mutex_lock'</li>

</ul>


<h2>Changes</h2>

<p>Axel Davy (39):</p>
<ul>
  <li>st/nine: Add new texture format strings</li>
  <li>st/nine: Correctly advertise D3DPMISCCAPS_CLIPTLVERTS</li>
  <li>st/nine: NineBaseTexture9: fix setting of last_layer</li>
  <li>st/nine: CubeTexture: fix GetLevelDesc</li>
  <li>st/nine: Fix crash when deleting non-implicit swapchain</li>
  <li>st/nine: Return D3DERR_INVALIDCALL when trying to create a texture of bad format</li>
  <li>st/nine: NineBaseTexture9: update sampler view creation</li>
  <li>st/nine: Check if srgb format is supported before trying to use it.</li>
  <li>st/nine: Add ATI1 and ATI2 support</li>
  <li>st/nine: Rework of boolean constants</li>
  <li>st/nine: Convert integer constants to floats before storing them when cards don't support integers</li>
  <li>st/nine: Remove some shader unused code</li>
  <li>st/nine: Saturate oFog and oPts vs outputs</li>
  <li>st/nine: Correctly declare NineTranslateInstruction_Mkxn inputs</li>
  <li>st/nine: Fix typo for M4x4</li>
  <li>st/nine: Fix POW implementation</li>
  <li>st/nine: Handle RSQ special cases</li>
  <li>st/nine: Handle NRM with input of null norm</li>
  <li>st/nine: Correct LOG on negative values</li>
  <li>st/nine: Rewrite LOOP implementation, and a0 aL handling</li>
  <li>st/nine: Fix CND implementation</li>
  <li>st/nine: Clamp ps 1.X constants</li>
  <li>st/nine: Fix some fixed function pipeline operation</li>
  <li>st/nine: Implement TEXCOORD special behaviours</li>
  <li>st/nine: Fill missing dst and src number for some instructions.</li>
  <li>st/nine: Fix TEXM3x3 and implement TEXM3x3VSPEC</li>
  <li>st/nine: implement TEXM3x2DEPTH</li>
  <li>st/nine: Implement TEXM3x2TEX</li>
  <li>st/nine: Implement TEXM3x3SPEC</li>
  <li>st/nine: Implement TEXDEPTH</li>
  <li>st/nine: Implement TEXDP3</li>
  <li>st/nine: Implement TEXDP3TEX</li>
  <li>st/nine: Implement TEXREG2AR, TEXREG2GB and TEXREG2RGB</li>
  <li>st/nine: Correct rules for relative adressing and constants.</li>
  <li>st/nine: Remove unused code for ps</li>
  <li>st/nine: Fix sm3 relative addressing for non-debug build</li>
  <li>st/nine: Add variables containing the size of the constant buffers</li>
  <li>st/nine: Allocate the correct size for the user constant buffer</li>
  <li>st/nine: Allocate vs constbuf buffer for indirect addressing once.</li>
</ul>

<p>Emil Velikov (2):</p>
<ul>
  <li>docs: Add sha256 sums for the 10.4.2 release</li>
  <li>Update version to 10.4.3</li>
</ul>

<p>Jason Ekstrand (1):</p>
<ul>
  <li>mesa: Fix clamping to -1.0 in snorm_to_float</li>
</ul>

<p>Jonathan Gray (1):</p>
<ul>
  <li>glsl: Link glsl_test with pthreads library.</li>
</ul>

<p>Jose Fonseca (1):</p>
<ul>
  <li>nine: Drop use of TGSI_OPCODE_CND.</li>
</ul>

<p>Kenneth Graunke (2):</p>
<ul>
  <li>i965: Respect the no_8 flag on Gen6, not just Gen7+.</li>
  <li>i965: Work around mysterious Gen4 GPU hangs with minimal state changes.</li>
</ul>

<p>Stanislaw Halik (1):</p>
<ul>
  <li>st/nine: Hack to generate resource if it doesn't exist when getting view</li>
</ul>

<p>Xavier Bouchoux (3):</p>
<ul>
  <li>st/nine: Additional defines to d3dtypes.h</li>
  <li>st/nine: Add missing c++ declaration for IDirect3DVolumeTexture9</li>
  <li>st/nine: Fix D3DRS_POINTSPRITE support</li>
</ul>


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