[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

mesa: Changes to 'upstream-unstable'



Rebased ref, commits from common ancestor:
commit de8f22af28259cb5c416bd0f9914f62e3d8879ee
Author: Ian Romanick <ian.d.romanick@intel.com>
Date:   Sun Jul 31 22:48:10 2011 -0700

    mesa: Bump version to 7.11 (final)

diff --git a/Makefile b/Makefile
index 55ef37c..d1775f5 100644
--- a/Makefile
+++ b/Makefile
@@ -183,7 +183,7 @@ ultrix-gcc:
 
 # Rules for making release tarballs
 
-VERSION=7.11-rc4
+VERSION=7.11
 DIRECTORY = Mesa-$(VERSION)
 LIB_NAME = MesaLib-$(VERSION)
 GLUT_NAME = MesaGLUT-$(VERSION)
diff --git a/src/mesa/main/version.h b/src/mesa/main/version.h
index 04f681d..6e99b94 100644
--- a/src/mesa/main/version.h
+++ b/src/mesa/main/version.h
@@ -35,7 +35,7 @@ struct gl_context;
 #define MESA_MAJOR 7
 #define MESA_MINOR 11
 #define MESA_PATCH 0
-#define MESA_VERSION_STRING "7.11-rc4"
+#define MESA_VERSION_STRING "7.11"
 
 /* To make version comparison easy */
 #define MESA_VERSION(a,b,c) (((a) << 16) + ((b) << 8) + (c))

commit 6ee71bab9450ba8223a97dbfeb613d12a2893a23
Author: Ian Romanick <ian.d.romanick@intel.com>
Date:   Sun Jul 31 22:46:33 2011 -0700

    docs: More bits of 7.11 release notes

diff --git a/docs/relnotes-7.11.html b/docs/relnotes-7.11.html
index c81ac9f..79776d3 100644
--- a/docs/relnotes-7.11.html
+++ b/docs/relnotes-7.11.html
@@ -10,7 +10,7 @@
 
 <body bgcolor="#eeeeee">
 
-<H1>Mesa 7.11 Release Notes / (release date TBD)</H1>
+<H1>Mesa 7.11 Release Notes / July 31, 2011</H1>
 
 <p>
 Mesa 7.11 is a new development release.
@@ -64,11 +64,263 @@ tbd
 <li>GL_ATI_texture_float (gallium, i965)
 <li>GL_NV_conditional_render (i965)
 <li>GL_NV_texture_barrier (gallium drivers)
+<li>Enable 16-wide fragment shader execution in i965 driver.  This should improve performance in many applications.
+<li>Initial alpha-level support for Intel "Ivybridge" chipsets in the i965 driver.
 </ul>
 
 
 <h2>Bug fixes</h2>
+
+<p>This list is likely incomplete.  This list only includes bug fixes not
+included in the previous release (7.10.3).  Many of these are regressions that
+did not exist in the 7.10 release series at all.</p>
+
 <ul>
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=25871";>Bug 25871</a> - nearest neighbour samples wrong texel (precision/rounding problem)</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=29162";>Bug 29162</a> - mesa/darwin is severly broken</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=30080";>Bug 30080</a> - [i915] piglit nodepth-test fails</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=30217";>Bug 30217</a> - Possible sources of memory leaks reported by valgrind</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=30266";>Bug 30266</a> - Regression, segfault in libdrm_intel when calling glBitmap</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=31561";>Bug 31561</a> - [i915] intel_regions.c:289: intel_region_release: Assertion `region-&gt;map_refcount == 0' failed.</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=31744";>Bug 31744</a> - [GLSL] overriding built-in function impacts another shader</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=32308";>Bug 32308</a> - [llvmpipe] src/gallium/auxiliary/gallivm/lp_bld_init.c:319:gallivm_register_garbage_collector_callback: Assertion `NumCallbacks &lt; 32' failed.</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=32309";>Bug 32309</a> - [softpipe] SIGSEGV sp_state_derived.c:204</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=32459";>Bug 32459</a> - [softpipe] glean depthStencil regression</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=32460";>Bug 32460</a> - [softpipe] piglit texwrap 1D regression</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=32534";>Bug 32534</a> - [arrandale/sandybridge] Mesa swallowing GEM ioctl failures</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=32560";>Bug 32560</a> - To fix: 64-bit-portabilty-issue state_tracker/st_program.c:427</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=32634";>Bug 32634</a> - [r300g, bisected] Massive corruption in Unigine Sanctuary</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=32768";>Bug 32768</a> - VBO rendering using glDrawArrays causes program termination and "cs IB too big" message</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=32804";>Bug 32804</a> - [swrast] glean pixelFormats regression</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=32814";>Bug 32814</a> - Build error in osmesa.c due to change in _mesa_update_framebuffer_visual() signature</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=32859";>Bug 32859</a> - Mesa doesn't compile under NetBSD</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=32912";>Bug 32912</a> - [bisected, r300g] Unigine Sanctuary: r300_emit.c:902:r300_emit_vertex_arrays: Assertion `&amp;buf-&gt;b.b' failed with RADEON_HYPERZ=1</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=32945";>Bug 32945</a> - [RADEON:KMS:R300G] HiZ: Weird behavior with 3 pipes</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=33046";>Bug 33046</a> - [bisected]glean/pixelFormats and 3 oglc cases segfault</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=33185";>Bug 33185</a> - [RADEON:KMS:R300G] X crashes when kwin effects are turned on</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=33215";>Bug 33215</a> - [llvmpipe] piglit fbo-drawbuffers2-blend regression</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=33247";>Bug 33247</a> - [swrast] tnl/t_draw.c:471: _tnl_draw_prims: Assertion `prim[i].num_instances &gt; 0' failed</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=33284";>Bug 33284</a> - [llvmpipe] piglit fbo-drawbuffers-fragcolor fails</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=33306";>Bug 33306</a> - [glsl] GLSL integer division by zero crashes GLSL compiler</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=33353";>Bug 33353</a> - [softpipe] piglit fbo-srgb looks incorrect</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=33360";>Bug 33360</a> - inclusion of $(TALLOC_LIBS) in src/mesa/drivers/osmesa/Makefile causes a build failure</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=33374";>Bug 33374</a> - [bisect] FTBFS on commit 9767d3b5 (glapi: Fix OpenGL ES 1.1 and 2.0 interop)</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=33508";>Bug 33508</a> - [glsl] GLSL compiler modulus by zero crash</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=33555";>Bug 33555</a> - [softpipe] tgsi/tgsi_sse2.c:1527:emit_tex: Assertion `0' failed.</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=33885";>Bug 33885</a> - [glsl] GLSL compiler allows recursion</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=33823";>Bug 33823</a> - [glsl] ralloc.c:78: get_header: Assertion `info-&gt;canary == 0x5A1106' failed.</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=33934";>Bug 33934</a> - 3D blitting is orders of magnitude slower than equivalent 2D blitting.</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=33946";>Bug 33946</a> - Crash: Mesa checks for invalid pointer, then uses it anyway.</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=34008";>Bug 34008</a> - r600g: piglit failure (regression)</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=34009";>Bug 34009</a> - Automatic Mipmap Generation produces very blurry image.</li>
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=34042";>Bug 34042</a> - Surfaceless eglMakeCurrent() fails if the supplied EGLContext is not a dummy context</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=34049";>Bug 34049</a> - r600g: assertion failure (regression)</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=34119";>Bug 34119</a> - [glsl] piglit glsl-texcoord-array regression</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=34323";>Bug 34323</a> - [i915 GLSL gles2] gl_FragCoord.w not correct</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=34346";>Bug 34346</a> - src/glsl relies on $PWD which can be unset</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=34378";>Bug 34378</a> - st/mesa: 2a904fd6a0cb80eec6dec2bae07fd8778b04caf3 breaks sauerbraten</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=34419";>Bug 34419</a> - Kwin crashes screensaver exits</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=34463";>Bug 34463</a> - state_tracker/st_texture.c:370:st_texture_image_copy: Assertion `u_minify(src-&gt;width0, srcLevel) == width' failed.</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=34468";>Bug 34468</a> - src/glsl/Makefile fix</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=34541";>Bug 34541</a> - [ilk, wine] massive render corruption after recent patchset</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=34589";>Bug 34589</a> - [pineview bisected]many cases regression</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=34595";>Bug 34595</a> - [bisected piketon]oglc half_float_vertex(misc.fillmode.wireframe) regressed</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=34597";>Bug 34597</a> - [bisected piketon]oglc blend-constcolor and 7 draw-buffers2 subcases regressed</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=34603";>Bug 34603</a> - [bisected piketon]oglc vbo subcase basic.bufferdata regressed</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=34604";>Bug 34604</a> - [bisected piketon]piglit fbo/fbo-depth-sample-compare regressed</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=34646";>Bug 34646</a> - [bisected piketon]ogles2conform GL2Tests/GL/gl_FragCoord/gl_FragCoord_w_frag.test</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=34656";>Bug 34656</a> - i965: Crash when running WebGL Conformance Test in firefox-4 nightly build</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=34691";>Bug 34691</a> - [GLSL] matrix array member assignment with a complex subscript fails</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=34906";>Bug 34906</a> - [Pineview] Some WebGL conformance tests will crash firefox</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=34968";>Bug 34968</a> - Bad fps in Lightsmark benchmark</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=35025";>Bug 35025</a> - [Patch] Serious compiler warnings</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=35312";>Bug 35312</a> - r600g: Automatic mipmap generation doesn't work properly</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=35373";>Bug 35373</a> - [[GM45] OpenGL] GL_EXT_texture_sRGB_decode broken</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=35434";>Bug 35434</a> - [RADEON:KMS:R600G] etqw: broken ground textures</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=35441";>Bug 35441</a> - [PATCH] Mesa does not find nouveau include files with --enable-shared-dricore</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=35614";>Bug 35614</a> - [SNB] random hang on piglit case shaders/glsl-max-varyings</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=35820";>Bug 35820</a> - [bisected SNB] System hangs when Gnome with compiz start up</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=35822";>Bug 35822</a> - [bisected pineview] many cases related to depth and stencil failed</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=35849";>Bug 35849</a> - when sampling textures from both fragment and vertex shaders the vertex texture has the incorrect texture bound</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=35852";>Bug 35852</a> - [bisected pineview] oglc case pxconv-read failed</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=35961";>Bug 35961</a> - src/gallium/auxiliary/util/u_draw.c:77:util_draw_max_index: Assertion `buffer_size - format_size &lt;= buffer_size' failed.</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=36032";>Bug 36032</a> - piglit fdo9833 regression</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=36033";>Bug 36033</a> - main/shaderapi.c:1044: validate_samplers: Assertion `(sizeof(targetName)/sizeof(*(targetName))) == NUM_TEXTURE_TARGETS' failed.</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=36086";>Bug 36086</a> - [wine] Segfault r300_resource_copy_region with some wine apps and RADEON_HYPERZ</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=36182";>Bug 36182</a> - Game Trine from http://www.humblebundle.com/ needs ATI_draw_buffers</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=36268";>Bug 36268</a> - [r300g, bisected] minor flickering in Unigine Sanctuary</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=36282";>Bug 36282</a> - 34a5d3b9f4740601708c82093e2114356d749e65: glxgears segfaults when compiled with shared glapi</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=36333";>Bug 36333</a> - can't build demos if mesa build with --enable-selinux</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=36473";>Bug 36473</a> - [bisected] piglit bugs/fdo23670-depth_test failed</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=36572";>Bug 36572</a> - [bisected]oglc case texenv segfaults</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=36609";>Bug 36609</a> - 45920d2ecb38b14fdda5253fecce996570c22863 breaks sauerbraten on r300g</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=36648";>Bug 36648</a> - [bisected SNB]piglit fbo/fbo-alphatest-nocolor failed</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=36649";>Bug 36649</a> - [bisected SNB]oglc draw-buffers2 failed with 16-wide</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=36753";>Bug 36753</a> - Some textures now rendered as completely black after register allocator rewrite.</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=36821";>Bug 36821</a> - [bisected SNB]oglc api-texcoord causes GPU hang</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=36914";>Bug 36914</a> - r600g: add rv670 flushing workaround. Causes games and some mesa demos to segfault.</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=36917";>Bug 36917</a> - Rendering glitches in ETQW</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=36939";>Bug 36939</a> - multitexturing is messed up in quake wars (regression)</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=36987";>Bug 36987</a> - Intel GMA 4500 ARB_shader_texture_lod support</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=37028";>Bug 37028</a> - Amnesia/HPL2 Demo: Strange graphical bugs on r600g</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=37150";>Bug 37150</a> - sRGB textures are too bright in Starcraft 2</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=37154";>Bug 37154</a> - main/texstore.c:4187: _mesa_texstore_rgb9_e5: Assertion `baseInternalFormat == 0x1907' failed.</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=37157";>Bug 37157</a> - [bisected] KDE KWin crashes on start with delayed BO mapping</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=37168";>Bug 37168</a> - Regression: Severe memory leak when running Second Life</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=37366";>Bug 37366</a> - [i965 bisected ILK] Fragment shader discard tests occasionally fail</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=37383";>Bug 37383</a> - incorrect GLSL optimization</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=37476";>Bug 37476</a> - [wine] Devil May Cry 4: TXD tgsi opcode unsupported / translation from TGSI failed / missing vertex shader</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=37743";>Bug 37743</a> - [bisected i965]oglc GLSLlinker subcase negative.varying.beyondMaxVaryingFloats aborted</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=37766";>Bug 37766</a> - Crash in dri2InvalidateBuffers when resizing Java window with OpenGL pipeline enabled</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=37839";>Bug 37839</a> - main/teximage.c:2393: _mesa_choose_texture_format: Assertion `f != MESA_FORMAT_NONE' failed.</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=37934";>Bug 37934</a> - Corruption with topogun trace</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=38015";>Bug 38015</a> - Some extensions enabled even when not supported by the underlying driver</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=38134";>Bug 38134</a> - [bisected i965]piglit fbo/fbo-blit-d24s8 crashed</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=38145";>Bug 38145</a> - r600g/evergreen: Incorrect rendering of some effects in doom3</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=38440";>Bug 38440</a> - ETQW: Model in team select rendering too bright</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=38566";>Bug 38566</a> - [regression] ETQW crashes with 21972c85ea734dbfcf69629c6b0b940efb42d4ba</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=38584";>Bug 38584</a> - MESA_GLSL=dump causes SEGV in ir_print_visitor::unique_name</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=38599";>Bug 38599</a> - THe value of WGL_PBUFFER_HEIGHT_ARB is returned as width in wglQueryPbufferARB</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=38602";>Bug 38602</a> - [bisected] Wrong display after "prefer native texture formats when possible" commit</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=38624";>Bug 38624</a> - program/ir_to_mesa.cpp:1440: virtual void ir_to_mesa_visitor::visit(ir_dereference_variable*): Assertion `var-&gt;location != -1' failed.</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=38626";>Bug 38626</a> - vbo: Don't discount stride breaks piglit on softpipe/r600g</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=38649";>Bug 38649</a> - piglit fbo-copyteximage regression</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=38762";>Bug 38762</a> - [IVB bisected]3D demos like glxgears abort</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=38771";>Bug 38771</a> - [[GM45] DRI] GPU hangs with current Mesa GIT when running certain OpenGL applications</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=38842";>Bug 38842</a> - Various valid GLX attributes are rejected by MESA glxChooseFBConfig</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=38971";>Bug 38971</a> - [bisected]oglc glsl-autointconv subcase negative.function.ambiguousMatch failed</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=38987";>Bug 38987</a> - sampler allowed as non-uniform / non-function parameters</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=39024";>Bug 39024</a> - [Pineview webgl] many webgl conformance cases crash the browser</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=39083";>Bug 39083</a> - [regression, bisected, r600g] Wrong rendering of Bubbles3D screensaver</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=39119";>Bug 39119</a> - setting SQ_LDS_RESOURCE_MGMT register to zero in other applications muddles up font rendering permanently</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=39209";>Bug 39209</a> - [bisected] Wrong display after "prefer native texture formats when possible" commit - part2</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=39219";>Bug 39219</a> - libgl conflict with xbmc causes lock up on xbmc exit</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=39257";>Bug 39257</a> - [bisected SNB]Mesa demos engine causes GPU hang</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=39487";>Bug 39487</a> - [i965] brw_wm_surface_state.c:495: brw_update_renderbuffer_surface: Assertion `brw-&gt>has_surface_tile_offset || (tile_x == 0 &amp;&amp; tile_y == 0)' failed.</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=39515";>Bug 39515</a> - FTBFS: libEGL depends on libgbm, but libEGL builds first</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=39572";>Bug 39572</a> - Cogs: GPU hang</li>
+
 </ul>
 
 
@@ -81,6 +333,11 @@ Building with SCons is an alternative.
 driver that implemented it.
 </ul>
 
+<p>The full set of changes can be viewed by using the following GIT command:</p>
+
+<pre>
+  git log mesa-7.10..mesa-7.11
+</pre>
 
 </body>
 </html>

commit 6c72801c2b0eab1b98491244282b98dbeac5d140
Author: Jeremy Huddleston <jeremyhu@apple.com>
Date:   Sun Jul 31 09:31:48 2011 -0700

    darwin: Use machine/endian.h to determine endianness
    
    Signed-off-by: Jeremy Huddleston <jeremyhu@apple.com>
    (cherry picked from commit 5b3c7199830b8eaac4df2f8c3f10d0e89b4bd5c5)

diff --git a/src/gallium/include/pipe/p_config.h b/src/gallium/include/pipe/p_config.h
index 803b806..8a5d892 100644
--- a/src/gallium/include/pipe/p_config.h
+++ b/src/gallium/include/pipe/p_config.h
@@ -120,6 +120,15 @@
 # define PIPE_ARCH_BIG_ENDIAN
 #endif
 
+#elif defined(__APPLE__)
+#include <machine/endian.h>
+
+#if __DARWIN_BYTE_ORDER == __DARWIN_LITTLE_ENDIAN
+# define PIPE_ARCH_LITTLE_ENDIAN
+#elif __DARWIN_BYTE_ORDER == __DARWIN_BIG_ENDIAN
+# define PIPE_ARCH_BIG_ENDIAN
+#endif
+
 #else
 
 #if defined(PIPE_ARCH_X86) || defined(PIPE_ARCH_X86_64)

commit 0d2c36953539043b14bb5d785981fab6126866b3
Author: Jeremy Huddleston <jeremyhu@apple.com>
Date:   Sun Jul 31 09:21:56 2011 -0700

    Fix PPC detection on darwin
    
    Fixes regression introduced by 7004582c1894ede839c44e292b413fe4916d7e9e
    
    Signed-off-by: Jeremy Huddleston <jeremyhu@apple.com>
    (cherry picked from commit e737a99a6fbafe3ba4b5175eea25d1598dbeb9d8)

diff --git a/src/gallium/include/pipe/p_config.h b/src/gallium/include/pipe/p_config.h
index eea3d79..803b806 100644
--- a/src/gallium/include/pipe/p_config.h
+++ b/src/gallium/include/pipe/p_config.h
@@ -99,9 +99,9 @@
 #endif
 #endif
 
-#if defined(__PPC__)
+#if defined(__ppc__) || defined(__ppc64__) || defined(__PPC__)
 #define PIPE_ARCH_PPC
-#if defined(__PPC64__)
+#if defined(__ppc64__) || defined(__PPC64__)
 #define PIPE_ARCH_PPC_64
 #endif
 #endif

commit fad610fec91c0c6f28bb93bd9cb5cd54abb55ebc
Author: Ian Romanick <ian.d.romanick@intel.com>
Date:   Thu Jul 28 16:08:42 2011 -0700

    mesa: Bump version to 7.11-rc4

diff --git a/Makefile b/Makefile
index 48e779c..55ef37c 100644
--- a/Makefile
+++ b/Makefile
@@ -183,7 +183,7 @@ ultrix-gcc:
 
 # Rules for making release tarballs
 
-VERSION=7.11-rc3
+VERSION=7.11-rc4
 DIRECTORY = Mesa-$(VERSION)
 LIB_NAME = MesaLib-$(VERSION)
 GLUT_NAME = MesaGLUT-$(VERSION)
diff --git a/src/mesa/main/version.h b/src/mesa/main/version.h
index c2b2dc2..04f681d 100644
--- a/src/mesa/main/version.h
+++ b/src/mesa/main/version.h
@@ -35,7 +35,7 @@ struct gl_context;
 #define MESA_MAJOR 7
 #define MESA_MINOR 11
 #define MESA_PATCH 0
-#define MESA_VERSION_STRING "7.11-rc3"
+#define MESA_VERSION_STRING "7.11-rc4"
 
 /* To make version comparison easy */
 #define MESA_VERSION(a,b,c) (((a) << 16) + ((b) << 8) + (c))

commit 9ca791d38096c72ccc1004c1ee9650181581a9c8
Author: Vadim Girlin <vadimgirlin@gmail.com>
Date:   Fri Jul 29 00:33:31 2011 +0400

    r600g: fix vs export count
    
    Fixes https://bugs.freedesktop.org/show_bug.cgi?id=39572
    
    Signed-off-by: Vadim Girlin <vadimgirlin@gmail.com>

diff --git a/src/gallium/drivers/r600/evergreen_state.c b/src/gallium/drivers/r600/evergreen_state.c
index f7450bc..0b7deee 100644
--- a/src/gallium/drivers/r600/evergreen_state.c
+++ b/src/gallium/drivers/r600/evergreen_state.c
@@ -1747,7 +1747,7 @@ void evergreen_pipe_shader_vs(struct pipe_context *ctx, struct r600_pipe_shader
 
 	r600_pipe_state_add_reg(rstate,
 			R_0286C4_SPI_VS_OUT_CONFIG,
-			S_0286C4_VS_EXPORT_COUNT(rshader->noutput - 2),
+			S_0286C4_VS_EXPORT_COUNT(rshader->noutput - 1),
 			0xFFFFFFFF, NULL);
 	r600_pipe_state_add_reg(rstate,
 			R_028860_SQ_PGM_RESOURCES_VS,
diff --git a/src/gallium/drivers/r600/r600_state.c b/src/gallium/drivers/r600/r600_state.c
index be07f5f..69af3d7 100644
--- a/src/gallium/drivers/r600/r600_state.c
+++ b/src/gallium/drivers/r600/r600_state.c
@@ -1505,7 +1505,7 @@ void r600_pipe_shader_vs(struct pipe_context *ctx, struct r600_pipe_shader *shad
 
 	r600_pipe_state_add_reg(rstate,
 			R_0286C4_SPI_VS_OUT_CONFIG,
-			S_0286C4_VS_EXPORT_COUNT(rshader->noutput - 2),
+			S_0286C4_VS_EXPORT_COUNT(rshader->noutput - 1),
 			0xFFFFFFFF, NULL);
 	r600_pipe_state_add_reg(rstate,
 			R_028868_SQ_PGM_RESOURCES_VS,

commit 69720cb0c4bff7734d8e4b92f7106f111ba2fb3a
Author: Kenneth Graunke <kenneth@whitecape.org>
Date:   Mon Jul 25 21:13:43 2011 -0700

    i965: Remove the now unused intel_renderbuffer::draw_offset field.
    
    The previous commit removed the last use of this field.
    
    Reviewed-by: Eric Anholt <eric@anholt.net>
    Signed-off-by: Kenneth Graunke <kenneth@whitecape.org>
    (cherry picked from commit f73caddd3339d284556036d031ab30ce8057a510)

diff --git a/src/mesa/drivers/dri/intel/intel_fbo.c b/src/mesa/drivers/dri/intel/intel_fbo.c
index 1beb9c9..d92732c 100644
--- a/src/mesa/drivers/dri/intel/intel_fbo.c
+++ b/src/mesa/drivers/dri/intel/intel_fbo.c
@@ -637,7 +637,6 @@ intel_renderbuffer_set_draw_offset(struct intel_renderbuffer *irb,
 				  zoffset,
 				  &dst_x, &dst_y);
 
-   irb->draw_offset = (dst_y * mt->region->pitch + dst_x) * mt->cpp;
    irb->draw_x = dst_x;
    irb->draw_y = dst_y;
 }
diff --git a/src/mesa/drivers/dri/intel/intel_fbo.h b/src/mesa/drivers/dri/intel/intel_fbo.h
index cbf29c8..fd2ae0e 100644
--- a/src/mesa/drivers/dri/intel/intel_fbo.h
+++ b/src/mesa/drivers/dri/intel/intel_fbo.h
@@ -58,7 +58,6 @@ struct intel_renderbuffer
 
    /** \} */
 
-   GLuint draw_offset; /**< Offset of drawing address within the region */
    GLuint draw_x, draw_y; /**< Offset of drawing within the region */
 };
 

commit 8589ca000a94254931100383bc961832918d4aa0
Author: Kenneth Graunke <kenneth@whitecape.org>
Date:   Mon Jul 25 17:06:13 2011 -0700

    i965: Check actual tile offsets in Gen4 miptree workaround.
    
    The purpose of the (irb->draw_offset & 4095) != 0 check was to ensure
    that we don't have XYy offsets into a tile, since Gen4 hardware doesn't
    support that.  However, it's insufficient: there are cases where
    draw_offset & 4095 is 0 but we still have a Y-offset.  This leads to an
    assertion failure in brw_update_renderbuffer_surface with tile_y != 0.
    
    Instead, simply call intel_renderbuffer_tile_offsets to compute the
    actual X/Y offsets and check if either are non-zero.  This makes both
    the workaround and the assertion check the same things.
    
    Fixes piglit test fbo-generatemipmap-formats, and should also fix
    bugs #34009 and #39487.
    
    NOTE: This is a candidate for stable release branches.
    
    Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=34009
    Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=39487
    Reviewed-by: Eric Anholt <eric@anholt.net>
    Reviewed-by: Chad Versace <chad@chad-versace.us>
    Signed-off-by: Kenneth Graunke <kenneth@whitecape.org>
    (cherry picked from commit 15c0bc5eefc89bec537e412c02965f201fb1c011)

diff --git a/src/mesa/drivers/dri/intel/intel_fbo.c b/src/mesa/drivers/dri/intel/intel_fbo.c
index 83163a2..1beb9c9 100644
--- a/src/mesa/drivers/dri/intel/intel_fbo.c
+++ b/src/mesa/drivers/dri/intel/intel_fbo.c
@@ -678,6 +678,22 @@ intel_renderbuffer_tile_offsets(struct intel_renderbuffer *irb,
    }
 }
 
+#ifndef I915
+static bool
+need_tile_offset_workaround(struct brw_context *brw,
+			    struct intel_renderbuffer *irb)
+{
+   uint32_t tile_x, tile_y;
+
+   if (brw->has_surface_tile_offset)
+      return false;
+
+   intel_renderbuffer_tile_offsets(irb, &tile_x, &tile_y);
+
+   return tile_x != 0 || tile_y != 0;
+}
+#endif
+
 /**
  * Called by glFramebufferTexture[123]DEXT() (and other places) to
  * prepare for rendering into texture memory.  This might be called
@@ -731,8 +747,7 @@ intel_render_texture(struct gl_context * ctx,
    intel_image->used_as_render_target = GL_TRUE;
 
 #ifndef I915
-   if (!brw_context(ctx)->has_surface_tile_offset &&
-       (irb->draw_offset & 4095) != 0) {
+   if (need_tile_offset_workaround(brw_context(ctx), irb)) {
       /* Original gen4 hardware couldn't draw to a non-tile-aligned
        * destination in a miptree unless you actually setup your
        * renderbuffer as a miptree and used the fragile

commit dcbd00e73c703e46b8034625c929b1dc5bbb5ca4
Author: Kenneth Graunke <kenneth@whitecape.org>
Date:   Mon Jul 25 14:27:07 2011 -0700

    i965/gen4: Fix message parameter loading for 1D TXD sampling.
    
    We were neglecting to load dvdx and dvdy.  v is not optional.
    
    Fixes glslparsertests tex-grad-0[12345].frag on Broadwater/Crestline.
    (We still need an execution test using sampler1D.)
    
    NOTE: This is a candidate for the 7.11 branch.
    
    Reviewed-by: Eric Anholt <eric@anholt.net>
    Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
    Signed-off-by: Kenneth Graunke <kenneth@whitecape.org>
    (cherry picked from commit 3e1fd13f605f16e8b48f3a9b71910a3c66eb84b5)

diff --git a/src/mesa/drivers/dri/i965/brw_fs_visitor.cpp b/src/mesa/drivers/dri/i965/brw_fs_visitor.cpp
index b0a9fd6..96df5ed 100644
--- a/src/mesa/drivers/dri/i965/brw_fs_visitor.cpp
+++ b/src/mesa/drivers/dri/i965/brw_fs_visitor.cpp
@@ -614,6 +614,8 @@ fs_visitor::emit_texture_gen4(ir_texture *ir, fs_reg dst, fs_reg coordinate,
        * dPdx = dudx, dvdx, drdx
        * dPdy = dudy, dvdy, drdy
        *
+       * 1-arg: Does not exist.
+       *
        * 2-arg: dudx   dvdx   dudy   dvdy
        *        dPdx.x dPdx.y dPdy.x dPdy.y
        *        m4     m5     m6     m7
@@ -625,14 +627,14 @@ fs_visitor::emit_texture_gen4(ir_texture *ir, fs_reg dst, fs_reg coordinate,
       for (int i = 0; i < ir->lod_info.grad.dPdx->type->vector_elements; i++) {
 	 emit(BRW_OPCODE_MOV, fs_reg(MRF, base_mrf + mlen), dPdx);
 	 dPdx.reg_offset++;
-	 mlen++;
       }
+      mlen += MAX2(ir->lod_info.grad.dPdx->type->vector_elements, 2);
 
       for (int i = 0; i < ir->lod_info.grad.dPdy->type->vector_elements; i++) {
 	 emit(BRW_OPCODE_MOV, fs_reg(MRF, base_mrf + mlen), dPdy);
 	 dPdy.reg_offset++;
-	 mlen++;
       }
+      mlen += MAX2(ir->lod_info.grad.dPdy->type->vector_elements, 2);
    } else {
       /* Oh joy.  gen4 doesn't have SIMD8 non-shadow-compare bias/lod
        * instructions.  We'll need to do SIMD16 here.

commit bba1600531d67564c156c70c88bd10460c821a99
Author: Fredrik Höglund <fredrik@kde.org>
Date:   Tue Jul 19 15:25:32 2011 -0600

    st/mesa: fix the texture format in st_context_teximage
    
    Commit 1a339b6c71ebab6e1a64f05b2e133022d3bbcd15 made
    st_ChooseTextureFormat map GL_RGBA with type GL_UNSIGNED_BYTE
    to PIPE_FORMAT_A8B8G8R8_UNORM.
    
    The image format for ARGB pixmaps is PIPE_FORMAT_B8G8R8A8_UNORM
    however. This mismatch caused the texture to be recreated in
    st_finalize_texture.
    
    NOTE: This is a candidate for the 7.11 branch.
    
    Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=39209
    Signed-off-by: Fredrik Höglund <fredrik@kde.org>
    Reviewed-by: Stéphane Marchesin <marcheu@chromium.org>
    Signed-off-by: Brian Paul <brianp@vmware.com>

diff --git a/src/mesa/state_tracker/st_manager.c b/src/mesa/state_tracker/st_manager.c
index c95514c..440feda 100644
--- a/src/mesa/state_tracker/st_manager.c
+++ b/src/mesa/state_tracker/st_manager.c
@@ -575,7 +575,7 @@ st_context_teximage(struct st_context_iface *stctxi,
          internalFormat = GL_RGB;
 
       texFormat = st_ChooseTextureFormat(ctx, internalFormat,
-                                         GL_RGBA, GL_UNSIGNED_BYTE);
+                                         GL_BGRA, GL_UNSIGNED_BYTE);
 
       _mesa_init_teximage_fields(ctx, target, texImage,
                                  tex->width0, tex->height0, 1, 0,

commit f4c55ea0164ef0dc25cf90a0a832b83454bc4006
Author: Ian Romanick <ian.d.romanick@intel.com>
Date:   Tue Jul 26 12:06:29 2011 -0700

    mesa: Ensure that r300 compiler files only appear once in the tarballs
    
    Reviewed-by: Jeremy Huddleston <jeremyhu@apple.com>
    Tested-by: Jeremy Huddleston <jeremyhu@apple.com>
    Cc: Andreas Radke <a.radke@arcor.de>

diff --git a/Makefile b/Makefile
index c142a93..48e779c 100644
--- a/Makefile
+++ b/Makefile
@@ -285,9 +285,6 @@ MAIN_FILES = \
 	$(DIRECTORY)/src/mesa/drivers/osmesa/descrip.mms		\
 	$(DIRECTORY)/src/mesa/drivers/osmesa/osmesa.def			\
 	$(DIRECTORY)/src/mesa/drivers/osmesa/*.[ch]			\
-	$(DIRECTORY)/src/mesa/drivers/dri/r300/compiler/*.[ch]		\
-	$(DIRECTORY)/src/mesa/drivers/dri/r300/compiler/Makefile	\
-	$(DIRECTORY)/src/mesa/drivers/dri/r300/compiler/SConscript	\
 	$(DIRECTORY)/src/mesa/drivers/windows/*/*.[ch]			\
 	$(DIRECTORY)/src/mesa/drivers/windows/*/*.def			\
 	$(DIRECTORY)/src/mesa/drivers/x11/Makefile			\
@@ -393,6 +390,7 @@ DRI_FILES = \
 	$(DIRECTORY)/src/mesa/drivers/dri/*/*/*.[chS]			\
 	$(DIRECTORY)/src/mesa/drivers/dri/*/Makefile			\
 	$(DIRECTORY)/src/mesa/drivers/dri/*/*/Makefile			\
+	$(DIRECTORY)/src/mesa/drivers/dri/*/*/SConscript		\
 	$(DIRECTORY)/src/mesa/drivers/dri/*/Doxyfile
 
 SGI_GLU_FILES = \

commit aa05fbe14de00f4359d20aa6b88f7903caf70381
Author: Ian Romanick <ian.d.romanick@intel.com>
Date:   Mon Jul 25 19:47:49 2011 -0700

    mesa: Bump version to 7.11-rc3

diff --git a/Makefile b/Makefile
index 2af9374..c142a93 100644
--- a/Makefile
+++ b/Makefile
@@ -183,7 +183,7 @@ ultrix-gcc:
 
 # Rules for making release tarballs
 
-VERSION=7.11-rc2
+VERSION=7.11-rc3
 DIRECTORY = Mesa-$(VERSION)
 LIB_NAME = MesaLib-$(VERSION)
 GLUT_NAME = MesaGLUT-$(VERSION)
diff --git a/src/mesa/main/version.h b/src/mesa/main/version.h
index 3643c5d..c2b2dc2 100644
--- a/src/mesa/main/version.h
+++ b/src/mesa/main/version.h
@@ -35,7 +35,7 @@ struct gl_context;
 #define MESA_MAJOR 7
 #define MESA_MINOR 11
 #define MESA_PATCH 0
-#define MESA_VERSION_STRING "7.11-rc2"
+#define MESA_VERSION_STRING "7.11-rc3"
 
 /* To make version comparison easy */
 #define MESA_VERSION(a,b,c) (((a) << 16) + ((b) << 8) + (c))

commit 0a7574f62c6c1e0db0de7a3c3b4a98ca222dcbd5
Author: Ian Romanick <ian.d.romanick@intel.com>
Date:   Mon Jul 25 19:47:25 2011 -0700

    mesa: Use --dereference to avoid symlinks in tarballs

diff --git a/Makefile b/Makefile
index cea0923..2af9374 100644
--- a/Makefile
+++ b/Makefile
@@ -481,13 +481,13 @@ rm_config: parsers
 	rm -f configs/autoconf
 
 $(LIB_NAME).tar: rm_config
-	cd .. ; tar -cf $(DIRECTORY)/$(LIB_NAME).tar $(LIB_FILES)
+	cd .. ; tar --dereference -cf $(DIRECTORY)/$(LIB_NAME).tar $(LIB_FILES)
 
 $(LIB_NAME).tar.gz: $(LIB_NAME).tar
 	gzip --stdout --best $(LIB_NAME).tar > $(LIB_NAME).tar.gz
 
 $(GLUT_NAME).tar:
-	cd .. ; tar -cf $(DIRECTORY)/$(GLUT_NAME).tar $(GLUT_FILES)
+	cd .. ; tar --dereference -cf $(DIRECTORY)/$(GLUT_NAME).tar $(GLUT_FILES)
 
 $(GLUT_NAME).tar.gz: $(GLUT_NAME).tar
 	gzip --stdout --best $(GLUT_NAME).tar > $(GLUT_NAME).tar.gz

commit 1098f9228dfbeb789d835494767cde45701f2ed6
Author: Eric Anholt <eric@anholt.net>
Date:   Mon Jul 25 15:39:03 2011 -0700

    i965/fs: Fix MRT drawing since the m0->m2 move for shader debug.
    
    Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
    (cherry picked from commit 3daa2d97eb13f41de4cbab9301a167be85d48642)

diff --git a/src/mesa/drivers/dri/i965/brw_fs_emit.cpp b/src/mesa/drivers/dri/i965/brw_fs_emit.cpp
index 1d89b8f..eecfc92 100644
--- a/src/mesa/drivers/dri/i965/brw_fs_emit.cpp
+++ b/src/mesa/drivers/dri/i965/brw_fs_emit.cpp
@@ -59,7 +59,8 @@ fs_visitor::generate_fb_write(fs_inst *inst)
 
 	 if (inst->target > 0) {
 	    /* Set the render target index for choosing BLEND_STATE. */
-	    brw_MOV(p, retype(brw_vec1_reg(BRW_MESSAGE_REGISTER_FILE, 0, 2),
+	    brw_MOV(p, retype(brw_vec1_reg(BRW_MESSAGE_REGISTER_FILE,
+					   inst->base_mrf, 2),
 			      BRW_REGISTER_TYPE_UD),
 		    brw_imm_ud(inst->target));
 	 }

commit 5238303790d16901fd7dad9854ac699114bf307d
Author: Eric Anholt <eric@anholt.net>
Date:   Fri Jul 22 10:56:10 2011 -0700

    i965: Fix many of the trivial WebGL demos that broke due to IB optimization.
    
    The index buffer state emit only occurred if there was an IB in place
    and we were in either a new batch or a new IB state.  But because we
    only flagged new IB state if IB state changed from the last IB state
    we calculated, we could simply never emit IB state after batchbuffer
    wraps if the first draw didn't use the IB and we didn't actually
    change the IB.
    
    Fixes piglit glx-multi-context-ib-1.
    (cherry picked from commit 818db3848bfaa002d0e7cf6b9b615a31eb82ba25)

diff --git a/src/mesa/drivers/dri/i965/brw_vtbl.c b/src/mesa/drivers/dri/i965/brw_vtbl.c
index 2b288e7..ca3c221 100644
--- a/src/mesa/drivers/dri/i965/brw_vtbl.c
+++ b/src/mesa/drivers/dri/i965/brw_vtbl.c
@@ -211,6 +211,7 @@ static void brw_new_batch( struct intel_context *intel )
    intel->batch.need_workaround_flush = true;
 
    brw->vb.nr_current_buffers = 0;
+   brw->ib.type = -1;
 
    /* Mark that the current program cache BO has been used by the GPU.
     * It will be reallocated if we need to put new programs in for the

commit a03974ffb95bf36240f02ea0d45405ca8030956f
Author: Eric Anholt <eric@anholt.net>
Date:   Mon Jul 25 11:50:27 2011 -0700

    i965: Emit texture cache flushes on gen6 along with render cache flushes.
    
    It turns out that internally the texture cache gets flushed in a
    couple of cases, particularly around 2D operations mixed with 3D.  In
    almost all cases one of those happens between rendering to an
    FBO-attached texture and rendering from that texture.  However, as of
    the next patch, glean tfbo (and the new fbo-flushing-2 test) would
    manage to get stale texture values because one of those flushes didn't
    occur.  The intention of this code was always to get the render cache
    cleared and ready to be used from the sampler cache (and it does on <=
    gen4), so this just catches gen5 up.
    
    This patch was also tested to fix fbo-flushing on gen7.
    (cherry picked from commit 185868c9c2e6a31a7313df2dbe29490547b65f61)

diff --git a/src/mesa/drivers/dri/intel/intel_batchbuffer.c b/src/mesa/drivers/dri/intel/intel_batchbuffer.c
index dca3b3e..7ee802b 100644
--- a/src/mesa/drivers/dri/intel/intel_batchbuffer.c
+++ b/src/mesa/drivers/dri/intel/intel_batchbuffer.c
@@ -388,6 +388,7 @@ intel_batchbuffer_emit_mi_flush(struct intel_context *intel)
 	 OUT_BATCH(PIPE_CONTROL_INSTRUCTION_FLUSH |
 		   PIPE_CONTROL_WRITE_FLUSH |
 		   PIPE_CONTROL_DEPTH_CACHE_FLUSH |
+		   PIPE_CONTROL_TC_FLUSH |
 		   PIPE_CONTROL_NO_WRITE);
 	 OUT_BATCH(0); /* write address */
 	 OUT_BATCH(0); /* write data */

commit 2d64d34cb99c0e8144a1127475e593ee1efed555
Author: Paul Berry <stereotype441@gmail.com>
Date:   Fri Jul 22 14:05:52 2011 -0700

    i965: vs optimization fix: Check val.{negate,abs} in accumulator_contains()
    
    When emitting a MAC instruction in a vertex shader, brw_vs_emit()
    calls accumulator_contains() to determine whether the accumulator
    already contains the appropriate addend; if it does, then we can avoid
    emitting an unnecessary MOV instruction.
    
    However, accumulator_contains() wasn't checking the val.negate or
    val.abs flags.  As a result, if the desired value was the negation, or
    the absolute value, of what was already in the accumulator, we would
    generate an incorrect shader.
    
    Fixes piglit test vs-refract-vec4-vec4-float.
    
    Tested on Gen5 and Gen6.
    
    Reviewed-by: Eric Anholt <eric@anholt.net>
    (cherry picked from commit d92463d5dc42aca09a54588c322fc60582cf9131)

diff --git a/src/mesa/drivers/dri/i965/brw_vs_emit.c b/src/mesa/drivers/dri/i965/brw_vs_emit.c
index d8cb0f7..674a994 100644
--- a/src/mesa/drivers/dri/i965/brw_vs_emit.c
+++ b/src/mesa/drivers/dri/i965/brw_vs_emit.c
@@ -1821,6 +1821,9 @@ accumulator_contains(struct brw_vs_compile *c, struct brw_reg val)
    if (val.address_mode != BRW_ADDRESS_DIRECT)
       return GL_FALSE;
 
+   if (val.negate || val.abs)
+      return GL_FALSE;
+
    switch (prev_insn->header.opcode) {
    case BRW_OPCODE_MOV:
    case BRW_OPCODE_MAC:

commit 66b41af39119cced3dbdc1c9a8995df51539d887
Author: Kenneth Graunke <kenneth@whitecape.org>
Date:   Thu May 12 04:02:32 2011 -0700

    i965/gen7: Fix shadow sampling in the old brw_wm_emit backend.
    
    On Ivybridge, the shadow comparitor goes in the first slot, rather than
    at the end.  It's not necessary to send u, v, and r.
    
    Fixes tests texturing/texdepth and glean/fbo.
    
    NOTE: This is a candidate for the 7.11 branch.
    
    Signed-off-by: Kenneth Graunke <kenneth@whitecape.org>
    (cherry picked from commit 572f6318954f31fcf3d396ac5df8e9eff3f37c74)

diff --git a/src/mesa/drivers/dri/i965/brw_wm_emit.c b/src/mesa/drivers/dri/i965/brw_wm_emit.c
index f61757a..6ea4a7d 100644
--- a/src/mesa/drivers/dri/i965/brw_wm_emit.c
+++ b/src/mesa/drivers/dri/i965/brw_wm_emit.c
@@ -1094,9 +1094,16 @@ void emit_tex(struct brw_wm_compile *c,
    if (intel->gen < 5 && c->dispatch_width == 8)
       nr_texcoords = 3;
 
-   /* For shadow comparisons, we have to supply u,v,r. */
-   if (shadow)
-      nr_texcoords = 3;
+   if (shadow) {
+      if (intel->gen < 7) {
+	 /* For shadow comparisons, we have to supply u,v,r. */
+	 nr_texcoords = 3;
+      } else {
+	 /* On Ivybridge, the shadow comparitor comes first. Just load it. */
+	 brw_MOV(p, brw_message_reg(cur_mrf), arg[2]);
+	 cur_mrf += mrf_per_channel;
+      }
+   }
 
    /* Emit the texcoords. */
    for (i = 0; i < nr_texcoords; i++) {
@@ -1113,7 +1120,7 @@ void emit_tex(struct brw_wm_compile *c,
    }
 
    /* Fill in the shadow comparison reference value. */
-   if (shadow) {
+   if (shadow && intel->gen < 7) {
       if (intel->gen >= 5) {
 	 /* Fill in the cube map array index value. */
 	 brw_MOV(p, brw_message_reg(cur_mrf), brw_imm_f(0));

commit 67aa20d9d5febd47fc6dc2c180627e81701475e8
Author: Kenneth Graunke <kenneth@whitecape.org>
Date:   Thu Jul 21 21:17:10 2011 -0700

    i965/fs: Clear result before visiting shadow comparitor and LOD info.
    
    Commit 53c89c67f33639afef951e178f93f4e29acc5d53 ("i965: Avoid generating
    MOVs for assignments of expressions.") added the line "this->result =
    reg_undef" all over the code.  Unfortunately, since Eric developed his
    patch before I landed Ivybridge support, he missed adding it to
    fs_visitor::emit_texture_gen7() after rebasing.
    
    Furthermore, since I developed TXD support before Eric's patch, I
    neglected to add it to the gradient handling when I rebased.
    
    Neglecting to set this causes the visitor to use this->result as storage
    rather than generating a new temporary.  These missing statements
    resulted in the same register being used to store several different
    values.
    
    Fixes the following piglit tests on Ivybridge:
    - glsl-fs-shadow2dproj.shader_test
    - glsl-fs-shadow2dproj-bias.shader_test
    
    NOTE: This is a candidate for the 7.11 branch.
    
    Signed-off-by: Kenneth Graunke <kenneth@whitecape.org>
    Reviewed-by: Eric Anholt <eric@anholt.net>
    (cherry picked from commit 156cef0fbacf242e8fc67e39ab964e5f8f3739cb)

diff --git a/src/mesa/drivers/dri/i965/brw_fs_visitor.cpp b/src/mesa/drivers/dri/i965/brw_fs_visitor.cpp
index 6116b10..b0a9fd6 100644
--- a/src/mesa/drivers/dri/i965/brw_fs_visitor.cpp
+++ b/src/mesa/drivers/dri/i965/brw_fs_visitor.cpp
@@ -595,9 +595,11 @@ fs_visitor::emit_texture_gen4(ir_texture *ir, fs_reg dst, fs_reg coordinate,
       /* gen4's SIMD8 sampler always has the slots for u,v,r present. */
       mlen += 3;
    } else if (ir->op == ir_txd) {
+      this->result = reg_undef;
       ir->lod_info.grad.dPdx->accept(this);
       fs_reg dPdx = this->result;
 
+      this->result = reg_undef;
       ir->lod_info.grad.dPdy->accept(this);
       fs_reg dPdy = this->result;
 
@@ -778,9 +780,11 @@ fs_visitor::emit_texture_gen5(ir_texture *ir, fs_reg dst, fs_reg coordinate,
       inst = emit(FS_OPCODE_TXL, dst);
       break;
    case ir_txd: {
+      this->result = reg_undef;
       ir->lod_info.grad.dPdx->accept(this);
       fs_reg dPdx = this->result;
 
+      this->result = reg_undef;
       ir->lod_info.grad.dPdy->accept(this);
       fs_reg dPdy = this->result;
 
@@ -842,6 +846,7 @@ fs_visitor::emit_texture_gen7(ir_texture *ir, fs_reg dst, fs_reg coordinate,
    }
 
    if (ir->shadow_comparitor && ir->op != ir_txd) {
+      this->result = reg_undef;
       ir->shadow_comparitor->accept(this);
       emit(BRW_OPCODE_MOV, fs_reg(MRF, base_mrf + mlen), this->result);
       mlen += reg_width;
@@ -852,11 +857,13 @@ fs_visitor::emit_texture_gen7(ir_texture *ir, fs_reg dst, fs_reg coordinate,
    case ir_tex:
       break;
    case ir_txb:
+      this->result = reg_undef;
       ir->lod_info.bias->accept(this);
       emit(BRW_OPCODE_MOV, fs_reg(MRF, base_mrf + mlen), this->result);
       mlen += reg_width;
       break;
    case ir_txl:
+      this->result = reg_undef;
       ir->lod_info.lod->accept(this);
       emit(BRW_OPCODE_MOV, fs_reg(MRF, base_mrf + mlen), this->result);
       mlen += reg_width;
@@ -865,9 +872,11 @@ fs_visitor::emit_texture_gen7(ir_texture *ir, fs_reg dst, fs_reg coordinate,
       if (c->dispatch_width == 16)
 	 fail("Gen7 does not support sample_d/sample_d_c in SIMD16 mode.");
 
+      this->result = reg_undef;
       ir->lod_info.grad.dPdx->accept(this);
       fs_reg dPdx = this->result;
 
+      this->result = reg_undef;


Reply to: