Home | History | Annotate | Download | only in docs
      1 <HTML>
      2 
      3 <TITLE>Mesa Release Notes</TITLE>
      4 
      5 <head><link rel="stylesheet" type="text/css" href="mesa.css"></head>
      6 
      7 <BODY>
      8 
      9 <body bgcolor="#eeeeee">
     10 
     11 <H1>Mesa 7.10 Release Notes / January 7, 2011</H1>
     12 
     13 <p>
     14 Mesa 7.10 is a new development release.
     15 People who are concerned with stability and reliability should stick
     16 with a previous release or wait for Mesa 7.10.1.
     17 </p>
     18 <p>
     19 Mesa 7.10 implements the OpenGL 2.1 API, but the version reported by
     20 glGetString(GL_VERSION) depends on the particular driver being used.
     21 Some drivers don't support all the features required in OpenGL 2.1.
     22 </p>
     23 <p>
     24 See the <a href="install.html">Compiling/Installing page</a> for prerequisites
     25 for DRI hardware acceleration.
     26 </p>
     27 
     28 
     29 <h2>MD5 checksums</h2>
     30 <pre>
     31 tbd
     32 </pre>
     33 
     34 
     35 <h2>New features</h2>
     36 <ul>
     37 <li>GL_ARB_explicit_attrib_location extension (Intel and software drivers).
     38 <li>GL_ARB_texture_rg (Intel, software drivers, gallium drivers).
     39 <li>GL_EXT_separate_shader_objects extension (Intel and software drivers).
     40 <li>GL_NV_primitive_restart extension (Gallium softpipe, llvmpipe).
     41 <li>New fragment shader back-end for i965-class hardware.
     42 <li>Support for Sandybridge chipset in i965 DRI driver.
     43 </ul>
     44 
     45 
     46 <h2>Bug fixes</h2>
     47 <p>This list is likely incomplete.</p>
     48 <ul>
     49 <li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=28800">Bug 28800</a> - [r300c, r300g] Texture corruption with World of Warcraft</li>
     50 
     51 <li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=29420">Bug 29420</a> - Amnesia / HPL2 RendererFeatTest - not rendering correctly</li>
     52 
     53 <li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=29946">Bug 29946</a> - [swrast] piglit valgrind glsl-array-bounds-04 fails</li>
     54 
     55 <li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=30261">Bug 30261</a> - [GLSL 1.20] allowing inconsistent invariant declaration between two vertex shaders</li>
     56 
     57 <li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=30632">Bug 30632</a> - [softpipe] state_tracker/st_manager.c:489: st_context_notify_invalid_framebuffer: Assertion `stfb &amp;&amp; stfb-&gt;iface == stfbi' failed.</li>
     58 
     59 <li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=30694">Bug 30694</a> - wincopy will crash on Gallium drivers when going to front buffer</li>
     60 
     61 <li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=30771">Bug 30771</a> -  [r600g] vert-tex glsl demo</li>
     62 
     63 <li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=30787">Bug 30787</a> - Invalid asm shader does not generate draw-time error when used with GLSL shader</li>
     64 
     65 <li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=30974">Bug 30974</a> - [llvmpipe] SIGABRT src/gallium/drivers/llvmpipe/lp_state_fs.c:779</li>
     66 
     67 <li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=30993">Bug 30993</a> - getFramebufferAttachmentParameteriv wrongly generates error</li>
     68 
     69 <li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=31101">Bug 31101</a> -  [glsl2] abort() in ir_validate::visit_enter(ir_assignment *ir)</li>
     70 
     71 <li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=31193">Bug 31193</a> -  [regression] aa43176e break water reflections</li>
     72 
     73 <li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=31194">Bug 31194</a> - The mesa meta save/restore code doesn't ref the current GLSL program</li>
     74 
     75 <li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=31371">Bug 31371</a> - glslparsertest: ir.cpp:358: ir_constant::ir_constant(const glsl_type*, const ir_constant_data*): Assertion `(type->base_type &gt;= 0) &amp;&amp; (type->base_type &lt;= 3)' failed.</li>
     76 
     77 <li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=31439">Bug 31439</a> - Crash in glBufferSubData() with size == 0</li>
     78 
     79 <li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=31495">Bug 31495</a> - [i965 gles2c bisected] OpenGL ES 2.0 conformance GL2Tests_GetBIFD_input.run regressed</li>
     80 
     81 <li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=31514">Bug 31514</a> - isBuffer returns true for unbound buffers</li>
     82 
     83 <li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=31560">Bug 31560</a> - [tdfx] tdfx_tex.c:702: error: const struct gl_color_table has no member named Format</li>
     84 
     85 <li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=31617">Bug 31617</a> - Radeon/Compiz: 'failed to attach dri2 front buffer', error case not handled</li>
     86 
     87 <li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=31648">Bug 31648</a> -  [GLSL] array-struct-array gets assertion: `(size &gt;= 1) && (size &lt;= 4)' failed.</li>
     88 
     89 <li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=31650">Bug 31650</a> - [GLSL] varying gl_TexCoord fails to be re-declared to different size in the second shader</li>
     90 
     91 <li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=31673">Bug 31673</a> - GL_FRAGMENT_PRECISION_HIGH preprocessor macro undefined in GLSL ES</li>
     92 
     93 <li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=31690">Bug 31690</a> -  i915 shader compiler fails to flatten if in Aquarium webgl demo.</li>
     94 
     95 <li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=31832">Bug 31832</a> - [i915] Bad renderbuffer format: 21</li>
     96 
     97 <li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=31841">Bug 31841</a> - [drm:radeon_cs_ioctl] *ERROR* Invalid command stream !</li>
     98 
     99 <li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=31894">Bug 31894</a> - Writing to gl_PointSize with GLES2 corrupts other varyings</li>
    100 
    101 <li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=31909">Bug 31909</a> - [i965] brw_fs.cpp:1461: void fs_visitor::emit_bool_to_cond_code(ir_rvalue*): Assertion `expr-&gt;operands[i]-&gt;type-&gt;is_scalar()' failed.</li>
    102 
    103 <li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=31934">Bug 31934</a> - [gallium] Mapping empty buffer object causes SIGSEGV</li>
    104 
    105 <li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=31983">Bug 31983</a> -  [i915 gles2] "if (expression with builtin/varying variables) discard" breaks linkage</li>
    106 
    107 <li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=31985">Bug 31985</a> - [GLSL 1.20] initialized uniform array considered as "unsized"</li>
    108 
    109 <li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=31987">Bug 31987</a> - [gles2] if input a wrong pname(GL_NONE) to glGetBoolean, it will not case GL_INVALID_ENUM</li>
    110 
    111 <li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=32035">Bug 32035</a> - [GLSL bisected] comparing unsized array gets segfault</li>
    112 
    113 <li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=32070">Bug 32070</a> - llvmpipe renders stencil demo incorrectly</li>
    114 
    115 <li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=32273">Bug 32273</a> - assertion fails when starting vdrift 2010 release with shaders enabled</li>
    116 
    117 <li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=32287">Bug 32287</a> - [bisected GLSL] float-int failure</li>
    118 
    119 <li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=32311">Bug 32311</a> - [965 bisected] Array look-ups broken on GM45</li>
    120 
    121 <li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=32520">Bug 32520</a> -  [gles2] glBlendFunc(GL_ZERO, GL_DST_COLOR) will result in GL_INVALID_ENUM</li>
    122 
    123 <li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=32825">Bug 32825</a> - egl_glx driver completely broken in 7.9 branch [fix in master]</li>
    124 
    125 <li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=">Bug </a> - </li>
    126 
    127 <li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=">Bug </a> - </li>
    128 
    129 </ul>
    130 
    131 
    132 <h2>Changes</h2>
    133 <p>Adam Jackson (2):
    134 <ul>
    135   <li>i965: Update renderer strings for sandybridge</li>
    136   <li>drivers/x11: unifdef XFree86Server</li>
    137 </ul></p>
    138 
    139 <p>Alex Deucher (30):
    140 <ul>
    141   <li>r600c: fix mipmap stride on evergreen</li>
    142   <li>r600c: add reloc for CB_COLOR0_ATTRIB</li>
    143   <li>r600c: pull over 6xx/7xx vertex fixes for evergreen</li>
    144   <li>r600c: fix segfault in evergreen stencil code</li>
    145   <li>r100: revalidate after radeon_update_renderbuffers</li>
    146   <li>r600c: add missing radeon_prepare_render() call on evergreen</li>
    147   <li>r600c: properly align mipmaps to group size</li>
    148   <li>egl_dri2: Add radeon chip ids</li>
    149   <li>r600c/evergreen: texture align is group_bytes just like 6xx/7xx</li>
    150   <li>r600g: fix buffer alignment</li>
    151   <li>r600g: All EVENT_WRITE packets need the EVENT_INDEX field</li>
    152   <li>r600g: translate ARR instruction for evergreen</li>
    153   <li>r600g: use meaningful defines for chiprev</li>
    154   <li>r600g: use full range of VS resources for vertex samplers</li>
    155   <li>r600g: fix additional EVENT_WRITE packet</li>
    156   <li>r600g: fix some winsys functions to deal properly with evergreen</li>
    157   <li>r600c: add Ontario Fusion APU support</li>
    158   <li>r600g: add support for ontario APUs</li>
    159   <li>r600c: fix VC flush on cedar and palm</li>
    160   <li>gallium/egl: fix r300 vs r600 loading</li>
    161   <li>r600c: fix some opcodes on evergreen</li>
    162   <li>r600c: bump texture limits to hw limits</li>
    163   <li>r600g: bump texture/cb limits appropriately for evergreen</li>
    164   <li>radeon: bump mip tree levels to 15</li>
    165   <li>r600g: fix rendering with a vertex attrib having a zero stride</li>
    166   <li>r600g: remove useless switch statements</li>
    167   <li>r600g: add support for NI (northern islands) asics</li>
    168   <li>r600c: add support for NI asics</li>
    169   <li>r600g: support up to 64 shader constants</li>
    170   <li>r600c: fix up SQ setup in blit code for Ontario/NI</li>
    171 </ul></p>
    172 
    173 <p>Andre Maasikas (3):
    174 <ul>
    175   <li>r600c: fix buffer height setting in dri2 case</li>
    176   <li>r600g: break alu clause earlier</li>
    177   <li>r600g: fix evergreen interpolation setup</li>
    178 </ul></p>
    179 
    180 <p>Andrew Randrianasulu (2):
    181 <ul>
    182   <li>dri/nv04: Don't expose ARB_texture_env_combine/dot3.</li>
    183   <li>dri/nv04: Enable eng3dm for A8/L8 textures.</li>
    184 </ul></p>
    185 
    186 <p>Aras Pranckevicius (2):
    187 <ul>
    188   <li>glsl: fix crash in loop analysis when some controls can't be determined</li>
    189   <li>glsl: fix matrix type check in ir_algebraic</li>
    190 </ul></p>
    191 
    192 <p>Bas Nieuwenhuizen (3):
    193 <ul>
    194   <li>r600g: set ENABLE_KILL in the shader state in the new design</li>
    195   <li>r600g: set ENABLE_KILL on evergreen too</li>
    196   <li>r600g: use dirty list to track dirty blocks</li>
    197 </ul></p>
    198 
    199 <p>Ben Skeggs (3):
    200 <ul>
    201   <li>nv50: DST</li>
    202   <li>nv50: DPH</li>
    203   <li>nv50: silence some unknown get_param warnings</li>
    204 </ul></p>
    205 
    206 <p>Benjamin Franzke (2):
    207 <ul>
    208   <li>st/egl image: multiply drm buf-stride with blocksize</li>
    209   <li>r600g: implement texture_get_handle (needed for eglExportDRMImageMESA)</li>
    210 </ul></p>
    211 
    212 <p>Brian Paul (296):
    213 <ul>
    214   <li>glx: add const qualifiers to __indirect_glMultiDrawArraysEXT()</li>
    215   <li>glsl2: fix signed/unsigned comparison warning</li>
    216   <li>llvmpipe: cast to silence warning</li>
    217   <li>llvmpipe: s/boolean/unsigned/ in bitfield to silence warning</li>
    218   <li>nv50: use unsigned int for bitfields to silence warnings</li>
    219   <li>tgsi: fix incorrect usage_mask for shadow tex instructions</li>
    220   <li>gallivm: expand AoS sampling to cover all filtering modes</li>
    221   <li>gallivm: fix incorrect vector shuffle datatype</li>
    222   <li>gallivm: move i32_vec_type inside the #ifdef</li>
    223   <li>mesa: include mfeatures.h in formats.c</li>
    224   <li>gallivm: fix wrong return value in bitwise functions</li>
    225   <li>tgsi/sse: fix aos_to_soa() loop to handle num_inputs==0</li>
    226   <li>gallivm: added missing case for PIPE_TEXTURE_RECT</li>
    227   <li>gallium: better docs for pipe_rasterizer_state::sprite_coord_enable</li>
    228   <li>gallium: rework handling of sprite_coord_enable state</li>
    229   <li>gallium/docs: added new pipeline.txt diagram</li>
    230   <li>mesa: don't call valid_texture_object() in non-debug builds</li>
    231   <li>glsl2: silence compiler warnings in printf() calls</li>
    232   <li>docs: remove old broken link</li>
    233   <li>docs: mark as obsolete, remove dead links</li>
    234   <li>llvmpipe: fix query bug when no there's no scene</li>
    235   <li>gallivm: remove debug code</li>
    236   <li>llvmpipe: maintain fragment shader state for draw module</li>
    237   <li>llvmpipe: indentation fix</li>
    238   <li>llvmpipe: reformatting, remove trailing whitespace, etc</li>
    239   <li>llvmpipe: clean-up, comments in setup_point_coefficient()</li>
    240   <li>llvmpipe: rename sprite field, add sprite_coord_origin</li>
    241   <li>llvmpipe: implement sprite coord origin modes</li>
    242   <li>draw: fix test for using the wide-point stage</li>
    243   <li>llvmpipe: check bitshift against PIPE_MAX_SHADER_OUTPUTS</li>
    244   <li>draw: check bitshift against PIPE_MAX_SHADER_OUTPUS</li>
    245   <li>Merge branch 'sprite-coord'</li>
    246   <li>draw: new draw_fs.[ch] files</li>
    247   <li>glsl2: fix typo in error msg</li>
    248   <li>gallivm: fix lp_build_sample_compare()</li>
    249   <li>softpipe: add missing calls to set draw vertex samplers/views</li>
    250   <li>mesa: don't advertise bogus GL_ARB_shading_language_120 extension</li>
    251   <li>configs: remove egl-swrast target from linux-dri config</li>
    252   <li>llvmpipe: fix sprite texcoord setup for non-projective texturing</li>
    253   <li>mesa: fix assertions to handle srgb formats</li>
    254   <li>st/mesa: add missing MESA_FORMAT_S8 case in st_mesa_format_to_pipe_format()</li>
    255   <li>st/mesa: use the wrapped renderbuffer in CopyPixels()</li>
    256   <li>llvmpipe: make min/max lod and lod bias dynamic state</li>
    257   <li>llvmpipe: make texture border_color dynamic state</li>
    258   <li>softpipe: fix repeat() function for NPOT textures</li>
    259   <li>gallivm: fix repeat() function for NPOT textures</li>
    260   <li>swrast: update comments for REMAINDER() macro</li>
    261   <li>softpipe: rename sp_state_fs.c -&gt; sp_state_shader.c</li>
    262   <li>softpipe: make shader-related functions static</li>
    263   <li>softpipe: make blend/stencil/depth functions static</li>
    264   <li>softpipe: make sampler state functions static</li>
    265   <li>softpipe: make vertex state functions static</li>
    266   <li>softpipe: make rasterizer state functions static</li>
    267   <li>softpipe: make stream out state functions static</li>
    268   <li>softpipe: make clip state functions static</li>
    269   <li>softpipe: minor asst. clean-ups</li>
    270   <li>softpipe: allocate tile data on demand</li>
    271   <li>llvmpipe: fix swizzling of texture border color</li>
    272   <li>softpipe: fix swizzling of texture border color</li>
    273   <li>draw: pass sampler state down to llvm jit state</li>
    274   <li>gallivm: check for level=0 case in lp_build_minify()</li>
    275   <li>gallivm: added some comments</li>
    276   <li>draw: check for null sampler pointers</li>
    277   <li>swrast: fix choose_depth_texture_level() to respect mipmap filtering state</li>
    278   <li>st/mesa: replace assertion w/ conditional in framebuffer invalidation</li>
    279   <li>glsl2: fix signed/unsigned comparison warning</li>
    280   <li>st/xlib: add some comments</li>
    281   <li>ir_to_mesa: assorted clean-ups, const qualifiers, new comments</li>
    282   <li>mesa: remove assertion w/ undeclared variable texelBytes</li>
    283   <li>gallivm: remove newlines</li>
    284   <li>draw/llvmpipe: replace DRAW_MAX_TEXTURE_LEVELS with PIPE_MAX_TEXTURE_LEVELS</li>
    285   <li>mesa: reformatting, comments, code movement</li>
    286   <li>x11: fix breakage from gl_config::visualType removal</li>
    287   <li>gallivm: work-around trilinear mipmap filtering regression with LLVM 2.8</li>
    288   <li>mesa: remove post-convolution width/height vars</li>
    289   <li>gallivm: add compile-time option to emit inst addrs and/or line numbers</li>
    290   <li>llvmpipe: code to dump bytecode to file (disabled)</li>
    291   <li>gallivm: added lp_build_print_vec4()</li>
    292   <li>gallivm: added lp_build_load_volatile()</li>
    293   <li>glsl: add ir_unop_round_even case to silence unhandled enum warning</li>
    294   <li>st/mesa: fix regressions in glDrawPixels(GL_STENCIL_INDEX)</li>
    295   <li>st/mesa: reformatting in st_cb_drawpixels.c</li>
    296   <li>st/mesa: use GLuint to avoid problem w/ uint not defined on mingw32</li>
    297   <li>st/mesa: update function name, comments</li>
    298   <li>gallivm: use util_snprintf()</li>
    299   <li>llvmpipe: remove lp_setup_coef*.c files from Makefile</li>
    300   <li>mesa: fix mesa version string construction</li>
    301   <li>gallivm: fix incorrect type for zero vector in emit_kilp()</li>
    302   <li>llvmpipe/draw: always enable LLVMAddInstructionCombiningPass()</li>
    303   <li>draw: use float version of LLVM Mul/Add instructions</li>
    304   <li>draw: fix typo in comment</li>
    305   <li>mesa: add GL_RG case to _mesa_source_buffer_exists()</li>
    306   <li>mesa: add missing cases for packing red/green images</li>
    307   <li>st/mesa: added cases for GL_COMPRESSED_RED/RG in st_choose_format()</li>
    308   <li>docs: update texture red/green support in GL3.txt</li>
    309   <li>docs: add GL_ARB_texture_rg to release notes</li>
    310   <li>mesa: driver hook for primitive restart</li>
    311   <li>mesa: set/get primitive restart state</li>
    312   <li>mesa: API spec for primitive restart</li>
    313   <li>mesa: regenerated files with primitive restart</li>
    314   <li>mesa: plug in primitive restart function</li>
    315   <li>vbo: support for primitive restart</li>
    316   <li>gallium: new CAP, state for primitive restart</li>
    317   <li>st/mesa: support for primitive restart</li>
    318   <li>draw: implement primitive splitting for primitive restart</li>
    319   <li>softpipe: enable primitive restart</li>
    320   <li>llvmpipe: enable primitive restart</li>
    321   <li>docs: added GL_NV_primitive_restart extension</li>
    322   <li>Merge branch 'primitive-restart-cleanup'</li>
    323   <li>winsys/xlib: formatting fixes</li>
    324   <li>winsys/xlib: use Bool type for shm field</li>
    325   <li>winsys/xlib: fix up allocation/dealloction of XImage</li>
    326   <li>winsys/xlib: rename xm-&gt;xlib</li>
    327   <li>galahad: silence warnings</li>
    328   <li>mesa: move declaration before code</li>
    329   <li>docs: updated GL3 status for primitive restart</li>
    330   <li>mesa: 80-column wrapping</li>
    331   <li>mesa: simplify fbo format checking code</li>
    332   <li>mesa: split up the image.c file</li>
    333   <li>mesa: add pixel packing for unscaled integer types</li>
    334   <li>mesa: _mesa_ClearColorIuiEXT() and _mesa_ClearColorIiEXT()</li>
    335   <li>mesa: _mesa_is_format_integer() function</li>
    336   <li>mesa: minor reformatting, clean-ups</li>
    337   <li>mesa: added _mesa_is_fragment_shader_active() helper</li>
    338   <li>mesa: new glDrawPixels error check for integer formats</li>
    339   <li>softpipe: added some texture sample debug code (disabled)</li>
    340   <li>mesa: added new gl_extensions::EXT_gpu_shader4 field</li>
    341   <li>mesa: added new gl_framebuffer::_IntegerColor field</li>
    342   <li>mesa: added glGet query for GL_RGBA_INTEGER_MODE_EXT</li>
    343   <li>mesa: compute _IntegerColor field in _mesa_test_framebuffer_completeness()</li>
    344   <li>mesa: added cases for GL_EXT_texture_integer formats</li>
    345   <li>mesa: added cases for GL_EXT_texture_integer</li>
    346   <li>st/mesa: add format selection for signed/unsigned integer formats</li>
    347   <li>mesa: simplify target_can_be_compressed() function</li>
    348   <li>glapi: GL_EXT_texture_integer API</li>
    349   <li>glapi: include/build EXT_texture_integer.xml</li>
    350   <li>mesa: regenerated API files for GL_EXT_texture_integer</li>
    351   <li>mesa: plug in GL_EXT_texture_integer functions</li>
    352   <li>mesa: display list support for GL_EXT_texture_integer</li>
    353   <li>st/mesa: be smarter choosing texture format for glDrawPixels()</li>
    354   <li>softpipe: remove &gt;32bpp color restriction</li>
    355   <li>mesa: silence enum comparison warning</li>
    356   <li>mesa: fix uninitialized var warning</li>
    357   <li>xlib: silence unused var warning</li>
    358   <li>util: use pointer_to_func() to silence warning</li>
    359   <li>rtasm: use pointer_to_func() to silence warning</li>
    360   <li>translate: use function typedefs, casts to silence warnings</li>
    361   <li>translate: remove unused prototypes</li>
    362   <li>mesa: additional glReadPixels error checks for GL_EXT_texture_integer</li>
    363   <li>mesa: additional switch cases for GL_EXT_texture_integer</li>
    364   <li>mesa: additional teximage error checks for GL_EXT_texture_integer</li>
    365   <li>mesa: do integer FB / shader validation check in _mesa_valid_to_render()</li>
    366   <li>mesa: call _mesa_valid_to_render() in glDrawPixels, glCopyPixels, glBitmap</li>
    367   <li>mesa: remove the unused _mesa_is_fragment_shader_active() function</li>
    368   <li>mesa: fix bug in _mesa_is_format_integer()</li>
    369   <li>mesa: rename function to _mesa_is_format_integer_color()</li>
    370   <li>mesa: remove 'normalized' parameter from _mesa_VertexAttribIPointer()</li>
    371   <li>vbo: re-indent file</li>
    372   <li>glapi: xml spec file for GL_EXT_gpu_shader4</li>
    373   <li>glapi: include EXT_gpu_shader4.xml</li>
    374   <li>glapi: regenerated API files</li>
    375   <li>mesa: plug in stubs for glBindFragDataLocation(), glGetFragDataLocation()</li>
    376   <li>mesa: add glGetUniformuiv(), plug in uint glUniform funcs</li>
    377   <li>mesa: plug in more GL_EXT_gpu_shader4 functions</li>
    378   <li>mesa: add new GLvertexformat entries for integer-valued attributes</li>
    379   <li>mesa: implement integer-valued vertex attribute functions</li>
    380   <li>mesa: add gl_client_array::Integer field and related vertex array state code</li>
    381   <li>mesa: consolidate glVertex/Color/etcPointer() code</li>
    382   <li>mesa: state/queries for GL_MIN/MAX_PROGRAM_TEXEL_OFFSET_EXT</li>
    383   <li>mesa: glArrayElement support for integer-valued arrays</li>
    384   <li>mesa: clean-up array element code</li>
    385   <li>mesa: add extension table entry for GL_EXT_gpu_shader4</li>
    386   <li>mesa: remove obsolete comment</li>
    387   <li>mesa: fix incorrect type in _mesa_texstore_rgba_int16()</li>
    388   <li>mesa: fix integer cases in _mesa_is_legal_format_and_type()</li>
    389   <li>mesa: add const qualifier to _mesa_is_legal_format_and_type()</li>
    390   <li>mesa: additional integer formats in _mesa_bytes_per_pixel()</li>
    391   <li>mesa: pixel transfer ops do not apply to integer-valued textures</li>
    392   <li>mesa: remove dead code</li>
    393   <li>osmesa: fix renderbuffer memleak in OSMesaMakeCurrent()</li>
    394   <li>mesa: use GLubyte for edge flag arrays</li>
    395   <li>mesa: move the gl_config struct declaration</li>
    396   <li>dri/util: add a bunch of comments</li>
    397   <li>mesa: remove always-false conditional in check_compatible()</li>
    398   <li>mesa: fix aux/accum comment and error message mixups</li>
    399   <li>llvmpipe: assign context's frag shader pointer before using it</li>
    400   <li>llvmpipe: add a cast</li>
    401   <li>mesa: silence new warnings in texobj.c</li>
    402   <li>egl/gdi: fix typo: xsurf-&gt;gsurf</li>
    403   <li>mesa: code to unpack RGBA as uints</li>
    404   <li>gallivm: implement scatter stores into temp register file</li>
    405   <li>gallivm: add some LLVM var labels</li>
    406   <li>gallivm: added debug code to dump temp registers</li>
    407   <li>gallivm: add pixel offsets in scatter stores</li>
    408   <li>gallivm: added lp_elem_type()</li>
    409   <li>gallivm: implement execution mask for scatter stores</li>
    410   <li>tgsi: remove unused function</li>
    411   <li>llvmpipe: added some debug assertions, but disabled</li>
    412   <li>gallivm: alloca() was called too often for temporary arrays</li>
    413   <li>gallivm: add const qualifiers, fix comment string</li>
    414   <li>softpipe: disable vertex texturing with draw/llvm</li>
    415   <li>mesa: consolidate pixel packing/unpacking code</li>
    416   <li>mesa: rename vars in pixel pack/unpack code</li>
    417   <li>mesa: implement uint texstore code</li>
    418   <li>mesa: remove stray GL_FLOAT case in _mesa_is_legal_format_and_type()</li>
    419   <li>mesa: make fixed-pt and byte-valued arrays a runtime feature</li>
    420   <li>softpipe: can't no-op depth test stage when occlusion query is enabled</li>
    421   <li>mesa: no-op glBufferSubData() on size==0</li>
    422   <li>mesa: #include mfeatures.h in enums.h</li>
    423   <li>mesa: improve error message</li>
    424   <li>mesa: add missing formats in _mesa_format_to_type_and_comps()</li>
    425   <li>mesa: handle more pixel types in mipmap generation code</li>
    426   <li>mesa: make glIsBuffer() return false for never bound buffers</li>
    427   <li>mesa: fix glDeleteBuffers() regression</li>
    428   <li>tdfx: s/Format/_BaseFormat/</li>
    429   <li>mesa: consolidate assertions in teximage code</li>
    430   <li>radeon: set gl_texture_image::TexFormat field in radeonSetTexBuffer2()</li>
    431   <li>r600: set gl_texture_image::TexFormat field in r600SetTexBuffer2()</li>
    432   <li>r200: set gl_texture_image::TexFormat field in r200SetTexBuffer2()</li>
    433   <li>r300: set gl_texture_image::TexFormat field in r300SetTexBuffer2()</li>
    434   <li>evergreen: set gl_texture_image::TexFormat field in evergreenSetTexBuffer()</li>
    435   <li>st/mesa: fix glDrawPixels(depth/stencil) bugs</li>
    436   <li>glsl: fix assorted MSVC warnings</li>
    437   <li>mesa: add more work-arounds for acoshf(), asinhf(), atahf()</li>
    438   <li>glsl: remove opt_constant_expression.cpp from SConscript</li>
    439   <li>mesa: fix error messages and minor reindenting</li>
    440   <li>mesa: whitespace cleanups</li>
    441   <li>mesa: 80-column wrapping</li>
    442   <li>mesa: reorder texture_error_check() params</li>
    443   <li>mesa: minor clean-ups in context code</li>
    444   <li>mesa: upgrade to glext.h version 66</li>
    445   <li>mesa: pass gl_format to _mesa_init_teximage_fields()</li>
    446   <li>mesa: fix error msg typo</li>
    447   <li>glapi: rename GL3.xml to GL3x.xml as it covers all GL 3.x versions</li>
    448   <li>mesa: hook up GL 3.x entrypoints</li>
    449   <li>docs: update some GL 3.0 status</li>
    450   <li>mesa: fix get_texture_dimensions() for texture array targets</li>
    451   <li>swrast: init alpha value to 1.0 in opt_sample_rgb_2d()</li>
    452   <li>glsl: fix off by one in register index assertion</li>
    453   <li>glsl: use gl_register_file in a few places</li>
    454   <li>mesa: rename, make _mesa_register_file_name() non-static</li>
    455   <li>mesa: _mesa_valid_register_index() to validate register indexes</li>
    456   <li>mesa: replace #defines with new gl_shader_type enum</li>
    457   <li>mesa: use gl_shader_type enum</li>
    458   <li>glsl: better handling of linker failures</li>
    459   <li>glsl: start restoring some geometry shader code</li>
    460   <li>mesa: add assertion and update comment in _mesa_format_image_size()</li>
    461   <li>mesa: added _mesa_format_image_size64()</li>
    462   <li>x11: remove test_proxy_teximage() function</li>
    463   <li>st/mesa: fix mapping of zero-sized buffer objects</li>
    464   <li>gallivm/llvmpipe: squash merge of the llvm-context branch</li>
    465   <li>mesa: raise max texture sizes to 16K</li>
    466   <li>softpipe: increase max texture size to 16K</li>
    467   <li>mesa: replace large/MAX_WIDTH stack allocations with heap allocations</li>
    468   <li>mesa: replace large/MAX_WIDTH stack allocations with heap allocations</li>
    469   <li>swrast: avoid large stack allocations in blend code</li>
    470   <li>swrast: avoid large stack allocations in tex combine code</li>
    471   <li>st/mesa: avoid large stack allocations in readpixels code</li>
    472   <li>mesa: replace more MAX_WIDTH stack allocations with heap allocations</li>
    473   <li>gallivm/llvmpipe: remove lp_build_context::builder</li>
    474   <li>gallivm: fix null builder pointers</li>
    475   <li>mesa: fix GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME query</li>
    476   <li>mesa: return GL_FRAMEBUFFER_DEFAULT as FBO attachment type</li>
    477   <li>llvmpipe: fix broken stencil writemask</li>
    478   <li>mesa: consolidate some compiler -D flags</li>
    479   <li>swrast: allow GL_RG format in glDrawPixels()</li>
    480   <li>swrast: fix indentation</li>
    481   <li>swrast: accept GL_RG in glReadPixels()</li>
    482   <li>swrast: restructure some glReadPixels() code</li>
    483   <li>mesa: make glGet*(GL_NONE) generate GL_INVALID_ENUM</li>
    484   <li>mesa: remove unneeded cast</li>
    485   <li>mesa: update comments, remove dead code</li>
    486   <li>st/mesa: new comment about updating state vars</li>
    487   <li>mesa: add error margin to clip mask debug/check code</li>
    488   <li>gallium/util: minor formatting fixes</li>
    489   <li>mesa/llvm: use llvm-config --cppflags</li>
    490   <li>st/mesa: fix mipmap generation bug</li>
    491   <li>mesa: test for cube map completeness in glGenerateMipmap()</li>
    492   <li>mesa: set gl_texture_object::_Complete=FALSE in incomplete()</li>
    493   <li>mesa: consolidate glTexImage1/2/3D() code</li>
    494   <li>mesa: simplify proxy texture code in texture_error_check()</li>
    495   <li>mesa: consolidate the glTexSubImage1/2/3D() functions</li>
    496   <li>mesa: consolidate glCopyTexImage1/2D() code</li>
    497   <li>mesa: consolidate glCopyTexSubImage1/2/3D() functions</li>
    498   <li>mesa: consolidate glCompressedTexImage1/2/3D() functions</li>
    499   <li>mesa: make _mesa_test_proxy_teximage() easier to read</li>
    500   <li>configure: use llvm-config --cppflags instead of --cflags</li>
    501   <li>mesa: revamp error checking for compressed texture images</li>
    502   <li>mesa: simplify target checking for TexImage functions</li>
    503   <li>draw/llvm: don't flush in vs_llvm_delete()</li>
    504   <li>tnl: Initialize gl_program_machine memory in run_vp.</li>
    505   <li>tnl: a better way to initialize the gl_program_machine memory</li>
    506   <li>mesa, st/mesa: disable GL_ARB_geometry_shader4</li>
    507   <li>mesa/meta: fix broken assertion, rename stack depth var</li>
    508   <li>glsl: new glsl_strtod() wrapper to fix decimal point interpretation</li>
    509   <li>st/mesa: fix renderbuffer pointer check in st_Clear()</li>
    510 </ul></p>
    511 
    512 <p>Brian Rogers (1):
    513 <ul>
    514   <li>mesa: Add missing else in do_row_3D</li>
    515 </ul></p>
    516 
    517 <p>Chad Versace (25):
    518 <ul>
    519   <li>intel_extensions: Add ability to set GLSL version via environment</li>
    520   <li>glsl: Add glsl_type::uvecN_type for N=2,3</li>
    521   <li>glsl: Add lexer rules for uint and uvecN (N=2..4)</li>
    522   <li>glsl: Changes in generated file glsl_lexer.cpp</li>
    523   <li>glsl: Add lexer rules for &lt&lt and &gt;&gt; in GLSL 1.30</li>
    524   <li>glsl: Change generated file glsl_lexer.cpp</li>
    525   <li>glsl: Implement ast-to-hir for binary shifts in GLSL 1.30</li>
    526   <li>glsl: Implement constant expr evaluation for bitwise-not</li>
    527   <li>glsl: Implement constant expr evaluation for bit-shift ops</li>
    528   <li>glsl: Implement constant expr evaluation for bitwise logic ops</li>
    529   <li>glsl: Fix ir validation for bit logic ops</li>
    530   <li>glsl: Define shift_result_type() in ast_to_hir.cpp</li>
    531   <li>glsl: Implement ast-to-hir for bit-shift-assignment</li>
    532   <li>glsl: Define bit_logic_result_type() in ast_to_hir.cpp</li>
    533   <li>glsl: Implement ast-to-hir for bit-logic ops</li>
    534   <li>glsl: Fix lexer rule for ^=</li>
    535   <li>glsl: Commit generated file glsl_lexer.cpp</li>
    536   <li>glsl: Fix ast-to-hir for ARB_fragment_coord_conventions</li>
    537   <li>mesa: Fix C++ includes in sampler.cpp</li>
    538   <li>glsl: Fix ir_expression::constant_expression_value()</li>
    539   <li>glsl: Fix erroneous cast in ast_jump_statement::hir()</li>
    540   <li>glsl: Fix Doxygen tag file in recently renamed files</li>
    541   <li>glsl: Improve usage message for glsl_compiler</li>
    542   <li>glsl: Fix linker bug in cross_validate_globals()</li>
    543   <li>glsl: In ast_to_hir, check sampler array indexing</li>
    544 </ul></p>
    545 
    546 <p>Chia-I Wu (149):
    547 <ul>
    548   <li>glapi: Fix build errors for ES.</li>
    549   <li>glapi: Fix ES build errors again.</li>
    550   <li>mesa: Update ES APIspec.xml.</li>
    551   <li>st/xlib: Notify the context when the front/back buffers are swapped.</li>
    552   <li>targets/egl: Use C++ compiler to link GL/ES state trackers.</li>
    553   <li>libgl-xlib: Remove unused st_api_create_OpenGL.</li>
    554   <li>st/egl: Split modeset code support to modeset.c.</li>
    555   <li>st/egl: Rename kms backend to drm.</li>
    556   <li>st/egl: s/kms/drm/ on the drm backend.</li>
    557   <li>egl: Enable drm platform by default.</li>
    558   <li>egl: Check extensions.</li>
    559   <li>st/egl: Skip single-buffered configs in EGL.</li>
    560   <li>mapi: Fix compiler warnings.</li>
    561   <li>st/egl: Drop context argument from egl_g3d_get_egl_image.</li>
    562   <li>targets/egl: Fix linking with libdrm.</li>
    563   <li>st/vega: Fix version check in context creation.</li>
    564   <li>egl: Use attribute names as the _EGLConfig member names.</li>
    565   <li>egl: Access config attributes directly.</li>
    566   <li>st/egl: Access _EGLConfig directly.</li>
    567   <li>st/egl: Do not finish a fence that is NULL.</li>
    568   <li>mesa: Remove unused vtxfmt_tmp.h.</li>
    569   <li>egl_dri2: Drop the use of _egl[SG]etConfigKey.</li>
    570   <li>egl_glx: Drop the use of [SG]ET_CONFIG_ATTRIB.</li>
    571   <li>egl_glx: Fix borken driver.</li>
    572   <li>egl: Move attributes in _EGLImage to _EGLImageAttribs.</li>
    573   <li>egl: Parse image attributes with _eglParseImageAttribList.</li>
    574   <li>egl: Move fallback routines to eglfallbacks.c.</li>
    575   <li>egl: Drop dpy argument from the link functions.</li>
    576   <li>egl: Minor changes to the _EGLConfig interface.</li>
    577   <li>egl: Minor changes to the _EGLScreen interface.</li>
    578   <li>egl: Fix _eglModeLookup.</li>
    579   <li>st/egl: Fix native_mode refresh mode.</li>
    580   <li>egl: Add reference count for resources.</li>
    581   <li>egl: Use reference counting to replace IsLinked or IsBound.</li>
    582   <li>egl: Fix a false negative check in _eglCheckMakeCurrent.</li>
    583   <li>st/egl: Use resource reference count for egl_g3d_sync.</li>
    584   <li>egl_dri2: Fix a typo that make glFlush be called at wrong time.</li>
    585   <li>glapi: Do not use glapidispatch.h.</li>
    586   <li>glapi: Move glapidispatch.h to core mesa.</li>
    587   <li>glapi: Do not use glapioffsets.h.</li>
    588   <li>glapi: Merge glapioffsets.h into glapidispath.h.</li>
    589   <li>vbo: Use CALL_* macros.</li>
    590   <li>mesa: Remove unnecessary glapitable.h includes.</li>
    591   <li>autoconf: Better client API selection.</li>
    592   <li>docs: Update egl and openvg docs.</li>
    593   <li>autoconf: Update configuration info.</li>
    594   <li>Merge branch 'glapi-reorg'</li>
    595   <li>targets: Add missing quotes to Makefile.xorg.</li>
    596   <li>autoconf: st/vega requires --enable-openvg.</li>
    597   <li>st/mesa: Unreference the sampler view in st_bind_surface.</li>
    598   <li>autoconf: Tidy configure output for EGL.</li>
    599   <li>targets/egl: Fix a warning with --disable-opengl build.</li>
    600   <li>egl: Rework _eglGetSearchPath.</li>
    601   <li>mesa: Select FEATURE_remap_table when multiple APIs are enabled.</li>
    602   <li>mesa: Allow contexts of different APIs to coexist.</li>
    603   <li>egl: Set up the pthread key even TLS is used.</li>
    604   <li>st/egl: Add native_surface::present callback.</li>
    605   <li>st/egl: Use native_surface::present callback.</li>
    606   <li>d3d1x: Use native_surface::present.</li>
    607   <li>st/egl: Remove flush_frontbuffer and swap_buffers.</li>
    608   <li>st/egl: Add support for swap interval and swap behavior.</li>
    609   <li>st/egl: Add support for EGL_MATCH_NATIVE_PIXMAP.</li>
    610   <li>st/egl: Add extern "C" wrapper to native.h.</li>
    611   <li>st/egl: Add native_display_buffer interface.</li>
    612   <li>st/egl: Use native_display_buffer for EGL_MESA_drm_image.</li>
    613   <li>autoconf: Add --enable-gallium-egl.</li>
    614   <li>docs: Update egl docs.</li>
    615   <li>st/dri: Add support for surfaceless current contexts.</li>
    616   <li>egl_dri2: Fix __DRI_DRI2 version 1 support.</li>
    617   <li>st/vega: Do not wait NULL fences.</li>
    618   <li>gallium: Add st_api::name.</li>
    619   <li>gallium: Add st_context_iface::share to st_api.</li>
    620   <li>st/wgl: Use st_context_iface::share for DrvShareLists.</li>
    621   <li>st/glx: Replace MESA_VERSION_STRING by xmesa_get_name.</li>
    622   <li>mesa: Clean up core.h.</li>
    623   <li>scons: Define IN_DRI_DRIVER.</li>
    624   <li>tgsi: Add STENCIL to text parser.</li>
    625   <li>st/vega: vegaLookupSingle should validate the state.</li>
    626   <li>st/vega: Set wrap_r for mask and blend samplers.</li>
    627   <li>st/vega: Fix vgReadPixels with a subrectangle.</li>
    628   <li>egl_dri2: Fix one context, multiple surfaces.</li>
    629   <li>auxiliary: util_blit_pixels_tex should restore the viewport.</li>
    630   <li>st/vega: Fix a crash with empty paths.</li>
    631   <li>st/vega: Masks and surfaces should share orientation.</li>
    632   <li>st/vega: No flipping in vg_prepare_blend_surface.</li>
    633   <li>st/vega: Fix a typo in EXTENDED_BLENDER_OVER_FUNC.</li>
    634   <li>llvmpipe: Fix build errors on x86.</li>
    635   <li>st/vega: Overhaul renderer with renderer states.</li>
    636   <li>st/vega: Add DRAWTEX renderer state.</li>
    637   <li>st/vega: Add SCISSOR renderer state.</li>
    638   <li>st/vega: Add CLEAR renderer state for vgClear.</li>
    639   <li>st/vega: Add FILTER renderer state for image filtering.</li>
    640   <li>st/vega: Use the renderer for vgMask.</li>
    641   <li>st/vega: Add POLYGON_STENCIL and POLYGON_FILL renderer state.</li>
    642   <li>st/vega: Delay fb state update to vg_validate_state.</li>
    643   <li>st/vega: Use st_framebuffer for fb width/height.</li>
    644   <li>st/vega: Move g3d states to renderer.</li>
    645   <li>st/vega: Make shader_bind call into the renderer.</li>
    646   <li>st/vega: vg_manager should care about only the color buffer.</li>
    647   <li>st/vega: Clean up vg_context fields and functions.</li>
    648   <li>st/vega: Clean up renderer fields and functions.</li>
    649   <li>st/vega: vg_copy_texture and vg_copy_surface should share code.</li>
    650   <li>st/vega: Get rid of renderer_copy_texture.</li>
    651   <li>st/vega: Update to latest headers.</li>
    652   <li>st/vega: Fix image sampler views for alpha-only formats.</li>
    653   <li>st/vega: Make path_render and path_stroke take a matrix.</li>
    654   <li>st/vega: Make image_draw take a matrix.</li>
    655   <li>st/vega: Add primitive text support.</li>
    656   <li>st/vega: Revive mask layer support.</li>
    657   <li>st/vega: More flexible shader selection.</li>
    658   <li>st/vega: Add color transformation support.</li>
    659   <li>st/vega: Bump version to 1.1.</li>
    660   <li>st/vega: Fix paint coordinates transformations.</li>
    661   <li>st/vega: Fix negated logic in image_draw.</li>
    662   <li>st/vega: Fix degenerate paints.</li>
    663   <li>st/vega: Simplify radial gradient.</li>
    664   <li>st/vega: Remove st_inlines.h.</li>
    665   <li>st/vega: Delay blend texture creation until needed.</li>
    666   <li>st/vega: Create drawing surface mask as needed.</li>
    667   <li>st/vega: Initialize pipe states with renderer.</li>
    668   <li>st/vega: Avoid unnecessary constant bufer upload.</li>
    669   <li>st/vega: Destroy the pipe context with vg_context.</li>
    670   <li>st/vega: polygon_array requires a deep free.</li>
    671   <li>st/egl: Set pipe_resource::array_size to 1.</li>
    672   <li>st/vega: Set pipe_resource::array_size to 1.</li>
    673   <li>st/vega: Move vertex transformation to shader.</li>
    674   <li>st/vega: Add a missing break.</li>
    675   <li>st/vega: Add some comments to pipeline shaders.</li>
    676   <li>st/vega: Refactor blend shaders.</li>
    677   <li>st/vega: Move masking after blending.</li>
    678   <li>st/vega: Add support for per-channel alpha.</li>
    679   <li>st/vega: Blending should use premultiplied alpha.</li>
    680   <li>st/vega: Fix VG_BLEND_MULTIPLY.</li>
    681   <li>st/vega: Add blend shaders for all blend modes.</li>
    682   <li>st/vega: Fix pipe blend state for various blend modes.</li>
    683   <li>egl: _eglFilterArray should not allocate.</li>
    684   <li>mapi: Rewrite mapi_abi.py to get rid of preprocessor magic.</li>
    685   <li>vbo: Drop second ATTR macro.</li>
    686   <li>vbo: Fix GLES2 glVertexAttrib.</li>
    687   <li>mesa: Do not advertise GL_OES_texture_3D.</li>
    688   <li>mesa: Fix GL_FIXED arrays.</li>
    689   <li>mesa: Fix glTexCoordPointer with type GL_FIXED.</li>
    690   <li>st/egl: Plug pbuffer leaks.</li>
    691   <li>st/egl: Fix eglCopyBuffers.</li>
    692   <li>st/egl: Assorted fixes for dri2_display_get_configs.</li>
    693   <li>docs/egl: Update egl.html.</li>
    694   <li>st/egl: Fix eglChooseConfig when configs is NULL.</li>
    695   <li>docs: Add an example for EGL_DRIVERS_PATH.</li>
    696   <li>autoconf: Fix --with-driver=xlib --enable-openvg.</li>
    697 </ul></p>
    698 
    699 <p>Chris Wilson (2):
    700 <ul>
    701   <li>i915g: Fix closure of full batch buffers</li>
    702   <li>intel: Check for unsupported texture when finishing using as a render target</li>
    703 </ul></p>
    704 
    705 <p>Christoph Bumiller (80):
    706 <ul>
    707   <li>nv50: import new compiler</li>
    708   <li>nouveau: update nouveau_class.h</li>
    709   <li>nv50: introduce the big formats table</li>
    710   <li>nv50: don't produce MOV immediate to output reg in store opt</li>
    711   <li>nv50: change back accidentally swapped UNORM,SNORM vertex type</li>
    712   <li>nv50: add/fix some license headers</li>
    713   <li>nv50: simple reload elimination and local CSE</li>
    714   <li>nv50: fix constant_operand opt mul by 2 case</li>
    715   <li>nv50: permit usage of undefined TGSI TEMPs</li>
    716   <li>nv50: add missing 2nd source for POW multiplication</li>
    717   <li>nv50: add signed RGTC1 to format table, allow 2_10_10_10 for vbufs</li>
    718   <li>nv50: fix for empty BBs</li>
    719   <li>nv50: insert MOVs also for PHI sources from dominating block</li>
    720   <li>nv50: explicitly set src type for SET ops</li>
    721   <li>nv50: fixes for nested IFs</li>
    722   <li>nv50: don't eliminate loads to dedicated values</li>
    723   <li>nv50: fix constbuf validation</li>
    724   <li>nv50: build proper phi functions in the first place</li>
    725   <li>nv50: fix reg count</li>
    726   <li>nv50: begin implementing loops</li>
    727   <li>nv50: more constant folding</li>
    728   <li>nv50: loops part 2</li>
    729   <li>nv50: flatten simple IF/ELSE/ENDIF constructs</li>
    730   <li>nv50: fix thinko in store to output reg possible check</li>
    731   <li>nv50: generate JOINs for outermost IF clauses</li>
    732   <li>nv50: more TGSI opcodes (SIN, SCS, ARL, RET, KILP)</li>
    733   <li>nv50: fix PSIZ and PRIMID mapping</li>
    734   <li>nv50: check dst compatibility in CSE</li>
    735   <li>nv50: initialize edgeflag input index</li>
    736   <li>nv50: emit predicate for interp</li>
    737   <li>Merge remote branch 'origin/master' into nv50-compiler</li>
    738   <li>nv50: DP2, fix ARL</li>
    739   <li>nv50: yet another case we need a nop.exit</li>
    740   <li>nv50: fix check for sprite/point coord enable</li>
    741   <li>nv50: handle TEXTURE_SWIZZLE and GEOMETRY_SHADER4 caps</li>
    742   <li>nv50: set the FragDepth output index</li>
    743   <li>nv50: turn off verbose debug output by default</li>
    744   <li>nv50: attempt at making more complicated loops work</li>
    745   <li>nv50: SSG</li>
    746   <li>nv50: make FrontFacing -1 or +1</li>
    747   <li>nv50: re-add proper TEXBIAS sequence</li>
    748   <li>nv50: make use of TGSI immediate type</li>
    749   <li>nv50: must join SELECT inputs before MOV inputs</li>
    750   <li>nv50: fix XPD, was negated</li>
    751   <li>nv50: fix find_dom_frontier</li>
    752   <li>nv50: fix build-predicate function</li>
    753   <li>Merge remote branch 'origin/master' into nv50-compiler</li>
    754   <li>nv50: load address register before using it, not after</li>
    755   <li>nv50: save tgsi instructions</li>
    756   <li>nv50: prepare for having multiple functions</li>
    757   <li>nv50: don't parse again in tgsi_2_nc</li>
    758   <li>nv50: use actual loads/stores if TEMPs are accessed indirectly</li>
    759   <li>nv50: create value references with the right type</li>
    760   <li>nv50: duplicate interps in load_proj_tex_coords</li>
    761   <li>nv50: address regs are 16 bit</li>
    762   <li>nv50: fix can_load check for 3rd source</li>
    763   <li>nv50: reduce bb_reachable_by runtime from pot to linear</li>
    764   <li>nv50: minor compiler fixes and cleanups</li>
    765   <li>nv50: cannot move from local mem to output reg directly</li>
    766   <li>nv50: newlines in shader bincode printing</li>
    767   <li>nv50: match TEMP limit with nv50 ir builder</li>
    768   <li>nv50: handle TGSI EXP and LOG again</li>
    769   <li>nv50: check for immediates when turning MUL ADD into MAD</li>
    770   <li>nv50: interp cannot write flags reg</li>
    771   <li>nv50: MOV TEMP[0], -CONST[0] must be float32 negation</li>
    772   <li>nv50: fix indirect CONST access with large or negative offsets</li>
    773   <li>nv50: fix TXP depth comparison value</li>
    774   <li>nv50: consider address register in reload elimination</li>
    775   <li>nv50: improve and fix modifier folding optimization</li>
    776   <li>nv50: put low limit on REG_ALLOC_TEMP and FP_RESULT_COUNT</li>
    777   <li>Merge remote branch 'origin/nv50-compiler'</li>
    778   <li>nv50: don't segfault on shaders with 0 instructions</li>
    779   <li>nv50: get shader fixups/relocations into working state</li>
    780   <li>nv50: add relocs for stack and local mem buffers</li>
    781   <li>nv50: emit constbuf relocs before uploading constants</li>
    782   <li>nv50: fix typo in fifo packet length limit</li>
    783   <li>nv50: use formats table in nv50_surface.c</li>
    784   <li>nv50: use CLEAR_BUFFERS for surface fills</li>
    785   <li>nv50: fix/handle a few more PIPE_CAPs</li>
    786   <li>nv50: fix GP state bind and validate</li>
    787 </ul></p>
    788 
    789 <p>Corbin Simpson (8):
    790 <ul>
    791   <li>r600g: Use align() instead of handrolled code.</li>
    792   <li>r600g: Trivially deobfuscate r600_hw_states.</li>
    793   <li>r600g: Deobfuscate and comment a few more functions in r600_hw_states.</li>
    794   <li>r600g: Clean up some indentation and |= vs. | usage.</li>
    795   <li>r600g: Fix false and true.</li>
    796   <li>r600g: "tmp" is such a bad name for a texture.</li>
    797   <li>r600g: Clean up PS setup.</li>
    798   <li>r600g: Cleanup viewport floats.</li>
    799 </ul></p>
    800 
    801 <p>Daniel Lichtenberger (1):
    802 <ul>
    803   <li>radeon: fix potential segfault in renderbuffer update</li>
    804 </ul></p>
    805 
    806 <p>Daniel Vetter (21):
    807 <ul>
    808   <li>r200: revalidate after radeon_update_renderbuffers</li>
    809   <li>i915g: rip out -&gt;sw_tiled</li>
    810   <li>i915g: s/hw_tiled/tiling</li>
    811   <li>i915g: add pineview pci ids</li>
    812   <li>i915g: kill RGBA/X formats</li>
    813   <li>i915g: kill buf-&gt;map_gtt</li>
    814   <li>i915g: kill idws-&gt;pool</li>
    815   <li>i915g: drop alignment parameter from iws-&gt;buffer_create</li>
    816   <li>i915g: add winsys function to create tiled buffers</li>
    817   <li>i915g: switch to tiled allocations, kill set_fence</li>
    818   <li>i915g: prepare winsys/batchbuffer for execbuf2</li>
    819   <li>i915g: return tiling in iws-&gt;buffer_from_handle</li>
    820   <li>i915g: implement unfenced color&amp;depth buffer using tiling bits</li>
    821   <li>i915g: implement unfenced relocs for textures using tiling bits</li>
    822   <li>i915g: postpone mipmap/face offset calculation</li>
    823   <li>i915g: don't pot-align stride for tiled buffers</li>
    824   <li>i915g: enable X-tiling for textures</li>
    825   <li>i915g: switch rendering to mipmapped textures to (x,y) offsets</li>
    826   <li>i915g: enable x-tiling for render targets</li>
    827   <li>i915g: assert(depth_surface-&gt;offset == 0)</li>
    828   <li>i915g: track TODO items</li>
    829 </ul></p>
    830 
    831 <p>Dave Airlie (182):
    832 <ul>
    833   <li>r300g: fix buffer reuse issue caused by previous commit</li>
    834   <li>r600g: pull r600_draw struct out into header</li>
    835   <li>r600g: use index min/max + index buffer offset.</li>
    836   <li>r600g: add vgt dma src defines</li>
    837   <li>r600g: fixup texture state on evergreen.</li>
    838   <li>r600g: fix texture bos and avoid doing depth blit on evergreen</li>
    839   <li>r600g: hide radeon_ctx inside winsys.</li>
    840   <li>r600g: attempt to abstract kernel bos from pipe driver.</li>
    841   <li>r600g: move constant buffer creation behind winsys abstraction.</li>
    842   <li>r600g: use malloc bufmgr for constant buffers</li>
    843   <li>r600g: add support for kernel bo</li>
    844   <li>r600g: add winsys bo caching.</li>
    845   <li>r600g: add upload manager support.</li>
    846   <li>r600g: fixup map flushing.</li>
    847   <li>r600g: use calloc for ctx bo allocations</li>
    848   <li>r600g: oops got the use_mem_constant the wrong way around.</li>
    849   <li>r600g; add uses waterfall to asm cf for r6xx.</li>
    850   <li>r600g: only emit uses waterfall on r6xx hw.</li>
    851   <li>util/r300g: split the r300 index buffer modifier functions out to util</li>
    852   <li>r600g: modify index buffers for sizes the hw can't deal with.</li>
    853   <li>r600g: send correct surface base update for multi-cbufs</li>
    854   <li>r600g: fix fbo-drawbuffers-maxtargets</li>
    855   <li>r600g: clean up valgrind issues on maxtargets test.</li>
    856   <li>r600g: drop debugging that snuck in</li>
    857   <li>r600g: fix tiling support for ddx supplied buffers</li>
    858   <li>r600g: add z16 to color setup</li>
    859   <li>r600g: add color/texture support for more depth formats.</li>
    860   <li>r600g: fix r700 cube map sizing.</li>
    861   <li>r600g: fixup r700 CB_SHADER_CONTROL register.</li>
    862   <li>r600g: add missing BC_INST wrapper for evergreen</li>
    863   <li>r600g: only flush for the correct colorbuffer, not all of them.</li>
    864   <li>r600g: deal with overflow of VTX/TEX CF clauses.</li>
    865   <li>r600g: set back to correct codepaths.</li>
    866   <li>r600g: fixup evergreen miptree setup.</li>
    867   <li>r600g: fix eg texture borders.</li>
    868   <li>r600g: fix typo in struct member name</li>
    869   <li>r600g: cleanup some of the DB blit code</li>
    870   <li>r600g: make stencil readback work</li>
    871   <li>r600g: disable dirty handling on texture from depth code.</li>
    872   <li>r600g: use floats instead of hex for blit vbo</li>
    873   <li>r600g: fix depth readback on rv610 and other quirky variants.</li>
    874   <li>r600g: fix typo in evergreen register list</li>
    875   <li>u_blitter: add a custom blitter call passing a dsa cso</li>
    876   <li>r600g: use blitter to do db-&gt;cb flushing.</li>
    877   <li>r600g: fix warnings since last commit.</li>
    878   <li>egl: fix build since 17eace581d25a626a7d75d9d1205d012cbb14a6e</li>
    879   <li>r300g: fix point sprite coord.</li>
    880   <li>r600g: add vert support for 16/16 and 16/16/16 floats.</li>
    881   <li>r600g: add some more vertex format support.</li>
    882   <li>r600g: some more vertex formats</li>
    883   <li>r600g: fix draw-elements and draw-elements-base-vertex</li>
    884   <li>r600g: drop index_offset parameter to index buffer translate.</li>
    885   <li>r600g: fixup tex wrapping.</li>
    886   <li>r600g: fixup VP-&gt;FP output-&gt;input routing.</li>
    887   <li>r600g: fix typo in r700 alu emit</li>
    888   <li>r600g: fixup sprite coord enable.</li>
    889   <li>r600g: fix polygon mode</li>
    890   <li>mesa/mipmap: fix warning since 1acadebd6270d3604b026842b8a21360968618a0</li>
    891   <li>r600g: add eg poly mode code.</li>
    892   <li>r600g: make index bias fix for evergreen</li>
    893   <li>r600g: add eg db count control register.</li>
    894   <li>r300g: fix glsl-fs-pointcoord</li>
    895   <li>r600g: add evergreen texture resource properly.</li>
    896   <li>r600g: fix db flush breaking config state</li>
    897   <li>r600g: on evergreen the centroid isn't set in this register.</li>
    898   <li>r600g: add back evergreen name.</li>
    899   <li>r600g: add evergreen texture border support to new path</li>
    900   <li>r600g: move radeon.h members around to add back map flushing.</li>
    901   <li>r600g: add initial vertex translate support.</li>
    902   <li>r600g: remove old assert from new codepath</li>
    903   <li>Revert "r600g: add initial vertex translate support."</li>
    904   <li>r600g: port r300g fix for X* formats in texformat code</li>
    905   <li>r600g: add L8A8 unorm.</li>
    906   <li>r600g: clean up some code from move to new paths.</li>
    907   <li>r600g: return string for chip family</li>
    908   <li>r600g: use Elements macro instead of manual sizeofs</li>
    909   <li>r600g: fix evergreen depth flushing.</li>
    910   <li>r600g: add winsys support for CTL constants.</li>
    911   <li>r600g: drop depth quirk on evergreen</li>
    912   <li>r600g: add reloc for evergreen color attrib</li>
    913   <li>r600g: realign evergreen code with r600 code.</li>
    914   <li>r600g: add assembler support for other vtx fetch fields.</li>
    915   <li>r600g: fixup vertex format picking.</li>
    916   <li>r600g: sync vertex/texture cache on resources on evergreen</li>
    917   <li>r600g: add cb flushing for extra buffers + depth buffer on r600/evergreen</li>
    918   <li>r600g: fix evergreen draw-buffers</li>
    919   <li>r600g: flush SH cache on constant change on evergreen</li>
    920   <li>r600g: only set the Z export if shader exports it.</li>
    921   <li>r600g: setup basic loop consts on r600 + evergreen.</li>
    922   <li>mesa/st: initial attempt at RG support for gallium drivers</li>
    923   <li>r600g: break out of search for reloc bo after finding it.</li>
    924   <li>r600g: the code to check whether a new vertex shader is needed was wrong</li>
    925   <li>r600g: fix wwarning in bo_map function</li>
    926   <li>r600g: TODO domain management</li>
    927   <li>r600g: add bo fenced list.</li>
    928   <li>pb: don't keep checking buffers after first busy</li>
    929   <li>r600g: add bo busy backoff.</li>
    930   <li>r600g: drop mman allocator</li>
    931   <li>r600g: drop use_mem_constant.</li>
    932   <li>r600g: avoid unneeded bo wait</li>
    933   <li>pb: fix numDelayed accounting</li>
    934   <li>r600g: add evergreen stencil support.</li>
    935   <li>r600g: use format from the sampler view not from the texture.</li>
    936   <li>r600g: fix Z export enable bits.</li>
    937   <li>r600g: add some RG texture format support.</li>
    938   <li>r600g: drop width/height per level storage.</li>
    939   <li>r600g: fix input/output Z export mixup for evergreen.</li>
    940   <li>r600g: evergreen has no request size bit in texture word4</li>
    941   <li>r600g: enable vertex samplers.</li>
    942   <li>r600g: add TXL opcode support.</li>
    943   <li>r600g: don't run with scissors.</li>
    944   <li>r600g: fix typo in vertex sampling on r600</li>
    945   <li>gallium/tgsi: add support for stencil writes.</li>
    946   <li>gallium/format: add support for X24S8 and S8X24 formats.</li>
    947   <li>gallium/format: add X32_S8X24_USCALED format.</li>
    948   <li>gallium/util: add S8 tile sampling support.</li>
    949   <li>mesa: add support for FRAG_RESULT_STENCIL.</li>
    950   <li>mesa: improve texstore for 8/24 formats and add texstore for S8.</li>
    951   <li>softpipe: add support for shader stencil export capability</li>
    952   <li>st/mesa: add option to choose a texture format that we won't render to.</li>
    953   <li>st/mesa: use shader stencil export to accelerate shader drawpixels.</li>
    954   <li>r600g: add support for S8, X24S8 and S8X24 sampler formats.</li>
    955   <li>r600g: add shader stencil export support.</li>
    956   <li>glsl: add support for shader stencil export</li>
    957   <li>st/mesa: enable stencil shader export extension if supported</li>
    958   <li>r600g: fix depth0 setting</li>
    959   <li>r600g: fix scissor/cliprect confusion</li>
    960   <li>r600g: store samplers/views across blit when we need to modify them</li>
    961   <li>r600g: reduce size of context structure.</li>
    962   <li>r600g: the vs/ps const arrays weren't actually being used.</li>
    963   <li>r600g: add copy into tiled texture</li>
    964   <li>r600g: split out miptree setup like r300g</li>
    965   <li>r600g: use common texture object create function</li>
    966   <li>r600g: rename pitch in texture to pitch_in_bytes</li>
    967   <li>r600g: remove bpt and start using pitch_in_bytes/pixels.</li>
    968   <li>r600g: fix transfer stride.</li>
    969   <li>r600g: drop all use of unsigned long</li>
    970   <li>r600g: use blitter for hw copy region</li>
    971   <li>r600g: evergreen add stencil export bit</li>
    972   <li>r600g: add missing eg reg definition</li>
    973   <li>r600g: fix stencil export for evergreen harder</li>
    974   <li>r600g: drop unused context members</li>
    975   <li>r600g: only pick centroid coordinate when asked.</li>
    976   <li>r600g: fixup pos/face ena/address properly</li>
    977   <li>r600g: fixup typo in macro name</li>
    978   <li>r600g: select linear interpolate if tgsi input requests it</li>
    979   <li>r300g: clean up warning due to unknown cap.</li>
    980   <li>tgsi: add scanner support for centroid inputs</li>
    981   <li>r600g: evergreen interpolation support.</li>
    982   <li>r600g: add evergreen ARL support.</li>
    983   <li>r600g: switch to a common formats.h file since they are in different regs</li>
    984   <li>r600g: add defines for tiling</li>
    985   <li>r600g: get tiling info from kernel</li>
    986   <li>r600g: set tiling bits in hw state</li>
    987   <li>r600g: do proper tracking of views/samplers.</li>
    988   <li>r600g: fix typo in tiling setup cb code.</li>
    989   <li>r600g: depth needs to bound to ds</li>
    990   <li>r600g: attempt to cleanup depth blit</li>
    991   <li>r600g: fix transfer function for tiling.</li>
    992   <li>r600g: retrieve tiling info from kernel for shared buffers.</li>
    993   <li>r600g: all non-0 mipmap levels need to be w/h aligned to POT.</li>
    994   <li>r600g: move to per-miplevel array mode.</li>
    995   <li>r600g: start adding hooks for aligning width/height for tiles.</li>
    996   <li>r600g: add r600 surface to store the aligned height.</li>
    997   <li>r600g: introduce a per-driver resource flag for transfers.</li>
    998   <li>r600g: add texture tiling alignment support.</li>
    999   <li>r600g: add texture tiling enable under a debug option.</li>
   1000   <li>r600g: initial translate state support</li>
   1001   <li>r600g: start splitting out common code from eg/r600.</li>
   1002   <li>r600g: not fatal if we can't get tiling info from kernel</li>
   1003   <li>r600g: merge more of the common r600/evergreen state handling</li>
   1004   <li>r600g: drop more common state handling code</li>
   1005   <li>r600g: fix magic 0x1 -&gt;flat shade ena</li>
   1006   <li>r600g: add assembler support for all the kcache fields.</li>
   1007   <li>gallium/noop: report GL 2.1</li>
   1008   <li>r600g: pick correct color swap for A8 fbos.</li>
   1009   <li>r300g/r600g: bump cache manager timeouts to 1s</li>
   1010   <li>r600g: it looks like r600 can handle dword offsets in the indices.</li>
   1011   <li>r300g: try and use all of vertex constant space</li>
   1012   <li>r300g: fixup rs690 tiling stride alignment calculations.</li>
   1013   <li>r600g: fix evergreen segfaults.</li>
   1014   <li>r600g: hack around property unknown issues.</li>
   1015 </ul></p>
   1016 
   1017 <p>Eric Anholt (300):
   1018 <ul>
   1019   <li>glsl: Add definition of gl_TextureMatrix inverse/transpose builtins.</li>
   1020   <li>i965: Share the KIL_NV implementation between glsl and non-glsl.</li>
   1021   <li>i965: Also enable CC statistics when doing OQs.</li>
   1022   <li>i965: Track the windowizer's dispatch for kill pixel, promoted, and OQ</li>
   1023   <li>glsl: Rework assignments with write_masks to have LHS chan count match RHS.</li>
   1024   <li>glsl: Fix copy'n'wasted ir_noop_swizzle conditions.</li>
   1025   <li>ir_to_mesa: Only compare vector_elements present for any_nequal/all_equal</li>
   1026   <li>i965: Fix the vector/expression splitting for the write_mask change.</li>
   1027   <li>i965: When splitting vector variable assignment, ignore unset channels.</li>
   1028   <li>i965: Update expression splitting for the vector-result change to compares.</li>
   1029   <li>i965: Warning fix for vector result any_nequal/all_equal change.</li>
   1030   <li>mesa: Remove the non-required ARB_imaging extension.</li>
   1031   <li>mesa: Remove EXT_histogram.</li>
   1032   <li>mesa: Remove SGI_color_table.</li>
   1033   <li>mesa: Remove SGI_color_matrix.</li>
   1034   <li>mesa: Remove EXT_convolution.</li>
   1035   <li>intel: Remove disabled stencil drawpixels acceleration.</li>
   1036   <li>intel: Remove unnecessary minimum pitch alignment to 32 bytes.</li>
   1037   <li>intel: Replace my intel_texture_bitmap code with _mesa_meta_Bitmap.</li>
   1038   <li>radeon: Remove copied minimum pitch alignment code.</li>
   1039   <li>unichrome: Mostly revert my convolution removal changes.</li>
   1040   <li>intel: Remove dead intelIsTextureResident().</li>
   1041   <li>i915: Remove a dead if (0) block.</li>
   1042   <li>intel: Dead comment removal.</li>
   1043   <li>intel: Corresponding FinishRenderTexture debug to BeginRenderTexture.</li>
   1044   <li>i965: Add support for rendering to SARGB8 FBOs.</li>
   1045   <li>intel: Fix segfault on INTEL_DEBUG=fbo with unsupported framebuffers.</li>
   1046   <li>intel: Add fallback debug to glGenerateMipmap.</li>
   1047   <li>intel: More reverting of the sw fallback for depth texture border color.</li>
   1048   <li>intel: Improve some of the miptree debugging.</li>
   1049   <li>mesa: Fix type typo in glGenerateMipmap handling of GL_UNSIGNED_INT data.</li>
   1050   <li>glsl: Fix broadcast_index of lower_variable_index_to_cond_assign.</li>
   1051   <li>glsl: Add validation that a swizzle only references valid channels.</li>
   1052   <li>i965: Fix up writemasked assignments in the new FS.</li>
   1053   <li>i965: Remove swizzling of assignment to vector-splitting single-channel LHS.</li>
   1054   <li>i965: Handle all_equal/any_nequal in the new FS.</li>
   1055   <li>i965: Fix vector splitting RHS channel selection with sparse writemasks.</li>
   1056   <li>i965: Add support for dFdx()/dFdy() to the FS backend.</li>
   1057   <li>i965: Add support for attribute interpolation on Sandybridge.</li>
   1058   <li>i965: Set up inputs to the fragment shader according to FP InputsRead.</li>
   1059   <li>i965: Add support for POW in gen6 FS.</li>
   1060   <li>i965: Fix negation in the new FS backend.</li>
   1061   <li>i965: Actually track the "if" depth in loop in the new FS backend.</li>
   1062   <li>i965: Apply the same set of lowering passes to new FS as to Mesa IR.</li>
   1063   <li>i965: Fix valgrind complaint about base_ir for new FS debugging.</li>
   1064   <li>i965: Fix up the FS backend for the variable array indexing pass.</li>
   1065   <li>i965: Set the variable type when dereferencing an array.</li>
   1066   <li>i965: Add support for dereferencing structs to the new FS backend.</li>
   1067   <li>i965: Add support for struct, array, and matrix uniforms to FS backend.</li>
   1068   <li>i965: Fix all non-snb regression in the snb attribute interpolation commit.</li>
   1069   <li>i965: Fix up part of my Sandybridge attributes support patch.</li>
   1070   <li>i965: Add support for gl_FrontFacing to the new FS backend.</li>
   1071   <li>i965: Subtract instead of adding when computing y delta in new FS backend.</li>
   1072   <li>mesa: Pull ir_to_mesa's sampler number fetcher out to shared code.</li>
   1073   <li>i965: Set up sampler numbers in the FS backend.</li>
   1074   <li>i965: Add support for non-color render target write data to new FS backend.</li>
   1075   <li>i965: Add support for MRT to the new FS backend.</li>
   1076   <li>i965: Add support for ir_loop counters to the new FS backend.</li>
   1077   <li>i965: Add support for ARB_fragment_coord_conventions to the new FS backend.</li>
   1078   <li>glsl: Also update implicit sizes of varyings at link time.</li>
   1079   <li>i965: Do interpolation for varying matrices and arrays in the FS backend.</li>
   1080   <li>i965: Don't try to emit interpolation for unused varying slots.</li>
   1081   <li>i965: Fix array indexing of arrays of matrices.</li>
   1082   <li>i965: Clean up obsolete FINISHME comment.</li>
   1083   <li>mesa: Move the list of builtin uniform info from ir_to_mesa to shared code.</li>
   1084   <li>i965: Add support for builtin uniforms to the new FS backend.</li>
   1085   <li>i965: Fix use of undefined mem_ctx in vector splitting.</li>
   1086   <li>i956: Make new FS discard do its work in a temp, not the null reg!</li>
   1087   <li>i965: Clean up the virtual GRF handling.</li>
   1088   <li>ra: First cut at a graph-coloring register allocator for mesa.</li>
   1089   <li>i965: First cut at register allocation using graph coloring.</li>
   1090   <li>i965: Add live interval analysis and hook it up to the register allocator.</li>
   1091   <li>i965: Remove my "safety counter" code from loops.</li>
   1092   <li>i965: Fix whole-structure/array assignment in new FS.</li>
   1093   <li>mesa: Don't reference a W component in setting up a vec3 uniform component.</li>
   1094   <li>i965: Fix new FS handling of builtin uniforms with packed scalars in structs.</li>
   1095   <li>glsl: Add a lowering pass for texture projection.</li>
   1096   <li>i965: Use the lowering pass for texture projection.</li>
   1097   <li>i965: Split the gen4 and gen5 sampler handling apart.</li>
   1098   <li>i965: Add gen6 attribute interpolation to new FS backend.</li>
   1099   <li>i965: Fix the gen6 jump size for BREAK/CONT in new FS.</li>
   1100   <li>i965: Also increment attribute location when skipping unused slots.</li>
   1101   <li>i965: Pre-gen6, map VS outputs (not FS inputs) to URB setup in the new FS.</li>
   1102   <li>i965: Add real support for pre-gen5 texture sampling to the new FS.</li>
   1103   <li>i965: Fix up copy'n'pasteo from moving coordinate setup around for gen4.</li>
   1104   <li>i965: Restore the forcing of aligned pairs for delta_xy on chips with PLN.</li>
   1105   <li>i965: When producing a single channel swizzle, don't make a temporary.</li>
   1106   <li>i965: Add a sanity check for register allocation sizes.</li>
   1107   <li>i965: Fix off-by-ones in handling the last members of register classes.</li>
   1108   <li>i965: Don't try to emit code if we failed register allocation.</li>
   1109   <li>i965: Add support for EXT_texture_swizzle to the new FS backend.</li>
   1110   <li>i965: Set up swizzling of shadow compare results for GL_DEPTH_TEXTURE_MODE.</li>
   1111   <li>i965: Fix glean/texSwizzle regression in previous commit.</li>
   1112   <li>i965: Be more conservative on live interval calculation.</li>
   1113   <li>i965: Add trivial dead code elimination in the new FS backend.</li>
   1114   <li>i965: Add initial folding of constants into operand immediate slots.</li>
   1115   <li>i965: In disasm, gen6 fb writes don't put msg reg # in destreg_conditionalmod.</li>
   1116   <li>i965: Add support for gen6 FB writes to the new FS.</li>
   1117   <li>i965: Enable the constant propagation code.</li>
   1118   <li>i965: Also do constant propagation for the second operand of CMP.</li>
   1119   <li>i965: Add back gen6 headerless FB writes to the new FS backend.</li>
   1120   <li>i965: Gen6 no longer has the IFF instruction; always use IF.</li>
   1121   <li>i965: Fix up IF/ELSE/ENDIF for gen6.</li>
   1122   <li>i965: Fix botch in the header_present case in the new FS.</li>
   1123   <li>i965: Add some clarification of the WECtrl field.</li>
   1124   <li>i965: Don't do 1/w multiplication in new FS for gen6</li>
   1125   <li>i965: Gen6's sampler messages are the same as Ironlake.</li>
   1126   <li>i965: Refactor gl_FrontFacing setup out of general variable setup.</li>
   1127   <li>i965: Add support for gl_FrontFacing on gen6.</li>
   1128   <li>i965: Don't assume that WPOS is always provided on gen6 in the new FS.</li>
   1129   <li>i965: Fix gen6 pointsize handling to match pre-gen6.</li>
   1130   <li>i965: Disable emitting if () statements on gen6 until we really fix them.</li>
   1131   <li>i965: Normalize cubemap coordinates like is done in the Mesa IR path.</li>
   1132   <li>mesa: Simplify a bit of _mesa_add_state_reference using memcmp.</li>
   1133   <li>i965: Drop the check for duplicate _mesa_add_state_reference.</li>
   1134   <li>i965: Drop the check for YUV constants in the param list.</li>
   1135   <li>i965: Handle swizzles in the addition of YUV texture constants.</li>
   1136   <li>i965: Fix gen6 WM push constants updates.</li>
   1137   <li>i965: Fix new FS gen6 interpolation for sparsely-populated arrays.</li>
   1138   <li>i965: Enable attribute swizzling (repositioning) in the gen6 SF.</li>
   1139   <li>i965: Add register coalescing to the new FS backend.</li>
   1140   <li>i965: Split FS_OPCODE_DISCARD into two steps.</li>
   1141   <li>i965: Reduce register interference checks for changed FS_OPCODE_DISCARD.</li>
   1142   <li>i965: Move FS backend structures to a header.</li>
   1143   <li>i965: Give the math opcodes information on base mrf/mrf len.</li>
   1144   <li>i965: Give the FB write and texture opcodes the info on base MRF, like math.</li>
   1145   <li>i965: Compute to MRF in the new FS backend.</li>
   1146   <li>i965: Don't consider gen6 math instructions to write to MRFs.</li>
   1147   <li>i965: Add a couple of checks for gen6 math instruction limits.</li>
   1148   <li>i965: Don't compute-to-MRF in gen6 math instructions.</li>
   1149   <li>i965: Expand uniform args to gen6 math to full registers to get hstride == 1.</li>
   1150   <li>i965: Don't compute-to-MRF in gen6 VS math.</li>
   1151   <li>i965: Fix gen6 pixel_[xy] setup to avoid mixing int and float src operands.</li>
   1152   <li>i965: Always use the new FS backend on gen6.</li>
   1153   <li>i965: Fix missing "break;" in i2b/f2b, and missing AND of CMP result.</li>
   1154   <li>intel: Allow CopyTexSubImage to InternalFormat 3/4 textures, like RGB/RGBA.</li>
   1155   <li>i965: Don't rebase the index buffer to min 0 if any arrays are in VBOs.</li>
   1156   <li>i965: Add support for rescaling GL_TEXTURE_RECTANGLE coords to new FS.</li>
   1157   <li>i965: Set class_sizes[] for the aligned reg pair class.</li>
   1158   <li>i965: Update the live interval when coalescing regs.</li>
   1159   <li>i965: Add a pass to the FS to split virtual GRFs to float channels.</li>
   1160   <li>i965: Add a function for handling the move of boolean values to flag regs.</li>
   1161   <li>i965: Add peepholing of conditional mod generation from expressions.</li>
   1162   <li>i965: Enable the new FS backend on pre-gen6 as well.</li>
   1163   <li>i965: Fix texturing on pre-gen5.</li>
   1164   <li>i965: Set the type of the null register to fix gen6 FS comparisons.</li>
   1165   <li>i965: Disable the debug printf I added for FS disasm.</li>
   1166   <li>i965: Fix a weirdness in NOT handling.</li>
   1167   <li>i965: Fix assertion failure on gen6 BufferSubData to busy BO.</li>
   1168   <li>i965: Assert out on gen6 VS constant buffer reads that hang the GPU for now.</li>
   1169   <li>i965: Fix scissor-offscreen on gen6 like we did pre-gen6.</li>
   1170   <li>i965: Avoid blits in BufferCopySubdata on gen6.</li>
   1171   <li>i965: Tell the shader compiler when we expect depth writes for gen6.</li>
   1172   <li>i965: Remove the gen6 emit_mi_flushes I sprinkled around the driver.</li>
   1173   <li>i965: Disable thread dispatch when the FS doesn't do any work.</li>
   1174   <li>i965: Add EU emit support for gen6's new IF instruction with comparison.</li>
   1175   <li>i965: Set the source operand types for gen6 if/else/endif to integer.</li>
   1176   <li>i965: Use the new style of IF statement with embedded comparison on gen6.</li>
   1177   <li>i965: Split register allocation out of the ever-growing brw_fs.cpp.</li>
   1178   <li>i965: Fix gl_FrontFacing emit on pre-gen6.</li>
   1179   <li>i965: Add support for register spilling.</li>
   1180   <li>i965: Don't emit register spill offsets directly into g0.</li>
   1181   <li>i965: Correct scratch space allocation.</li>
   1182   <li>i965: Be more aggressive in tracking live/dead intervals within loops.</li>
   1183   <li>i965: Move the FS disasm/annotation printout to codegen time.</li>
   1184   <li>i965: Add support for pull constants to the new FS backend.</li>
   1185   <li>i965: Add EU code for dword scattered reads (constant buffer array indexing).</li>
   1186   <li>i965: Clarify an XXX comment in FB writes with real info.</li>
   1187   <li>i965: Use SENDC on the first render target write on gen6.</li>
   1188   <li>i965: Clear some undefined fields of g0 when using them for gen6 FB writes.</li>
   1189   <li>i965: Add disasm for the flag register.</li>
   1190   <li>i965: Add support for discard instructions on gen6.</li>
   1191   <li>i965: Handle new ir_unop_round_even in channel expression splitting.</li>
   1192   <li>i965: Fix typo in comment about state flags.</li>
   1193   <li>i965: Set up the constant buffer on gen6 when it's needed.</li>
   1194   <li>i965: Add support for constant buffer loads on gen6.</li>
   1195   <li>i965: Drop the eot argument to read messages, which can never be set.</li>
   1196   <li>i965: Fix VS URB entry sizing.</li>
   1197   <li>i965: Disable register spilling on gen6 until it's fixed.</li>
   1198   <li>i965: Make FS uniforms be the actual type of the uniform at upload time.</li>
   1199   <li>i965: Add user clip planes support to gen6.</li>
   1200   <li>i965: Update gen6 SF state when point state (sprite or attenuation) changes.</li>
   1201   <li>i965: Upload required gen6 VS push constants even when using pull constants.</li>
   1202   <li>i965: Update the gen6 stencil ref state when stencil state changes.</li>
   1203   <li>mesa: Make metaops use program refcounts instead of names.</li>
   1204   <li>mesa: Don't compute an unused texture completeness debug string.</li>
   1205   <li>intel: For batch, use GTT mapping instead of writing to a malloc and copying.</li>
   1206   <li>intel: Annotate debug printout checks with unlikely().</li>
   1207   <li>intel: Remove the magic unaligned memcpy code.</li>
   1208   <li>i965: Remove dead intel_structs.h file.</li>
   1209   <li>intel: Avoid taking logbase2 of several things that we max.</li>
   1210   <li>intel: Remove duplicated teximage miptree to object miptree promotion.</li>
   1211   <li>intel: Remove leftover dri1 locking fields in the context.</li>
   1212   <li>mesa: Fix delayed state flagging for EXT_sso-related program changes.</li>
   1213   <li>intel: Fix the client-side swapbuffers throttling.</li>
   1214   <li>Revert "intel: Fix the client-side swapbuffers throttling."</li>
   1215   <li>i965: Allow OPCODE_SWZ to put immediates in the first arg.</li>
   1216   <li>i965: Add support for math on constants in gen6 brw_wm_glsl.c path.</li>
   1217   <li>i965: Work around strangeness in swizzling/masking of gen6 math.</li>
   1218   <li>i965: re-enable gen6 IF statements in the fragment shader.</li>
   1219   <li>glsl: Free the loop state context when we free the loop state.</li>
   1220   <li>i965: Fix gl_FragCoord inversion when drawing to an FBO.</li>
   1221   <li>i965: Shut up spurious gcc warning about GLSL_TYPE enums.</li>
   1222   <li>mesa: Don't spam the console in a debug build unless some spam is requested.</li>
   1223   <li>i965: Add state dumping for sampler state.</li>
   1224   <li>i965: Add dumping of the sampler default color.</li>
   1225   <li>i965: Fail on loops on gen6 for now until we write the EU emit code for it.</li>
   1226   <li>i965: Eliminate dead code more aggressively.</li>
   1227   <li>mesa: Include C++ files in the makedepend of DRI drivers.</li>
   1228   <li>i965: Fix compute_to_mrf to not move a MRF write up into another live range.</li>
   1229   <li>i965: Just use memset() to clear most members in FS constructors.</li>
   1230   <li>i965: Remove extra n at the end of every instruction in INTEL_DEBUG=wm.</li>
   1231   <li>i965: Fold constants into the second arg of BRW_SEL as well.</li>
   1232   <li>glsl: Add a helper function for determining if an rvalue could be a saturate.</li>
   1233   <li>i965: Recognize saturates and turn them into a saturated mov.</li>
   1234   <li>ir_to_mesa: Detect and emit MOV_SATs for saturate constructs.</li>
   1235   <li>i965: Improve compute-to-mrf.</li>
   1236   <li>i965: Remove duplicate MRF writes in the FS backend.</li>
   1237   <li>i965: Move gen4 blend constant color to the gen4 blending file.</li>
   1238   <li>i965: Don't upload polygon stipple unless required.</li>
   1239   <li>i965: Don't upload line stipple pattern unless we're stippling.</li>
   1240   <li>i965: Don't upload line smooth params unless we're line smoothing.</li>
   1241   <li>i965: Use the new embedded compare in SEL on gen6 for VS MIN and MAX opcodes.</li>
   1242   <li>i965: Fix type of gl_FragData[] dereference for FB write.</li>
   1243   <li>glsl: Make the symbol table's add_function just use the function's name.</li>
   1244   <li>glsl: Make the symbol table's add_variable just use the variable's name.</li>
   1245   <li>glsl: Add a helper constructor for expressions that works out result type.</li>
   1246   <li>glsl: Fix structure and array comparisions.</li>
   1247   <li>glsl: Quiet unreachable no-return-from-function warning.</li>
   1248   <li>i965: Dump the WHILE jump distance on gen6.</li>
   1249   <li>i965: Add support for gen6 DO/WHILE ISA emit.</li>
   1250   <li>i965: Add support for gen6 BREAK ISA emit.</li>
   1251   <li>i965: Add support for gen6 CONTINUE instruction emit.</li>
   1252   <li>i965: Enable IF statements in the VS.</li>
   1253   <li>i965: Add support for loops in the VS.</li>
   1254   <li>glsl: Mark the array access for whole-array comparisons.</li>
   1255   <li>glsl: Fix flipped return of has_value() for array constants.</li>
   1256   <li>mesa: Add getters for the rest of the supported draw buffers.</li>
   1257   <li>mesa: Add getters for ARB_copy_buffer's attachment points.</li>
   1258   <li>intel: Add an env var override to execute for a different GPU revision.</li>
   1259   <li>i965: Update gen6 WM state on compiled program change, not just FP change.</li>
   1260   <li>i965: Update gen6 SF state on fragment program change too.</li>
   1261   <li>i965: Fix compile warning about missing opcodes.</li>
   1262   <li>i965: Move payload reg setup to compile, not lookup time.</li>
   1263   <li>i965: Provide delta_xy reg to gen6 non-GLSL path PINTERP.</li>
   1264   <li>i965: Fix up 16-wide gen6 FB writes after various refactoring.</li>
   1265   <li>i965: Don't smash a group of coordinates doing gen6 16-wide sampler headers.</li>
   1266   <li>i965: Fix gen6 interpolation setup for 16-wide.</li>
   1267   <li>i965: Fix up gen6 samplers for their usage by brw_wm_emit.c</li>
   1268   <li>i965: Make the sampler's implied move on gen6 be a raw move.</li>
   1269   <li>i965: Align gen6 push constant size to dispatch width.</li>
   1270   <li>i965: Add support for the instruction compression bits on gen6.</li>
   1271   <li>i965: Nuke brw_wm_glsl.c.</li>
   1272   <li>i965: Remove INTEL_DEBUG=glsl_force now that there's no brw_wm_glsl.c</li>
   1273   <li>i965: Fix comment about gen6_wm_constants.</li>
   1274   <li>i965: Handle saturates on gen6 math instructions.</li>
   1275   <li>i965: Always hand the absolute value to RSQ.</li>
   1276   <li>i965: Add disabled debug code for dumping out the WM constant payload.</li>
   1277   <li>i965: Work around gen6 ignoring source modifiers on math instructions.</li>
   1278   <li>i965: Fix flipped value of the not-embedded-in-if on gen6.</li>
   1279   <li>i965: Don't try to store gen6 (float) blend constant color in bytes.</li>
   1280   <li>i965: Set up the color masking for the first drawbuffer on gen6.</li>
   1281   <li>i965: Set up the per-render-target blend state on gen6.</li>
   1282   <li>i965: Set the render target index in gen6 fixed-function/ARB_fp path.</li>
   1283   <li>i965: Use the new pixel mask location for gen6 ARB_fp KIL instructions.</li>
   1284   <li>i965: Drop KIL_NV from the ff/ARB_fp path since it was only used for GLSL.</li>
   1285   <li>i965: Drop push-mode reladdr constant loading and always use constant_map.</li>
   1286   <li>i965: Fix VS constants regression pre-gen6.</li>
   1287   <li>i965: Clean up VS constant buffer location setup.</li>
   1288   <li>i965: Set up the correct texture border color state struct for Ironlake.</li>
   1289   <li>i965: Set render_cache_read_write surface state bit on gen6 constant surfs.</li>
   1290   <li>i965: remove unused variable since brw_wm_glsl.c removal.</li>
   1291   <li>intel: Use plain R8 and RG8 for COMPRESSED_RED and COMPRESSED_RG.</li>
   1292   <li>intel: Set the swizzling for depth textures using the GL_RED depth mode.</li>
   1293   <li>glsl: Correct the marking of InputsRead/OutputsWritten on in/out matrices.</li>
   1294   <li>i965: Correct the dp_read message descriptor setup on g4x.</li>
   1295   <li>intel: Include stdbool so we can stop using GLboolean when we want to.</li>
   1296   <li>i965: Fix ARL to work on gen6.</li>
   1297   <li>i956: Fix the old FP path fragment position setup on gen6.</li>
   1298   <li>i965: Fix gl_FragCoord.z setup on gen6.</li>
   1299   <li>i965: Add support for using the BLT ring on gen6.</li>
   1300   <li>intel: Update renderbuffers before looking up CopyTexImage's read buffer.</li>
   1301   <li>intel: Drop commented intel_flush from copy_teximage.</li>
   1302   <li>intel: Try to sanely check that formats match for CopyTexImage.</li>
   1303   <li>intel: Support glCopyTexImage() from XRGB8888 to ARGB8888.</li>
   1304   <li>i965: Avoid using float type for raw moves, to work around SNB issue.</li>
   1305   <li>i965: Set the alternative floating point mode on gen6 VS and WM.</li>
   1306   <li>i965: Add support for gen6 constant-index constant loading.</li>
   1307   <li>i965: Add support for gen6 reladdr VS constant loading.</li>
   1308   <li>i965: Improve the hacks for ARB_fp scalar^scalar POW on gen6.</li>
   1309   <li>i965: Factor out the ir comparision to BRW_CONDITIONAL_* code.</li>
   1310   <li>i965: Fix regression in FS comparisons on original gen4 due to gen6 changes.</li>
   1311   <li>i965: Do lowering of array indexing of a vector in the FS.</li>
   1312   <li>intel: Only do frame throttling at glFlush time when using frontbuffer.</li>
   1313   <li>intel: Handle forced swrast clears before other clear bits.</li>
   1314   <li>intel: Use tri clears when we don't know how to blit clear the format.</li>
   1315   <li>intel: Add spans code for the ARB_texture_rg support.</li>
   1316   <li>intel: Add a couple of helper functions to reduce rb code duplication.</li>
   1317   <li>intel: Fix segfaults from trying to use _ColorDrawBuffers in FBO validation.</li>
   1318   <li>intel: When validating an FBO's combined depth/stencil, use the given FBO.</li>
   1319 </ul></p>
   1320 
   1321 <p>Fabian Bieler (2):
   1322 <ul>
   1323   <li>r600g: set address of pop instructions to next instruction</li>
   1324   <li>glsl: fix lowering conditional returns in subroutines</li>
   1325 </ul></p>
   1326 
   1327 <p>Francisco Jerez (51):
   1328 <ul>
   1329   <li>dri/nv04: Fix PGRAPH_ERRORs when running OA.</li>
   1330   <li>dri/nv04: Mipmapping fixes.</li>
   1331   <li>dri/nv04: Align SIFM transfer dimensions.</li>
   1332   <li>dri/nv04: Fix up color mask.</li>
   1333   <li>dri/nv04: Fix maximum texture size.</li>
   1334   <li>dri/nv04: Fix provoking vertex.</li>
   1335   <li>dri/nouveau: Update nouveau_class.h.</li>
   1336   <li>dri/nouveau: Add some more extensions.</li>
   1337   <li>dri/nouveau: Fix glRenderbufferStorage with DEPTH_COMPONENT as internal format.</li>
   1338   <li>dri/nouveau: Don't request a fake front unnecessarily.</li>
   1339   <li>dri/nouveau: Don't reemit the BO state in nouveau_state_emit().</li>
   1340   <li>dri/nouveau: Cleanup references to the old FBOs on glMakeCurrent().</li>
   1341   <li>meta: Don't bind the created texture object in init_temp_texture().</li>
   1342   <li>dri/nv10: Fix the CLAMP texture wrap mode.</li>
   1343   <li>dri/nv04: Use nvgl_wrap_mode().</li>
   1344   <li>dri/nouveau: Remove unnecessary assertion.</li>
   1345   <li>dri/nouveau: Cleanup more references to old FBOs and VBOs.</li>
   1346   <li>dri/nv10-nv20: Fix texturing in some cases after a base level change.</li>
   1347   <li>dri/nouveau: Fix software mipmap generation on 1x1 textures.</li>
   1348   <li>dri/nouveau: Have a smaller amount of larger scratch buffers.</li>
   1349   <li>dri/nouveau: Remove unnecessary flush.</li>
   1350   <li>dri/nv10: Use fast Z clears.</li>
   1351   <li>dri/nouveau: Minor cleanup.</li>
   1352   <li>dri/nv10: Fake fast Z clears for pre-nv17 cards.</li>
   1353   <li>dri/nouveau: Initialize tile_flags when allocating a render target.</li>
   1354   <li>nouveau: Get larger push buffers.</li>
   1355   <li>dri/nouveau: Force a "slow" Z clear if we're getting a new depth buffer.</li>
   1356   <li>dri/nv20: Clear with the 3D engine.</li>
   1357   <li>dri/nouveau: Don't assert(0) on compressed internal formats.</li>
   1358   <li>dri/nv25: Bind a hierarchical depth buffer.</li>
   1359   <li>dri/nouveau: Call _mesa_update_state() after framebuffer invalidation.</li>
   1360   <li>dri/nouveau: Honor the access flags in nouveau_bufferobj_map_range.</li>
   1361   <li>dri/nouveau: Tell the vbo module we want real hardware BOs.</li>
   1362   <li>dri/nouveau: Split out the scratch helpers to a separate file.</li>
   1363   <li>dri/nouveau: Avoid recursion in nouveau_bo_context_reset().</li>
   1364   <li>dri/nouveau: Use a macro to iterate over the bound vertex attributes.</li>
   1365   <li>dri/nouveau: Split out array handling to its own file.</li>
   1366   <li>dri/nouveau: Optimize VBO binding re-emission.</li>
   1367   <li>dri/nouveau: Keep small DYNAMIC_DRAW vertex buffers in system ram.</li>
   1368   <li>dri/nouveau: Pipeline glTexSubImage texture transfers.</li>
   1369   <li>dri/nouveau: Fix type promotion issue on 32bit platforms.</li>
   1370   <li>dri/nouveau: Validate the framebuffer state on read buffer changes.</li>
   1371   <li>dri/nouveau: Re-emit the BO state when coming back from a software fallback.</li>
   1372   <li>meta: Don't leak alpha function/reference value changes.</li>
   1373   <li>meta: Fix incorrect rendering of the bitmap alpha component.</li>
   1374   <li>vbo: Avoid unnecessary copy to/from current in vertex format upgrade.</li>
   1375   <li>meta: Don't try to disable cube maps if the driver doesn't expose the extension.</li>
   1376   <li>meta: Handle bitmaps with alpha test enabled.</li>
   1377   <li>dri/nouveau: Split hardware/software TNL instantiation more cleanly.</li>
   1378   <li>dri/nouveau: Fix typo.</li>
   1379   <li>dri/nouveau: Kill a bunch of ternary operators.</li>
   1380 </ul></p>
   1381 
   1382 <p>Fredrik Hglund (2):
   1383 <ul>
   1384   <li>r600g: Fix texture sampling with swizzled coords</li>
   1385   <li>r600g: fix pow(0, 0) evaluating to NaN</li>
   1386 </ul></p>
   1387 
   1388 <p>Guillermo S. Romero (1):
   1389 <ul>
   1390   <li>r300g: Do not use buf param before checking for NULL.</li>
   1391 </ul></p>
   1392 
   1393 <p>Henri Verbeet (19):
   1394 <ul>
   1395   <li>r600g: Flush upload buffers before draws instead of before flushes.</li>
   1396   <li>r600g: Check for other references before checking for existing mappings in radeon_bo_pb_map_internal().</li>
   1397   <li>r600g: Remove a redundant flush in r600_texture_transfer_map().</li>
   1398   <li>r600g: Buffer object maps imply a wait.</li>
   1399   <li>r600g: Respect PB_USAGE_UNSYNCHRONIZED in radeon_bo_pb_map_internal().</li>
   1400   <li>Revert "r600g: Flush upload buffers before draws instead of before flushes."</li>
   1401   <li>r600g: fix exports_ps to export a number not a mask.</li>
   1402   <li>r600g: Mention AMD in the renderer string.</li>
   1403   <li>r600g: Cleanup the fenced_bo list in r600_context_fini().</li>
   1404   <li>r600g: Evergreen has two extra frac_bits for the sampler LOD state.</li>
   1405   <li>r600: Evergreen has two extra frac_bits for the sampler LOD state.</li>
   1406   <li>r600g: Add PIPE_FORMAT_L8A8_UNORM for Evergreen as well.</li>
   1407   <li>r600g: Swizzle vertex data only once.</li>
   1408   <li>r600g: Synchronize supported color formats between Evergreen and r600/r700.</li>
   1409   <li>r600g: Fix the PIPE_FORMAT_L8A8_UNORM color swaps.</li>
   1410   <li>r600g: Fix the PIPE_FORMAT_A8_UNORM color swap for Evergreen as well.</li>
   1411   <li>r600g: Cleanup block bo references in r600_context_fini().</li>
   1412   <li>r600g: Cleanup fetch shader resources in r600_pipe_shader_destroy().</li>
   1413   <li>st/mesa: Handle wrapped depth buffers in st_copy_texsubimage().</li>
   1414 </ul></p>
   1415 
   1416 <p>Hui Qi Tay (10):
   1417 <ul>
   1418   <li>llvmpipe: minor changes in llvm coefficient calcs</li>
   1419   <li>draw: cliptest and viewport done in a single loop in vertex shader</li>
   1420   <li>draw: added viewport and cliptest flags</li>
   1421   <li>draw: sanitize llvm variant key</li>
   1422   <li>draw: corrections for w coordinate</li>
   1423   <li>draw: corrections to allow for different cliptest cases</li>
   1424   <li>llvmpipe: Moved draw pipeline twoside function to llvm setup code</li>
   1425   <li>llvmpipe: added llvm offset setup code</li>
   1426   <li>llvmpipe: clean up polygon offset function in lp setup code</li>
   1427   <li>llvmpipe: fix such that offset/twoside function only does in-place modification</li>
   1428 </ul></p>
   1429 
   1430 <p>Ian Romanick (102):
   1431 <ul>
   1432   <li>glsl2: Refactor testing for whether a deref is of a matrix or array</li>
   1433   <li>glsl2: Add flags to enable variable index lowering</li>
   1434   <li>glsl: Add doxygen comments</li>
   1435   <li>EGL DRI2: Silence piles of 'unused variable' warnings</li>
   1436   <li>EGL DRI2: Silence 'missing initializer' warnings</li>
   1437   <li>egl_glx: Silence piles of 'unused variable' warnings</li>
   1438   <li>egl: Fix several 'comparison between signed and unsigned integer' warnings</li>
   1439   <li>dri: Ensure that DRI driver cpp files are in tarballs</li>
   1440   <li>mesa: Force GL_ARB_copy_buffer to always be enabled</li>
   1441   <li>mesa: Force GL_SGIS_generate_mipmap to always be enabled</li>
   1442   <li>Remove GL_MESA_packed_depth_stencil</li>
   1443   <li>Remove GL_EXT_cull_vertex</li>
   1444   <li>Regenerate files changed by previous commit</li>
   1445   <li>Remove unnescessary initializations of UpdateTexturePalette</li>
   1446   <li>ARB_texture_rg: Add GLX protocol support</li>
   1447   <li>ARB_texture_rg: Correct some errors in RED / RG internal format handling</li>
   1448   <li>ARB_texture_rg: Add GL_TEXTURE_{RED,GREEN}_SIZE query support</li>
   1449   <li>ARB_texture_rg: Add GL_RED as a valid GL_DEPTH_TEXTURE_MODE</li>
   1450   <li>ARB_texture_rg: Handle RED and RG the same as RGB for tex env</li>
   1451   <li>ARB_texture_rg: Add R8, R16, RG88, and RG1616 internal formats</li>
   1452   <li>ARB_texture_rg: Allow RED and RG textures as FBO color buffer attachments</li>
   1453   <li>mesa: Enable GL_ARB_texture_rg in software paths</li>
   1454   <li>i965: Enable GL_ARB_texture_rg</li>
   1455   <li>mesa: Add ARB_texture_compression_rgtc as an alias for EXT_texture_compression_rgtc</li>
   1456   <li>ARB_texture_rg: Add GL_COMPRESSED_{RED,RG} cases in _mesa_is_color_format</li>
   1457   <li>mesa: Fix misplaced #endif</li>
   1458   <li>mesa: Trivial correction to comment</li>
   1459   <li>rgtc: Detect RGTC formats as color formats and as compressed formats</li>
   1460   <li>docs: Add list of bugs fixed in 7.9</li>
   1461   <li>docs: Import 7.9 release notes from 7.9 branch.</li>
   1462   <li>docs: Import 7.8.x release notes from 7.8 branch.</li>
   1463   <li>docs: download.html does not need to be updated for each release</li>
   1464   <li>docs: Update mailing lines from sf.net to freedesktop.org</li>
   1465   <li>docs: Import news updates from 7.9 branch</li>
   1466   <li>docs: added news item for 7.9 release</li>
   1467   <li>glsl: Fail linking if assign_attribute_locations fails</li>
   1468   <li>glsl: Refactor 'layout' grammar to match GLSL 1.60 spec grammar</li>
   1469   <li>glsl: Slight refactor of error / warning checking for ARB_fcc layout</li>
   1470   <li>glsl: Clear type_qualifier using memset</li>
   1471   <li>glsl: Wrap ast_type_qualifier contents in a struct in a union</li>
   1472   <li>glsl: Regenerate files modified by previous commits</li>
   1473   <li>glcpp: Add the define for ARB_explicit_attrib_location when present</li>
   1474   <li>glcpp: Regenerate files changes by previous commit</li>
   1475   <li>glsl: Add parser support for GL_ARB_explicit_attrib_location layouts</li>
   1476   <li>glsl: Regenerate files changes by previous commit</li>
   1477   <li>glsl: Track explicit location in AST to IR translation</li>
   1478   <li>glsl: Add linker support for explicit attribute locations</li>
   1479   <li>main: Enable GL_ARB_explicit_attrib_location for swrast</li>
   1480   <li>intel: Enable GL_ARB_explicit_attrib_location</li>
   1481   <li>glsl: Remove const decoration from inlined function parameters</li>
   1482   <li>docs: skeleton for 7.10 release notes</li>
   1483   <li>docs: Update status of GL 3.x related extensions</li>
   1484   <li>mesa: Validate assembly shaders when GLSL shaders are used</li>
   1485   <li>glsl: Fix incorrect assertion</li>
   1486   <li>linker: Reject shaders that have unresolved function calls</li>
   1487   <li>mesa: Silence unused variable warning</li>
   1488   <li>mesa: Refactor validation of shader targets</li>
   1489   <li>mesa: Clean up two 'comparison between signed and unsigned' warnings</li>
   1490   <li>mesa: Clean up various 'unused parameter' warnings in shaderapi</li>
   1491   <li>glsl: Slightly change the semantic of _LinkedShaders</li>
   1492   <li>linker: Trivial indention fix</li>
   1493   <li>i965: Fix indentation after commit 3322fbaf</li>
   1494   <li>linker: Improve handling of unread/unwritten shader inputs/outputs</li>
   1495   <li>glapi: Add GL_EXT_separate_shader_objects</li>
   1496   <li>glapi: Commit files changed by previous commit</li>
   1497   <li>mesa: Add infrastructure to track GL_EXT_separate_shader_objects</li>
   1498   <li>mesa: Skeletal support for GL_EXT_separate_shader_objects</li>
   1499   <li>mesa: Add display list support for GL_EXT_separate_shader_objects functions</li>
   1500   <li>mesa: Track an ActiveProgram distinct from CurrentProgram</li>
   1501   <li>Track separate programs for each stage</li>
   1502   <li>swrast: Enable GL_EXT_separate_shader_objects in software paths</li>
   1503   <li>intel: Enable GL_EXT_separate_shader_objects in Intel drivers</li>
   1504   <li>docs: add GL_EXT_separate_shader_objects to release notes</li>
   1505   <li>glsl: Fix incorrect gl_type of sampler2DArray and sampler1DArrayShadow</li>
   1506   <li>ir_to_mesa: Refactor code for emitting DP instructions</li>
   1507   <li>mesa: Allow query of MAX_SAMPLES with EXT_framebuffer_multisample</li>
   1508   <li>glsl: Refactor is_vec_{zero,one} to be methods of ir_constant</li>
   1509   <li>glsl: Simplify generation of swizzle for vector constructors</li>
   1510   <li>glsl: Make is_zero and is_one virtual methods of ir_rvalue</li>
   1511   <li>ir_to_mesa: Generate smarter code for some conditional moves</li>
   1512   <li>glsl: Add ir_unop_sin_reduced and ir_unop_cos_reduced</li>
   1513   <li>glsl: Eliminate assumptions about size of ir_expression::operands</li>
   1514   <li>glsl: Add ir_rvalue::is_negative_one predicate</li>
   1515   <li>glsl: Add unary ir_expression constructor</li>
   1516   <li>glsl: Add ir_quadop_vector expression</li>
   1517   <li>glsl: Fix matrix constructors with vector parameters</li>
   1518   <li>i915: Disallow alpha, red, RG, and sRGB as render targets</li>
   1519   <li>glsl: Use M_LOG2E constant instead of calling log2</li>
   1520   <li>glsl: Lower ir_binop_pow to a sequence of EXP2 and LOG2</li>
   1521   <li>i915: Request that POW instructions be lowered</li>
   1522   <li>i915: Correctly generate unconditional KIL instructions</li>
   1523   <li>glsl: Ensure that equality comparisons don't return a NULL IR tree</li>
   1524   <li>i965: Correctly emit constants for aggregate types (array, matrix, struct)</li>
   1525   <li>glsl: Inherrit type of declared variable from initializer</li>
   1526   <li>linker: Ensure that unsized arrays have a size after linking</li>
   1527   <li>linker: Fix regressions caused by previous commit</li>
   1528   <li>glsl: Inherrit type of declared variable from initializer after processing assignment</li>
   1529   <li>linker: Allow built-in arrays to have different sizes between shader stages</li>
   1530   <li>ir_to_mesa: Don't generate swizzles for record derefs of non-scalar/vectors</li>
   1531   <li>Refresh autogenerated file builtin_function.cpp.</li>
   1532   <li>glsl: Allow less restrictive uses of sampler array indexing in GLSL &lt= 1.20</li>
   1533   <li>docs: Import 7.9.1 release notes from 7.9 branch</li>
   1534 </ul></p>
   1535 
   1536 <p>Jakob Bornecrantz (27):
   1537 <ul>
   1538   <li>rbug: Cast opcode to corrent int size</li>
   1539   <li>rbug: Add function to get opcode name string</li>
   1540   <li>scons: Link against talloc in the Gallium DRI drivers</li>
   1541   <li>i915g: Link with wrapper sw winsys with scons</li>
   1542   <li>tgsi: Actually care what check_soa_dependencies says</li>
   1543   <li>tgsi: Fix missing test before check</li>
   1544   <li>llvmpipe: Move makefile include to before targets</li>
   1545   <li>wrapper: Fix spelling</li>
   1546   <li>wrapper: Add a way to dewrap a pipe screen without destroying it</li>
   1547   <li>egl: Remove unnecessary headers</li>
   1548   <li>target-helpers: Remove per target software wrapper check</li>
   1549   <li>graw: Tidy graw xlib scons file a bit</li>
   1550   <li>scons: Remove old pipebuffer SConscript</li>
   1551   <li>scons: Detabify</li>
   1552   <li>scons: Check for pkg-config before trying to use it</li>
   1553   <li>scons: Check for libdrm_[intel|radeon] as well</li>
   1554   <li>scons: Move dependancy checks to the main gallium scons file</li>
   1555   <li>scons: Unify state tracker SConscripts</li>
   1556   <li>galahad: Correct the name of the scons library</li>
   1557   <li>graw: Use inline sw helper instead of roll your own loader</li>
   1558   <li>libgl-xlib: Use sw helper instead of roll your own</li>
   1559   <li>libgl-xlib: Use inline debug helper instead of non-inline version</li>
   1560   <li>graw: Use inline debug helper instead of non-inline version</li>
   1561   <li>gallium: Remove redundant sw and debug target helpers</li>
   1562   <li>i915g: Improve debug printing for textures</li>
   1563   <li>i915g: Make sure that new vbo gets updated</li>
   1564   <li>st/mesa: Unbind all constant buffers</li>
   1565 </ul></p>
   1566 
   1567 <p>Jerome Glisse (75):
   1568 <ul>
   1569   <li>r600g: alternative command stream building from context</li>
   1570   <li>r600g: move chip class to radeon common structure</li>
   1571   <li>r600g: use pipe context for flushing inside map</li>
   1572   <li>r600g: add back reference check when mapping buffer</li>
   1573   <li>r600g: directly allocate bo for user buffer</li>
   1574   <li>r600g: fix multi buffer rendering</li>
   1575   <li>r600g: occlusion query for new design</li>
   1576   <li>r600g: flush color buffer after draw command</li>
   1577   <li>r600g: disable shader rebuild optimization &amp; account cb flush packet</li>
   1578   <li>r600g: fix multiple occlusion query on same id</li>
   1579   <li>r600g: initial evergreen support in new path</li>
   1580   <li>r600g: fix typo in evergreen define (resource are in x range)</li>
   1581   <li>r600g: move use_mem_constants flags for new designs structure alignment</li>
   1582   <li>r600g: evergreen fix for new design</li>
   1583   <li>r600g: fix compilation after change to evergreend.h</li>
   1584   <li>r600g: fixup some evergreen register definitions</li>
   1585   <li>r600g: fix evergreen new path</li>
   1586   <li>r600g: fix reg definition</li>
   1587   <li>r600g: fix evergreen new path</li>
   1588   <li>r600g: bring over fix from old path to new path</li>
   1589   <li>r600g: fix vertex resource &amp; polygon offset</li>
   1590   <li>r600g: disable early cull optimization when occlusion query running</li>
   1591   <li>r600g: move around variables to share depth uncompression code</li>
   1592   <li>r600g: use depth decompression in new path</li>
   1593   <li>r600g: fix index buffer drawing</li>
   1594   <li>r600g: build packet header once</li>
   1595   <li>r600g: fix pointsprite &amp; resource unbinding</li>
   1596   <li>r600g: fix routing btw vertex &amp; pixel shader</li>
   1597   <li>r600g: fix occlusion query after change to block structure</li>
   1598   <li>r600g: use ptr for blit depth uncompress function</li>
   1599   <li>r600g: fix remaining piglit issue in new design</li>
   1600   <li>r600g: switch to new design</li>
   1601   <li>r600g: suspend/resume occlusion query around clear/copy</li>
   1602   <li>r600g: avoid rebuilding the vertex shader if no change to input format</li>
   1603   <li>r600g: use a hash table instead of group</li>
   1604   <li>r600g: delete old path</li>
   1605   <li>r600g: cleanup</li>
   1606   <li>r600g: more cleanup</li>
   1607   <li>r600g: use constant buffer instead of register for constant</li>
   1608   <li>r600g: fix constant &amp; literal src splitting, also fix mplayer gl2 shader</li>
   1609   <li>evergreeng: avoid overlapping border color btw VS &amp; PS</li>
   1610   <li>r600g: indentation fixes</li>
   1611   <li>r600g: rename radeon_ws_bo to r600_bo</li>
   1612   <li>r600g: allow r600_bo to be a sub allocation of a big bo</li>
   1613   <li>r600g: use r600_bo for relocation argument, simplify code</li>
   1614   <li>r600g: rename radeon_ws_bo to r600_bo</li>
   1615   <li>r600g: remove dead label &amp; fix indentation</li>
   1616   <li>r600g: store reloc information in bo structure</li>
   1617   <li>r600g: improve bo flushing</li>
   1618   <li>r600g: simplify block relocation</li>
   1619   <li>r600g: userspace fence to avoid kernel call for testing bo busy status</li>
   1620   <li>r600g: avoid segfault due to unintialized list pointer</li>
   1621   <li>r600g: fix dirty state handling</li>
   1622   <li>r600g: allow driver to work without submitting cmd to GPU</li>
   1623   <li>gallium/noop: no operation gallium driver</li>
   1624   <li>r600g: code cleanup (indent, trailing space, empty line ...)</li>
   1625   <li>r600g: fix occlusion query on evergreen (avoid lockup)</li>
   1626   <li>r600g: add fetch shader capabilities</li>
   1627   <li>r600g: dump raw shader output for debugging</li>
   1628   <li>r600g: update polygon offset only when rasterizer or zbuffer change</li>
   1629   <li>r600g: indentation fix</li>
   1630   <li>r600g: more indentation fix + warning silencing + dead code removal</li>
   1631   <li>r600g: build fetch shader from vertex elements</li>
   1632   <li>r600g: avoid useless shader rebuild at draw call</li>
   1633   <li>r600g: remove useless flush map</li>
   1634   <li>r600g: remove dead code</li>
   1635   <li>r600g: fix userspace fence against lastest kernel</li>
   1636   <li>r600g: avoid using pb* helper we are loosing previous cpu cycle with it</li>
   1637   <li>r600g: specialized upload manager</li>
   1638   <li>r600g: indentation cleanup</li>
   1639   <li>r600g: fix bo size when creating bo from handle</li>
   1640   <li>r600g: fix segfault when translating vertex buffer</li>
   1641   <li>r600g: need to reference upload buffer as the might still live accross flush</li>
   1642   <li>r600g: properly unset vertex buffer</li>
   1643   <li>r600g: avoid segfault</li>
   1644 </ul></p>
   1645 
   1646 <p>Joakim Sindholt (3):
   1647 <ul>
   1648   <li>util/u_blitter: fix leak</li>
   1649   <li>radeong: fix leaks</li>
   1650   <li>r300g: silence guard band cap errors</li>
   1651 </ul></p>
   1652 
   1653 <p>Johann Rudloff (3):
   1654 <ul>
   1655   <li>radeon: Implement EGL_MESA_no_surface_extension</li>
   1656   <li>radeon: Implement __DRI_IMAGE and EGL_MESA_image_drm</li>
   1657   <li>radeon: Implement GL_OES_EGL_image</li>
   1658 </ul></p>
   1659 
   1660 <p>John Doe (3):
   1661 <ul>
   1662   <li>r600g: misc cleanup</li>
   1663   <li>r600g: don't double count dirty block</li>
   1664   <li>r600g: keep a mapping around for each bo</li>
   1665 </ul></p>
   1666 
   1667 <p>Jon TURNEY (1):
   1668 <ul>
   1669   <li>Ensure -L$(TOP)/$(LIB_DIR) appears in link line before any -L in $LDFLAGS</li>
   1670 </ul></p>
   1671 
   1672 <p>Jos Fonseca (128):
   1673 <ul>
   1674   <li>gallivm: Fix address register swizzle.</li>
   1675   <li>gallivm: Start collecting bitwise arithmetic helpers in a new module.</li>
   1676   <li>gallivm: Clamp indirect register indices to file_max.</li>
   1677   <li>util: linearized sRGB values don't fit into 8bits</li>
   1678   <li>llvmpipe: Default to no threading on single processor systems.</li>
   1679   <li>tgsi: Don't ignore indirect registers in tgsi_check_soa_dependencies</li>
   1680   <li>llvmpipe: Describe how to profile llvmpipe.</li>
   1681   <li>llvmpipe: When failing free fs shader too.</li>
   1682   <li>util: Flush stdout on util_format.</li>
   1683   <li>gallivm: Add unorm support to lp_build_lerp()</li>
   1684   <li>llvmpipe: Special case complementary and identify blend factors in SoA.</li>
   1685   <li>llvmpipe: Make rgb/alpha bland func/factors match, when there is no alpha.</li>
   1686   <li>draw: Prevent clipped vertices overflow.</li>
   1687   <li>draw: Fullfil the new min_lod/max_lod/lod_bias/border_color dynamic state</li>
   1688   <li>gallivm: Fetch the lod from the dynamic state when min_lod == max_lod.</li>
   1689   <li>gallivm: Remove dead experimental code.</li>
   1690   <li>llvmpipe: Decouple sampler view and sampler state updates.</li>
   1691   <li>scons: New build= option, with support for checked builds.</li>
   1692   <li>scons: New build= option, with support for checked builds.</li>
   1693   <li>trace: Fix set_index_buffer and draw_vbo tracing.</li>
   1694   <li>python/retrace: Handle set_index_buffer and draw_vbo.</li>
   1695   <li>gallivm: Use SSE4.1's ROUNDSS/ROUNDSD for scalar rounding.</li>
   1696   <li>gallivm: More comprehensive border usage logic.</li>
   1697   <li>retrace: Handle clear_render_target and clear_depth_stencil.</li>
   1698   <li>llvmpipe: Dump a few missing shader key flags.</li>
   1699   <li>llvmpipe: Fix perspective interpolation for point sprites.</li>
   1700   <li>llvmpipe: Fix sprite coord perspective interpolation of Q.</li>
   1701   <li>gallivm: Take the type signedness in consideration in round/ceil/floor.</li>
   1702   <li>gallivm: Use a faster (and less accurate) log2 in lod computation.</li>
   1703   <li>gallivm: Fast implementation of iround(log2(x))</li>
   1704   <li>gallivm: Combined ifloor &amp; fract helper.</li>
   1705   <li>gallivm: Only apply min/max_lod when necessary.</li>
   1706   <li>gallivm: Compute lod as integer whenever possible.</li>
   1707   <li>util: Cleanup util_pack_z_stencil and friends.</li>
   1708   <li>llvmpipe: Cleanup depth-stencil clears.</li>
   1709   <li>gallivm: Vectorize the rho computation.</li>
   1710   <li>gallivm: Do not do mipfiltering when magnifying.</li>
   1711   <li>gallivm: Simplify lp_build_mipmap_level_sizes' interface.</li>
   1712   <li>gallivm: Don't compute the second mipmap level when frac(lod) == 0</li>
   1713   <li>gallivm: Use lp_build_ifloor_fract for lod computation.</li>
   1714   <li>gallivm: Clamp mipmap level and zero mip weight simultaneously.</li>
   1715   <li>gallivm: Fix copy'n'paste typo in previous commit.</li>
   1716   <li>gallivm: Implement brilinear filtering.</li>
   1717   <li>gallivm: Use the wrappers for SSE pack intrinsics.</li>
   1718   <li>gallivm: Avoid control flow for two-sided stencil test.</li>
   1719   <li>gallivm: Warn when doing inefficient integer comparisons.</li>
   1720   <li>gallivm: Move into the as much of the second level code as possible.</li>
   1721   <li>llvmpipe: First minify the texture size, then broadcast.</li>
   1722   <li>gallivm: Help for combined extraction and broadcasting.</li>
   1723   <li>gallivm: Do size computations simultanously for all dimensions (AoS).</li>
   1724   <li>llvmpipe: Prevent z &gt; 1.0</li>
   1725   <li>llvmpipe: Fix MSVC build. Enable the new SSE2 code on non SSE3 systems.</li>
   1726   <li>gallivm: Handle code have ret correctly.</li>
   1727   <li>util: Defined M_SQRT2 when not available.</li>
   1728   <li>gallivm: Less code duplication in log computation.</li>
   1729   <li>gallivm: Special bri-linear computation path for unmodified rho.</li>
   1730   <li>gallivm: Don't generate Phis for execution mask.</li>
   1731   <li>gallivm: Use varilables instead of Phis for cubemap selection.</li>
   1732   <li>gallivm: Remove support for Phi generation.</li>
   1733   <li>gallivm: Factor out the SI-&gt;FP texture size conversion for SoA path too</li>
   1734   <li>gallivm: Simplify if/then/else implementation.</li>
   1735   <li>gallivm: Cleanup the rest of the flow module.</li>
   1736   <li>gallivm: Fix a long standing bug with nested if-then-else emission.</li>
   1737   <li>gallivm: Allow to disable bri-linear filtering with GALLIVM_DEBUG=no_brilinear runtime option</li>
   1738   <li>gallivm: Use variables instead of Phis in loops.</li>
   1739   <li>gallivm: Pass texture coords derivates as scalars.</li>
   1740   <li>llvmpipe: Remove outdated comment about stencil testing.</li>
   1741   <li>gallivm: Eliminate unsigned integer arithmetic from texture coordinates.</li>
   1742   <li>gallium: Define C99 restrict keyword where absent.</li>
   1743   <li>tgsi: Export some names for some tgsi enums.</li>
   1744   <li>gallivm: More detailed analysis of tgsi shaders.</li>
   1745   <li>llvmpipe: Use lp_tgsi_info.</li>
   1746   <li>llvmpipe: Do not dispose the execution engine.</li>
   1747   <li>llvmpipe: Fix MSVC build.</li>
   1748   <li>llmvpipe: improve mm_mullo_epi32</li>
   1749   <li>gallivm: Name anonymous union.</li>
   1750   <li>llvmpipe: Unbreak Z32_FLOAT.</li>
   1751   <li>gallivm: More accurate float -&gt; 24bit &amp; 32bit unorm conversion.</li>
   1752   <li>llvmpipe: Generalize the x8z24 fast path to all depth formats.</li>
   1753   <li>llvmpipe: Fix depth-stencil regression.</li>
   1754   <li>llvmpipe: Ensure z_shift and z_width is initialized.</li>
   1755   <li>gallivm: Fix SoA cubemap derivative computation.</li>
   1756   <li>llvmpipe: Fix bad refactoring.</li>
   1757   <li>llvmpipe: Initialize bld ctx via lp_build_context_init instead of ad-hoc and broken code.</li>
   1758   <li>gallivm: Comment lp_build_insert_new_block().</li>
   1759   <li>gallivm: Add a note about SSE4.1's nearest mode rounding.</li>
   1760   <li>llvmpipe: Don't test rounding of x.5 numbers.</li>
   1761   <li>gallium: Avoid using __doc__ in python scripts.</li>
   1762   <li>gallivm: always enable LLVMAddInstructionCombiningPass()</li>
   1763   <li>gallivm: Remove the EMMS opcodes.</li>
   1764   <li>mesa: Fix windows build (uint -&gt; GLuint).</li>
   1765   <li>scons: Revamp how to specify targets to build.</li>
   1766   <li>scons: Fix MinGW cross-compilation.</li>
   1767   <li>scons: Some pipe drivers are not portable for MSVC</li>
   1768   <li>scons: Restore x11 tool behavior for backwards compatability.</li>
   1769   <li>scons: Disable python state tracker when swig is not present.</li>
   1770   <li>r600g: List recently added files in SConscript.</li>
   1771   <li>scons: Add aliases for several pipe drivers.</li>
   1772   <li>scons: i915 can't build on MSVC either.</li>
   1773   <li>scons: Propagate installation targets.</li>
   1774   <li>xorg/vmwgfx: Add missing source file to SConscript.</li>
   1775   <li>st/xorg: Add missing n to error message.</li>
   1776   <li>st/xorg: Detect libkms with scons too.</li>
   1777   <li>xorg/vmwgfx: Link libkms when available.</li>
   1778   <li>r600g: Swap the util_blitter_destroy call order.</li>
   1779   <li>gallivm: Allocate TEMP/OUT arrays only once.</li>
   1780   <li>libgl-gdi: Allow to pick softpipe/llvmpipe on runtime.</li>
   1781   <li>scons: Use inline wrap helpers more consistently.</li>
   1782   <li>svga: Use consistent hexadecimal representation on debug output.</li>
   1783   <li>scons: Alias for svga</li>
   1784   <li>wgl: Stub WGL_ARB_pbuffer support.</li>
   1785   <li>wgl: More complete WGL_ARB_pbuffer support.</li>
   1786   <li>svga: Silence debug printf.</li>
   1787   <li>scons: Move MSVS_VERSION option to common module.</li>
   1788   <li>vega: Remove extraneous ;</li>
   1789   <li>retrace: Some fixes.</li>
   1790   <li>util: C++ safe.</li>
   1791   <li>wgl: Fix double free. Remove dead code.</li>
   1792   <li>util: Plug leaks in util_destroy_gen_mipmap.</li>
   1793   <li>util: __builtin_frame_address() doesn't work on mingw.</li>
   1794   <li>util: Don't try to use imagehlp on mingw.</li>
   1795   <li>wgl: Unreference the current framebuffer after the make_current call.</li>
   1796   <li>WIN32_THREADS -&gt; WIN32</li>
   1797   <li>mapi: Hack to avoid vgCreateFont being generated as vgCreateFontA.</li>
   1798   <li>wgl: Fix visual's buffer_mask configuration.</li>
   1799   <li>mesa: Temporary hack to prevent stack overflow on windows</li>
   1800   <li>mesa: Bump the number of bits in the register index.</li>
   1801   <li>llvmpipe: Plug fence leaks.</li>
   1802 </ul></p>
   1803 
   1804 <p>Julien Cristau (1):
   1805 <ul>
   1806   <li>Makefile: don't include the same files twice in the tarball</li>
   1807 </ul></p>
   1808 
   1809 <p>Keith Whitwell (89):
   1810 <ul>
   1811   <li>llvmpipe: brackets around macro arg</li>
   1812   <li>llvmpipe: remove duplicate code</li>
   1813   <li>llvmpipe: return zero from floor_pot(zero)</li>
   1814   <li>gallivm: make lp_build_sample_nop public</li>
   1815   <li>llvmpipe: add LP_PERF flag to disable various aspects of rasterization</li>
   1816   <li>llvmpipe: add DEBUG_FS to dump variant information</li>
   1817   <li>llvmpipe: use llvm for attribute interpolant calculation</li>
   1818   <li>graw: add frag-face shader</li>
   1819   <li>llvmpipe: fix flatshading in new line code</li>
   1820   <li>draw: don't apply flatshading to clipped tris with &lt3 verts</li>
   1821   <li>llvmpipe: handle FACING interpolants in line and point setup</li>
   1822   <li>llvmpipe: handle up to 8 planes in triangle binner</li>
   1823   <li>llvmpipe: make debug_fs_variant respect variant-&gt;nr_samplers</li>
   1824   <li>gallivm: don't apply zero lod_bias</li>
   1825   <li>llvmpipe: fail gracefully on oom in scene creation</li>
   1826   <li>llvmpipe: avoid overflow in triangle culling</li>
   1827   <li>gallivm: special case conversion 4x4f to 1x16ub</li>
   1828   <li>gallivm: round rather than truncate in new 4x4f-&gt;1x16ub conversion path</li>
   1829   <li>llvmpipe: clean up setup_tri a little</li>
   1830   <li>llvmpipe: add rast_tri_4_16 for small lines and points</li>
   1831   <li>llvmpipe: fix off-by-one in tri_16</li>
   1832   <li>llvmpipe: defer attribute interpolation until after mask and ztest</li>
   1833   <li>llvmpipe: use alloca for fs color outputs</li>
   1834   <li>llvmpipe: store zero into all alloca'd values</li>
   1835   <li>llvmpipe: dump fragment shader ir and asm when LP_DEBUG=fs</li>
   1836   <li>gallivm: specialized x8z24 depthtest path</li>
   1837   <li>gallivm: prefer blendvb for integer arguments</li>
   1838   <li>gallivm: simpler uint8-&gt;float conversions</li>
   1839   <li>llvmpipe: try to be sensible about whether to branch after mask updates</li>
   1840   <li>llvmpipe: clean up shader pre/postamble, try to catch more early-z</li>
   1841   <li>llvmpipe: simplified SSE2 swz/unswz routines</li>
   1842   <li>llvmpipe: try to do more of rast_tri_3_16 with intrinsics</li>
   1843   <li>llvmpipe: add debug helpers for epi32 etc</li>
   1844   <li>llvmpipe: try to keep plane c values small</li>
   1845   <li>llvmpipe: fix typo in last commit</li>
   1846   <li>gallium: move sse intrinsics debug helpers to u_sse.h</li>
   1847   <li>r600g: add missing file to sconscript</li>
   1848   <li>gallivm: don't branch on KILLs near end of shader</li>
   1849   <li>Revert "llvmpipe: try to keep plane c values small"</li>
   1850   <li>llvmpipe: make sure intrinsics code is guarded with PIPE_ARCH_SSE</li>
   1851   <li>llvmpipe: don't try to emit non-existent color outputs</li>
   1852   <li>r600/drm: fix segfaults in winsys create failure path</li>
   1853   <li>r600g: emit hardware linewidth</li>
   1854   <li>r600g: handle absolute modifier in shader translator</li>
   1855   <li>llvmpipe: reintroduce SET_STATE binner command</li>
   1856   <li>llvmpipe: don't pass frontfacing as a float</li>
   1857   <li>llvmpipe: slightly shrink the size of a binned triangle</li>
   1858   <li>llvmpipe: don't store plane.ei value in binned data</li>
   1859   <li>gallium: move some intrinsics helpers to u_sse.h</li>
   1860   <li>llvmpipe: do plane calculations with intrinsics</li>
   1861   <li>llvmpipe: use aligned loads/stores for plane values</li>
   1862   <li>llvmpipe: fix non-sse build after recent changes</li>
   1863   <li>llvmpipe: check shader outputs are non-null before using</li>
   1864   <li>llvmpipe: validate color outputs against key-&gt;nr_cbufs</li>
   1865   <li>llvmpipe: clean up fields in draw_llvm_variant_key</li>
   1866   <li>llvmpipe: remove setup fallback path</li>
   1867   <li>llvmpipe: fail cleanly on malloc failure in lp_setup_alloc_triangle</li>
   1868   <li>Merge remote branch 'origin/master' into lp-setup-llvm</li>
   1869   <li>llvmpipe: remove unused file</li>
   1870   <li>llvmpipe: remove unused arg from jit_setup_tri function</li>
   1871   <li>Merge branch 'llvm-cliptest-viewport'</li>
   1872   <li>draw: make sure viewport gets updated in draw llvm shader</li>
   1873   <li>llvmpipe: turn off draw offset/twoside when we can handle it</li>
   1874   <li>llvmpipe: avoid generating tri_16 for tris which extend past tile bounds</li>
   1875   <li>llvmpipe: guard against NULL task-&gt;query pointer</li>
   1876   <li>st/mesa: unbind constant buffer when not in use</li>
   1877   <li>r600g: propagate usage flags in texture transfers</li>
   1878   <li>r600g: propogate resource usage flags to winsys, use to choose bo domains</li>
   1879   <li>r600g: use a buffer in GTT as intermediate on texture up and downloads</li>
   1880   <li>r600g: remove unused flink, domain fields from r600_resource</li>
   1881   <li>r600g: set hardware pixel centers according to gl_rasterization_rules</li>
   1882   <li>evergreeng: protect against null constant buffers</li>
   1883   <li>r600g: don't call debug_get_bool_option for tiling more than once</li>
   1884   <li>evergreeng: respect linewidth state, use integer widths only</li>
   1885   <li>evergreeng: set hardware pixelcenters according to gl_rasterization_rules</li>
   1886   <li>r600g: avoid recursion with staged uploads</li>
   1887   <li>r600g: attempt to turn on DXTn formats</li>
   1888   <li>r600g: translate ARR instruction</li>
   1889   <li>r600: fix my pessimism about PIPE_TRANSFER_x flags</li>
   1890   <li>ws/r600: match bo_busy shared/fence logic in bo_wait</li>
   1891   <li>r600g: guard experimental s3tc code with R600_ENABLE_S3TC</li>
   1892   <li>r600g: do not try to use staging resource for depth textures</li>
   1893   <li>r600g: enforce minimum stride on render target texture images</li>
   1894   <li>llvmpipe: fix up twoside after recent changes</li>
   1895   <li>llvmpipe: twoside for specular color also</li>
   1896   <li>Merge branch 'lp-offset-twoside'</li>
   1897   <li>llvmpipe: raise dirty flag on transfers to bound constbuf</li>
   1898   <li>llvmpipe: remove misleading debug string</li>
   1899   <li>llvmpipe: shortcircuit some calls to set_scene_state</li>
   1900 </ul></p>
   1901 
   1902 <p>Kenneth Graunke (94):
   1903 <ul>
   1904   <li>glsl: Change from has_builtin_signature to has_user_signature.</li>
   1905   <li>glsl: Don't print blank (function ...) headers for built-ins.</li>
   1906   <li>glsl: Properly handle nested structure types.</li>
   1907   <li>glsl/builtins: Fix equal and notEqual builtins.</li>
   1908   <li>glsl/builtins: Switch comparison functions to just return an expression.</li>
   1909   <li>glsl: Add comments to clarify the types of comparison binops.</li>
   1910   <li>glsl: Fix broken handling of ir_binop_equal and ir_binop_nequal.</li>
   1911   <li>glsl: "Copyright", not "Constantright"</li>
   1912   <li>i965: Fix incorrect batchbuffer size in gen6 clip state command.</li>
   1913   <li>i965: Use logical-not when emitting ir_unop_ceil.</li>
   1914   <li>glsl: Add front-end support for the "trunc" built-in.</li>
   1915   <li>glsl: Refresh autogenerated file builtin_function.cpp.</li>
   1916   <li>i965: Use RNDZ for ir_unop_trunc in the new FS.</li>
   1917   <li>i965: Correctly emit the RNDZ instruction.</li>
   1918   <li>i965: Clean up a warning in the old fragment backend.</li>
   1919   <li>glsl: Add a new ir_unop_round_even opcode for GLSL 1.30's roundEven.</li>
   1920   <li>glsl: Add front-end support for GLSL 1.30's roundEven built-in.</li>
   1921   <li>i965: Add support for ir_unop_round_even via the RNDE instruction.</li>
   1922   <li>glsl: Add support for the 1.30 round() built-in.</li>
   1923   <li>glsl: Refresh autogenerated file builtin_function.cpp.</li>
   1924   <li>glsl: Don't return NULL IR for erroneous bit-shift operators.</li>
   1925   <li>i965: Add missing "break" statement.</li>
   1926   <li>glsl: Fix copy and paste error in ast_bit_and node creation.</li>
   1927   <li>glsl: Regenerate parser files.</li>
   1928   <li>i965: Remove unused variable.</li>
   1929   <li>glsl: Remove useless ir_shader enumeration value.</li>
   1930   <li>mesa: Remove FEATURE_ARB_shading_language_120 macro.</li>
   1931   <li>glcpp: Return NEWLINE token for newlines inside multi-line comments.</li>
   1932   <li>glcpp: Refresh autogenerated lexer file.</li>
   1933   <li>glsl: Add support for GLSL 1.30's modf built-in.</li>
   1934   <li>glsl: Refresh autogenerated file builtin_function.cpp.</li>
   1935   <li>generate_builtins.py: Output large strings as arrays of characters.</li>
   1936   <li>Refresh autogenerated file builtin_function.cpp.</li>
   1937   <li>glsl: Fix constant component count in vector constructor emitting.</li>
   1938   <li>Fix build on systems where "python" is python 3.</li>
   1939   <li>i965: Add bit operation support to the fragment shader backend.</li>
   1940   <li>glsl: Remove unused ARRAY_SIZE macro.</li>
   1941   <li>glsl/builtins: Rename 'x' to 'y_over_x' in atan(float) implementation.</li>
   1942   <li>glsl/builtins: Clean up some ugly autogenerated code in atan.</li>
   1943   <li>Refresh autogenerated file builtin_function.cpp.</li>
   1944   <li>glsl: Don't print a useless space at the end of an S-Expression list.</li>
   1945   <li>ir_reader: Return a specific ir_dereference variant.</li>
   1946   <li>ir_reader: Remove useless error check.</li>
   1947   <li>ir_reader: Fix some potential NULL pointer dereferences.</li>
   1948   <li>ir_dead_functions: Actually free dead functions and signatures.</li>
   1949   <li>glsl: Remove unnecessary "unused variable" warning suppression.</li>
   1950   <li>glsl: Remove GLSL_TYPE_FUNCTION define.</li>
   1951   <li>glsl: Convert glsl_type::base_type from #define'd constants to an enum.</li>
   1952   <li>glsl: Rework reserved word/keyword handling in the lexer.</li>
   1953   <li>glsl: Add new keywords and reserved words for GLSL 1.30.</li>
   1954   <li>glsl: Add support for the 'u' and 'U' unsigned integer suffixes.</li>
   1955   <li>glsl: Refresh autogenerated lexer and parser files.</li>
   1956   <li>generate_builtins.py: Fix inconsistent use of tabs and spaces warning.</li>
   1957   <li>glsl: Implement the asinh, acosh, and atanh built-in functions.</li>
   1958   <li>glsl: Refresh autogenerated file builtin_function.cpp.</li>
   1959   <li>glsl: Add constant expression handling for asinh, acosh, and atanh.</li>
   1960   <li>glsl: Remove unused and out of date Makefile.am.</li>
   1961   <li>glsl: Rename various ir_* files to lower_* and opt_*.</li>
   1962   <li>glcpp: Define GL_FRAGMENT_PRECISION_HIGH if GLSL version &gt;= 1.30.</li>
   1963   <li>Refresh autogenerated glcpp parser.</li>
   1964   <li>glsl: Fix constant expression handling for &lt, &gt;, &lt=, &gt;= on vectors.</li>
   1965   <li>glsl: Unconditionally define GL_FRAGMENT_PRECISION_HIGH in ES2 shaders.</li>
   1966   <li>Regenerate glcpp parser.</li>
   1967   <li>glsl: Reimplement the "cross" built-in without ir_binop_cross.</li>
   1968   <li>Refresh autogenerated file builtin_function.cpp.</li>
   1969   <li>glsl: Remove the ir_binop_cross opcode.</li>
   1970   <li>glsl: Refactor get_num_operands.</li>
   1971   <li>glsl: Simplify a type check by using type-&gt;is_integer().</li>
   1972   <li>glsl: Combine many instruction lowering passes into one.</li>
   1973   <li>mesa: Fix glGet of ES2's GL_MAX_*_VECTORS properties.</li>
   1974   <li>glsl: Don't inline function prototypes.</li>
   1975   <li>glsl: Use do_common_optimization in the standalone compiler.</li>
   1976   <li>glsl: Add a virtual as_discard() method.</li>
   1977   <li>glsl: Refactor out cloning of function prototypes.</li>
   1978   <li>glsl: Lazily import built-in function prototypes.</li>
   1979   <li>glsl: Remove anti-built-in hacks from the print visitor.</li>
   1980   <li>glsl/linker: Free any IR discarded by optimization passes.</li>
   1981   <li>glsl: Add an optimization pass to simplify discards.</li>
   1982   <li>glsl: Add a lowering pass to move discards out of if-statements.</li>
   1983   <li>glsl: Remove "discard" support from lower_jumps.</li>
   1984   <li>glsl: Add comments to lower_jumps (from the commit message).</li>
   1985   <li>ir_print_visitor: Print out constant structure values.</li>
   1986   <li>glsl: Factor out code which emits a new function into the IR stream.</li>
   1987   <li>symbol_table: Add support for adding a symbol at top-level/global scope.</li>
   1988   <li>glsl: Properly add functions during lazy built-in prototype importing.</li>
   1989   <li>glcpp: Don't emit SPACE tokens in conditional_tokens production.</li>
   1990   <li>Refresh autogenerated glcpp parser.</li>
   1991   <li>glsl: Clean up code by adding a new is_break() function.</li>
   1992   <li>glsl: Consider the "else" branch when looking for loop breaks.</li>
   1993   <li>Remove OES_compressed_paletted_texture from the ES2 extension list.</li>
   1994   <li>glsl/builtins: Compute the correct value for smoothstep(vec, vec, vec).</li>
   1995   <li>glsl: Support if-flattening beyond a given maximum nesting depth.</li>
   1996   <li>i965: Flatten if-statements beyond depth 16 on pre-gen6.</li>
   1997   <li>i965: Internally enable GL_NV_blend_square on ES2.</li>
   1998 </ul></p>
   1999 
   2000 <p>Kristian Hgsberg (16):
   2001 <ul>
   2002   <li>glx: Hold on to drawables if we're just switching to another context</li>
   2003   <li>intel: Fix GL_ARB_shading_language_120 commit</li>
   2004   <li>dri2: Make createImageFromName() take a __DRIscreen instead of __DRIcontext</li>
   2005   <li>glx: Invalidate buffers after binding a drawable</li>
   2006   <li>dri: Pass the __DRIscreen and the __DRIscreen private back to image lookup</li>
   2007   <li>glx: Only remove drawables from the hash when we actually delete them</li>
   2008   <li>gles2: Add GL_EXT_texture_format_BGRA8888 support</li>
   2009   <li>Get rid of GL/internal/glcore.h</li>
   2010   <li>gl: Remove unused GLcontextModes fields</li>
   2011   <li>Rename GLvisual and __GLcontextModes to struct gl_config</li>
   2012   <li>Drop GLframebuffer typedef and just use struct gl_framebuffer</li>
   2013   <li>Drop GLcontext typedef and use struct gl_context instead</li>
   2014   <li>Drop the "neutral" tnl module</li>
   2015   <li>Only install vtxfmt tables for OpenGL</li>
   2016   <li>i965: Don't write mrf assignment for pointsize output</li>
   2017   <li>docs: Fix MESA_drm_image typo</li>
   2018 </ul></p>
   2019 
   2020 <p>Krzysztof Smiechowicz (1):
   2021 <ul>
   2022   <li>nvfx: Pair os_malloc_aligned() with os_free_aligned().</li>
   2023 </ul></p>
   2024 
   2025 <p>Luca Barbieri (84):
   2026 <ul>
   2027   <li>auxiliary: fix unintended fallthrough</li>
   2028   <li>glsl: add pass to lower variable array indexing to conditional assignments</li>
   2029   <li>auxiliary: fix depth-only and stencil-only clears</li>
   2030   <li>gallium: avoid the C++ keyword "template" in sw_winsys.h</li>
   2031   <li>softpipe: make z/s test always pass if no zsbuf, instead of crashing</li>
   2032   <li>tgsi: add switch/case opcodes to tgsi_opcode_tmp.h</li>
   2033   <li>softpipe: fix whitespace</li>
   2034   <li>d3d1x: add new Direct3D 10/11 COM state tracker for Gallium</li>
   2035   <li>d3d1x: add blob and signature extraction APIs</li>
   2036   <li>d3d1x: fix compilation with recent Wine versions installed</li>
   2037   <li>d3d1x: add missing file</li>
   2038   <li>d3d1x: actually enable and fix blob apis</li>
   2039   <li>d3d1x: fix build with compilers other than GCC 4.5</li>
   2040   <li>d3d1x: add template parameters to base class ctor calls for GCC 4.4</li>
   2041   <li>d3d1x: fix GCC 4.1/4.2 build</li>
   2042   <li>d3d1x: ignore errors while building docs</li>
   2043   <li>d3d1x: attempt to fix/workaround bug #30322</li>
   2044   <li>nvfx: remove gl_PointCoord hack</li>
   2045   <li>glx: decouple dri2.c and GLX, fixing Gallium EGL and d3d1x build</li>
   2046   <li>winsys: automatically build sw winsys needed by EGL and d3d1x</li>
   2047   <li>d3d1x: don't build progs automatically</li>
   2048   <li>d3d1x: add missing memory barrier</li>
   2049   <li>d3d1x: link with CXXFLAGS</li>
   2050   <li>d3d1x: fix cf analysis</li>
   2051   <li>d3d1x: fix warning</li>
   2052   <li>d3d1x: fix segfault when hashing</li>
   2053   <li>d3d1x: destroy native_display on adapter destruction</li>
   2054   <li>d3d1x: fix GUID declarations</li>
   2055   <li>d3d1x: redesign the HWND resolver interface</li>
   2056   <li>d3d1x: fix API name</li>
   2057   <li>d3d1x: define GUIDs in the normal way</li>
   2058   <li>d3d1x: add Wine dlls (tri, tex working, but no other testing)</li>
   2059   <li>d3d1x: properly reference count the backend</li>
   2060   <li>d3d1x: fix deadlocks on non-recursive mutex</li>
   2061   <li>d3d1x: bind NULL CSOs before destroying default CSOs on context dtor</li>
   2062   <li>d3d1x: initialize the mutex</li>
   2063   <li>d3d1x: autogenerate shader enums and text from def files</li>
   2064   <li>d3d1x: s/tpf/sm4/g</li>
   2065   <li>d3d1x: normalize whitespace</li>
   2066   <li>d3d1x: remove specstrings</li>
   2067   <li>d3d1x: minifix</li>
   2068   <li>d3d1x: rename context params</li>
   2069   <li>d3d11: rename screen params</li>
   2070   <li>d3d1x: rename params in misc and objects</li>
   2071   <li>d3d1x: rename parameters in dxgi</li>
   2072   <li>d3d11: obliterate IDL parameter names</li>
   2073   <li>d3d1x: remove specstrings.h include</li>
   2074   <li>d3d1x: flush the pipe context when presenting</li>
   2075   <li>d3d1x: remove another include specstrings.h</li>
   2076   <li>d3d1x: flush properly</li>
   2077   <li>d3d1x: add missing guid.cpp</li>
   2078   <li>d3d1x: fix build without system EGL/egl.h</li>
   2079   <li>d3d1x: add autogenerated files as prerequisites, so make builds them</li>
   2080   <li>d3d1x: obliterate IDL parameter names from d3d10.idl from Wine too</li>
   2081   <li>d3d1x: add shader dumping</li>
   2082   <li>d3d1x: add untested support for geometry shader translation</li>
   2083   <li>d3d1x: don't assert on unsupported resource types</li>
   2084   <li>d3d1x: fix CheckMultisampleQualityLevels</li>
   2085   <li>d3d1x: draw to the correct buffer</li>
   2086   <li>d3d1x: fix linking of dxbc2tgsi</li>
   2087   <li>nvfx: allow setting NULL constant buffers</li>
   2088   <li>nvfx: add RGB framebuffer format support in addition to BGR</li>
   2089   <li>d3d1x: don't crash on drivers not supporting vertex or geometry sampling</li>
   2090   <li>d3d1x: assert if X visual is not among enumerated visuals</li>
   2091   <li>d3d1x: stop using GLX in demos, just use the default visual</li>
   2092   <li>d3d1x: CRLF -&gt; LF in progs</li>
   2093   <li>mesa: make makedepend an hard requirement</li>
   2094   <li>gallium: add $(PROGS_DEPS) as dependencies for $(PROGS)</li>
   2095   <li>d3d1x: fix parallel build</li>
   2096   <li>d3d1x: add private gitignore file</li>
   2097   <li>d3d1x: fix progs linking if not all EGL platforms are enabled</li>
   2098   <li>d3d1x: link progs with CXXFLAGS</li>
   2099   <li>d3d11: advertise IDXGIDevice1, not just IDXGIDevice</li>
   2100   <li>d3d11: ignore StructureByteStride</li>
   2101   <li>d3d1x: link to libdrm for X11 platform too</li>
   2102   <li>ureg: support centroid interpolation</li>
   2103   <li>d3d1x: support centroid interpolation</li>
   2104   <li>d3d1x: properly support specifying MipLevels as 0</li>
   2105   <li>d3d1x: put proper calling convention in headers, fixes 64-bit builds</li>
   2106   <li>d3d1x: rework DXGI for occlusion testing and default width/height</li>
   2107   <li>d3d1x: fix Map</li>
   2108   <li>d3d11: fix reference counting so devices get freed</li>
   2109   <li>d3d1x: work around crash in widl</li>
   2110   <li>glsl: Unroll loops with conditional breaks anywhere (not just the end)</li>
   2111 </ul></p>
   2112 
   2113 <p>Lucas Stach (1):
   2114 <ul>
   2115   <li>nvfx: fill PIPE_CAP_PRIMITIVE_RESTART and PIPE_CAP_SHADER_STENCIL_EXPORT</li>
   2116 </ul></p>
   2117 
   2118 <p>Marek Olk (100):
   2119 <ul>
   2120   <li>r300g: prevent creating multiple winsys BOs for the same handle</li>
   2121   <li>r300g/swtcl: fix CS overrun</li>
   2122   <li>st/mesa: fix assertion failure in GetTexImage for cubemaps</li>
   2123   <li>util: make calling remove_from_list multiple times in a row safe</li>
   2124   <li>r300g: fixup long-lived BO maps being incorrectly unmapped when flushing</li>
   2125   <li>r300g: make accessing map_list and buffer_handles thread-safe</li>
   2126   <li>r300g: fix a copy-paste typo for logging</li>
   2127   <li>r300g: fix the border color for every format other than PIPE_FORMAT_B8G8R8A8</li>
   2128   <li>Build r300g by default</li>
   2129   <li>util: fix util_pack_color for B4G4R4A4</li>
   2130   <li>r300g: fix macrotiling on R350</li>
   2131   <li>r300g: code cleanups</li>
   2132   <li>r300/compiler: fix projective mapping of 2D NPOT textures</li>
   2133   <li>r300/compiler: do not use copy propagation if SaturateMode is used</li>
   2134   <li>r300/compiler: fix shadow sampling with swizzled coords</li>
   2135   <li>r300g: add support for 3D NPOT textures without mipmapping</li>
   2136   <li>r300g: fix swizzling of texture border color</li>
   2137   <li>configure.ac: look for libdrm_radeon before building gallium/r300,r600</li>
   2138   <li>configure.ac: do not build xorg-r300g by default</li>
   2139   <li>Makefile: ensure Gallium's Makefile.xorg and SConscript.dri are in the tarball</li>
   2140   <li>r300g: add support for formats beginning with X, like X8R8G8B8</li>
   2141   <li>r300g: fix conditional rendering in non-wait path</li>
   2142   <li>r300g: add support for R8G8 colorbuffers</li>
   2143   <li>r300g: add support for L8A8 colorbuffers</li>
   2144   <li>update release notes for Gallium</li>
   2145   <li>r300g: fix microtiling for 16-bits-per-channel formats</li>
   2146   <li>r300g: do not print get_param errors in non-debug build</li>
   2147   <li>r300g: say no to PIPE_CAP_STREAM_OUTPUT and PIPE_CAP_PRIMITIVE_RESTART</li>
   2148   <li>mesa: allow FBO attachments of formats LUMINANCE, LUMINANCE_ALPHA, and INTENSITY</li>
   2149   <li>r300g: fix texture border for 16-bits-per-channel formats</li>
   2150   <li>st/mesa: support RGBA16 and use it for RGBA12 as well</li>
   2151   <li>r300g: add a default channel ordering of texture border for unhandled formats</li>
   2152   <li>r300g: mention ATI in the renderer string</li>
   2153   <li>r300g: rename has_hyperz -&gt; can_hyperz</li>
   2154   <li>r300g: turn magic numbers into names in the hyperz code</li>
   2155   <li>gallium: add CAPs for indirect addressing and lower it in st/mesa when needed</li>
   2156   <li>tgsi: fill out CAPs for indirect addressing</li>
   2157   <li>i915g: fill out CAPs for indirect addressing</li>
   2158   <li>i965g: fill out CAPs for indirect addressing</li>
   2159   <li>nv50: fill out CAPs for indirect addressing</li>
   2160   <li>nvfx: fill out CAPs for indirect addressing</li>
   2161   <li>r300g: fill out CAPs for indirect addressing</li>
   2162   <li>r600g: fill out CAPs for indirect addressing</li>
   2163   <li>svga: fill out CAPs for indirect addressing</li>
   2164   <li>r300g: fix texture border color for all texture formats</li>
   2165   <li>r300g: clean up redundancy in draw functions</li>
   2166   <li>r300g: return shader caps from Draw for SWTCL vertex shaders</li>
   2167   <li>r300g: remove the hack with OPCODE_RET</li>
   2168   <li>r300g: print FS inputs uninitialized due to hardware limits to stderr</li>
   2169   <li>r300g: fix rendering with no vertex elements</li>
   2170   <li>st/mesa: enable ARB_explicit_attrib_location and EXT_separate_shader_objects</li>
   2171   <li>docs: add GL 4.1 status</li>
   2172   <li>gallium: add PIPE_SHADER_CAP_SUBROUTINES</li>
   2173   <li>st/mesa: set MaxUniformComponents</li>
   2174   <li>u_blitter: use PIPE_TRANSFER_DISCARD to prevent cpu/gpu stall</li>
   2175   <li>r300/compiler: fix rc_rewrite_depth_out for it to work with any instruction</li>
   2176   <li>r300/compiler: remove duplicate function rc_mask_to_swz</li>
   2177   <li>r300/compiler: add a function for swizzling a mask</li>
   2178   <li>r300/compiler: move util functions to radeon_compiler_util</li>
   2179   <li>u_blitter: interpolate clear color using a GENERIC varying instead of COLOR</li>
   2180   <li>st/mesa: fix texture border color for RED and RG base formats</li>
   2181   <li>util: rename u_mempool -&gt; u_slab</li>
   2182   <li>r300g: fix texture border color once again</li>
   2183   <li>r300/compiler: implement and lower OPCODE_CLAMP</li>
   2184   <li>ir_to_mesa: Add support for conditional discards.</li>
   2185   <li>r300g: fix texture swizzling with compressed textures on r400-r500</li>
   2186   <li>r300g: disable ARB_texture_swizzle if S3TC is enabled on r3xx-only</li>
   2187   <li>r300g: fix up cubemap texture offset computation</li>
   2188   <li>r300/compiler: disable the swizzle lowering pass in vertex shaders</li>
   2189   <li>r300g: fix build</li>
   2190   <li>r300g: use internal BO handle for add_buffer and write_reloc</li>
   2191   <li>r300g: implement simple transfer_inline_write for buffers</li>
   2192   <li>mesa, st/mesa: fix gl_FragCoord with FBOs in Gallium</li>
   2193   <li>r300g: fix pointer arithmetic with void* in transfer_inline_write</li>
   2194   <li>r300g: do not remove unused constants if we are not near the limit</li>
   2195   <li>r300g: add capability bit index_bias_supported</li>
   2196   <li>r300g: one more r500_index_bias_supported leftover</li>
   2197   <li>r300g: do not use the index parameter in set_constant_buffer</li>
   2198   <li>r300g: cleanup winsys</li>
   2199   <li>r300g: optimize looping over atoms</li>
   2200   <li>st/mesa: initialize key in st_vp_varient</li>
   2201   <li>u_blitter: use util_is_format_compatible in the assert</li>
   2202   <li>r300g: cache packet dwords of 3D_LOAD_VBPNTR in a command buffer if possible</li>
   2203   <li>r300g: validate buffers only if any of bound buffers is changed</li>
   2204   <li>r300g: also revalidate the SWTCL vertex buffer after its reallocation</li>
   2205   <li>r300/compiler: don't terminate regalloc if we surpass max temps limit</li>
   2206   <li>r300/compiler: add a function to query program stats (alu, tex, temps..)</li>
   2207   <li>r300/compiler: cleanup rc_run_compiler</li>
   2208   <li>r300/compiler: do not print pair/tex/presub program stats for vertex shaders</li>
   2209   <li>r300/compiler: handle DPH and XPD in rc_compute_sources_for_writemask</li>
   2210   <li>r300/compiler: make lowering passes possibly use up to two less temps</li>
   2211   <li>r300/compiler: remove at least unused immediates if externals cannot be removed</li>
   2212   <li>r300/compiler: fix LIT in VS</li>
   2213   <li>r300/compiler: fix swizzle lowering with a presubtract source operand</li>
   2214   <li>r300g: fix rendering with a vertex attrib having a zero stride</li>
   2215   <li>r300g: finally fix the texture corruption on r3xx-r4xx</li>
   2216   <li>r300g/swtcl: re-enable LLVM</li>
   2217   <li>r300g: mark vertex arrays as dirty after a buffer_offset change</li>
   2218   <li>mesa: fix texel store functions for some float formats</li>
   2219   <li>r300/compiler: disable the rename_regs pass for loops</li>
   2220 </ul></p>
   2221 
   2222 <p>Mario Kleiner (1):
   2223 <ul>
   2224   <li>mesa/r300classic: Fix dri2Invalidate/radeon_prepare_render for page flipping.</li>
   2225 </ul></p>
   2226 
   2227 <p>Mathias Frhlich (3):
   2228 <ul>
   2229   <li>r300g: Avoid returning values in a static array, fixing a potential race</li>
   2230   <li>r600g: Only compare active vertex elements</li>
   2231   <li>st/mesa: Set PIPE_TRANSFER_DISCARD for GL_MAP_INVALIDATE_RANGE/BUFFFER_BIT</li>
   2232 </ul></p>
   2233 
   2234 <p>Michal Krol (10):
   2235 <ul>
   2236   <li>svga: Fix relative addressing translation for pixel shaders.</li>
   2237   <li>svga: Integer constant register file has a separate namespace.</li>
   2238   <li>tgsi/exec: Cleanup the remaining arithmetic instructions.</li>
   2239   <li>tgsi/exec: Get rid of obsolete condition codes.</li>
   2240   <li>tgsi/build: Reduce interface clutter.</li>
   2241   <li>graw/gdi: Initial commit.</li>
   2242   <li>scons: Hook-up graw-gdi target.</li>
   2243   <li>graw/gdi: Fix window dimensions.</li>
   2244   <li>os: Open file streams in binary mode.</li>
   2245   <li>graw: Export graw_save_surface_to_file().</li>
   2246 </ul></p>
   2247 
   2248 <p>Nicolas Kaiser (26):
   2249 <ul>
   2250   <li>swrast: remove duplicated include</li>
   2251   <li>egl: remove duplicated include</li>
   2252   <li>gallium/rtasm: remove duplicated include</li>
   2253   <li>gallium/util: remove duplicated include</li>
   2254   <li>gallium/i915: remove duplicated include</li>
   2255   <li>gallium/llvmpipe: remove duplicated include</li>
   2256   <li>gallium/softpipe: remove duplicated include</li>
   2257   <li>gallium/st: remove duplicated includes</li>
   2258   <li>gallium/winsys: remove duplicated include</li>
   2259   <li>glx: remove duplicated include</li>
   2260   <li>dri/common: remove duplicated include</li>
   2261   <li>dri/i810: remove duplicated include</li>
   2262   <li>dri/i915: remove duplicated include</li>
   2263   <li>dri/i965: remove duplicated include</li>
   2264   <li>dri/intel: remove duplicated include</li>
   2265   <li>dri/mga: remove duplicated include</li>
   2266   <li>dri/r128: remove duplicated include</li>
   2267   <li>dri/r300: remove duplicated include</li>
   2268   <li>dri/r600: remove duplicated include</li>
   2269   <li>dri/radeon: remove duplicated includes</li>
   2270   <li>dri/savage: remove duplicated include</li>
   2271   <li>main: remove duplicated includes</li>
   2272   <li>math: remove duplicated includes</li>
   2273   <li>st: remove duplicated include</li>
   2274   <li>i965g: use Elements macro instead of manual sizeofs</li>
   2275   <li>nv50: fix always true conditional in shader optimization</li>
   2276 </ul></p>
   2277 
   2278 <p>Orion Poplawski (1):
   2279 <ul>
   2280   <li>osmesa: link against libtalloc</li>
   2281 </ul></p>
   2282 
   2283 <p>Owen W. Taylor (1):
   2284 <ul>
   2285   <li>r600g: Fix location for clip plane registers</li>
   2286 </ul></p>
   2287 
   2288 <p>Peter Clifton (3):
   2289 <ul>
   2290   <li>intel: Fix emit_linear_blit to use DWORD aligned width blits</li>
   2291   <li>intel: Add assert check for blitting alignment.</li>
   2292   <li>meta: Mask Stencil.Clear against stencilMax in _mesa_meta_Clear</li>
   2293 </ul></p>
   2294 
   2295 <p>Robert Hooker (2):
   2296 <ul>
   2297   <li>intel: Add a new B43 pci id.</li>
   2298   <li>egl_dri2: Add missing intel chip ids.</li>
   2299 </ul></p>
   2300 
   2301 <p>Roland Scheidegger (16):
   2302 <ul>
   2303   <li>gallivm: fix copy&amp;paste bug</li>
   2304   <li>gallivm: don't use URem/UDiv when calculating offsets for blocks</li>
   2305   <li>gallivm: optimize yuv decoding</li>
   2306   <li>gallivm: fix trunc/itrunc comment</li>
   2307   <li>gallivm: faster iround implementation for sse2</li>
   2308   <li>gallivm: replace sub/floor/ifloor combo with ifloor_fract</li>
   2309   <li>gallivm: optimize some tex wrap mode calculations a bit</li>
   2310   <li>gallivm: more linear tex wrap mode calculation simplification</li>
   2311   <li>gallivm: avoid unnecessary URem in linear wrap repeat case</li>
   2312   <li>gallivm: optimize soa linear clamp to edge wrap mode a bit</li>
   2313   <li>gallivm: make use of new iround code in lp_bld_conv.</li>
   2314   <li>gallivm: fix different handling of [non]normalized coords in linear soa path</li>
   2315   <li>gallivm: only use lp_build_conv 4x4f -&gt; 1x16 ub fastpath with sse2</li>
   2316   <li>r200: fix r200 large points</li>
   2317   <li>mesa: remove unneeded DD_POINT_SIZE and DD_LINE_WIDTH tricaps</li>
   2318   <li>gallium: support for array textures and related changes</li>
   2319 </ul></p>
   2320 
   2321 <p>Shuang He (1):
   2322 <ul>
   2323   <li>mesa: allow GLfixed arrays for OpenGL ES 2.0</li>
   2324 </ul></p>
   2325 
   2326 <p>Stephan Schmid (1):
   2327 <ul>
   2328   <li>r600g: fix relative addressing when splitting constant accesses</li>
   2329 </ul></p>
   2330 
   2331 <p>Thomas Hellstrom (21):
   2332 <ul>
   2333   <li>st/xorg: Don't try to use option values before processing options</li>
   2334   <li>xorg/vmwgfx: Make vmwarectrl work also on 64-bit servers</li>
   2335   <li>st/xorg: Add a customizer option to get rid of annoying cursor update flicker</li>
   2336   <li>xorg/vmwgfx: Don't hide HW cursors when updating them</li>
   2337   <li>st/xorg: Don't try to remove invalid fbs</li>
   2338   <li>st/xorg: Fix typo</li>
   2339   <li>st/xorg, xorg/vmwgfx: Be a bit more frendly towards cross-compiling environments</li>
   2340   <li>st/xorg: Fix compilation errors for Xservers compiled without Composite</li>
   2341   <li>st/xorg: Don't use deprecated x*alloc / xfree functions</li>
   2342   <li>xorg/vmwgfx: Don't use deprecated x*alloc / xfree functions</li>
   2343   <li>st/xorg: Fix compilation for Xservers &gt;= 1.10</li>
   2344   <li>mesa: Make sure we have the talloc cflags when using the talloc headers</li>
   2345   <li>egl: Add an include for size_t</li>
   2346   <li>mesa: Add talloc includes for gles</li>
   2347   <li>st/egl: Fix build for include files in nonstandard places</li>
   2348   <li>svga/drm: Optionally resolve calls to powf during link-time</li>
   2349   <li>gallium/targets: Trivial crosscompiling fix</li>
   2350   <li>st/xorg: Add a function to flush pending rendering and damage</li>
   2351   <li>gallium/targets/xorg-vmwgfx: Xv fixes</li>
   2352   <li>xorg/vmwgfx: Flush even if we don't autopaint the color key</li>
   2353   <li>xorg/vmwgfx: Don't clip video to viewport</li>
   2354 </ul></p>
   2355 
   2356 <p>Tilman Sauerbeck (35):
   2357 <ul>
   2358   <li>r600g: Fixed a bo leak in r600_blit_state_ps_shader().</li>
   2359   <li>r600g: Use clamped math for RCP and RSQ.</li>
   2360   <li>r600g: Formatting fixes.</li>
   2361   <li>r600g: Added DB_SHADER_CONTROL defines.</li>
   2362   <li>r600g: Only set PA_SC_EDGERULE on rv770 and greater.</li>
   2363   <li>r600g: Enable PIPE_SHADER_CAP_TGSI_CONT_SUPPORTED.</li>
   2364   <li>r600g: Fixed the shift in S_02880C_KILL_ENABLE.</li>
   2365   <li>glsl2: Empty functions can be inlined.</li>
   2366   <li>glsl2: Fixed cloning of ir_call error instructions.</li>
   2367   <li>r600g: Added support for TGSI_SEMANTIC_FACE.</li>
   2368   <li>gallium/docs: Fixed a typo in the SCS opcode description.</li>
   2369   <li>r600g: Honour destination operand's writemask in the SCS implementation.</li>
   2370   <li>r600g: Implemented the Z and W component write for the SCS opcode.</li>
   2371   <li>python/tests: Fixed tri.py for API and TGSI syntax changes.</li>
   2372   <li>r600g: Removed debug code.</li>
   2373   <li>gallium/docs: The RET opcode may appear anywhere in a subroutine.</li>
   2374   <li>r600g: Destroy the blitter.</li>
   2375   <li>r600g: Fixed two texture surface leaks in r600_blit_uncompress_depth().</li>
   2376   <li>r600g: Cleaned up index buffer reference handling in the draw module.</li>
   2377   <li>r600g: Fixed r600_vertex_element leak.</li>
   2378   <li>r600g: Added r600_pipe_shader_destroy().</li>
   2379   <li>r600g: Also clear bc data when we're destroying a shader.</li>
   2380   <li>r600g: In radeon_bo(), call LIST_INITHEAD early.</li>
   2381   <li>r600g: Destroy the blitter.</li>
   2382   <li>r600g: Removed unused 'ptr' argument from radeon_bo().</li>
   2383   <li>r600g: Made radeon_bo_pb_map_internal() actually call radeon_bo_map().</li>
   2384   <li>r600g: Fixed unmap condition in radeon_bo_pb_destroy().</li>
   2385   <li>r600g: Made radeon_bo::map_count signed.</li>
   2386   <li>r600g: We don't support PIPE_CAP_PRIMITIVE_RESTART.</li>
   2387   <li>r600g: Delete custom_dsa_flush on shutdown.</li>
   2388   <li>r600g: Fixed two memory leaks in winsys.</li>
   2389   <li>r600g: Destroy the winsys in r600_destroy_screen().</li>
   2390   <li>st/mesa: Reset the index buffer before destroying the pipe context.</li>
   2391   <li>st/mesa: Reset the constant buffers before destroying the pipe context.</li>
   2392   <li>r600g: Removed duplicated call to tgsi_split_literal_constant().</li>
   2393 </ul></p>
   2394 
   2395 <p>Timo Wiren (1):
   2396 <ul>
   2397   <li>Fix typos in comments and debug output strings.</li>
   2398 </ul></p>
   2399 
   2400 <p>Tom Fogal (3):
   2401 <ul>
   2402   <li>Implement x86_64 atomics for compilers w/o intrinsics.</li>
   2403   <li>Prefer intrinsics to handrolled atomic ops.</li>
   2404   <li>Revert "Prefer intrinsics to handrolled atomic ops."</li>
   2405 </ul></p>
   2406 
   2407 <p>Tom Stellard (32):
   2408 <ul>
   2409   <li>r300/compiler: Refactor the pair instruction data structures</li>
   2410   <li>r300g: Always try to build libr300compiler.a</li>
   2411   <li>r300/compiler: Fix two mistakes in the presubtract optimization pass.</li>
   2412   <li>r300/compiler: Add more helper functions for iterating through sources</li>
   2413   <li>r300/compiler: Print immediate values after "dead constants" pass</li>
   2414   <li>r300/compiler: radeon_remove_constants.c: fix indentation</li>
   2415   <li>r300/compiler: Use rc_for_all_reads_src() in "dead constants" pass</li>
   2416   <li>r300/compiler: Fix segfault in error path</li>
   2417   <li>r300/compiler: Don't use rc_error() unless the error is unrecoverable</li>
   2418   <li>r300/compiler: Don't merge instructions that write output regs and ALU result</li>
   2419   <li>r300/compiler: Create a helper function for merging presubtract sources</li>
   2420   <li>r300/compiler: Fix incorrect assumption</li>
   2421   <li>r300/compiler: Clear empty registers after constant folding</li>
   2422   <li>r300/compiler: Add a new function for more efficient dataflow analysis</li>
   2423   <li>r300g: Add new debug option for logging vertex/fragment program stats</li>
   2424   <li>r300/compiler: Use rc_get_readers_normal() for presubtract optimizations</li>
   2425   <li>r300/compiler: Don't clobber presubtract sources during optimizations</li>
   2426   <li>r300/compiler: Don't track readers into an IF block.</li>
   2427   <li>r300/compiler: Make sure presubtract sources use supported swizzles</li>
   2428   <li>r300/compiler: Fix register allocator's handling of loops</li>
   2429   <li>r300/compiler: Fix instruction scheduling within IF blocks</li>
   2430   <li>r300/compiler: Use zero as the register index for unused sources</li>
   2431   <li>r300/compiler: Ignore alpha dest register when replicating the result</li>
   2432   <li>r300/compiler: Add rc_get_readers()</li>
   2433   <li>r300/compiler: Handle BREAK and CONTINUE in rc_get_readers()</li>
   2434   <li>r300/compiler: Track readers through branches in rc_get_readers()</li>
   2435   <li>r300/compiler: Convert RGB to alpha in the scheduler</li>
   2436   <li>r300/compiler: Use presubtract operations as much as possible</li>
   2437   <li>r300/compiler: Enable rename_reg pass for r500 cards</li>
   2438   <li>r300/compiler: Add a more efficient version of rc_find_free_temporary()</li>
   2439   <li>r300/compiler: Don't allow presubtract sources to be remapped twice</li>
   2440   <li>r300/compiler: Fix black terrain in Civ4</li>
   2441 </ul></p>
   2442 
   2443 <p>Victor Tseng (1):
   2444 <ul>
   2445   <li>egl/i965: include inline_wrapper_sw_helper.h</li>
   2446 </ul></p>
   2447 
   2448 <p>Viktor Novotn (6):
   2449 <ul>
   2450   <li>dri/nouveau: Import headers from rules-ng-ng</li>
   2451   <li>dri/nouveau: nv04: Use rules-ng-ng headers</li>
   2452   <li>dri/nouveau: nv10: Use rules-ng-ng headers</li>
   2453   <li>dri/nouveau nv20: Use rules-ng-ng headers</li>
   2454   <li>dri/nouveau: Remove nouveau_class.h, finishing switch to rules-ng-ng headers</li>
   2455   <li>dri/nouveau: Clean up magic numbers in get_rt_format</li>
   2456 </ul></p>
   2457 
   2458 <p>Vinson Lee (214):
   2459 <ul>
   2460   <li>llvmpipe: Remove unnecessary header.</li>
   2461   <li>r600g: Remove unnecessary headers.</li>
   2462   <li>mesa: Include missing header in program.h.</li>
   2463   <li>glsl: Fix 'format not a string literal and no format arguments' warning.</li>
   2464   <li>r600g: Silence uninitialized variable warning.</li>
   2465   <li>r600g: Silence uninitialized variable warning.</li>
   2466   <li>nvfx: Silence uninitialized variable warnings.</li>
   2467   <li>r600g: Silence uninitialized variable warning.</li>
   2468   <li>r600g: Silence uninitialized variable warning.</li>
   2469   <li>r600g: Silence uninitialized variable warning.</li>
   2470   <li>r600g: Silence unused variable warning.</li>
   2471   <li>nv50: Update files in SConscript to match Makefile.</li>
   2472   <li>nv50: Remove unnecessary headers.</li>
   2473   <li>nv50: Silence uninitialized variable warning.</li>
   2474   <li>nv50: Silence uninitialized variable warning.</li>
   2475   <li>nv50: Silence uninitialized variable warning.</li>
   2476   <li>gallivm: Remove unnecessary headers.</li>
   2477   <li>draw: Remove unnecessary header.</li>
   2478   <li>nv50: Silence uninitialized variable warnings.</li>
   2479   <li>nv50: Fix 'control reaches end of non-void function' warning.</li>
   2480   <li>mesa/st: Silence uninitialized variable warning.</li>
   2481   <li>gallivm: Remove unnecessary header.</li>
   2482   <li>r600g: Remove unnecessary header.</li>
   2483   <li>r600g: Remove unnecessary headers.</li>
   2484   <li>r600g: Fix implicit declaration warning.</li>
   2485   <li>r600g: Fix memory leak on error path.</li>
   2486   <li>r600g: Silence uninitialized variable warning.</li>
   2487   <li>r600g: Silence unused variable warnings.</li>
   2488   <li>mesa: bump version to 7.10</li>
   2489   <li>ir_to_mesa: Remove unused member array_indexed from struct statevar_element.</li>
   2490   <li>mesa: Silence "'valid_texture_object' defined but not used" warning.</li>
   2491   <li>x86: Silence unused variable warning on Mac OS X.</li>
   2492   <li>glsl: Fix 'control reaches end of non-void function' warning.</li>
   2493   <li>nvfx: Remove const qualifer from nvfx_vertprog_translate.</li>
   2494   <li>nvfx: Silence uninitialized variable warnings.</li>
   2495   <li>r600g: Remove unused variable.</li>
   2496   <li>nv50: Silence missing initializer warning.</li>
   2497   <li>nv50: Remove dead initialization.</li>
   2498   <li>nv50: Remove dead initialization.</li>
   2499   <li>tgsi: Remove duplicate case value.</li>
   2500   <li>glut: Define markWindowHidden for non-Windows only.</li>
   2501   <li>glut: Define eventParser for non-Windows only.</li>
   2502   <li>r300g: Silence uninitialized variable warning.</li>
   2503   <li>intel: Fix implicit declaration of function '_mesa_meta_Bitmap' warning.</li>
   2504   <li>mesa: Remove unnecessary headers.</li>
   2505   <li>r600g: Remove unnecessary header.</li>
   2506   <li>unichrome: Remove unnecessary header.</li>
   2507   <li>intel: Remove unnecessary headers.</li>
   2508   <li>r600g: Remove unused variable.</li>
   2509   <li>r600g: Disable unused variables.</li>
   2510   <li>r600g: Remove unused variable.</li>
   2511   <li>r600g: Silence 'control reaches end of non-void function' warning.</li>
   2512   <li>r600g: Remove unused variable.</li>
   2513   <li>r600g: Remove unused variable.</li>
   2514   <li>r600g: Disable unused variables.</li>
   2515   <li>intel: Remove unnecessary header.</li>
   2516   <li>st/dri: Remove unnecessary header.</li>
   2517   <li>r600g: Remove unused variable.</li>
   2518   <li>r300g: Remove unused variable.</li>
   2519   <li>r600g: Don't return a value in function returning void.</li>
   2520   <li>r600g: Remove unused variables.</li>
   2521   <li>r600g: Include p_compiler.h instead of malloc.h.</li>
   2522   <li>r600g: Silence uninitialized variable warnings.</li>
   2523   <li>scons: Add MinGW-w64 prefixes for MinGW build.</li>
   2524   <li>dri: Add GET_PROGRAM_NAME definition for Mac OS X.</li>
   2525   <li>scons: Add program/sampler.cpp to SCons build.</li>
   2526   <li>mesa: Fix printf format warning.</li>
   2527   <li>mesa: Fix printf format warning.</li>
   2528   <li>mesa: Fix printf format warning.</li>
   2529   <li>r300/compiler: Move declaration before code.</li>
   2530   <li>r300/compiler: Move declaration before code.</li>
   2531   <li>r300/compiler: Move declaration before code.</li>
   2532   <li>r300/compiler: Move declaration before code.</li>
   2533   <li>r600g: Update SConscript.</li>
   2534   <li>r300/compiler: Move declaration before code.</li>
   2535   <li>r600g: Update SConscript.</li>
   2536   <li>r300/compiler: Move declaration before code.</li>
   2537   <li>r600g: Update SConscript.</li>
   2538   <li>r300/compiler: Move declaration before code.</li>
   2539   <li>r600g: Fix SCons build.</li>
   2540   <li>r300/compiler: Move declaration before code.</li>
   2541   <li>r300/compiler: Move declaration before code.</li>
   2542   <li>r300/compiler: Move declaration before code.</li>
   2543   <li>r300/compiler: Remove declaration before code.</li>
   2544   <li>r300/compiler: Move declaration before code.</li>
   2545   <li>r300/compiler: Move declaration before code.</li>
   2546   <li>r300/compiler: Move declaration before code.</li>
   2547   <li>r300/compiler: Move declaration before code.</li>
   2548   <li>glsl: Remove unnecessary header.</li>
   2549   <li>savage: Remove unnecessary header.</li>
   2550   <li>r600g: Remove unused variable.</li>
   2551   <li>r600g: Remove unnecessary headers.</li>
   2552   <li>r600g: Fix SCons build.</li>
   2553   <li>r600g: Remove unnecessary header.</li>
   2554   <li>gallivm: Remove unnecessary header.</li>
   2555   <li>r600g: Silence uninitialized variable warning.</li>
   2556   <li>r600g: Silence uninitialized variable warning.</li>
   2557   <li>r600g: Silence uninitialized variable warning.</li>
   2558   <li>i915: Silence unused variable warning in non-debug builds.</li>
   2559   <li>i915: Silence unused variable warning in non-debug builds.</li>
   2560   <li>i965: Silence unused variable warning on non-debug builds.</li>
   2561   <li>i965: Silence unused variable warning on non-debug builds.</li>
   2562   <li>i965: Initialize member variables.</li>
   2563   <li>r300: Silence uninitialized variable warning.</li>
   2564   <li>tdfx: Silence unused variable warning on non-debug builds.</li>
   2565   <li>gallivm: Remove unnecessary header.</li>
   2566   <li>glsl: Initialize variable in ir_derefence_array::constant_expression_value</li>
   2567   <li>mesa: Add missing header to shaderobj.h.</li>
   2568   <li>llvmpipe: Return non-zero exit code for lp_test_round failures.</li>
   2569   <li>r300/compiler: Remove unused variable.</li>
   2570   <li>st/xorg: Fix memory leak on error path.</li>
   2571   <li>llvmpipe: Initialize state variable in debug_bin function.</li>
   2572   <li>llvmpipe: Initialize variable.</li>
   2573   <li>draw: Move loop variable declaration outside for loop.</li>
   2574   <li>r600g: Ensure r600_src is initialized in tgsi_exp function.</li>
   2575   <li>glsl: Add assert for unhandled ir_shader case.</li>
   2576   <li>swrast: Print out format on unexpected failure in _swrast_DrawPixels.</li>
   2577   <li>llvmpipe: Remove unnecessary header.</li>
   2578   <li>draw: Remove unnecessary header.</li>
   2579   <li>gallivm: Silence uninitialized variable warnings.</li>
   2580   <li>gallivm: Silence uninitialized variable warnings.</li>
   2581   <li>gallivm: Silence uninitialized variable warning.</li>
   2582   <li>r300g: Silence uninitialized variable warning.</li>
   2583   <li>mesa: Remove unnecessary headers.</li>
   2584   <li>r600g: Silence uninitialized variable warnings.</li>
   2585   <li>st/mesa: Remove unnecessary header.</li>
   2586   <li>mesa: Remove unnecessary header.</li>
   2587   <li>egl: Remove unnecessary headers.</li>
   2588   <li>swrast: Print out format on unexpected failure in _swrast_ReadPixels.</li>
   2589   <li>st/mesa: Silence uninitialized variable warning.</li>
   2590   <li>savage: Remove unnecessary header.</li>
   2591   <li>st/vega: Remove unnecessary headers.</li>
   2592   <li>dri/nouveau: Silence uninitialized variable warning.</li>
   2593   <li>r300/compiler: Move declaration before code.</li>
   2594   <li>r300/compiler: Move declaration before code.</li>
   2595   <li>i965: Silence uninitialized variable warning.</li>
   2596   <li>i965: Silence uninitialized variable warning.</li>
   2597   <li>mesa: Clean up header file inclusion in accum.h.</li>
   2598   <li>mesa: Clean up header file inclusion in version.h.</li>
   2599   <li>mesa: Clean up header file inclusion in api_loopback.h.</li>
   2600   <li>mesa: Clean up header file inclusion in api_validate.h.</li>
   2601   <li>mesa: Include mfeatures.h in api_loopback for FEATURE_beginend.</li>
   2602   <li>mesa: Include mfeatures.h in api_validate.c for FEATURE_* symbols.</li>
   2603   <li>mesa: Clean up header file inclusion in arrayobj.h.</li>
   2604   <li>mesa: Clean up header file inclusion in atifragshader.h.</li>
   2605   <li>mesa: Clean up header file inclusion in attrib.h.</li>
   2606   <li>mesa: Clean up header file inclusion in blend.h.</li>
   2607   <li>mesa: Clean up header file inclusion in buffers.h.</li>
   2608   <li>mesa: Clean up header file inclusion in colortab.h.</li>
   2609   <li>mesa: Clean up header file inclusion in convolve.h.</li>
   2610   <li>mesa: Clean up header file inclusion in debug.h.</li>
   2611   <li>mesa: Clean up header file inclusion in depth.h.</li>
   2612   <li>mesa: Clean up header file inclusion in depthstencil.h.</li>
   2613   <li>mesa: Clean up header file inclusion in drawpix.h.</li>
   2614   <li>mesa: Clean up header file inclusion in drawtex.h.</li>
   2615   <li>mesa: Clean up header file inclusion in enable.h.</li>
   2616   <li>mesa: Clean up header file inclusion in extensions.h.</li>
   2617   <li>graw: Add struct pipe_surface forward declaration.</li>
   2618   <li>mesa: Clean up header file inclusion in fbobject.h.</li>
   2619   <li>mesa: Clean up header file inclusion in ffvertex_prog.h.</li>
   2620   <li>mesa: Clean up header file inclusion in fog.h.</li>
   2621   <li>mesa: Clean up header file inclusion in framebuffer.h.</li>
   2622   <li>mesa: Clean up header file inclusion in hint.h.</li>
   2623   <li>mesa: Clean up header file inclusion in histogram.h.</li>
   2624   <li>mesa: Clean up header file inclusion in image.h.</li>
   2625   <li>mesa: Add missing header and forward declarations in dd.h.</li>
   2626   <li>mesa: Clean up header file inclusion in light.h.</li>
   2627   <li>mesa: Clean up header file inclusion in lines.h.</li>
   2628   <li>mesa: Clean up header file inclusion in matrix.h.</li>
   2629   <li>mesa: Clean up header file inclusion in multisample.h.</li>
   2630   <li>mesa: Clean up header file inclusion in nvprogram.h.</li>
   2631   <li>winsys/xlib: Add cygwin to SConscript.</li>
   2632   <li>mesa: Clean up header file inclusion in pixel.h.</li>
   2633   <li>mesa: Clean up header file inclusion in pixelstore.h.</li>
   2634   <li>mesa: Fix printf format warnings.</li>
   2635   <li>mesa: Clean up header file inclusion in points.h.</li>
   2636   <li>i965: Silence uninitialized variable warning.</li>
   2637   <li>glsl: Add ir_constant_expression.cpp to SConscript.</li>
   2638   <li>mesa: Add definitions for inverse hyperbolic function on MSVC.</li>
   2639   <li>glsl: Fix 'control reaches end of non-void function' warning.</li>
   2640   <li>glsl: Add lower_vector.cpp to SConscript.</li>
   2641   <li>glsl: Fix type of label 'default' in switch statement.</li>
   2642   <li>st/mesa: Remove unnecessary headers.</li>
   2643   <li>swrast: Remove unnecessary header.</li>
   2644   <li>r600: Remove unnecesary header.</li>
   2645   <li>intel: Remove unnecessary header.</li>
   2646   <li>mesa: Clean up header file inclusion in polygon.h.</li>
   2647   <li>mesa: Clean up header file inclusion in rastpos.h.</li>
   2648   <li>mesa: Clean up header file inclusion in readpix.h.</li>
   2649   <li>mesa: Clean up header file inclusion in renderbuffer.h.</li>
   2650   <li>mesa: Clean up header file inclusion in scissor.h.</li>
   2651   <li>mesa: Clean up header file inclusion in shaderapi.h.</li>
   2652   <li>mesa: Clean up header file inclusion in shared.h.</li>
   2653   <li>mesa: Clean up header file inclusion in stencil.h.</li>
   2654   <li>r600: Remove unnecessary header.</li>
   2655   <li>llvmpipe: Remove unnecessary headers.</li>
   2656   <li>mesa: Clean up header file inclusion in syncobj.h.</li>
   2657   <li>r300/compiler: Move declaration before code.</li>
   2658   <li>r300/compiler: Move declaration before code.</li>
   2659   <li>mesa: Clean up header file inclusion in texcompress.h.</li>
   2660   <li>st/vega: Silence uninitialized variable warning.</li>
   2661   <li>mesa: Clean up header file inclusion in texcompress_s3tc.h.</li>
   2662   <li>mesa: Clean up header file inclusion in texenvprogram.h.</li>
   2663   <li>mesa: Clean up header file inclusion in texformat.h.</li>
   2664   <li>mesa: Clean up header file inclusion in texgetimage.h.</li>
   2665   <li>mesa: Clean up header file inclusion in texobj.h.</li>
   2666   <li>gallium/noop: Add prototype for noop_init_state_functions.</li>
   2667   <li>mesa: Clean up header file inclusion in texrender.h.</li>
   2668   <li>mesa: Clean up header file inclusion in transformfeedback.h.</li>
   2669   <li>mesa: Clean up header file inclusion in varray.h.</li>
   2670   <li>mesa: Clean up header file inclusion in viewport.h.</li>
   2671   <li>r200: Silence uninitialized variable warning.</li>
   2672   <li>r600g: Fix SCons build.</li>
   2673   <li>i965: Silence uninitialized variable warning.</li>
   2674 </ul></p>
   2675 
   2676 <p>Xavier Chantry (8):
   2677 <ul>
   2678   <li>nv50: fix size of outputs_written array</li>
   2679   <li>nv50: apply layout_mask to tile_flags</li>
   2680   <li>nvfx: only expose one rt on nv30</li>
   2681   <li>nvfx: fb-&gt;nr_cbufs &lt= 1 on nv30</li>
   2682   <li>nvfx: reset nvfx-&gt;hw_zeta</li>
   2683   <li>nvfx: fixes after array textures merge</li>
   2684   <li>init ps-&gt;context with util_surfaces_get and do_get</li>
   2685   <li>gallium/trace: check bind_vertex_sampler_states and set_vertex_sampler_views</li>
   2686 </ul></p>
   2687 
   2688 <p>Xiang, Haihao (10):
   2689 <ul>
   2690   <li>mesa: fix regression from b4bb6680200b5a898583392f4c831c02f41e63f7</li>
   2691   <li>i965: add support for polygon mode on Sandybridge.</li>
   2692   <li>i965: fix for flat shading on Sandybridge</li>
   2693   <li>i965: set minimum/maximum Point Width on Sandybridge</li>
   2694   <li>meta: allow nested meta operations</li>
   2695   <li>i965: support for two-sided lighting on Sandybridge</li>
   2696   <li>i965: fix register region description</li>
   2697   <li>i965: use align1 access mode for instructions with execSize=1 in VS</li>
   2698   <li>i965: don't spawn GS thread for LINELOOP on Sandybridge</li>
   2699   <li>i965: use BLT to clear buffer if possible on Sandybridge</li>
   2700 </ul></p>
   2701 
   2702 <p>Zack Rusin (8):
   2703 <ul>
   2704   <li>rbug: fix rbug when contexts are being destroyed</li>
   2705   <li>llvmpipe: fix rasterization of vertical lines on pixel boundaries</li>
   2706   <li>scons: build the xorg state trackers only when env includes drm</li>
   2707   <li>gallivm: implement indirect addressing of the output registers</li>
   2708   <li>gallivm: implement indirect addressing over inputs</li>
   2709   <li>gallivm: fix storing of the addr register</li>
   2710   <li>scons: add alias for identity</li>
   2711   <li>gallium/util: add states relevant to geometry shaders</li>
   2712 </ul></p>
   2713 
   2714 <p>Zhenyu Wang (40):
   2715 <ul>
   2716   <li>i965: disasm quarter and write enable instruction control on sandybridge</li>
   2717   <li>i965: new state dump for sandybridge</li>
   2718   <li>i965: enable accumulator update in PS kernel too on sandybridge</li>
   2719   <li>i965: Fix color interpolation on sandybridge</li>
   2720   <li>i965: force zero in clipper to ignore RTAIndex on sandybridge</li>
   2721   <li>i965: fix point size setting in header on sandybridge</li>
   2722   <li>i965: ff sync message change for sandybridge</li>
   2723   <li>i965: ignore quads for GS kernel on sandybridge</li>
   2724   <li>i965: add sandybridge viewport state bo into validation list</li>
   2725   <li>i965: VS use SPF mode on sandybridge for now</li>
   2726   <li>i965: fix jump count on sandybridge</li>
   2727   <li>i965: Fix sampler on sandybridge</li>
   2728   <li>i965: fix const register count for sandybridge</li>
   2729   <li>i965: Add all device ids for sandybridge</li>
   2730   <li>i965: sandybridge pipe control workaround before write cache flush</li>
   2731   <li>i965: only allow SIMD8 kernel on sandybridge now</li>
   2732   <li>i965: don't do calculation for delta_xy on sandybridge</li>
   2733   <li>i965: fix pixel w interpolation on sandybridge</li>
   2734   <li>i965: enable polygon offset on sandybridge</li>
   2735   <li>i965: fix scissor state on sandybridge</li>
   2736   <li>i965: fix point sprite on sandybridge</li>
   2737   <li>i965: fix occlusion query on sandybridge</li>
   2738   <li>i965: fallback bitmap operation on sandybridge</li>
   2739   <li>i965: Always set tiling for depth buffer on sandybridge</li>
   2740   <li>i965: fallback lineloop on sandybridge for now</li>
   2741   <li>Revert "i965: Always set tiling for depth buffer on sandybridge"</li>
   2742   <li>i965: always set tiling for fbo depth buffer on sandybridge</li>
   2743   <li>i965: Fix GS hang on Sandybridge</li>
   2744   <li>Revert "i965: fallback lineloop on sandybridge for now"</li>
   2745   <li>i965: refresh wm push constant also for BRW_NEW_FRAMENT_PROGRAM on gen6</li>
   2746   <li>i965: fix dest type of 'endif' on sandybridge</li>
   2747   <li>Revert "i965: VS use SPF mode on sandybridge for now"</li>
   2748   <li>i965: also using align1 mode for math2 on sandybridge</li>
   2749   <li>i965: Fix GS state uploading on Sandybridge</li>
   2750   <li>i965: upload WM state for _NEW_POLYGON on sandybridge</li>
   2751   <li>i965: Use MI_FLUSH_DW for blt ring flush on sandybridge</li>
   2752   <li>i965: explicit tell header present for fb write on sandybridge</li>
   2753   <li>i965: Fix occlusion query on sandybridge</li>
   2754   <li>i965: Use last vertex convention for quad provoking vertex on sandybridge</li>
   2755   <li>i965: Fix provoking vertex select in clip state for sandybridge</li>
   2756 </ul></p>
   2757 
   2758 <p>Zou Nan hai (1):
   2759 <ul>
   2760   <li>i965: skip too small size mipmap</li>
   2761 </ul></p>
   2762 
   2763 <p>delphi (2):
   2764 <ul>
   2765   <li>draw: added userclip planes and updated variant_key</li>
   2766   <li>draw: some changes to allow for runtime changes to userclip planes</li>
   2767 </ul></p>
   2768 
   2769 <p>nobled (3):
   2770 <ul>
   2771   <li>r300g: Abort if atom allocations fail</li>
   2772   <li>r300g: Abort if draw_create() fails</li>
   2773   <li>r300g: Drop unnecessary cast</li>
   2774 </ul></p>
   2775 
   2776 <p>pontus lidman (1):
   2777 <ul>
   2778   <li>mesa: check for posix_memalign() errors</li>
   2779 </ul></p>
   2780 
   2781 <p>richard (2):
   2782 <ul>
   2783   <li>evergreen : fix z format setting, enable stencil.</li>
   2784   <li>r600c : inline vertex format is not updated in an app, switch to use vfetch constants. For the 7.9 and 7.10 branches as well.</li>
   2785 </ul></p>
   2786 
   2787 </body>
   2788 </html>
   2789