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