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

mesa: Changes to 'upstream-experimental'



 VERSION                                                       |    2 
 bin/bugzilla_mesa.sh                                          |    2 
 configure.ac                                                  |    5 
 docs/relnotes/12.0.0.html                                     |  254 ++++++
 docs/relnotes/12.0.1.html                                     |   66 +
 include/c99_compat.h                                          |    4 
 src/Makefile.am                                               |   13 
 src/compiler/glsl/ast_to_hir.cpp                              |    8 
 src/compiler/glsl/glsl_parser_extras.cpp                      |    1 
 src/compiler/glsl/glsl_parser_extras.h                        |    1 
 src/compiler/glsl/linker.cpp                                  |    1 
 src/compiler/glsl/lower_const_arrays_to_uniforms.cpp          |   18 
 src/compiler/glsl/opt_array_splitting.cpp                     |   55 +
 src/compiler/glsl/opt_constant_propagation.cpp                |    4 
 src/compiler/glsl/opt_dead_builtin_varyings.cpp               |   10 
 src/compiler/spirv/vtn_variables.c                            |    4 
 src/gallium/auxiliary/translate/translate_sse.c               |   14 
 src/gallium/drivers/freedreno/freedreno_context.h             |    2 
 src/gallium/drivers/nouveau/codegen/nv50_ir_emit_gm107.cpp    |   20 
 src/gallium/drivers/nouveau/codegen/nv50_ir_lowering_nvc0.cpp |    6 
 src/gallium/drivers/nouveau/nv50/nv50_push.c                  |   16 
 src/gallium/drivers/nouveau/nvc0/nvc0_transfer.c              |   17 
 src/gallium/drivers/nouveau/nvc0/nvc0_vbo_translate.c         |   16 
 src/gallium/drivers/radeon/r600_cs.h                          |   22 
 src/gallium/drivers/radeon/radeon_uvd.c                       |  109 ++
 src/gallium/drivers/radeon/radeon_winsys.h                    |    1 
 src/gallium/drivers/radeonsi/si_compute.c                     |   18 
 src/gallium/drivers/radeonsi/si_hw_context.c                  |    1 
 src/gallium/drivers/radeonsi/si_pipe.h                        |    1 
 src/gallium/drivers/radeonsi/si_state.c                       |    8 
 src/gallium/drivers/radeonsi/si_state_draw.c                  |   72 +
 src/gallium/drivers/radeonsi/sid.h                            |    6 
 src/gallium/drivers/svga/svga_pipe_query.c                    |   16 
 src/gallium/drivers/svga/svga_screen.c                        |    2 
 src/gallium/drivers/svga/svga_winsys.h                        |    3 
 src/gallium/drivers/swr/Makefile.am                           |   45 +
 src/gallium/drivers/swr/swr_shader.cpp                        |   10 
 src/gallium/drivers/swr/swr_state.cpp                         |    7 
 src/gallium/drivers/virgl/virgl_screen.c                      |    7 
 src/gallium/include/pipe/p_state.h                            |   12 
 src/gallium/include/state_tracker/st_api.h                    |    1 
 src/gallium/state_trackers/clover/api/device.cpp              |    5 
 src/gallium/state_trackers/clover/api/platform.cpp            |    5 
 src/gallium/state_trackers/dri/dri_screen.c                   |    2 
 src/gallium/targets/osmesa/osmesa.def                         |    1 
 src/gallium/targets/osmesa/osmesa.mingw.def                   |    1 
 src/gallium/targets/osmesa/osmesa.sym                         |    1 
 src/gallium/winsys/amdgpu/drm/amdgpu_winsys.c                 |   11 
 src/gallium/winsys/svga/drm/vmw_screen_ioctl.c                |   11 
 src/intel/genxml/gen6.xml                                     |    8 
 src/intel/genxml/gen7.xml                                     |   16 
 src/intel/genxml/gen75.xml                                    |   16 
 src/intel/genxml/gen8.xml                                     |   17 
 src/intel/genxml/gen9.xml                                     |   17 
 src/intel/isl/isl_format_layout.csv                           |    2 
 src/intel/isl/isl_surface_state.c                             |  394 ++++------
 src/intel/vulkan/Makefile.am                                  |    6 
 src/intel/vulkan/Makefile.sources                             |    3 
 src/intel/vulkan/anv_allocator.c                              |   76 +
 src/intel/vulkan/anv_cmd_buffer.c                             |   48 +
 src/intel/vulkan/anv_device.c                                 |    8 
 src/intel/vulkan/anv_image.c                                  |    3 
 src/intel/vulkan/anv_pipeline.c                               |   20 
 src/intel/vulkan/anv_private.h                                |   21 
 src/intel/vulkan/anv_wsi_wayland.c                            |   10 
 src/intel/vulkan/anv_wsi_x11.c                                |    3 
 src/intel/vulkan/gen7_cmd_buffer.c                            |   91 --
 src/intel/vulkan/gen7_pipeline.c                              |   24 
 src/intel/vulkan/gen8_pipeline.c                              |   21 
 src/intel/vulkan/genX_cmd_buffer.c                            |   66 +
 src/intel/vulkan/genX_pipeline.c                              |   10 
 src/mapi/glapi/gen/static_data.py                             |   51 +
 src/mesa/Makefile.am                                          |    4 
 src/mesa/drivers/dri/common/drirc                             |    4 
 src/mesa/drivers/dri/common/xmlpool/t_options.h               |    5 
 src/mesa/drivers/dri/i965/brw_context.c                       |   13 
 src/mesa/drivers/dri/i965/brw_fs.cpp                          |   38 
 src/mesa/drivers/dri/i965/brw_fs_vector_splitting.cpp         |   12 
 src/mesa/drivers/dri/i965/brw_fs_visitor.cpp                  |    7 
 src/mesa/drivers/dri/i965/brw_link.cpp                        |    2 
 src/mesa/drivers/dri/i965/brw_state.h                         |    2 
 src/mesa/drivers/dri/i965/brw_state_upload.c                  |    2 
 src/mesa/drivers/dri/i965/brw_wm_surface_state.c              |   28 
 src/mesa/drivers/dri/i965/gen6_queryobj.c                     |    4 
 src/mesa/drivers/dri/i965/gen7_sol_state.c                    |   59 +
 src/mesa/drivers/dri/i965/gen7_urb.c                          |   26 
 src/mesa/drivers/dri/i965/gen7_wm_surface_state.c             |   21 
 src/mesa/drivers/dri/i965/gen8_blorp.c                        |    5 
 src/mesa/drivers/dri/i965/gen8_sol_state.c                    |   90 --
 src/mesa/drivers/dri/i965/gen8_surface_state.c                |   23 
 src/mesa/drivers/dri/i965/intel_screen.c                      |    4 
 src/mesa/drivers/dri/i965/intel_tex_image.c                   |   13 
 src/mesa/drivers/osmesa/osmesa.def                            |    1 
 src/mesa/main/mtypes.h                                        |    5 
 src/mesa/state_tracker/st_cb_texture.c                        |    3 
 src/mesa/state_tracker/st_extensions.c                        |    2 
 src/mesa/state_tracker/st_texture.c                           |    3 
 97 files changed, 1558 insertions(+), 666 deletions(-)

New commits:
commit 04277f058d00238937e664cf546c43b16cea7b2b
Author: Emil Velikov <emil.velikov@collabora.com>
Date:   Fri Jul 8 23:45:44 2016 +0100

    docs: add release notes for 12.0.1
    
    Signed-off-by: Emil Velikov <emil.velikov@collabora.com>

diff --git a/docs/relnotes/12.0.1.html b/docs/relnotes/12.0.1.html
new file mode 100644
index 0000000..be2eaca
--- /dev/null
+++ b/docs/relnotes/12.0.1.html
@@ -0,0 +1,66 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd";>
+<html lang="en">
+<head>
+  <meta http-equiv="content-type" content="text/html; charset=utf-8">
+  <title>Mesa Release Notes</title>
+  <link rel="stylesheet" type="text/css" href="../mesa.css">
+</head>
+<body>
+
+<div class="header">
+  <h1>The Mesa 3D Graphics Library</h1>
+</div>
+
+<iframe src="../contents.html"></iframe>
+<div class="content">
+
+<h1>Mesa 12.0.1 Release Notes / July 8, 2016</h1>
+
+<h1>Mesa 12.0.1 Release Notes / July 8, 2016</h1>
+
+<p>
+Mesa 12.0.1 is a bug fix release which fixes bugs found since the 12.0.1 release.
+</p>
+<p>
+Mesa 12.0.1 implements the OpenGL 4.3 API, but the version reported by
+glGetString(GL_VERSION) or glGetIntegerv(GL_MAJOR_VERSION) /
+glGetIntegerv(GL_MINOR_VERSION) depends on the particular driver being used.
+Some drivers don't support all the features required in OpenGL 4.3.  OpenGL
+4.3 is <strong>only</strong> available if requested at context creation
+because compatibility contexts are not supported.
+</p>
+
+
+<h2>SHA256 checksums</h2>
+<pre>
+TBD.
+</pre>
+
+
+<h2>New features</h2>
+<p>None</p>
+
+
+<h2>Bug fixes</h2>
+
+<ul>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=96864";>Bug 96864</a> - Mesa 12.0 radeon build broken</li>
+
+</ul>
+
+
+<h2>Changes</h2>
+
+<p>Emil Velikov (4):</p>
+<ul>
+  <li>docs: add sha256 checksums for 12.0.0</li>
+  <li>radeon: reference the correct cdw/max_dw</li>
+  <li>Update version to 12.0.1</li>
+  <li>docs: add release notes for 12.0.1</li>
+</ul>
+
+
+</div>
+</body>
+</html>

commit a2770e55a272baf4a7e5beec33319e8d7337ceec
Author: Emil Velikov <emil.velikov@collabora.com>
Date:   Fri Jul 8 23:40:03 2016 +0100

    Update version to 12.0.1
    
    Signed-off-by: Emil Velikov <emil.velikov@collabora.com>

diff --git a/VERSION b/VERSION
index 4044f90..b700dc1 100644
--- a/VERSION
+++ b/VERSION
@@ -1 +1 @@
-12.0.0
+12.0.1

commit a705f82a5662cafe3875fc701390d252b8c5d31d
Author: Emil Velikov <emil.velikov@collabora.com>
Date:   Fri Jul 8 22:04:34 2016 +0100

    radeon: reference the correct cdw/max_dw
    
    With commit f41f78cda10 ("radeonsi: drop the DRAW_PREAMBLE packet on
    Polaris") we failed to attribute that the separate current/prev
    radeon_winsys_cs_chunk(s) are not applicable/available in branch.
    
    The latter of which introduced with commit 89ba076de4c ("radeon/winsys:
    introduce radeon_winsys_cs_chunk").
    
    Just drop "current." from the respective places to get things up and
    running again.
    
    Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=96864
    Signed-off-by: Emil Velikov <emil.velikov@collabora.com>

diff --git a/src/gallium/drivers/radeon/r600_cs.h b/src/gallium/drivers/radeon/r600_cs.h
index f5e5039..80006b2 100644
--- a/src/gallium/drivers/radeon/r600_cs.h
+++ b/src/gallium/drivers/radeon/r600_cs.h
@@ -102,7 +102,7 @@ static inline void radeon_set_context_reg_idx(struct radeon_winsys_cs *cs,
 					      unsigned value)
 {
 	assert(reg >= R600_CONTEXT_REG_OFFSET);
-	assert(cs->current.cdw + 3 <= cs->current.max_dw);
+	assert(cs->cdw + 3 <= cs->max_dw);
 	radeon_emit(cs, PKT3(PKT3_SET_CONTEXT_REG, 1, 0));
 	radeon_emit(cs, (reg - R600_CONTEXT_REG_OFFSET) >> 2 | (idx << 28));
 	radeon_emit(cs, value);
@@ -141,7 +141,7 @@ static inline void radeon_set_uconfig_reg_idx(struct radeon_winsys_cs *cs,
 					      unsigned value)
 {
 	assert(reg >= CIK_UCONFIG_REG_OFFSET && reg < CIK_UCONFIG_REG_END);
-	assert(cs->current.cdw + 3 <= cs->current.max_dw);
+	assert(cs->cdw + 3 <= cs->max_dw);
 	radeon_emit(cs, PKT3(PKT3_SET_UCONFIG_REG, 1, 0));
 	radeon_emit(cs, (reg - CIK_UCONFIG_REG_OFFSET) >> 2 | (idx << 28));
 	radeon_emit(cs, value);

commit 3a146a789c5aa45e0de52bff764c2b371dd253aa
Author: Emil Velikov <emil.velikov@collabora.com>
Date:   Fri Jul 8 23:47:39 2016 +0100

    docs: add sha256 checksums for 12.0.0
    
    Signed-off-by: Emil Velikov <emil.velikov@collabora.com>

diff --git a/docs/relnotes/12.0.0.html b/docs/relnotes/12.0.0.html
index 15958fd..4f11bbd 100644
--- a/docs/relnotes/12.0.0.html
+++ b/docs/relnotes/12.0.0.html
@@ -33,7 +33,8 @@ because compatibility contexts are not supported.
 
 <h2>SHA256 checksums</h2>
 <pre>
-TBD.
+3b8fa4d86d78f8f6ec86055b92ad1afe869001483593b3dd4531184b8bc4fcfb  mesa-12.0.0.tar.gz
+0090c025219318935124292b482e3439bc43e8c074ad01086449fcad88547dc6  mesa-12.0.0.tar.xz
 </pre>
 
 

commit 8b06176f310f65628ce136b90a99005278ba5e0d
Author: Emil Velikov <emil.velikov@collabora.com>
Date:   Thu Jul 7 13:39:06 2016 +0100

    docs: Update 12.0.0 release notes
    
    Signed-off-by: Emil Velikov <emil.velikov@collabora.com>

diff --git a/docs/relnotes/12.0.0.html b/docs/relnotes/12.0.0.html
index 25b9b68..15958fd 100644
--- a/docs/relnotes/12.0.0.html
+++ b/docs/relnotes/12.0.0.html
@@ -14,7 +14,7 @@
 <iframe src="../contents.html"></iframe>
 <div class="content">
 
-<h1>Mesa 12.0.0 Release Notes / TBD</h1>
+<h1>Mesa 12.0.0 Release Notes / July 8, 2016</h1>
 
 <p>
 Mesa 12.0.0 is a new development release.
@@ -78,11 +78,256 @@ Note: some of the new features are only available with certain drivers.
 
 <h2>Bug fixes</h2>
 
-TBD.
+<ul>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=42187";>Bug 42187</a> - ES 1.1 conformance pntszary.c fail</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=71789";>Bug 71789</a> - [r300g] Visuals not found in (default) depth = 24</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=81585";>Bug 81585</a> - piglit spec_glsl-1.10_compiler_literals_invalid-float-suffix-capital-f.vert fails</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=83036";>Bug 83036</a> - [ILK]Piglit spec_ARB_copy_image_arb_copy_image-formats fails</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=89607";>Bug 89607</a> - Assertion hit in opt_array_splitting with recursive array indexing</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=90513";>Bug 90513</a> - Odd gray and red flicker in The Talos Principle on GK104</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=91526";>Bug 91526</a> - World of Warcraft (on Wine) has UI corruption with nouveau</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=92363";>Bug 92363</a> - [BSW/BDW] ogles1conform Gets test fails</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=92628";>Bug 92628</a> - HTTP site for Mesa downloads</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=92743";>Bug 92743</a> - Centroid shouldn't have to match between the FS and the VS</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=92850";>Bug 92850</a> - Segfault loading War Thunder</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=93054";>Bug 93054</a> - [BDW] DiRT Showdown and Bioshock Infinite only render half the screen (bottom left triangle)</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=93524";>Bug 93524</a> - Clover doesn't build</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=93551";>Bug 93551</a> - Divinity: Original Sin Enhanced Edition(Native) crash on start</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=93667";>Bug 93667</a> - Crash in eglCreateImageKHR with huge texture size</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=93767";>Bug 93767</a> - Glitches with soft shadows and MSAA in Knights of the Old Republic 2</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=93840";>Bug 93840</a> - [i965] Alien: Isolation fails with GL_ARB_compute_shader enabled</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=93962";>Bug 93962</a> - [HSW, regression, bisected, CTS] ES2-CTS.gtf.GL2FixedTests.scissor.scissor - segfault/asserts</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=94081";>Bug 94081</a> - [HSW] compute shader shared var + atomic op = fail</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=94086";>Bug 94086</a> - Multiple conflicting libGL libraries installed</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=94116";>Bug 94116</a> - program interface queries not returning right data for UBO / GL_BLOCK_INDEX</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=94129";>Bug 94129</a> - Mesa's compiler should warn about undefined values</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=94181";>Bug 94181</a> - [regression] piglit.spec.ext_framebuffer_object.getteximage-formats init-by-clear-and-render</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=94193";>Bug 94193</a> - [llvmpipe] Line antialiasing looks different when GL_LINE_STIPPLE is enabled with pattern 0xffff</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=94198";>Bug 94198</a> - [HSW] segfault in copy image when copying from cubemap to 2d</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=94199";>Bug 94199</a> - Shader abort/crash</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=94253";>Bug 94253</a> - [llvmpipe] piglit gl-1.0-swapbuffers-behavior regression</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=94254";>Bug 94254</a> - [llvmpipe] [softpipe] piglit read-front regression</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=94257";>Bug 94257</a> - [softpipe] piglit glx-copy-sub-buffer regression</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=94274";>Bug 94274</a> - [swrast] piglit arb_occlusion_query2-render regression</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=94284";>Bug 94284</a> - [radeonsi] outlast segfault on start</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=94291";>Bug 94291</a> - llvmpipe tests fail if built on skylake i7-6700k</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=94348";>Bug 94348</a> - vkBindImageMemory doesn't take into account the offset when the image is used as a depth buffer</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=94383";>Bug 94383</a> - build error on i386 when enabling swr</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=94388";>Bug 94388</a> - r600_blit.c:281: r600_decompress_depth_textures: Assertion `tex-&gt;is_depth &amp;&amp; !tex-&gt;is_flushing_texture' failed.</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=94412";>Bug 94412</a> - Trine 3 misrender</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=94447";>Bug 94447</a> - glsl/glcpp/tests/glcpp-test-cr-lf regression</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=94453";>Bug 94453</a> - dEQP-GLES3.functional.clipping.line.wide_line_clip_viewport_{center,corner} fail</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=94454";>Bug 94454</a> - dEQP-GLES3.functional.clipping.point.wide_point_clip* fails</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=94456";>Bug 94456</a> - dEQP-GLES3.functional.state_query.floats.{blend_color,color_clear_value,depth_clear_value}_getinteger64 fail</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=94458";>Bug 94458</a> - dEQP-GLES3.functional.state_query.fbo.framebuffer_attachment_x_size_initial fails</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=94468";>Bug 94468</a> - [HSW, regression, bisected] numerous Sascha demos render incorrectly</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=94481";>Bug 94481</a> - softpipe - access violation in img_filter_2d_nearest</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=94485";>Bug 94485</a> - dEQP-GLES3.functional.negative_api.shader.compile_shader and delete_shader broken by Meta</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=94524";>Bug 94524</a> - Wrong gl_TessLevelOuter interpretation for isolines</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=94595";>Bug 94595</a> - [Mesa AMD&amp;swrast] Texture views attached as framebuffers return their viewed tecture's color encoding and render incorrectly</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=94657";>Bug 94657</a> - [llvmpipe] [softpipe] piglit arb_texture_view-getteximage-srgb regression</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=94661";>Bug 94661</a> - [bdw, skl] vk-cts: new test failing</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=94671";>Bug 94671</a> - [radeonsi] Blue-ish textures in Shadow of Mordor</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=94713";>Bug 94713</a> - [Gen8+] ES 3.1 Stencil texturing broken for 2DArray/Cubes</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=94747";>Bug 94747</a> - Convert phi nodes to logical operations</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=94835";>Bug 94835</a> - Increase fragment shader sample limits from 16 to 32 (AMD Linux - Mesa/RadeonSi)</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=94847";>Bug 94847</a> - [ES3.1CTS] es31-cts.draw_buffers_indexed.color_masks fails</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=94896";>Bug 94896</a> - [vulkan] new CTS tests fail on i965</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=94904";>Bug 94904</a> - [vulkan, BSW] dEQP-VK.api.object_management.multithreaded_per_thread_device intermittent crash</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=94907";>Bug 94907</a> - codegen/nv50_ir_ra.cpp:1330:29: error: ‘isinf’ was not declared in this scope</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=94909";>Bug 94909</a> - [llvmpipe] piglit fs-roundEven-float regression</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=94917";>Bug 94917</a> - radeonsi supports GL_ARB_shader_storage_buffer_object with 0 GL_MAX_COMBINED_SHADER_STORAGE_BLOCKS</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=94924";>Bug 94924</a> - [GEN8] Ungine Valley fails to run due to &quot;intel_do_flush_locked failed: Input/output error&quot;</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=94925";>Bug 94925</a> - Crash in egl_dri3_get_dri_context with Dolphin EGL/X11 in single-core mode</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=94944";>Bug 94944</a> - [regression, hswgt1] gpu hang on arb_shader_image_load_store</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=94955";>Bug 94955</a> - Uninitialized variables leads to random segfaults (valgrind log, apitrace attached)</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=94969";>Bug 94969</a> - build fails because install-data-local doesn't follow $DESTDIR</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=94972";>Bug 94972</a> - blend failures on llvmpipe with llvm 3.7 due to vector selects</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=94979";>Bug 94979</a> - dolphin-emu rendering broken on gallium/SWR + crashing often</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=94984";>Bug 94984</a> - XCom2 crashes with SIGSEGV on radeonsi</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=94994";>Bug 94994</a> - OSMesaGetProcAdress always fails on mangled OSMesa</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=94997";>Bug 94997</a> - [vulkan, SKL,BDW,HSW] deqp-vk.spirv_assembly.instruction.compute.opcopymemory.array regression</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=94998";>Bug 94998</a> - [vulkan] deqp-vk.pipeline.push_constant.graphics_pipeline.count_3shader_vgf regression</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=95001";>Bug 95001</a> - [vulkan] deqp-vk.binding_model.shader_access regression</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=95005";>Bug 95005</a> - Unreal engine demos segfault after shader compilation error with OpenGL 4.3</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=95026";>Bug 95026</a> - Alien Isolation segfault after initial loading screen/video</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=95034";>Bug 95034</a> - vkResetCommandPool should not destroy the command buffers.</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=95071";>Bug 95071</a> - [bisected] Wrong colors in KDE/Qt applications</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=95133";>Bug 95133</a> - X-COM Enemy Within crashes when entering tactical mission with Bonaire</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=95138";>Bug 95138</a> - [deqp, 32bit, gen8+] deqp-gles31.functional.draw_indirect.negative</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=95142";>Bug 95142</a> - [ES3.1CTS,GEN8] ESEXT-CTS.draw_elements_base_vertex_tests.invalid_mapped_bos assertion</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=95158";>Bug 95158</a> - glx-test compilation fails in `make check`</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=95164";>Bug 95164</a> - GLSL compiler (linker I think) emits assertion upon call to glAttachShader</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=95180";>Bug 95180</a> - rasterizer/memory/Convert.h:170:9: error: ‘__builtin_isnan’ is not a member of ‘std’</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=95198";>Bug 95198</a> - Shadow of Mordor beta has missing geometry with gl 4.3</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=95203";>Bug 95203</a> - Tonga GST/OMX/VCE encode broken since mesa: st/omx: Fix resource leak on OMX_ErrorNone</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=95211";>Bug 95211</a> - scons TypeError: 'tuple' object is not callable</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=95246";>Bug 95246</a> - Segfault in glBindFramebuffer()</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=95251";>Bug 95251</a> - vdpau decoder capabilities: not supported</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=95252";>Bug 95252</a> - [deqp] deqp-gles31.functional.debug.object_labels.query_length_only crashes</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=95292";>Bug 95292</a> - [IVB,SKL] vulkan: stride/tiling issue with vkCmdCopyBufferToImage from larger source buffer into destination image</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=95296";>Bug 95296</a> - nir_lower_double_packing.c:79:4: error: void function 'lower_double_pack_impl' should not return a value [-Wreturn-type]</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=95324";>Bug 95324</a> - GL33-CTS.gtf32.GL3Tests.packed_pixels.packed_pixels_pbo fails in one case on Haswell</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=95370";>Bug 95370</a> - [965GM] piglit fails many tests after a5d7e144</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=95373";>Bug 95373</a> - Suspicious warning in brw_blorp_clear.cpp</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=95403";>Bug 95403</a> - [GK110] misaligned_gpr spamming dmesg when playing victor vran</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=95419";>Bug 95419</a> - [HSW][regression][bisect] RPG Maker game gives &quot;invalid floating point operation&quot; at startup</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=95456";>Bug 95456</a> - glXGetFBConfigs has invalid screen bounds</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=95462";>Bug 95462</a> - [BXT,BSW] arb_gpu_shader_fp64 causes gpu hang</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=95529";>Bug 95529</a> - [regression, bisected] Image corruption in Chrome</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=95537";>Bug 95537</a> - Invalid argument  in anv_ioctl called from anv_physical_device_init</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=96221";>Bug 96221</a> - nir/nir_lower_tex.c:202: error: unknown field ‘f32’ specified in initializer</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=96228";>Bug 96228</a> - SSBO test regressions from mesa 5b267509</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=96236";>Bug 96236</a> - dri_interface.h:404: error: redefinition of typedef ‘mesa_glinterop_device_info’</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=96238";>Bug 96238</a> - swr fails to build outside of the main directory</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=96239";>Bug 96239</a> - [radeonsi tessellation] [R9 290/390] Random &quot;texture flickering&quot; (Shadow of Mordor, Tomb Raider, Unigine Heaven 4.0)</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=96258";>Bug 96258</a> - [NVC0] Hang when running compute program</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=96285";>Bug 96285</a> - Mesa build broken</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=96299";>Bug 96299</a> - [vulkan] 64 regressions due to mesa d5f2f32</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=96346";>Bug 96346</a> - [SNB,CTS] es2-cts.gtf.gl.atan regression</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=96349";>Bug 96349</a> - [CTS,SKL,BSW,BDW,KBL,BXT] es31-cts.arrays_of_arrays.interactionuniformbuffers3</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=96351";>Bug 96351</a> - [CTS,SKL,KBL,BXT] es2-cts.gtf.gl2extensiontests.egl_image.egl_image</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=96358";>Bug 96358</a> - SSO: wrong interface validation between GS and VS (regresion due to latest gles 3.1)</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=96425";>Bug 96425</a> - [bisected] occasional dark render in The Talos Principle</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=96504";>Bug 96504</a> - [vulkancts] compute tests crash</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=96516";>Bug 96516</a> - [bisected: 482526] &quot;clover: Update OpenCL version string to match OpenGL&quot;: clover's build fails because of missing git_sha1.h</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=96565";>Bug 96565</a> - Clive Barker's Jericho displays strange,vivid colors when motion blur enabled</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=96607";>Bug 96607</a> - [bisected] texture misrender / flicker in The Talos Principle on SKL</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=96617";>Bug 96617</a> - gl_SecondaryFragDataEXT doesn't work for extended blend func</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=96629";>Bug 96629</a> - dEQP-GLES2.functional.texture.completeness.cube.not_positive_level_0: Assertion `width &gt;= 1' failed.</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=96639";>Bug 96639</a> - st/mesa: transfer_map with too-high level with dEQP-GLES2.functional.texture.completeness.cube.extra_level</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=96674";>Bug 96674</a> - [SNB, ILK] spec.ext_image_dma_buf_import.ext_image_dma_buf_import-sample_nv1</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=96765";>Bug 96765</a> - BindFragDataLocationIndexed on array fragment shader output.</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=96791";>Bug 96791</a> - Cannot use image from swapchains for sampling</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=96825";>Bug 96825</a> - anv_device.c:31:27: fatal error: anv_timestamp.h: No such file or directory</li>
+
+</ul>
+
 
 <h2>Changes</h2>
 
-TBD.
+Radeon drivers (r600 and radeonsi) now require LLVm 3.6 as a minimum.
 
 </div>
 </body>

commit ab8938817ff64ea8814899632e5f861d7de0fb58
Author: Emil Velikov <emil.velikov@collabora.com>
Date:   Thu Jul 7 11:39:25 2016 +0100

    Update version to 12.0.0(final)
    
    Signed-off-by: Emil Velikov <emil.velikov@collabora.com>

diff --git a/VERSION b/VERSION
index 076ead7..4044f90 100644
--- a/VERSION
+++ b/VERSION
@@ -1 +1 @@
-12.0.0-rc4
+12.0.0

commit 88a095962f0a5fddc427204bd15fe41adb1a4603
Author: Neha Bhende <bhenden@vmware.com>
Date:   Tue Jun 28 12:59:19 2016 -0700

    svga: Fix failures caused in fedora 24
    
    SVGA_3D_CMD_DX_GENRATE_MIPMAP & SVGA_3D_CMD_DX_SET_PREDICATION commands
    are not presents in fedora 24 kernel module. Because of this
    reason application like supertuxkart are not running.
    
    v2: Add few comments and code modifications suggested by Brian P.
    
    Reviewed-by: Brian Paul <brianp@vmware.com>
    Reviewed-by: Charmaine Lee <charmainel@vmware.com>
    (cherry picked from commit 7988513ac3d86ba367fbe44e73fe483ff96aaa29)

diff --git a/src/gallium/drivers/svga/svga_pipe_query.c b/src/gallium/drivers/svga/svga_pipe_query.c
index 4febf9b..65e58fe 100644
--- a/src/gallium/drivers/svga/svga_pipe_query.c
+++ b/src/gallium/drivers/svga/svga_pipe_query.c
@@ -1219,13 +1219,19 @@ svga_render_condition(struct pipe_context *pipe, struct pipe_query *q,
          sws->fence_finish(sws, sq->fence, SVGA_FENCE_FLAG_QUERY);
       }
    }
-
-   ret = SVGA3D_vgpu10_SetPredication(svga->swc, queryId,
-                                      (uint32) condition);
-   if (ret != PIPE_OK) {
-      svga_context_flush(svga, NULL);
+   /*
+    * if the kernel module doesn't support the predication command,
+    * we'll just render unconditionally.
+    * This is probably acceptable for the typical case of occlusion culling.
+    */
+   if (sws->have_set_predication_cmd) {
       ret = SVGA3D_vgpu10_SetPredication(svga->swc, queryId,
                                          (uint32) condition);
+      if (ret != PIPE_OK) {
+         svga_context_flush(svga, NULL);
+         ret = SVGA3D_vgpu10_SetPredication(svga->swc, queryId,
+                                            (uint32) condition);
+      }
    }
 }
 
diff --git a/src/gallium/drivers/svga/svga_screen.c b/src/gallium/drivers/svga/svga_screen.c
index 173873f..84858af 100644
--- a/src/gallium/drivers/svga/svga_screen.c
+++ b/src/gallium/drivers/svga/svga_screen.c
@@ -320,7 +320,7 @@ svga_get_param(struct pipe_screen *screen, enum pipe_cap param)
       return 1; /* may be a sw fallback, depending on restart index */
 
    case PIPE_CAP_GENERATE_MIPMAP:
-      return sws->have_vgpu10;
+      return sws->have_generate_mipmap_cmd;
 
    /* Unsupported features */
    case PIPE_CAP_QUADS_FOLLOW_PROVOKING_VERTEX_CONVENTION:
diff --git a/src/gallium/drivers/svga/svga_winsys.h b/src/gallium/drivers/svga/svga_winsys.h
index 7da2c4e..b96a8e4 100644
--- a/src/gallium/drivers/svga/svga_winsys.h
+++ b/src/gallium/drivers/svga/svga_winsys.h
@@ -544,6 +544,9 @@ struct svga_winsys_screen
 
    /** To rebind resources at the beginnning of a new command buffer */
    boolean need_to_rebind_resources;
+
+   boolean have_generate_mipmap_cmd;
+   boolean have_set_predication_cmd;
 };
 
 
diff --git a/src/gallium/winsys/svga/drm/vmw_screen_ioctl.c b/src/gallium/winsys/svga/drm/vmw_screen_ioctl.c
index 7fc93e7..1740d1a 100644
--- a/src/gallium/winsys/svga/drm/vmw_screen_ioctl.c
+++ b/src/gallium/winsys/svga/drm/vmw_screen_ioctl.c
@@ -1022,6 +1022,17 @@ vmw_ioctl_init(struct vmw_winsys_screen *vws)
 		   " (%i, %s).\n", ret, strerror(-ret));
       goto out_no_caps;
    }
+
+   if (((version->version_major == 2 && version->version_minor >= 10)
+       || version->version_major > 2) && vws->base.have_vgpu10) {
+
+     /* support for these commands didn't make it into vmwgfx kernel
+      * modules before 2.10.
+      */
+      vws->base.have_generate_mipmap_cmd = TRUE;
+      vws->base.have_set_predication_cmd = TRUE;
+   }
+
    free(cap_buffer);
    drmFreeVersion(version);
    vmw_printf("%s OK\n", __FUNCTION__);

commit 450f076482ecd377d32f6b639829561c65ef8772
Author: Ilia Mirkin <imirkin@alum.mit.edu>
Date:   Fri Jul 1 19:10:36 2016 -0400

    glsl: don't try to lower non-gl builtins as if they were gl_FragData
    
    If a shader has an output array, it will get treated as though it were
    gl_FragData and rewritten into gl_out_FragData instances. We only want
    this to happen on the actual gl_FragData and not everything else.
    
    This is a small part of the problem pointed out by the below bug.
    
    Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=96765
    Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu>
    Reviewed-by: Marek Olšák <marek.olsak@amd.com>
    Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
    Cc: "11.2 12.0" <mesa-stable@lists.freedesktop.org>
    (cherry picked from commit a37e46323c7e18bec4160f2f66847c10b7041dc1)

diff --git a/src/compiler/glsl/opt_dead_builtin_varyings.cpp b/src/compiler/glsl/opt_dead_builtin_varyings.cpp
index 2e40b78..a85ac48 100644
--- a/src/compiler/glsl/opt_dead_builtin_varyings.cpp
+++ b/src/compiler/glsl/opt_dead_builtin_varyings.cpp
@@ -85,7 +85,8 @@ public:
    {
       ir_variable *var = ir->variable_referenced();
 
-      if (!var || var->data.mode != this->mode || !var->type->is_array())
+      if (!var || var->data.mode != this->mode || !var->type->is_array() ||
+          !is_gl_identifier(var->name))
          return visit_continue;
 
       /* Only match gl_FragData[], not gl_SecondaryFragDataEXT[] */

commit 168fdc6a0799456bdce2b6b4023ebe16e455661d
Author: Emil Velikov <emil.velikov@collabora.com>
Date:   Thu Jul 7 11:51:13 2016 +0100

    bugzilla_mesa.sh: Drop "Bug " from sed command
    
    After a recent Bugzilla update the word is no longer in the title. Thus
    the script ended up producing bogus HTML.
    
    Cc: "11.2 12.0" <mesa-stable@lists.freedesktop.org>
    Signed-off-by: Emil Velikov <emil.velikov@collabora.com>
    (cherry picked from commit f35f8464ecf35de769629d316db620472a92f995)

diff --git a/bin/bugzilla_mesa.sh b/bin/bugzilla_mesa.sh
index 0cff426..49b9ce9 100755
--- a/bin/bugzilla_mesa.sh
+++ b/bin/bugzilla_mesa.sh
@@ -40,7 +40,7 @@ else
 	for i in $urls
 	do
 		id=$(echo $i | cut -d'=' -f2)
-		summary=$(wget --quiet -O - $i | grep -e '<title>.*</title>' | sed -e 's/ *<title>Bug [0-9]\+ &ndash; \(.*\)<\/title>/\1/')
+		summary=$(wget --quiet -O - $i | grep -e '<title>.*</title>' | sed -e 's/ *<title>[0-9]\+ &ndash; \(.*\)<\/title>/\1/')
 		echo "<li><a href=\"$i\">Bug $id</a> - $summary</li>"
 		echo ""
 	done

commit 5193fe9f4fe9c2d537afb051323724a399abc4e1
Author: Akihiko Odaki <akihiko.odaki.4i@stu.hosei.ac.jp>
Date:   Sun Jun 26 10:54:35 2016 +0900

    mesa: don't install GLX files if GLX is not built
    
    Cc: "11.2 12.0" <mesa-stable@lists.freedesktop.org>
    Signed-off-by: Akihiko Odaki <akihiko.odaki.4i@stu.hosei.ac.jp>
    [Emil Velikov: Drop guards around dri_interface.h, add stable tag]
    Signed-off-by: Emil Velikov <emil.velikov@collabora.com>
    
    (cherry picked from commit 42968424fb4100f2035badf236b005cc8d62a592)

diff --git a/configure.ac b/configure.ac
index 16616a9..78f3041 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1060,6 +1060,7 @@ xno)
     ;;
 esac
 
+AM_CONDITIONAL(HAVE_GLX, test "x$enable_glx" != xno)
 AM_CONDITIONAL(HAVE_DRI_GLX, test "x$enable_glx" = xdri)
 AM_CONDITIONAL(HAVE_XLIB_GLX, test "x$enable_glx" = xxlib)
 AM_CONDITIONAL(HAVE_GALLIUM_XLIB_GLX, test "x$enable_glx" = xgallium-xlib)
diff --git a/src/mesa/Makefile.am b/src/mesa/Makefile.am
index 6d7a3cc..037384a 100644
--- a/src/mesa/Makefile.am
+++ b/src/mesa/Makefile.am
@@ -33,8 +33,10 @@ if HAVE_OSMESA
 SUBDIRS += drivers/osmesa
 endif
 
+if HAVE_GLX
 gldir = $(includedir)/GL
 gl_HEADERS = $(top_srcdir)/include/GL/*.h
+endif
 
 include Makefile.sources
 
@@ -159,8 +161,10 @@ libmesa_sse41_la_SOURCES = \
 
 libmesa_sse41_la_CFLAGS = $(AM_CFLAGS) $(SSE41_CFLAGS)
 
+if HAVE_GLX
 pkgconfigdir = $(libdir)/pkgconfig
 pkgconfig_DATA = gl.pc
+endif
 
 MKDIR_GEN = $(AM_V_at)$(MKDIR_P) $(@D)
 YACC_GEN = $(AM_V_GEN)$(YACC) $(YFLAGS)

commit 4a3d510b5b0ae2160a84c92fe9f71030786b865e
Author: Mathias Fröhlich <mathias.froehlich@web.de>
Date:   Fri Jul 1 07:13:46 2016 +0200

    osmesa: Export OSMesaCreateContextAttribs.
    
    Since the function is exported like any other
    public api function and put in the header
    as if you could link against it, export it also
    from shared objects.
    
    Signed-off-by: Mathias Fröhlich <Mathias.Froehlich@web.de>
    Reviewed-by: Brian Paul <brianp@vmware.com>
    Cc: "11.2 12.0" <mesa-stable@lists.freedesktop.org>
    (cherry picked from commit 13affe0d3f2756771edfab301f31dc69185f91f7)

diff --git a/src/gallium/targets/osmesa/osmesa.def b/src/gallium/targets/osmesa/osmesa.def
index e347463..f6d09b8 100644
--- a/src/gallium/targets/osmesa/osmesa.def
+++ b/src/gallium/targets/osmesa/osmesa.def
@@ -3,6 +3,7 @@ VERSION 4.1
 
 EXPORTS
 	OSMesaCreateContext
+	OSMesaCreateContextAttribs
 	OSMesaCreateContextExt
 	OSMesaDestroyContext
 	OSMesaMakeCurrent
diff --git a/src/gallium/targets/osmesa/osmesa.mingw.def b/src/gallium/targets/osmesa/osmesa.mingw.def
index 945201c..b77af60 100644
--- a/src/gallium/targets/osmesa/osmesa.mingw.def
+++ b/src/gallium/targets/osmesa/osmesa.mingw.def
@@ -1,5 +1,6 @@
 EXPORTS
 	OSMesaCreateContext = OSMesaCreateContext@8
+	OSMesaCreateContextAttribs = OSMesaCreateContextAttribs@8
 	OSMesaCreateContextExt = OSMesaCreateContextExt@20
 	OSMesaDestroyContext = OSMesaDestroyContext@4
 	OSMesaMakeCurrent = OSMesaMakeCurrent@20
diff --git a/src/gallium/targets/osmesa/osmesa.sym b/src/gallium/targets/osmesa/osmesa.sym
index d4b963d..59beab3 100644
--- a/src/gallium/targets/osmesa/osmesa.sym
+++ b/src/gallium/targets/osmesa/osmesa.sym
@@ -2,6 +2,7 @@
 	global:
 		OSMesaColorClamp;
 		OSMesaCreateContext;
+		OSMesaCreateContextAttribs;
 		OSMesaCreateContextExt;
 		OSMesaDestroyContext;
 		OSMesaGetColorBuffer;
diff --git a/src/mesa/drivers/osmesa/osmesa.def b/src/mesa/drivers/osmesa/osmesa.def
index 06afab7..f7dcd59 100644
--- a/src/mesa/drivers/osmesa/osmesa.def
+++ b/src/mesa/drivers/osmesa/osmesa.def
@@ -4,6 +4,7 @@ VERSION 4.1
 EXPORTS
 	OSMesaColorClamp
 	OSMesaCreateContext
+	OSMesaCreateContextAttribs
 	OSMesaCreateContextExt
 	OSMesaDestroyContext
 	OSMesaMakeCurrent

commit 63b7c6ffc8aa79db7097c051dd28ce9541a07489
Author: Rob Clark <robclark@freedesktop.org>
Date:   Fri Jun 24 14:28:51 2016 -0400

    glsl: add driconf to zero-init unintialized vars
    
    Some games are sloppy.. perhaps because it is defined behavior for DX or
    perhaps because nv blob driver defaults things to zero.
    
    So add driconf param to force uninitialized variables to default to zero.
    
    This issue was observed with rust, from steam store.  But has surfaced
    elsewhere in the past.
    
    Signed-off-by: Rob Clark <robclark@freedesktop.org>
    Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
    (cherry picked from commit f78a6b1ce398a537d77c25b1a93f156109086975)

diff --git a/src/compiler/glsl/ast_to_hir.cpp b/src/compiler/glsl/ast_to_hir.cpp
index c6f0f3b..405f9f7 100644
--- a/src/compiler/glsl/ast_to_hir.cpp
+++ b/src/compiler/glsl/ast_to_hir.cpp
@@ -4697,6 +4697,14 @@ ast_declarator_list::hir(exec_list *instructions,
       apply_layout_qualifier_to_variable(&this->type->qualifier, var, state,
                                          &loc);
 
+      if ((var->data.mode == ir_var_auto || var->data.mode == ir_var_temporary)
+          && (var->type->is_numeric() || var->type->is_boolean())
+          && state->zero_init) {
+         const ir_constant_data data = {0};
+         var->data.has_initializer = true;
+         var->constant_initializer = new(var) ir_constant(var->type, &data);
+      }
+
       if (this->type->qualifier.flags.q.invariant) {
          if (!is_varying_var(var, state->stage)) {
             _mesa_glsl_error(&loc, state,
diff --git a/src/compiler/glsl/glsl_parser_extras.cpp b/src/compiler/glsl/glsl_parser_extras.cpp
index ba658ae..221d7f5 100644
--- a/src/compiler/glsl/glsl_parser_extras.cpp
+++ b/src/compiler/glsl/glsl_parser_extras.cpp
@@ -74,6 +74,7 @@ _mesa_glsl_parse_state::_mesa_glsl_parse_state(struct gl_context *_ctx,
    /* Set default language version and extensions */
    this->language_version = 110;
    this->forced_language_version = ctx->Const.ForceGLSLVersion;
+   this->zero_init = ctx->Const.GLSLZeroInit;
    this->es_shader = false;
    this->ARB_texture_rectangle_enable = true;
 
diff --git a/src/compiler/glsl/glsl_parser_extras.h b/src/compiler/glsl/glsl_parser_extras.h
index a0c1903..84e7bc3 100644
--- a/src/compiler/glsl/glsl_parser_extras.h
+++ b/src/compiler/glsl/glsl_parser_extras.h
@@ -306,6 +306,7 @@ struct _mesa_glsl_parse_state {
    bool es_shader;
    unsigned language_version;
    unsigned forced_language_version;
+   bool zero_init;
    gl_shader_stage stage;
 
    /**
diff --git a/src/gallium/include/state_tracker/st_api.h b/src/gallium/include/state_tracker/st_api.h
index 356863d..f326459 100644
--- a/src/gallium/include/state_tracker/st_api.h
+++ b/src/gallium/include/state_tracker/st_api.h
@@ -247,6 +247,7 @@ struct st_config_options
    unsigned force_glsl_version;
    boolean force_s3tc_enable;
    boolean allow_glsl_extension_directive_midshader;
+   boolean glsl_zero_init;
 };
 
 /**
diff --git a/src/gallium/state_trackers/dri/dri_screen.c b/src/gallium/state_trackers/dri/dri_screen.c
index 2ac55c8..b16585a 100644
--- a/src/gallium/state_trackers/dri/dri_screen.c
+++ b/src/gallium/state_trackers/dri/dri_screen.c
@@ -74,6 +74,7 @@ const __DRIconfigOptionsExtension gallium_config_options = {
 
       DRI_CONF_SECTION_MISCELLANEOUS
          DRI_CONF_ALWAYS_HAVE_DEPTH_BUFFER("false")
+         DRI_CONF_GLSL_ZERO_INIT("false")
       DRI_CONF_SECTION_END
    DRI_CONF_END
 };
@@ -98,6 +99,7 @@ dri_fill_st_options(struct st_config_options *options,
       driQueryOptionb(optionCache, "force_s3tc_enable");
    options->allow_glsl_extension_directive_midshader =
       driQueryOptionb(optionCache, "allow_glsl_extension_directive_midshader");
+   options->glsl_zero_init = driQueryOptionb(optionCache, "glsl_zero_init");
 }
 
 static const __DRIconfig **
diff --git a/src/mesa/drivers/dri/common/drirc b/src/mesa/drivers/dri/common/drirc
index 3912d8b..af84ee8 100644
--- a/src/mesa/drivers/dri/common/drirc
+++ b/src/mesa/drivers/dri/common/drirc
@@ -96,5 +96,9 @@ TODO: document the other workarounds.
         <application name="Warsow (64-bit)" executable="warsow.x86_64">
             <option name="allow_glsl_extension_directive_midshader" value="true" />
         </application>
+
+        <application name="Rust" executable="rust">
+            <option name="glsl_zero_init" value="true"/>
+        </application>
     </device>
 </driconf>
diff --git a/src/mesa/drivers/dri/common/xmlpool/t_options.h b/src/mesa/drivers/dri/common/xmlpool/t_options.h
index e5cbc46..1e5da9e 100644
--- a/src/mesa/drivers/dri/common/xmlpool/t_options.h
+++ b/src/mesa/drivers/dri/common/xmlpool/t_options.h
@@ -332,7 +332,10 @@ DRI_CONF_OPT_BEGIN_B(always_have_depth_buffer, def) \
         DRI_CONF_DESC(en,gettext("Create all visuals with a depth buffer")) \
 DRI_CONF_OPT_END
 
-
+#define DRI_CONF_GLSL_ZERO_INIT(def) \
+DRI_CONF_OPT_BEGIN_B(glsl_zero_init, def) \
+        DRI_CONF_DESC(en,gettext("Force uninitialized variables to default to zero")) \
+DRI_CONF_OPT_END
 
 /**
  * \brief Initialization configuration options
diff --git a/src/mesa/drivers/dri/i965/brw_context.c b/src/mesa/drivers/dri/i965/brw_context.c
index 0da0608..8954827 100644
--- a/src/mesa/drivers/dri/i965/brw_context.c
+++ b/src/mesa/drivers/dri/i965/brw_context.c
@@ -823,6 +823,8 @@ brw_process_driconf_options(struct brw_context *brw)
    ctx->Const.AllowGLSLExtensionDirectiveMidShader =
       driQueryOptionb(options, "allow_glsl_extension_directive_midshader");
 
+   ctx->Const.GLSLZeroInit = driQueryOptionb(options, "glsl_zero_init");
+
    brw->dual_color_blend_by_location =
       driQueryOptionb(options, "dual_color_blend_by_location");
 }
diff --git a/src/mesa/drivers/dri/i965/intel_screen.c b/src/mesa/drivers/dri/i965/intel_screen.c
index 1330cac..50c7c95 100644
--- a/src/mesa/drivers/dri/i965/intel_screen.c
+++ b/src/mesa/drivers/dri/i965/intel_screen.c
@@ -86,6 +86,10 @@ DRI_CONF_BEGIN
 	 DRI_CONF_DESC(en, "Perform code generation at shader link time.")
       DRI_CONF_OPT_END
    DRI_CONF_SECTION_END
+
+   DRI_CONF_SECTION_MISCELLANEOUS
+      DRI_CONF_GLSL_ZERO_INIT("false")
+   DRI_CONF_SECTION_END
 DRI_CONF_END
 };
 
diff --git a/src/mesa/main/mtypes.h b/src/mesa/main/mtypes.h
index f1d70fb..c9ed221 100644
--- a/src/mesa/main/mtypes.h
+++ b/src/mesa/main/mtypes.h
@@ -3537,6 +3537,11 @@ struct gl_constants
    GLboolean AllowGLSLExtensionDirectiveMidShader;
 
    /**
+    * Force uninitialized variables to default to zero.
+    */
+   GLboolean GLSLZeroInit;
+
+   /**
     * Does the driver support real 32-bit integers?  (Otherwise, integers are
     * simulated via floats.)
     */
diff --git a/src/mesa/state_tracker/st_extensions.c b/src/mesa/state_tracker/st_extensions.c
index 383983b..b0d11fb 100644


Reply to: