<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<
meta http-equiv="content-type" content="text/html; charset=utf-8">
<
link rel="stylesheet" type="text/css" href="../mesa.css">
<
h1>The Mesa 3D Graphics Library<
/h1>
<
h1>Mesa 7.10.1 Release Notes
/ March
2,
2011<
/h1>
Mesa 7.10.1 is a bug fix release which fixes bugs found since the 7.10 release.
Mesa 7.10.1 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>
4b4cee19f3bf16eb78bd4cc278ccf812 MesaLib-7.10.1.tar.gz
efe8da4d80c2a5d32a800770b8ce5dfa MesaLib-7.10.1.tar.bz2
0fd2b1a025934de3f8cecf9fb9b57f4c MesaLib-7.10.1.zip
42beb0f5188d544476c19496f725fa67 MesaGLUT-7.10.1.tar.gz
637bb8a20fdad89f7382b4ea83f896e3 MesaGLUT-7.10.1.tar.bz2
bdbf3ffb2606d6aa8afabb6c6243b91b MesaGLUT-7.10.1.zip
</pre>
<h2>New features</h2>
<p>None.</p>
<h2>Bug fixes</h2>
<p>This list is likely incomplete.</p>
<ul>
<li>Fix an off-by-one bug in a vsplit assertion.</li>
<li>Fix incorrect handling of <tt>layout</tt> qualifier
with <tt>in</tt>, <tt>out</tt>, <tt>attribute</tt>, and <tt>varying</tt>.</li>
<li>Fix an i965 shader bug where the negative absolute value was generated instead of the absolute value of a negation.</li>
<li>Fix numerous issues handling precision qualifiers in GLSL ES.</li>
<li>Fixed a few GLX protocol encoder bugs (Julien Cristau)</li>
<li>Assorted Gallium llvmpipe driver bug fixes</li>
<li>Assorted Mesa/Gallium state tracker bug fixes</li>
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=26795">Bug 26795</a> - gl_FragCoord off by one in Gallium drivers.</li>
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=29164">Bug 29164</a> - [GLSL 1.20] invariant variable shouldn't be used before declaration<
/li>
<
li><
a href="https://bugs.freedesktop.org/show_bug.cgi?id=29823">Bug
29823<
/a> - GetUniform
[if
]v busted<
/li>
<
li><
a href="https://bugs.freedesktop.org/show_bug.cgi?id=29927">Bug
29927<
/a> -
[glsl2
] fail to compile shader with constructor
for array of struct type<
/li>
<
li><
a href="https://bugs.freedesktop.org/show_bug.cgi?id=30156">Bug
30156<
/a> -
[i965
] After updating to Mesa
7.9, Civilization IV starts to show garbage<
/li>
<
li><
a href="https://bugs.freedesktop.org/show_bug.cgi?id=31923">Bug
31923<
/a> -
[GLSL
1.20] allowing inconsistent centroid declaration between two vertex shaders<
/li>
<
li><
a href="https://bugs.freedesktop.org/show_bug.cgi?id=31925">Bug
31925<
/a> -
[GLSL
1.20] "#pragma STDGL invariant(all)" fail<
/li>
<
li><
a href="https://bugs.freedesktop.org/show_bug.cgi?id=32214">Bug
32214<
/a> -
[gles2
]no
link error happens when missing vertex shader or frag shader<
/li>
<
li><
a href="https://bugs.freedesktop.org/show_bug.cgi?id=32375">Bug
32375<
/a> -
[gl gles2
] Not able to get the attribute by function glGetVertexAttribfv<
/li>
<
li><
a href="https://bugs.freedesktop.org/show_bug.cgi?id=32541">Bug
32541<
/a> - Segmentation Fault while running an HDR
(high dynamic range
) rendering demo<
/li>
<
li><
a href="https://bugs.freedesktop.org/show_bug.cgi?id=32569">Bug
32569<
/a> -
[gles2
] glGetShaderPrecisionFormat not implemented yet<
/li>
<
li><
a href="https://bugs.freedesktop.org/show_bug.cgi?id=32695">Bug
32695<
/a> -
[glsl
] SIGSEGV glcpp
/glcpp-parse.y:
833<
/li>
<
li><
a href="https://bugs.freedesktop.org/show_bug.cgi?id=32831">Bug
32831<
/a> -
[glsl
] division by zero crashes GLSL compiler<
/li>
<
li><
a href="https://bugs.freedesktop.org/show_bug.cgi?id=32910">Bug
32910<
/a> - Keywords
'in' and
'out' not handled properly
for GLSL
1.20 shaders<
/li>
<
li><
a href="https://bugs.freedesktop.org/show_bug.cgi?id=33219">Bug
33219<
/a> -
[GLSL bisected
] implicit sized array triggers segfault in ir_to_mesa_visitor::copy_propagate<
/li>
<
li><
a href="https://bugs.freedesktop.org/show_bug.cgi?id=33306">Bug
33306<
/a> - GLSL integer division by zero crashes GLSL compiler<
/li>
<
li><
a href="https://bugs.freedesktop.org/show_bug.cgi?id=33308">Bug
33308<
/a> -
[glsl
] ast_to_hir.cpp:
3016: virtual ir_rvalue* ast_jump_statement::hir
(exec_list*, _mesa_glsl_parse_state*
): Assertion `ret !
= __null
' failed.</li>
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=33316">Bug 33316</a> - uniform array will be allocate one line more and initialize it when it was freed will abort</li>
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=33386">Bug 33386</a> - Dubious assembler in read_rgba_span_x86.S</li>
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=33388">Bug 33388</a> - Dubious assembler in xform4.S</li>
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=33433">Bug 33433</a> - Error in x86-64 API dispatch code.</li>
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=33507">Bug 33507</a> - [glsl] GLSL preprocessor modulus by zero crash</li>
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=33508">Bug 33508</a> - [glsl] GLSL compiler modulus by zero crash</li>
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=33916">Bug 33916</a> - Compiler accepts reserved operators % and %=</li>
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=34030">Bug 34030</a> - [bisected] Starcraft 2: some effects are corrupted or too big</li>
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=34047">Bug 34047</a> - Assert in _tnl_import_array() when using GLfixed vertex datatypes with GLESv2</li>
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=34114">Bug 34114</a> - Sun Studio build fails due to standard library functions not being in global namespace</li>
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=34179">Bug 34179</a> - Nouveau 3D driver: nv50_pc_emit.c:863 assertion error kills Compiz</li>
<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=34198">Bug 34198</a> - [GLSL] implicit sized array with index 0 used gets assertion</li>
<li><a href="https://bugs.launchpad.net/ubuntu/+source/mesa/+bug/691653">Ubuntu bug 691653</a> - compiz crashes when using alt-tab (the radeon driver kills it) </li>
<li><a href="https://bugs.meego.com/show_bug.cgi?id=13005">Meego bug 13005</a> - Graphics GLSL issue lead to camera preview fail on Pinetrail</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..mesa-7.10.1
</pre>
<p>Alberto Milone (1):</p>
<ul>
<li>r600c: add evergreen ARL support.</li>
</ul>
<p>Brian Paul (21):</p>
<ul>
<li>draw: Fix an off-by-one bug in a vsplit assertion.</li>
<li>docs: add links to 7.9.1 and 7.10 release notes</li>
<li>docs: added news item for 7.9.1 and 7.10 release</li>
<li>gallivm: work around LLVM 2.6 bug when calling C functions</li>
<li>gallivm: fix copy&paste error from previous commit</li>
<li>mesa: fix a few format table mistakes, assertions</li>
<li>mesa: fix num_draw_buffers==0 in fixed-function fragment program generation</li>
<li>mesa: don't assert in GetIntegerIndexed, etc<
/li>
<
li>mesa: check
for dummy renderbuffer in _mesa_FramebufferRenderbufferEXT
()<
/li>
<
li>llvmpipe: make sure binning is active when we begin
/end a query<
/li>
<
li>st
/mesa: fix incorrect fragcoord.x translation<
/li>
<
li>softpipe: fix off-by-one error in setup_fragcoord_coeff
()<
/li>
<
li>cso: fix loop bound in cso_set_vertex_samplers
()<
/li>
<
li>st
/mesa: fix incorrect glCopyPixels position on fallback path<
/li>
<
li>st
/mesa: set renderbuffer _BaseFormat in a few places<
/li>
<
li>st
/mesa: fix the default case in st_format_datatype
()<
/li>
<
li>st
/mesa: need to translate
clear color according to surface
's base format</li>
<li>docs: update 7.9.2 release notes with Brian's cherry-picks<
/li>
<
li>docs: add
link to 7.10.1 release notes<
/li>
<
li>mesa: implement glGetShaderPrecisionFormat
()<
/li>
<
li>docs: updated environment variable list<
/li>
<
p>Bryce Harrington
(1):<
/p>
<
li>r300g: Null pointer check
for buffer deref in gallium winsys<
/li>
<
p>Chad Versace
(20):<
/p>
<
li>glsl: At link-time, check that globals have matching centroid qualifiers<
/li>
<
li>glcpp: Fix segfault when validating macro redefinitions<
/li>
<
li>glsl: Fix parser rule
for type_specifier<
/li>
<
li>glsl: Change default
value of ast_type_specifier::precision<
/li>
<
li>glsl: Add semantic checks
for precision qualifiers<
/li>
<
li>glsl: Add support
for default precision statements<
/li>
<
li>glsl: Remove redundant semantic check in parser<
/li>
<
li>glsl: Fix semantic checks on precision qualifiers<
/li>
<
li>glsl: Fix segfault due to missing printf argument<
/li>
<
li>glsl: Mark
'in' variables at global
scope as read-only<
/li>
<
li>mesa: Refactor handling of extension strings<
/li>
<
li>mesa: Add
/remove extensions in extension string<
/li>
<
li>mesa: Change dependencies of some OES extension strings<
/li>
<
li>mesa: Change OES_point_sprite to depend on ARB_point_sprite<
/li>
<
li>mesa: Change OES_standard_derivatives to be stand-alone extension<
/li>
<
li>i915: Disable extension OES_standard_derivatives<
/li>
<
li>glcpp: Raise error when modulus is zero<
/li>
<
li>glsl: Set operators
'%' and
'%=' to be reserved when GLSL <
1.30<
/li>
<
li>glsl: Reinstate constant-folding
for division by zero<
/li>
<
li>tnl: Add support
for datatype GL_FIXED in vertex arrays<
/li>
<
li>mesa: Add glDepthRangef and glClearDepthf to APIspec.xml.<
/li>
<
p>Christoph Bumiller
(1):<
/p>
<
li>nv50,nvc0: do not forget to apply sign mode to saved TGSI inputs<
/li>
<
p>Cyril Brulebois
(1):<
/p>
<
li>Point to bugs.freedesktop.org rather than bugzilla.freedesktop.org<
/li>
<
li>radeon
/r200: fix fbo-clearmipmap + gen-teximage<
/li>
<
li>radeon: calculate complete texture state inside TFP function<
/li>
<
li>radeon: avoid segfault on 3D textures.<
/li>
<
p>Dimitry Andric
(4):<
/p>
<
li>mesa: s
/movzx
/movzbl
/<
/li>
<
li>mesa: s
/movzxw
/movzwl
/ in read_rgba_span_x86.S<
/li>
<
li>glapi: adding @
char before
type specifier in glapi_x86.S<
/li>
<
li>glapi: add @GOTPCREL relocation type<
/li>
<
li>glsl: Fix the lowering of variable array indexing to not lose write_masks.<
/li>
<
li>i965
/fs: When producing ir_unop_abs of an operand, strip negate.<
/li>
<
li>i965
/vs: When MOVing to produce ABS, strip negate of the operand.<
/li>
<
li>i965
/fs: Do flat shading when appropriate.<
/li>
<
li>i965: Avoid double-negation of immediate values in the VS.<
/li>
<
li>intel: Make renderbuffer tiling choice match texture tiling choice.<
/li>
<
li>i965: Fix dead pointers to fp->Parameters->ParameterValues
[] after realloc.<
/li>
<
li>docs: Add a relnote
for the Civ IV on i965.<
/li>
<
li>glapi: Add entrypoints and enums
for GL_ARB_ES2_compatibility.<
/li>
<
li>mesa: Add extension enable bit
for GL_ARB_ES2_compatibility.<
/li>
<
li>mesa: Add actual support
for glReleaseShaderCompiler from ES2.<
/li>
<
li>mesa: Add support
for glDepthRangef and glClearDepthf.<
/li>
<
li>mesa: Add getters
for ARB_ES2_compatibility MAX_*_VECTORS.<
/li>
<
li>mesa: Add getter
for GL_SHADER_COMPILER with ARB_ES2_compatibility.<
/li>
<
li>i965: Fix a bug in i965 compute-to-MRF.<
/li>
<
li>i965
/fs: Add a helper function
for detecting math opcodes.<
/li>
<
p>Fredrik Höglund
(1):<
/p>
<
li>st
/mesa: fix a regression from cae2bb76<
/li>
<
p>Ian Romanick
(42):<
/p>
<
li>docs: Add
7.10 md5sums<
/li>
<
li>glsl: Support the
'invariant(all)' pragma<
/li>
<
li>glcpp: Generate an error
for division by zero<
/li>
<
li>glsl: Add version_string containing properly formatted GLSL version<
/li>
<
li>glsl & glcpp: Refresh autogenerated lexer and parser files.<
/li>
<
li>glsl: Disallow
'in' and
'out' on globals in GLSL
1.20<
/li>
<
li>glsl: Track variable usage, use that to enforce semantics<
/li>
<
li>glsl: Allow
'in' and
'out' when
'layout' is also available<
/li>
<
li>docs: Initial bits of 7.10.1 release notes<
/li>
<
li>mesa: bump
version to 7.10.1-devel<
/li>
<
li>doc: Update 7.10.1 release notes<
/li>
<
li>glsl: Emit errors or warnings when
'layout' is used with
'attribute' or
'varying'<
/li>
<
li>docs: Update 7.10.1 release notes<
/li>
<
li>glsl: Refresh autogenerated lexer and parser files.<
/li>
<
li>glsl: Don
't assert when the value returned by a function has no rvalue</li>
<li>linker: Set sizes for non-global arrays as well</li>
<li>linker: Propagate max_array_access while linking functions</li>
<li>docs: Update 7.10.1 release notes</li>
<li>mesa: glGetUniform only returns a single element of an array</li>
<li>linker: Generate link errors when ES shaders are missing stages</li>
<li>mesa: Fix error checks in GetVertexAttrib functions</li>
<li>Use C-style system headers in C++ code to avoid issues with std:: namespace</li>
<li>docs: Update 7.10.1 release notes</li>
<li>glapi: Regenerate for GL_ARB_ES2_compatibility.</li>
<li>mesa: Connect glGetShaderPrecisionFormat into the dispatch table</li>
<li>i965: Set correct values for range/precision of fragment shader types</li>
<li>i915: Set correct values for range/precision of fragment shader types</li>
<li>intel: Fix typeos from 3d028024 and 790ff232</li>
<li>glsl: Ensure that all GLSL versions are supported in the stand-alone compiler</li>
<li>glsl: Reject shader versions not supported by the implementation</li>
<li>mesa: Initial size for secondary color array is 3</li>
<li>glsl: Finish out the reduce/reduce error fixes</li>
<li>glsl: Regenerate compiler and glcpp files from cherry picks</li>
<li>linker: Fix off-by-one error implicit array sizing</li>
<li>docs: update 7.10.1 release notes with Ian's recent cherry picks<
/li>
<
li>i915: Only mark a register as available if all components are written<
/li>
<
li>i915: Calculate partial result to temp register first<
/li>
<
li>i915: Force lowering of all types of indirect array accesses in the FS<
/li>
<
li>docs: Update 7.10.1 with
(hopefully
) the last of the cherry picks<
/li>
<
li>docs: Clean up bug fixes list<
/li>
<
li>intel: Remove driver date and related bits from renderer string<
/li>
<
li>mesa: set
version string to 7.10.1
(final
)<
/li>
<
li>mesa: fix an error in uniform arrays in row calculating.<
/li>
<
p>Julien Cristau
(3):<
/p>
<
li>glx: fix request lengths<
/li>
<
li>glx: fix GLXChangeDrawableAttributesSGIX request<
/li>
<
li>glx: fix length of GLXGetFBConfigsSGIX<
/li>
<
p>Keith Packard
(1):<
/p>
<
li>glsl: Eliminate reduce
/reduce conflicts in glsl grammar<
/li>
<
p>Kenneth Graunke
(20):<
/p>
<
li>glsl: Expose a public glsl_type::void_type const pointer.<
/li>
<
li>glsl: Don
't bother unsetting a destructor that was never set.</li>
<li>glsl, i965: Remove unnecessary talloc includes.</li>
<li>glcpp: Remove use of talloc reference counting.</li>
<li>ralloc: Add a fake implementation of ralloc based on talloc.</li>
<li>Convert everything from the talloc API to the ralloc API.</li>
<li>ralloc: a new MIT-licensed recursive memory allocator.</li>
<li>Remove talloc from the make and automake build systems.</li>
<li>Remove talloc from the SCons build system.</li>
<li>Remove the talloc sources from the Mesa repository.</li>
<li>glsl: Fix use of uninitialized values in _mesa_glsl_parse_state ctor.</li>
<li>i965/fs: Apply source modifier workarounds to POW as well.</li>
<li>i965: Fix shaders that write to gl_PointSize on Sandybridge.</li>
<li>i965/fs: Avoid register coalescing away gen6 MATH workarounds.</li>
<li>i965/fs: Correctly set up gl_FragCoord.w on Sandybridge.</li>
<li>i965: Increase Sandybridge point size clamp.</li>
<li>i965/fs: Refactor control flow stack handling.</li>
<li>i965: Increase Sandybridge point size clamp in the clip state.</li>
<li>glsl: Use reralloc instead of plain realloc.</li>
<li>Revert "i965/fs: Correctly set up gl_FragCoord.w on Sandybridge."</li>
</ul>
<p>Marek Olšák (4):</p>
<ul>
<li>docs: fix messed up names with special characters in relnotes-7.10</li>
<li>docs: fix messed up names with special characters in relnotes-7.9.1</li>
<li>mesa: fix texture3D mipmap generation for UNSIGNED_BYTE_3_3_2</li>
<li>st/dri: Track drawable context bindings</li>
</ul>
<p>Paulo Zanoni (1):</p>
<ul>
<li>dri_util: fail driCreateNewScreen if InitScreen is NULL</li>
</ul>
<p>Sam Hocevar (2):</p>
<ul>
<li>docs: add glsl info</li>
<li>docs: fix glsl_compiler name</li>
</ul>
<p>Tom Fogal (1):</p>
<ul>
<li>Regenerate gl_mangle.h.</li>
</ul>
<p>Tom Stellard (2):</p>
<ul>
<li>r300/compiler: Disable register rename pass on r500</li>
<li>r300/compiler: Don't erase sources when converting RGB->Alpha<
/li>
<
li>ralloc: Add missing va_end following va_copy.<
/li>
<
li>mesa: Move declaration before
code in extensions.c.<
/li>
<
li>mesa: Move loop variable declarations outside
for loop in extensions.c.<
/li>
<
li>glx: Put null check before use<
/li>