<div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div>Hello,</div><div><br></div><div>Thanks for review.</div><div>Please find my comments below:<br></div><br><div class="gmail_quote"><div dir="ltr">On Fri, Nov 9, 2018 at 2:52 PM Eric Engestrom <<a href="mailto:eric.engestrom@intel.com">eric.engestrom@intel.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">On Tuesday, 2018-09-11 15:42:05 +0300, <a href="mailto:asimiklit.work@gmail.com" target="_blank">asimiklit.work@gmail.com</a> wrote:<br>
> From: Andrii Simiklit <<a href="mailto:andrii.simiklit@globallogic.com" target="_blank">andrii.simiklit@globallogic.com</a>><br>
> <br>
> 1. nir/nir_lower_vars_to_ssa.c:691:21: warning:<br>
>        unused variable ‘var’<br>
>        nir_variable *var = path->path[0]->var;<br>
> <br>
> 2. nir_types.cpp:558:31: warning:<br>
>     ‘elem_align’ may be used uninitialized in this function<br>
>            unsigned elem_size, elem_align;<br>
>    nir_types.cpp:558:20: warning:<br>
>    ‘elem_size’ may be used uninitialized in this function<br>
>            unsigned elem_size, elem_align;<br>
> <br>
> Signed-off-by: Andrii Simiklit <<a href="mailto:andrii.simiklit@globallogic.com" target="_blank">andrii.simiklit@globallogic.com</a>><br>
> ---<br>
>  src/compiler/nir/nir_lower_vars_to_ssa.c | 2 +-<br>
>  src/compiler/nir_types.cpp               | 4 ++--<br>
>  2 files changed, 3 insertions(+), 3 deletions(-)<br>
> <br>
> diff --git a/src/compiler/nir/nir_lower_vars_to_ssa.c b/src/compiler/nir/nir_lower_vars_to_ssa.c<br>
> index cd679be..96de261 100644<br>
> --- a/src/compiler/nir/nir_lower_vars_to_ssa.c<br>
> +++ b/src/compiler/nir/nir_lower_vars_to_ssa.c<br>
> @@ -688,7 +688,7 @@ nir_lower_vars_to_ssa_impl(nir_function_impl *impl)<br>
>        nir_deref_path *path = &node->path;<br>
>  <br>
>        assert(path->path[0]->deref_type == nir_deref_type_var);<br>
> -      nir_variable *var = path->path[0]->var;<br>
> +      MAYBE_UNUSED nir_variable *var = path->path[0]->var;<br>
>  <br>
>        /* We don't build deref nodes for non-local variables */<br>
>        assert(var->data.mode == nir_var_local);<br>
<br>
Sure, or you could simply remove the single-use extra local variable and<br>
just fold it into the assert :)<br></blockquote><div><br></div><div>I agree,will fix :)<br></div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
<br>
> diff --git a/src/compiler/nir_types.cpp b/src/compiler/nir_types.cpp<br>
> index d24f094..d39d87b 100644<br>
> --- a/src/compiler/nir_types.cpp<br>
> +++ b/src/compiler/nir_types.cpp<br>
> @@ -542,7 +542,7 @@ glsl_get_natural_size_align_bytes(const struct glsl_type *type,<br>
>     }<br>
>  <br>
>     case GLSL_TYPE_ARRAY: {<br>
> -      unsigned elem_size, elem_align;<br>
> +      unsigned elem_size = 0, elem_align = 0;<br>
<br>
Not really keen on these ones; it looks like your compiler is ignoring the<br>
unreachable() in glsl_get_natural_size_align_bytes() and mis-computing the<br>
possible code-paths, resulting in it wrongly printing a warning.<br></blockquote><br>You are right when I added the 'default:' case to the switch the warning is disappeared:<br><br>case GLSL_TYPE_INTERFACE:<br>case GLSL_TYPE_FUNCTION:<br>+default:<br>   unreachable("type does not have a natural size");<br><br>What do you think about such solution? Is it acceptable for you?<div><br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
<br>
I'd prefer to keep these two hunks as is, so that real issue in<br>
glsl_get_natural_size_align_bytes() would get flagged appropriately.<br>
<br>
>        glsl_get_natural_size_align_bytes(type->fields.array,<br>
>                                          &elem_size, &elem_align);<br>
>        *align = elem_align;<br>
> @@ -554,7 +554,7 @@ glsl_get_natural_size_align_bytes(const struct glsl_type *type,<br>
>        *size = 0;<br>
>        *align = 0;<br>
>        for (unsigned i = 0; i < type->length; i++) {<br>
> -         unsigned elem_size, elem_align;<br>
> +         unsigned elem_size = 0, elem_align = 0;<br>
>           glsl_get_natural_size_align_bytes(type->fields.structure[i].type,<br>
>                                             &elem_size, &elem_align);<br>
>           *align = MAX2(*align, elem_align);<br>
> -- <br>
> 2.7.4<br>
> <br>
> _______________________________________________<br>
> mesa-dev mailing list<br>
> <a href="mailto:mesa-dev@lists.freedesktop.org" target="_blank">mesa-dev@lists.freedesktop.org</a><br>
> <a href="https://lists.freedesktop.org/mailman/listinfo/mesa-dev" rel="noreferrer" target="_blank">https://lists.freedesktop.org/mailman/listinfo/mesa-dev</a><br>
</blockquote></div></div></div></div></div></div>