<div dir="ltr">Why do you need to call it in a loop?<br></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Mon, Jun 17, 2019 at 5:21 AM Boris Brezillon <<a href="mailto:boris.brezillon@collabora.com">boris.brezillon@collabora.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">Hello,<br>
<br>
I've recently been working on adding a new lowering option to the<br>
lower_tex() logic and found out that doing<br>
<br>
        do progress = nir_lower_tex(); while (progress);<br>
<br>
is not working well (nir_lower_tex() keeps returning true and lowering<br>
the same instructions over and over again).<br>
<br>
The 2 patches in this series seem to fix my issues, but I'm only using<br>
txp and rect lowering, and looking at the rest of the code I fear there<br>
are other places that could lower things twice of keep reporting that<br>
things have progressed even if it's not true (yuv to rgb conversion is<br>
of these). So, my question is, are nir_lower_tex() users supposed to<br>
clear options flags manually after this pass and limit the number<br>
of passes (through some experimenting) or should we try to fix<br>
nir_lower_tex()?<br>
<br>
Regards,<br>
<br>
Boris<br>
<br>
Boris Brezillon (2):<br>
  nir/lower_tex: Actually report when projector lowering happened<br>
  nir/lower_tex: Update ->sampler_dim value before calling<br>
    get_texture_size()<br>
<br>
 src/compiler/nir/nir_lower_tex.c | 12 ++++++------<br>
 1 file changed, 6 insertions(+), 6 deletions(-)<br>
<br>
-- <br>
2.20.1<br>
<br>
</blockquote></div>