1Mesa 7.9.1 Release Notes / January 7, 2011 2========================================== 3 4Mesa 7.9.1 is a bug fix release which fixes bugs found since the 7.9 5release. 6 7Mesa 7.9.1 implements the OpenGL 2.1 API, but the version reported by 8glGetString(GL_VERSION) depends on the particular driver being used. 9Some drivers don't support all the features required in OpenGL 2.1. 10 11See the :doc:`Compiling/Installing page <../install>` for 12prerequisites for DRI hardware acceleration. 13 14MD5 checksums 15------------- 16 17:: 18 19 78422843ea875ad4eac35b9b8584032b MesaLib-7.9.1.tar.gz 20 07dc6cfb5928840b8b9df5bd1b3ae434 MesaLib-7.9.1.tar.bz2 21 c8eaea5b3c3d6dee784bd8c2db91c80f MesaLib-7.9.1.zip 22 ee9ecae4ca56fbb2d14dc15e3a0a7640 MesaGLUT-7.9.1.tar.gz 23 41fc477d524e7dc5c84da8ef22422bea MesaGLUT-7.9.1.tar.bz2 24 90b287229afdf19317aa989d19462e7a MesaGLUT-7.9.1.zip 25 26New features 27------------ 28 29None. 30 31Bug fixes 32--------- 33 34This list is likely incomplete. 35 36- `Bug 28800 <https://bugs.freedesktop.org/show_bug.cgi?id=28800>`__ - 37 [r300c, r300g] Texture corruption with World of Warcraft 38- `Bug 29420 <https://bugs.freedesktop.org/show_bug.cgi?id=29420>`__ - 39 Amnesia / HPL2 RendererFeatTest - not rendering correctly 40- `Bug 29946 <https://bugs.freedesktop.org/show_bug.cgi?id=29946>`__ - 41 [swrast] piglit valgrind glsl-array-bounds-04 fails 42- `Bug 30261 <https://bugs.freedesktop.org/show_bug.cgi?id=30261>`__ - 43 [GLSL 1.20] allowing inconsistent invariant declaration between two 44 vertex shaders 45- `Bug 30632 <https://bugs.freedesktop.org/show_bug.cgi?id=30632>`__ - 46 [softpipe] state_tracker/st_manager.c:489: 47 st_context_notify_invalid_framebuffer: Assertion \`stfb && 48 stfb->iface == stfbi' failed. 49- `Bug 30694 <https://bugs.freedesktop.org/show_bug.cgi?id=30694>`__ - 50 wincopy will crash on Gallium drivers when going to front buffer 51- `Bug 30787 <https://bugs.freedesktop.org/show_bug.cgi?id=30787>`__ - 52 Invalid asm shader does not generate draw-time error when used with 53 GLSL shader 54- `Bug 30993 <https://bugs.freedesktop.org/show_bug.cgi?id=30993>`__ - 55 getFramebufferAttachmentParameteriv wrongly generates error 56- `Bug 31101 <https://bugs.freedesktop.org/show_bug.cgi?id=31101>`__ - 57 [glsl2] abort() in ir_validate::visit_enter(ir_assignment \*ir) 58- `Bug 31193 <https://bugs.freedesktop.org/show_bug.cgi?id=31193>`__ - 59 [regression] aa43176e break water reflections 60- `Bug 31194 <https://bugs.freedesktop.org/show_bug.cgi?id=31194>`__ - 61 The mesa meta save/restore code doesn't ref the current GLSL program 62- `Bug 31371 <https://bugs.freedesktop.org/show_bug.cgi?id=31371>`__ - 63 glslparsertest: ir.cpp:358: ir_constant::ir_constant(const 64 glsl_type*, const ir_constant_data*): Assertion \`(type->base_type >= 65 0) && (type->base_type <= 3)' failed. 66- `Bug 31439 <https://bugs.freedesktop.org/show_bug.cgi?id=31439>`__ - 67 Crash in glBufferSubData() with size == 0 68- `Bug 31495 <https://bugs.freedesktop.org/show_bug.cgi?id=31495>`__ - 69 [i965 gles2c bisected] OpenGL ES 2.0 conformance 70 GL2Tests_GetBIFD_input.run regressed 71- `Bug 31514 <https://bugs.freedesktop.org/show_bug.cgi?id=31514>`__ - 72 isBuffer returns true for unbound buffers 73- `Bug 31560 <https://bugs.freedesktop.org/show_bug.cgi?id=31560>`__ - 74 [tdfx] tdfx_tex.c:702: error: 'const struct gl_color_table' has no 75 member named 'Format' 76- `Bug 31617 <https://bugs.freedesktop.org/show_bug.cgi?id=31617>`__ - 77 Radeon/Compiz: 'failed to attach dri2 front buffer', error case not 78 handled 79- `Bug 31648 <https://bugs.freedesktop.org/show_bug.cgi?id=31648>`__ - 80 [GLSL] array-struct-array gets assertion: \`(size >= 1) && (size <= 81 4)' failed. 82- `Bug 31650 <https://bugs.freedesktop.org/show_bug.cgi?id=31650>`__ - 83 [GLSL] varying gl_TexCoord fails to be re-declared to different size 84 in the second shader 85- `Bug 31673 <https://bugs.freedesktop.org/show_bug.cgi?id=31673>`__ - 86 GL_FRAGMENT_PRECISION_HIGH preprocessor macro undefined in GLSL ES 87- `Bug 31690 <https://bugs.freedesktop.org/show_bug.cgi?id=31690>`__ - 88 i915 shader compiler fails to flatten if in Aquarium webgl demo. 89- `Bug 31832 <https://bugs.freedesktop.org/show_bug.cgi?id=31832>`__ - 90 [i915] Bad renderbuffer format: 21 91- `Bug 31841 <https://bugs.freedesktop.org/show_bug.cgi?id=31841>`__ - 92 [drm:radeon_cs_ioctl] \*ERROR\* Invalid command stream ! 93- `Bug 31894 <https://bugs.freedesktop.org/show_bug.cgi?id=31894>`__ - 94 Writing to gl_PointSize with GLES2 corrupts other varyings 95- `Bug 31909 <https://bugs.freedesktop.org/show_bug.cgi?id=31909>`__ - 96 [i965] brw_fs.cpp:1461: void 97 fs_visitor::emit_bool_to_cond_code(ir_rvalue*): Assertion 98 \`expr->operands[i]->type->is_scalar()' failed. 99- `Bug 31934 <https://bugs.freedesktop.org/show_bug.cgi?id=31934>`__ - 100 [gallium] Mapping empty buffer object causes SIGSEGV 101- `Bug 31983 <https://bugs.freedesktop.org/show_bug.cgi?id=31983>`__ - 102 [i915 gles2] "if (expression with builtin/varying variables) discard" 103 breaks linkage 104- `Bug 31985 <https://bugs.freedesktop.org/show_bug.cgi?id=31985>`__ - 105 [GLSL 1.20] initialized uniform array considered as "unsized" 106- `Bug 31987 <https://bugs.freedesktop.org/show_bug.cgi?id=31987>`__ - 107 [gles2] if input a wrong pname(GL_NONE) to glGetBoolean, it will not 108 case GL_INVALID_ENUM 109- `Bug 32035 <https://bugs.freedesktop.org/show_bug.cgi?id=32035>`__ - 110 [GLSL bisected] comparing unsized array gets segfault 111- `Bug 32070 <https://bugs.freedesktop.org/show_bug.cgi?id=32070>`__ - 112 llvmpipe renders stencil demo incorrectly 113- `Bug 32273 <https://bugs.freedesktop.org/show_bug.cgi?id=32273>`__ - 114 assertion fails when starting vdrift 2010 release with shaders 115 enabled 116- `Bug 32287 <https://bugs.freedesktop.org/show_bug.cgi?id=32287>`__ - 117 [bisected GLSL] float-int failure 118- `Bug 32311 <https://bugs.freedesktop.org/show_bug.cgi?id=32311>`__ - 119 [965 bisected] Array look-ups broken on GM45 120- `Bug 32520 <https://bugs.freedesktop.org/show_bug.cgi?id=32520>`__ - 121 [gles2] glBlendFunc(GL_ZERO, GL_DST_COLOR) will result in 122 GL_INVALID_ENUM 123- `Bug 32825 <https://bugs.freedesktop.org/show_bug.cgi?id=32825>`__ - 124 egl_glx driver completely broken in 7.9 branch [fix in master] 125 126Changes 127------- 128 129The full set of changes can be viewed by using the following GIT 130command: 131 132:: 133 134 git log mesa-7.9..mesa-7.9.1 135 136Alex Deucher (5): 137 138- r100: revalidate after radeon_update_renderbuffers 139- r600c: add missing radeon_prepare_render() call on evergreen 140- r600c: properly align mipmaps to group size 141- gallium/egl: fix r300 vs r600 loading 142- r600c: fix some opcodes on evergreen 143 144Aras Pranckevicius (2): 145 146- glsl: fix crash in loop analysis when some controls can't be 147 determined 148- glsl: fix matrix type check in ir_algebraic 149 150Brian Paul (27): 151 152- swrast: fix choose_depth_texture_level() to respect mipmap filtering 153 state 154- st/mesa: replace assertion w/ conditional in framebuffer invalidation 155- egl/i965: include inline_wrapper_sw_helper.h 156- mesa: Add missing else in do_row_3D 157- mesa: add missing formats in \_mesa_format_to_type_and_comps() 158- mesa: handle more pixel types in mipmap generation code 159- mesa: make glIsBuffer() return false for never bound buffers 160- mesa: fix glDeleteBuffers() regression 161- swrast: init alpha value to 1.0 in opt_sample_rgb_2d() 162- meta: Mask Stencil.Clear against stencilMax in \_mesa_meta_Clear 163- st/mesa: fix mapping of zero-sized buffer objects 164- mesa: check for posix_memalign() errors 165- llvmpipe: fix broken stencil writemask 166- mesa: fix GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME query 167- mesa: return GL_FRAMEBUFFER_DEFAULT as FBO attachment type 168- mesa: make glGet*(GL_NONE) generate GL_INVALID_ENUM 169- mesa: test for cube map completeness in glGenerateMipmap() 170- tnl: Initialize gl_program_machine memory in run_vp. 171- tnl: a better way to initialize the gl_program_machine memory 172- mesa, st/mesa: disable GL_ARB_geometry_shader4 173- glsl: fix off by one in register index assertion 174- st/mesa: fix mipmap generation bug 175- glsl: new glsl_strtod() wrapper to fix decimal point interpretation 176- mesa: no-op glBufferSubData() on size==0 177- tdfx: s/Format/_BaseFormat/ 178- st/mesa: fix renderbuffer pointer check in st_Clear() 179- mesa: Bump the number of bits in the register index. 180 181Chad Versace (5): 182 183- glsl: Fix lexer rule for ^= 184- glsl: Fix ast-to-hir for ARB_fragment_coord_conventions 185- glsl: Fix ir_expression::constant_expression_value() 186- glsl: Fix erroneous cast in ast_jump_statement::hir() 187- glsl: Fix linker bug in cross_validate_globals() 188 189Chia-I Wu (10): 190 191- targets/egl: Fix linking with libdrm. 192- st/vega: Fix version check in context creation. 193- st/egl: Do not finish a fence that is NULL. 194- egl: Fix a false negative check in \_eglCheckMakeCurrent. 195- st/mesa: Unreference the sampler view in st_bind_surface. 196- egl_dri2: Fix \__DRI_DRI2 version 1 support. 197- st/vega: Do not wait NULL fences. 198- mesa: Do not advertise GL_OES_texture_3D. 199- egl_glx: Fix borken driver. 200- egl: Check extensions. 201 202Daniel Lichtenberger (1): 203 204- radeon: fix potential segfault in renderbuffer update 205 206Daniel Vetter (1): 207 208- r200: revalidate after radeon_update_renderbuffers 209 210Dave Airlie (1): 211 212- r300g: fixup rs690 tiling stride alignment calculations. 213 214Eric Anholt (13): 215 216- intel: Allow CopyTexSubImage to InternalFormat 3/4 textures, like 217 RGB/RGBA. 218- glsl: Free the loop state context when we free the loop state. 219- i965: Allow OPCODE_SWZ to put immediates in the first arg. 220- i965: Add support for rendering to SARGB8 FBOs. 221- glsl: Add a helper constructor for expressions that works out result 222 type. 223- glsl: Fix structure and array comparisions. 224- glsl: Quiet unreachable no-return-from-function warning. 225- glsl: Mark the array access for whole-array comparisons. 226- glsl: Fix flipped return of has_value() for array constants. 227- mesa: Add getters for the rest of the supported draw buffers. 228- mesa: Add getters for ARB_copy_buffer's attachment points. 229- i965: Correct the dp_read message descriptor setup on g4x. 230- glsl: Correct the marking of InputsRead/OutputsWritten on in/out 231 matrices. 232 233Fabian Bieler (1): 234 235- glsl: fix lowering conditional returns in subroutines 236 237Francisco Jerez (3): 238 239- meta: Don't leak alpha function/reference value changes. 240- meta: Fix incorrect rendering of the bitmap alpha component. 241- meta: Don't try to disable cube maps if the driver doesn't expose the 242 extension. 243 244Henri Verbeet (2): 245 246- r600: Evergreen has two extra frac_bits for the sampler LOD state. 247- st/mesa: Handle wrapped depth buffers in st_copy_texsubimage(). 248 249Ian Romanick (33): 250 251- Add 7.9 md5sums 252- docs: Import 7.8.x release notes from 7.8 branch. 253- docs: download.html does not need to be updated for each release 254- docs: Update mailing lines from sf.net to freedesktop.org 255- docs: added news item for 7.9 release 256- mesa: Validate assembly shaders when GLSL shaders are used 257- linker: Reject shaders that have unresolved function calls 258- mesa: Refactor validation of shader targets 259- glsl: Slightly change the semantic of \_LinkedShaders 260- linker: Improve handling of unread/unwritten shader inputs/outputs 261- glsl: Commit lexer files changed by previous cherry picking 262- mesa: Make metaops use program refcounts instead of names. 263- glsl: Fix incorrect gl_type of sampler2DArray and 264 sampler1DArrayShadow 265- mesa: Allow query of MAX_SAMPLES with EXT_framebuffer_multisample 266- glsl: better handling of linker failures 267- mesa: Fix glGet of ES2's GL_MAX_*_VECTORS properties. 268- i915: Disallow alpha, red, RG, and sRGB as render targets 269- glsl/linker: Free any IR discarded by optimization passes. 270- glsl: Add an optimization pass to simplify discards. 271- glsl: Add a lowering pass to move discards out of if-statements. 272- i915: Correctly generate unconditional KIL instructions 273- glsl: Add unary ir_expression constructor 274- glsl: Ensure that equality comparisons don't return a NULL IR tree 275- glcpp: Commit changes in generated files cause by previous commit 276- glsl: Inherrit type of declared variable from initializer 277- glsl: Inherrit type of declared variable from initializer after 278 processing assignment 279- linker: Ensure that unsized arrays have a size after linking 280- linker: Fix regressions caused by previous commit 281- linker: Allow built-in arrays to have different sizes between shader 282 stages 283- ir_to_mesa: Don't generate swizzles for record derefs of 284 non-scalar/vectors 285- Refresh autogenerated file builtin_function.cpp. 286- docs: Initial set of release notes for 7.9.1 287- mesa: set version string to 7.9.1 288 289Julien Cristau (1): 290 291- Makefile: don't include the same files twice in the tarball 292 293Kenneth Graunke (19): 294 295- glcpp: Return NEWLINE token for newlines inside multi-line comments. 296- generate_builtins.py: Output large strings as arrays of characters. 297- glsl: Fix constant component count in vector constructor emitting. 298- ir_dead_functions: Actually free dead functions and signatures. 299- glcpp: Define GL_FRAGMENT_PRECISION_HIGH if GLSL version >= 1.30. 300- glsl: Unconditionally define GL_FRAGMENT_PRECISION_HIGH in ES2 301 shaders. 302- glsl: Fix constant expression handling for <, >, <=, >= on vectors. 303- glsl: Use do_common_optimization in the standalone compiler. 304- glsl: Don't inline function prototypes. 305- glsl: Add a virtual as_discard() method. 306- glsl: Remove "discard" support from lower_jumps. 307- glsl: Refactor get_num_operands. 308- glcpp: Don't emit SPACE tokens in conditional_tokens production. 309- glsl: Clean up code by adding a new is_break() function. 310- glsl: Consider the "else" branch when looking for loop breaks. 311- Remove OES_compressed_paletted_texture from the ES2 extension list. 312- glsl/builtins: Compute the correct value for smoothstep(vec, vec, 313 vec). 314- Fix build on systems where "python" is python 3. 315- i965: Internally enable GL_NV_blend_square on ES2. 316 317Kristian Høgsberg (1): 318 319- i965: Don't write mrf assignment for pointsize output 320 321Luca Barbieri (1): 322 323- glsl: Unroll loops with conditional breaks anywhere (not just the 324 end) 325 326Marek Olšák (17): 327 328- r300g: fix microtiling for 16-bits-per-channel formats 329- r300g: fix texture border for 16-bits-per-channel formats 330- r300g: add a default channel ordering of texture border for unhandled 331 formats 332- r300g: fix texture border color for all texture formats 333- r300g: fix rendering with no vertex elements 334- r300/compiler: fix rc_rewrite_depth_out for it to work with any 335 instruction 336- r300g: fix texture border color once again 337- r300g: fix texture swizzling with compressed textures on r400-r500 338- r300g: disable ARB_texture_swizzle if S3TC is enabled on r3xx-only 339- mesa, st/mesa: fix gl_FragCoord with FBOs in Gallium 340- st/mesa: initialize key in st_vp_varient 341- r300/compiler: fix swizzle lowering with a presubtract source operand 342- r300g: fix rendering with a vertex attrib having a zero stride 343- ir_to_mesa: Add support for conditional discards. 344- r300g: finally fix the texture corruption on r3xx-r4xx 345- mesa: fix texel store functions for some float formats 346- r300/compiler: disable the rename_regs pass for loops 347 348Mario Kleiner (1): 349 350- mesa/r300classic: Fix dri2Invalidate/radeon_prepare_render for page 351 flipping. 352 353Peter Clifton (1): 354 355- intel: Fix emit_linear_blit to use DWORD aligned width blits 356 357Robert Hooker (2): 358 359- intel: Add a new B43 pci id. 360- egl_dri2: Add missing intel chip ids. 361 362Roland Scheidegger (1): 363 364- r200: fix r200 large points 365 366Thomas Hellstrom (17): 367 368- st/xorg: Don't try to use option values before processing options 369- xorg/vmwgfx: Make vmwarectrl work also on 64-bit servers 370- st/xorg: Add a customizer option to get rid of annoying cursor update 371 flicker 372- xorg/vmwgfx: Don't hide HW cursors when updating them 373- st/xorg: Don't try to remove invalid fbs 374- st/xorg: Fix typo 375- st/xorg, xorg/vmwgfx: Be a bit more frendly towards cross-compiling 376 environments 377- st/xorg: Fix compilation errors for Xservers compiled without 378 Composite 379- st/xorg: Don't use deprecated x*alloc / xfree functions 380- xorg/vmwgfx: Don't use deprecated x*alloc / xfree functions 381- st/xorg: Fix compilation for Xservers >= 1.10 382- mesa: Make sure we have the talloc cflags when using the talloc 383 headers 384- egl: Add an include for size_t 385- mesa: Add talloc includes for gles 386- st/egl: Fix build for include files in nonstandard places 387- svga/drm: Optionally resolve calls to powf during link-time 388- gallium/targets: Trivial crosscompiling fix 389 390Tom Stellard (7): 391 392- r300/compiler: Make sure presubtract sources use supported swizzles 393- r300/compiler: Fix register allocator's handling of loops 394- r300/compiler: Fix instruction scheduling within IF blocks 395- r300/compiler: Use zero as the register index for unused sources 396- r300/compiler: Ignore alpha dest register when replicating the result 397- r300/compiler: Use correct swizzles for all presubtract sources 398- r300/compiler: Don't allow presubtract sources to be remapped twice 399 400Vinson Lee (1): 401 402- glsl: Fix 'control reaches end of non-void function' warning. 403 404richard (1): 405 406- r600c : inline vertex format is not updated in an app, switch to use 407 vfetch constants. For the 7.9 and 7.10 branches as well. 408