# The Mesa 3D Graphics Library

# Mesa 10.3.3 Release Notes / November 8, 2014

Mesa 10.3.3 is a bug fix release which fixes bugs found since the 10.3.2 release.

Mesa 10.3.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 only available if requested at context creation because compatibility contexts are not supported.

## SHA256 checksums

    TBD

## New features

None

## Bug fixes

This list is likely incomplete.

- Bug 70410 - egl-static/Makefile: linking fails with llvm >= 3.4
- Bug 82921 - layout(location=0) emits error >= MAX_UNIFORM_LOCATIONS due to integer underflow
- Bug 83574 - [llvmpipe] [softpipe] piglit arb_explicit_uniform_location-use-of-unused-loc regression
- Bug 85454 - Unigine Sanctuary with Wine crashes on Mesa Git
- Bug 85918 - Mesa: MSVC 2010/2012 Compile error

## Changes

Anuj Phogat (2):

- glsl: Fix crash due to negative array index
- glsl: Use signed array index in update_max_array_access()

Brian Paul (1):

- mesa: fix UNCLAMPED_FLOAT_TO_UBYTE() macro for MSVC

Emil Velikov (2):

- docs: Add sha256 sums for the 10.3.2 release
- Update version to 10.3.3

Ilia Mirkin (27):

- freedreno/ir3: fix FSLT/etc handling to return 0/-1 instead of 0/1.0
- freedreno/ir3: INEG operates on src0, not src1
- freedreno/ir3: add UARL support
- freedreno/ir3: negate result of USLT/etc
- freedreno/ir3: use unsigned comparison for UIF
- freedreno/ir3: add TXL support
- freedreno/ir3: fix UCMP handling
- freedreno/ir3: implement UMUL correctly
- freedreno: add default .dir-locals.el for emacs settings
- freedreno/ir3: make texture instruction construction more dynamic
- freedreno/ir3: fix TXB/TXL to actually pull the bias/lod argument
- freedreno/ir3: add TXQ support
- freedreno/ir3: add TXB2 support
- freedreno: dual-source render targets are not supported
- freedreno: instanced drawing/compute not yet supported
- freedreno/ir3: avoid fan-in sources referring to same instruction
- freedreno/ir3: add IDIV/UDIV support
- freedreno/ir3: add UMOD support, based on UDIV
- freedreno/ir3: add MOD support
- freedreno/ir3: add ISSG support
- freedreno/ir3: add UMAD support
- freedreno/ir3: make TXQ return integers, not floats
- freedreno/ir3: shadow comes before array
- freedreno/ir3: add texture offset support
- freedreno/ir3: add TXD support and expose ARB_shader_texture_lod
- freedreno/ir3: add TXF support
- freedreno: positions come out as integers, not half-integers

Jan Vesely (1):

- configure: include llvm systemlibs when using static llvm

Marek Olšák (5):

- r600g: fix polygon mode for points and lines and point/line fill modes
- radeonsi: fix polygon mode for points and lines and point/line fill modes
- radeonsi: fix incorrect index buffer max size for lowered 8-bit indices
- Revert "st/mesa: set MaxUnrollIterations = 255"
- r300g: remove enabled/disabled hyperz and AA compression messages

Mauro Rossi (1):

- gallium/nouveau: fully build the driver under android

Michel Dänzer (1):

- radeon/llvm: Dynamically allocate branch/loop stack arrays

Rob Clark (62):

- freedreno/ir3: detect scheduler fail
- freedreno/ir3: add TXB
- freedreno/ir3: add DDX/DDY
- freedreno/ir3: bit of debug
- freedreno/ir3: fix error in bail logic
- freedreno/ir3: fix constlen with relative addressing
- freedreno/ir3: add no-copy-propagate fallback step
- freedreno: don't overflow cmdstream buffer so much
- freedreno/ir3: fix potential segfault in RA
- freedreno: update generated headers
- freedreno/a3xx: enable hw primitive-restart
- freedreno/a3xx: handle rendering to layer != 0
- freedreno: update generated headers
- freedreno/a3xx: format fixes
- util/u_format: add _is_alpha()
- freedreno/a3xx: alpha render-target shenanigans
- freedreno/ir3: catch incorrect usage of tmp-dst
- freedreno/ir3: add missing put_dst
- freedreno: "fix" problems with excessive flushes
- freedreno: update generated headers
- freedreno/a3xx: 3d/array textures
- freedreno: add DRM_CONF_SHARE_FD
- freedreno/a3xx: more texture array fixes
- freedreno/a3xx: initial texture border-color
- freedreno: fix compiler warning
- freedreno: don't advertise mirror-clamp support
- freedreno: update generated headers
- freedreno: we have more than 0 viewports!
- freedreno: turn missing caps into compile warnings
- freedreno/a3xx: add LOD_BIAS
- freedreno/a3xx: add flat interpolation mode
- freedreno/a3xx: add 32bit integer vtx formats
- freedreno/a3xx: fix border color order
- freedreno: move bind_sampler_states to per-generation
- freedreno: add texcoord clamp support to lowering
- freedreno/a3xx: add support to emulate GL_CLAMP
- freedreno/a3xx: re-emit shaders on variant change
- freedreno/lowering: fix token calculation for lowering
- freedreno: destroy transfer pool after blitter
- freedreno: max-texture-lod-bias should be 15.0f
- freedreno: update generated headers
- freedreno/a3xx: handle large shader program sizes
- freedreno/a3xx: emit all immediates in one shot
- freedreno/ir3: fix lockups with lame FRAG shaders
- freedreno/a3xx: handle VS only outputting BCOLOR
- freedreno: query fixes
- freedreno/a3xx: refactor vertex state emit
- freedreno/a3xx: refactor/optimize emit
- freedreno/ir3: optimize shader key comparision
- freedreno: inline fd_draw_emit()
- freedreno: fix layer_stride
- freedreno: update generated headers
- freedreno/ir3: large const support
- freedreno/a3xx: more layer/level fixes
- freedreno/ir3: comment + better fxn name
- freedreno/ir3: fix potential gpu lockup with kill
- freedreno/a3xx: disable early-z when we have kill's
- freedreno/ir3: add debug flag to disable cp
- freedreno: clear vs scissor
- freedreno: mark scissor state dirty when enable bit changes
- freedreno/a3xx: fix viewport state during clear
- freedreno/a3xx: fix depth/stencil restore format

Tapani Pälli (2):

- glsl: fix uniform location count used for glsl types
- mesa: check that uniform exists in glUniform* functions