<div dir="ltr"><br><div class="gmail_extra"><br><div class="gmail_quote">On Thu, Mar 17, 2016 at 5:15 AM, Iago Toral <span dir="ltr"><<a href="mailto:itoral@igalia.com" target="_blank">itoral@igalia.com</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 Wed, 2016-03-16 at 10:54 -0700, Jason Ekstrand wrote:<br>
><br>
><br>
> On Wed, Mar 16, 2016 at 2:01 AM, Iago Toral <<a href="mailto:itoral@igalia.com">itoral@igalia.com</a>> wrote:<br>
>         On Wed, 2016-03-16 at 09:48 +0100, Samuel Iglesias Gonsálvez<br>
>         wrote:<br>
>         ><br>
>         > On 15/03/16 08:41, Iago Toral wrote:<br>
>         > > On Mon, 2016-03-14 at 17:33 -0700, Jason Ekstrand wrote:<br>
>         > [...]<br>
>         > >> +   nir_alu_type type; + union { -      uint32_t u; -<br>
>         > >> int32_t i; -      float f; +      uint64_t u; +<br>
>         int64_t i; +<br>
>         > >> double d; } data; } nir_search_constant;<br>
>         > ><br>
>         > > Maybe we should rename these to u64, i64 as f64 like you<br>
>         suggested<br>
>         > > for a similar case in another patch?<br>
>         > ><br>
>         ><br>
>         > We decided to do the following changes to this patch series<br>
>         (among the<br>
>         > others already agreed): rename these fields and add the<br>
>         inline helper<br>
>         > functions to get type size and base type from nir_alu_type<br>
>         enum<br>
>         > values. So the rest of the fp64 patches will have those<br>
>         changes<br>
>         > already and everything would be easier to maintain.<br>
>         ><br>
>         > One question for Jason: Should we squash all the patches of<br>
>         this<br>
>         > series in a single commit as originally proposed? I'd rather<br>
>         have them<br>
>         > separately so we understand what each patch does in case of<br>
>         a git<br>
>         > bisect, however I don't have a strong opinion against<br>
>         squashing.<br>
><br>
>         At the very least we should squash the one for the<br>
>         copy-propagation pass<br>
>         with the new opcodes, otherwise we'd break the build.<br>
><br>
>         The main concern with squashing everything is that it is going<br>
>         to be a<br>
>         huge patch and it is going to be difficult to make sense of it<br>
>         like that<br>
>         for anyone who tracks something down to it, but otherwise we<br>
>         are going<br>
>         to break some things in between which is also not ideal...<br>
><br>
><br>
> Right.  Let's squash the minimum.  I think we can probably keep copy<br>
> propagation and nir_search mostly out of the squash.  Right now,<br>
> nothing uses values of any size other than 32 so it should be safe to<br>
> leave them separate for the most part.<br>
<br>
</div></div>Ok, we have addressed all the comments and pushed this.<br>
<br>
For the record:<br>
<br>
We had to squash copy propagation, since otherwise we would break the<br>
build. We kept nir_search separate even though that means that we have a<br>
small number if regressions for 3 commits in the series (we counted 4<br>
regressions in shader.py). The reason is that otherwise we would have to<br>
squash the changes to nir_search.c together with the changes to opcodes<br>
and copy propagation, and we would end up with a huge patch again that<br>
would be difficult to make sense of. I hope this is okay.<br>
<br>
We also did the change to rename nir_constant_value's fields f->f32,<br>
d->f64, u->u32, ul->u64, etc  This had to be done after the<br>
copy-propagation changes, since the original implementation relied on<br>
the naming convention for these fields to work. We kept this change<br>
separate since it is just a large rename and squashing it into anything<br>
else would just obscure things.<br></blockquote><div><br></div><div>I did a quick skim through, and it looks good.  Thanks for all your hard work<font color="#888888">!<br></font></div><div><font color="#888888">--Jason</font><span class="HOEnZb"></span><span class="HOEnZb"></span></div></div><br></div></div>