<feed xmlns='http://www.w3.org/2005/Atom'>
<title>external_mesa3d/src/compiler, branch replicant-6.0</title>
<subtitle>external/mesa3d
</subtitle>
<link rel='alternate' type='text/html' href='https://git.replicant.us/replicant/external_mesa3d/'/>
<entry>
<title>Merge remote-tracking branch 'mesa/13.0' into nougat-x86</title>
<updated>2017-01-08T16:30:27+00:00</updated>
<author>
<name>Chih-Wei Huang</name>
<email>cwhuang@linux.org.tw</email>
</author>
<published>2017-01-08T16:30:27+00:00</published>
<link rel='alternate' type='text/html' href='https://git.replicant.us/replicant/external_mesa3d/commit/?id=e123ad753c152491c07a5cc6d346f62624b07949'/>
<id>e123ad753c152491c07a5cc6d346f62624b07949</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>glsl: Add pthread libs to cache_test</title>
<updated>2016-12-24T13:03:53+00:00</updated>
<author>
<name>Rhys Kidd</name>
<email>rhyskidd@gmail.com</email>
</author>
<published>2016-10-26T04:13:24+00:00</published>
<link rel='alternate' type='text/html' href='https://git.replicant.us/replicant/external_mesa3d/commit/?id=241dc4634f47113243ddc6d02d4d73fc6f4e98e9'/>
<id>241dc4634f47113243ddc6d02d4d73fc6f4e98e9</id>
<content type='text'>
Fixes the following compile error, present when the SHA1 library is libgcrypt:

  CCLD     glsl/tests/cache-test
glsl/.libs/libglsl.a(libmesautil_la-mesa-sha1.o): In function `call_once':
/mesa/src/util/../../include/c11/threads_posix.h:96: undefined reference to `pthread_once'

Signed-off-by: Rhys Kidd &lt;rhyskidd@gmail.com&gt;
Reviewed-by: Timothy Arceri &lt;timothy.arceri@collabora.com&gt;
(cherry picked from commit 5c73ecaac487eba36e15f22be2e9396c4a0ffe46)
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Fixes the following compile error, present when the SHA1 library is libgcrypt:

  CCLD     glsl/tests/cache-test
glsl/.libs/libglsl.a(libmesautil_la-mesa-sha1.o): In function `call_once':
/mesa/src/util/../../include/c11/threads_posix.h:96: undefined reference to `pthread_once'

Signed-off-by: Rhys Kidd &lt;rhyskidd@gmail.com&gt;
Reviewed-by: Timothy Arceri &lt;timothy.arceri@collabora.com&gt;
(cherry picked from commit 5c73ecaac487eba36e15f22be2e9396c4a0ffe46)
</pre>
</div>
</content>
</entry>
<entry>
<title>Revert "nir: Turn imov/fmov of undef into undef."</title>
<updated>2016-12-16T13:01:00+00:00</updated>
<author>
<name>Timothy Arceri</name>
<email>timothy.arceri@collabora.com</email>
</author>
<published>2016-12-15T05:51:13+00:00</published>
<link rel='alternate' type='text/html' href='https://git.replicant.us/replicant/external_mesa3d/commit/?id=c682fdb77c1499fa424b943be1d242a499677144'/>
<id>c682fdb77c1499fa424b943be1d242a499677144</id>
<content type='text'>
This reverts commit 6aa730000fea84a14b49828a4bb30761d43903bf.

This was changing the size of the undef to always be 1 (the number of inputs
to imov and fmov) which is wrong, we could be moving a vec4 for example.

Acked-by: Kenneth Graunke &lt;kenneth@whitecape.org&gt;
Cc: "13.0" &lt;mesa-stable@lists.freedesktop.org&gt;
(cherry picked from commit a5502a721fd30fde4f5dc71421494329052f805b)
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This reverts commit 6aa730000fea84a14b49828a4bb30761d43903bf.

This was changing the size of the undef to always be 1 (the number of inputs
to imov and fmov) which is wrong, we could be moving a vec4 for example.

Acked-by: Kenneth Graunke &lt;kenneth@whitecape.org&gt;
Cc: "13.0" &lt;mesa-stable@lists.freedesktop.org&gt;
(cherry picked from commit a5502a721fd30fde4f5dc71421494329052f805b)
</pre>
</div>
</content>
</entry>
<entry>
<title>spirv: Use a simpler and more correct implementaiton of tanh()</title>
<updated>2016-12-15T16:46:28+00:00</updated>
<author>
<name>Jason Ekstrand</name>
<email>jason.ekstrand@intel.com</email>
</author>
<published>2016-12-09T17:34:50+00:00</published>
<link rel='alternate' type='text/html' href='https://git.replicant.us/replicant/external_mesa3d/commit/?id=fb9f0a1197e10f9b1c727b5b2956f36827308ad1'/>
<id>fb9f0a1197e10f9b1c727b5b2956f36827308ad1</id>
<content type='text'>
The new implementation is more correct because it clamps the incoming value
to 10 to avoid floating-point overflow.  It also uses a much reduced
version of the formula which only requires 1 exp() rather than 2.  This
fixes all of the dEQP-VK.glsl.builtin.precision.tanh.* tests.

Reviewed-by: Kenneth Graunke &lt;kenneth@whitecape.org&gt;
Cc: "13.0" &lt;mesa-dev@lists.freedesktop.org&gt;
(cherry picked from commit da1c49171d0df185545cfbbd600e287f7c6160fa)
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The new implementation is more correct because it clamps the incoming value
to 10 to avoid floating-point overflow.  It also uses a much reduced
version of the formula which only requires 1 exp() rather than 2.  This
fixes all of the dEQP-VK.glsl.builtin.precision.tanh.* tests.

Reviewed-by: Kenneth Graunke &lt;kenneth@whitecape.org&gt;
Cc: "13.0" &lt;mesa-dev@lists.freedesktop.org&gt;
(cherry picked from commit da1c49171d0df185545cfbbd600e287f7c6160fa)
</pre>
</div>
</content>
</entry>
<entry>
<title>compiler/glsl: fix precision problem of tanh</title>
<updated>2016-12-15T16:46:11+00:00</updated>
<author>
<name>Haixia Shi</name>
<email>hshi@chromium.org</email>
</author>
<published>2016-12-09T01:41:02+00:00</published>
<link rel='alternate' type='text/html' href='https://git.replicant.us/replicant/external_mesa3d/commit/?id=41c688a6c31ac5b985a3318e082f78103f061977'/>
<id>41c688a6c31ac5b985a3318e082f78103f061977</id>
<content type='text'>
Clamp input scalar value to range [-10, +10] to avoid precision problems
when the absolute value of input is too large.

Fixes dEQP-GLES3.functional.shaders.builtin_functions.precision.tanh.* test
failures.

v2: added more explanation in the comment.
v3: fixed a typo in the comment.

Signed-off-by: Haixia Shi &lt;hshi@chromium.org&gt;
Reviewed-by: Jason Ekstrand &lt;jason@jlekstrand.net&gt;
Reviewed-by: Kenneth Graunke &lt;kenneth@whitecape.org&gt;
Cc: "13.0" &lt;mesa-dev@lists.freedesktop.org&gt;
(cherry picked from commit d4983390a869c3051929858a8b783be53d46b722)
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Clamp input scalar value to range [-10, +10] to avoid precision problems
when the absolute value of input is too large.

Fixes dEQP-GLES3.functional.shaders.builtin_functions.precision.tanh.* test
failures.

v2: added more explanation in the comment.
v3: fixed a typo in the comment.

Signed-off-by: Haixia Shi &lt;hshi@chromium.org&gt;
Reviewed-by: Jason Ekstrand &lt;jason@jlekstrand.net&gt;
Reviewed-by: Kenneth Graunke &lt;kenneth@whitecape.org&gt;
Cc: "13.0" &lt;mesa-dev@lists.freedesktop.org&gt;
(cherry picked from commit d4983390a869c3051929858a8b783be53d46b722)
</pre>
</div>
</content>
</entry>
<entry>
<title>mesa: fix active subroutine uniforms properly</title>
<updated>2016-12-14T19:03:10+00:00</updated>
<author>
<name>Timothy Arceri</name>
<email>timothy.arceri@collabora.com</email>
</author>
<published>2016-11-26T23:31:01+00:00</published>
<link rel='alternate' type='text/html' href='https://git.replicant.us/replicant/external_mesa3d/commit/?id=7f2ee55aacaf1aae80d276ef9b7a0b12cc1c71f1'/>
<id>7f2ee55aacaf1aae80d276ef9b7a0b12cc1c71f1</id>
<content type='text'>
07fe2d565b introduced a big hack in order to return
NumSubroutineUniforms when querying ACTIVE_RESOURCES for
&lt;shader&gt;_SUBROUTINE_UNIFORM interfaces. However this is the
wrong fix we are meant to be returning the number of active
resources i.e. the count of subroutine uniforms in the
resource list which is what the code was previously doing,
anything else will cause trouble when trying to retrieve
the resource properties based on the ACTIVE_RESOURCES count.

The real problem is that NumSubroutineUniforms was counting
array elements as separate uniforms but the innermost array
is always considered a single uniform so we fix that count
instead which was counted incorrectly in 7fa0250f9.

Idealy we could probably completely remove
NumSubroutineUniforms and just compute its value when needed
from the resource list but this works for now.

Reviewed-by: Alejandro Piñeiro &lt;apinheiro@igalia.com&gt;
Reviewed-by: Tapani Pälli &lt;tapani.palli@intel.com&gt;
Cc: 13.0 &lt;mesa-stable@lists.freedesktop.org&gt;
(cherry picked from commit 0303201dfb73c16751d5519cca7480fa678d429a)
[Emil Velikov: LinkStatus is in gl_shader_program]
Signed-off-by: Emil Velikov &lt;emil.velikov@collabora.com&gt;

Conflicts:
	src/mesa/main/program_resource.c
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
07fe2d565b introduced a big hack in order to return
NumSubroutineUniforms when querying ACTIVE_RESOURCES for
&lt;shader&gt;_SUBROUTINE_UNIFORM interfaces. However this is the
wrong fix we are meant to be returning the number of active
resources i.e. the count of subroutine uniforms in the
resource list which is what the code was previously doing,
anything else will cause trouble when trying to retrieve
the resource properties based on the ACTIVE_RESOURCES count.

The real problem is that NumSubroutineUniforms was counting
array elements as separate uniforms but the innermost array
is always considered a single uniform so we fix that count
instead which was counted incorrectly in 7fa0250f9.

Idealy we could probably completely remove
NumSubroutineUniforms and just compute its value when needed
from the resource list but this works for now.

Reviewed-by: Alejandro Piñeiro &lt;apinheiro@igalia.com&gt;
Reviewed-by: Tapani Pälli &lt;tapani.palli@intel.com&gt;
Cc: 13.0 &lt;mesa-stable@lists.freedesktop.org&gt;
(cherry picked from commit 0303201dfb73c16751d5519cca7480fa678d429a)
[Emil Velikov: LinkStatus is in gl_shader_program]
Signed-off-by: Emil Velikov &lt;emil.velikov@collabora.com&gt;

Conflicts:
	src/mesa/main/program_resource.c
</pre>
</div>
</content>
</entry>
<entry>
<title>Merge remote-tracking branch 'mesa/13.0' into nougat-x86</title>
<updated>2016-11-25T04:05:07+00:00</updated>
<author>
<name>Chih-Wei Huang</name>
<email>cwhuang@linux.org.tw</email>
</author>
<published>2016-11-25T04:05:07+00:00</published>
<link rel='alternate' type='text/html' href='https://git.replicant.us/replicant/external_mesa3d/commit/?id=524121d42bfdf8c1bd3565bd2adb0ffd7b52713f'/>
<id>524121d42bfdf8c1bd3565bd2adb0ffd7b52713f</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>util/disk_cache: close a previously opened handle in disk_cache_put (v2)</title>
<updated>2016-11-24T16:34:41+00:00</updated>
<author>
<name>Gwan-gyeong Mun</name>
<email>elongbug@gmail.com</email>
</author>
<published>2016-11-21T15:21:23+00:00</published>
<link rel='alternate' type='text/html' href='https://git.replicant.us/replicant/external_mesa3d/commit/?id=c19a3311398bdb6a2fd408f017f16a73ad8a801c'/>
<id>c19a3311398bdb6a2fd408f017f16a73ad8a801c</id>
<content type='text'>
We're missing the close() to the matching open().

CID 1373407

v2: Fixes from Emil Velikov's review
    Update the teardown in reverse order of the setup/init.

Cc: "13.0" &lt;mesa-stable@lists.freedesktop.org&gt;
Signed-off-by: Mun Gwan-gyeong &lt;elongbug@gmail.com&gt;
Reviewed-by: Emil Velikov &lt;emil.velikov@collabora.com&gt;
Reviewed-by: Iago Toral Quiroga &lt;itoral@igalia.com&gt; (v1)
(cherry picked from commit 69cc7d90f9f60d95cd570a4e87755a474554d41f)
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
We're missing the close() to the matching open().

CID 1373407

v2: Fixes from Emil Velikov's review
    Update the teardown in reverse order of the setup/init.

Cc: "13.0" &lt;mesa-stable@lists.freedesktop.org&gt;
Signed-off-by: Mun Gwan-gyeong &lt;elongbug@gmail.com&gt;
Reviewed-by: Emil Velikov &lt;emil.velikov@collabora.com&gt;
Reviewed-by: Iago Toral Quiroga &lt;itoral@igalia.com&gt; (v1)
(cherry picked from commit 69cc7d90f9f60d95cd570a4e87755a474554d41f)
</pre>
</div>
</content>
</entry>
<entry>
<title>glsl/lower_output_reads: fix geometry shader output handling with conditional emit</title>
<updated>2016-11-24T16:34:41+00:00</updated>
<author>
<name>Nicolai Hähnle</name>
<email>nicolai.haehnle@amd.com</email>
</author>
<published>2016-11-17T20:55:38+00:00</published>
<link rel='alternate' type='text/html' href='https://git.replicant.us/replicant/external_mesa3d/commit/?id=63e2bb2f36f4d51bc6223ed22da6aac1766868a4'/>
<id>63e2bb2f36f4d51bc6223ed22da6aac1766868a4</id>
<content type='text'>
Consider a geometry shader that contains code like this:

   some_out = expr;

   if (cond) {
      ...
      EmitVertex();
   } else {
      ...
      EmitVertex();
   }

Both branches should see the correct value of some_out.

Since this is a rather subtle and rare case, I'm submitting a piglit test
for this as well.

GLSL says that the values of output variables are undefined after
EmitVertex(). With this change, the values will now be defined and
unmodified. This may reduce optimization opportunities in the probably
quite rare case where subsequent compiler passes cannot prove that the
value of the output variable is overwritten.

Cc: 13.0 &lt;mesa-stable@lists.freedesktop.org&gt;
Reviewed-by: Edward O'Callaghan &lt;funfunctor@folklore1984.net&gt;
Reviewed-by: Marek Olšák &lt;marek.olsak@amd.com&gt;
(cherry picked from commit 0d383a79a8f13bb00ed5e5d84f41071b43c7e92d)
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Consider a geometry shader that contains code like this:

   some_out = expr;

   if (cond) {
      ...
      EmitVertex();
   } else {
      ...
      EmitVertex();
   }

Both branches should see the correct value of some_out.

Since this is a rather subtle and rare case, I'm submitting a piglit test
for this as well.

GLSL says that the values of output variables are undefined after
EmitVertex(). With this change, the values will now be defined and
unmodified. This may reduce optimization opportunities in the probably
quite rare case where subsequent compiler passes cannot prove that the
value of the output variable is overwritten.

Cc: 13.0 &lt;mesa-stable@lists.freedesktop.org&gt;
Reviewed-by: Edward O'Callaghan &lt;funfunctor@folklore1984.net&gt;
Reviewed-by: Marek Olšák &lt;marek.olsak@amd.com&gt;
(cherry picked from commit 0d383a79a8f13bb00ed5e5d84f41071b43c7e92d)
</pre>
</div>
</content>
</entry>
<entry>
<title>nir/spirv: Fix handling of gl_PrimitiveId</title>
<updated>2016-11-24T16:34:40+00:00</updated>
<author>
<name>Jason Ekstrand</name>
<email>jason.ekstrand@intel.com</email>
</author>
<published>2016-11-11T06:31:32+00:00</published>
<link rel='alternate' type='text/html' href='https://git.replicant.us/replicant/external_mesa3d/commit/?id=90bf0cb3132304be406efb153a9dcdc245335a26'/>
<id>90bf0cb3132304be406efb153a9dcdc245335a26</id>
<content type='text'>
Before, we were always treating it as an output which bogus.  The only
stage in which this it can be an output is the geometry stage.  In all
other stages, it's an input which, in the back-end, we actually want to be
a system value.

Cc: "13.0" &lt;mesa-stable@lists.freedesktop.org&gt;
Reviewed-by: Dave Airlie &lt;airlied@redhat.com&gt;
(cherry picked from commit 955714759257e81f01f013c84d2bd7f14a0ec04f)
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Before, we were always treating it as an output which bogus.  The only
stage in which this it can be an output is the geometry stage.  In all
other stages, it's an input which, in the back-end, we actually want to be
a system value.

Cc: "13.0" &lt;mesa-stable@lists.freedesktop.org&gt;
Reviewed-by: Dave Airlie &lt;airlied@redhat.com&gt;
(cherry picked from commit 955714759257e81f01f013c84d2bd7f14a0ec04f)
</pre>
</div>
</content>
</entry>
</feed>
