Mesa 7.9 Release Notes / October 4, 2010

Mesa 7.9 is a new development release. People who are concerned with stability and reliability should stick with a previous release or wait for Mesa 7.9.1.

Mesa 7.9 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

ed65ab425b25895c7f473d0a5e6e64f8  MesaLib-7.9.tar.gz
82c740c49d572baa6da2b1a1eee90bca  MesaLib-7.9.tar.bz2
cd2b6ecec759b0457475e94bbb38fedb  MesaLib-7.9.zip
7b54af9fb9b1f6a1a65db2520f50848f  MesaGLUT-7.9.tar.gz
20d07419d1929f833fdb36bced290ad5  MesaGLUT-7.9.tar.bz2
62a7edecd7c92675cd6029b05217eb0a  MesaGLUT-7.9.zip

New features

  • New, improved GLSL compiler written by Intel. See the Shading Language page for more information.

  • New, very experimental Gallium driver for R600-R700 Radeons.

  • Support for AMD Evergreen-based Radeons (HD 5xxx)

  • GL_EXT_timer_query extension (i965 driver and softpipe only)

  • GL_EXT_framebuffer_multisample extension (intel drivers, MAX_SAMPLES = 1)

  • GL_ARB_texture_swizzle extension (alias of GL_EXT_texture_swizzle)

  • GL_ARB_draw_elements_base_vertex, GL_ARB_fragment_program_shadow, GL_ARB_window_pos, GL_EXT_gpu_program_parameters, GL_ATI_texture_env_combine3, GL_MESA_pack_invert, and GL_OES_EGL_image extensions in Gallium drivers

  • GL_ARB_depth_clamp and GL_NV_depth_clamp extensions (in nv50 and r600 Gallium drivers)

  • GL_ARB_half_float_vertex extension (in nvfx, r300, r600, softpipe, and llvmpipe Gallium drivers)

  • GL_EXT_draw_buffers2 (in nv50, r600, softpipe, and llvmpipe Gallium drivers)

  • GL_EXT_texture_swizzle (in nvfx, r300, r600, softpipe, and llvmpipe Gallium drivers)

  • GL_ATI_texture_mirror_once (in nvfx, nv50, r300, r600, softpipe, and llvmpipe Gallium drivers)

  • GL_NV_conditional_render (in r300 Gallium driver)

  • Initial “signs of life” support for Sandybridge hardware in i965 DRI driver.

Bug fixes

This list is likely incomplete.

  • Massive improvements to the Gallium driver for R300-R500 Radeons; this driver is now considered stable for use as a DRI (OpenGL) driver.

  • Bug 10908 - GLSL: gl_FogParamaters gl_Fog built-in uniform not functioning

  • Bug 13753 - Numerous bugs in GLSL uniform handling

  • Bug 16854 - GLSL function call at global scope causes SEGV

  • Bug 16856 - GLSL indexing of unsized array results in assertion failure

  • Bug 18659 - Crash in shader/slang/slang_codegen.c _slang_gen_function_call_name()

  • Bug 19089 - [GLSL] glsl1/shadow2D() cases fail

  • Bug 22622 - [GM965 GLSL] noise*() cause GPU lockup

  • Bug 23743 - For loop from 0 to 0 not optimized out

  • Bug 24553 - shader compilation times explode when using more () pairs

  • Bug 25664 - [GLSL] re-declaring an empty array fails to compile

  • Bug 25769 - [GLSL] “float” can be implicitly converted to “int”

  • Bug 25808 - [GLSL] const variable is modified successfully

  • Bug 25826 - [GLSL] declaring an unsized array then re-declaring with a size fails

  • Bug 25827 - [GLSL] vector constructor accepts too many arguments successfully

  • Bug 25829 - [GLSL] allowing non-void function without returning value

  • Bug 25830 - [GLSL] allowing non-constant-expression as const declaration initializer

  • Bug 25877 - [GLSL 1.10] implicit conversion from “int” to “float” should not be allowed

  • Bug 25878 - [GLSL] sampler is converted to int successfully

  • Bug 25994 - [GM45][GLSL] ‘return’ statement in vertex shader unsupported

  • Bug 25999 - [GLSL] embedded structure constructor fails to compile

  • Bug 26000 - [GLSL] allowing different parameter qualifier between the function definition and declaration

  • Bug 26001 - [GLSL 1.10] constructing matrix from matrix succeeds

  • Bug 26224 - [GLSL] Cannot get location of a uniform struct member

  • Bug 26990 - [GLSL] variable declaration in “while” fails to compile

  • Bug 27004 - [GLSL] allowing macro redefinition

  • Bug 27060 - [965] piglit glsl-fs-raytrace failure due to lack of function calls.

  • Bug 27216 - Assignment with a function call in an if statement causes an assertion failure

  • Bug 27261 - GLSL Compiler fails on the following vertex shader

  • Bug 27265 - GLSL Compiler doesnt link the attached vertex shader

  • Bug 27388 - [i965] piglit glsl-vs-arrays failure

  • Bug 27403 - GLSL struct causing “Invalid src register file …” error

  • Bug 27914 - GLSL compiler uses MUL+ADD where it could use MAD

  • Bug 28055 - glsl-texcoord-array fails GLSL compilation

  • Bug 28374 - SIGSEGV shader/slang/slang_typeinfo.c:534

  • Bug 28748 - [i965] uninlined function calls support

  • Bug 28833 - piglit/shaders/glsl-texcoord-array fail

  • Bug 28834 - Add support for system fpclassify to GL_OES_query_matrix function for OpenBSD / NetBSD

  • Bug 28837 - varying vec4 index support

  • Bug 28845 - The GLU tesselator code has some warnings

  • Bug 28889 - [regression] wine game crash

  • Bug 28894 - slang build fails if absolute path contains spaces

  • Bug 28913 - [GLSL] allowing two version statements

  • Bug 28931 - Floating Point Exception in Warzone2100 Trunk version

  • Bug 28966 - [r300g] Dynamic branching 3 demo does not run

  • Bug 28967 - slang/slang_emit.c:350: storage_to_src_reg: Assertion `index >= 0’ failed.

  • Bug 29013 - [r300g] translate_rgb_op: unknown opcode ILLEGAL OPCODE

  • Bug 29020 - [r300g] Wine d3d9 tests hardlock

  • Bug 29910 - Mesa advertises bogus GL_ARB_shading_language_120

  • Bug 30196 - [GLSL] gl_TextureMatrix{Inverse,Transpose,InverseTranspose} unsupported

Changes

  • The Mesa demo/test programs have been moved into a separate git repository.

  • GL/glext.h file upgraded to version 64

  • GL/glxext.h file upgraded to version 32

  • GL/wglext.h file upgraded to version 22