Mesa (master): nir: Fix uninitialized 'progress' variable in nir_lower_system_values.

Kenneth Graunke kwg at kemper.freedesktop.org
Fri Oct 2 18:05:24 UTC 2015


Module: Mesa
Branch: master
Commit: 6b7036498a9eed99c7f726d406d4638f97ddf0af
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=6b7036498a9eed99c7f726d406d4638f97ddf0af

Author: Chris Wilson <chris at chris-wilson.co.uk>
Date:   Fri Oct  2 10:39:39 2015 -0700

nir: Fix uninitialized 'progress' variable in nir_lower_system_values.

Commit 0a1adaf11d051b71b4c46aabee2e5342f2d6aef3 (nir: Report progress
from nir_lower_system_values().) introduced a bug caught by Valgrind:

==823== Conditional jump or move depends on uninitialised value(s)
==823==    at 0xB09020C: convert_block (nir_lower_system_values.c:68)
==823==    by 0xB079FB8: foreach_cf_node (nir.c:1310)
==823==    by 0xB07A0AF: nir_foreach_block (nir.c:1336)
==823==    by 0xB09026B: convert_impl (nir_lower_system_values.c:79)
...
==823==  Uninitialised value was created by a stack allocation
==823==    at 0xB090249: convert_impl (nir_lower_system_values.c:76)

which is trivially fixed by initializing progress.

Reviewed-by: Kenneth Graunke <kenneth at whitecape.org>

---

 src/glsl/nir/nir_lower_system_values.c |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/glsl/nir/nir_lower_system_values.c b/src/glsl/nir/nir_lower_system_values.c
index d77bb2f..21904f8 100644
--- a/src/glsl/nir/nir_lower_system_values.c
+++ b/src/glsl/nir/nir_lower_system_values.c
@@ -74,7 +74,7 @@ convert_block(nir_block *block, void *state)
 static bool
 convert_impl(nir_function_impl *impl)
 {
-   bool progress;
+   bool progress = false;
 
    nir_foreach_block(impl, convert_block, &progress);
    nir_metadata_preserve(impl, nir_metadata_block_index |




More information about the mesa-commit mailing list