<div dir="ltr"><div class="gmail_extra"><div class="gmail_quote">On Wed, Feb 14, 2018 at 10:12 AM, Kenneth Graunke <span dir="ltr"><<a href="mailto:kenneth@whitecape.org" target="_blank">kenneth@whitecape.org</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="HOEnZb"><div class="h5">On Wednesday, February 14, 2018 6:05:22 AM PST Marek Olšák wrote:<br>
> On Wed, Feb 14, 2018 at 7:57 AM, Kenneth Graunke <<a href="mailto:kenneth@whitecape.org">kenneth@whitecape.org</a>> wrote:<br>
> > On Tuesday, February 13, 2018 2:57:07 PM PST Jason Ekstrand wrote:<br>
> >> This fixes the build in clang<br>
> >> ---<br>
> >>  src/mesa/drivers/dri/i965/brw_<wbr>nir_uniforms.cpp | 3 ++-<br>
> >>  1 file changed, 2 insertions(+), 1 deletion(-)<br>
> >><br>
> >> diff --git a/src/mesa/drivers/dri/i965/<wbr>brw_nir_uniforms.cpp b/src/mesa/drivers/dri/i965/<wbr>brw_nir_uniforms.cpp<br>
> >> index 10a4ff4..69da83a 100644<br>
> >> --- a/src/mesa/drivers/dri/i965/<wbr>brw_nir_uniforms.cpp<br>
> >> +++ b/src/mesa/drivers/dri/i965/<wbr>brw_nir_uniforms.cpp<br>
> >> @@ -254,7 +254,8 @@ brw_nir_lower_patch_vertices_<wbr>in_to_uniform(nir_shader *nir)<br>
> >>        gl_state_index16 tokens[STATE_LENGTH] = {<br>
> >>           STATE_INTERNAL,<br>
> >>           nir->info.stage == MESA_SHADER_TESS_CTRL ?<br>
> >> -            STATE_TCS_PATCH_VERTICES_IN : STATE_TES_PATCH_VERTICES_IN,<br>
> >> +            (gl_state_index16)STATE_TCS_<wbr>PATCH_VERTICES_IN :<br>
> >> +            (gl_state_index16)STATE_TES_<wbr>PATCH_VERTICES_IN,<br>
> >>        };<br>
> >>        var->num_state_slots = 1;<br>
> >>        var->state_slots =<br>
> >><br>
> ><br>
> > This is fine, but I prefer your plan from IRC:<br>
> ><br>
> > 1. Add STATE_MAX_VALUE = 0xffff to the enum.<br>
> > 2. Mark the enum PACKED.<br>
> > 3. Drop gl_state_index16 again, since gl_state_index should now be the<br>
> >    desired size, and also an actual enum so it follows the actual C++<br>
> >    enum rules.<br>
> ><br>
> > I suppose the downside is that it could cause "case not handled in<br>
> > switch" warnings...<br>
><br>
> While I don't care too much about how gl_state_index is done,<br>
> gl_state_index can also contain arbitrary 16-bit signed integer<br>
> values, i.e. it's not strictly enum. And yes, I said "signed".<br>
><br>
> Marek<br>
<br>
</div></div>Oh. :(  I guess using short or int16_t is pretty reasonable then...<br></blockquote></div><br></div><div class="gmail_extra">Does that mean we're happy with this patch?<br></div></div>