<html>
    <head>
      <base href="https://bugs.freedesktop.org/">
    </head>
    <body><table border="1" cellspacing="0" cellpadding="8">
        <tr>
          <th>Bug ID</th>
          <td><a class="bz_bug_link 
          bz_status_NEW "
   title="NEW - [regression][bisected] "nir: Copy propagation between blocks" regression"
   href="https://bugs.freedesktop.org/show_bug.cgi?id=108624">108624</a>
          </td>
        </tr>

        <tr>
          <th>Summary</th>
          <td>[regression][bisected] "nir: Copy propagation between blocks" regression
          </td>
        </tr>

        <tr>
          <th>Product</th>
          <td>Mesa
          </td>
        </tr>

        <tr>
          <th>Version</th>
          <td>unspecified
          </td>
        </tr>

        <tr>
          <th>Hardware</th>
          <td>Other
          </td>
        </tr>

        <tr>
          <th>OS</th>
          <td>All
          </td>
        </tr>

        <tr>
          <th>Status</th>
          <td>NEW
          </td>
        </tr>

        <tr>
          <th>Severity</th>
          <td>normal
          </td>
        </tr>

        <tr>
          <th>Priority</th>
          <td>medium
          </td>
        </tr>

        <tr>
          <th>Component</th>
          <td>Drivers/DRI/i965
          </td>
        </tr>

        <tr>
          <th>Assignee</th>
          <td>intel-3d-bugs@lists.freedesktop.org
          </td>
        </tr>

        <tr>
          <th>Reporter</th>
          <td>apinheiro@igalia.com
          </td>
        </tr>

        <tr>
          <th>QA Contact</th>
          <td>intel-3d-bugs@lists.freedesktop.org
          </td>
        </tr></table>
      <p>
        <div>
        <pre>Created <span class=""><a href="attachment.cgi?id=142326" name="attach_142326" title="regression test">attachment 142326</a> <a href="attachment.cgi?id=142326&action=edit" title="regression test">[details]</a></span>
regression test

Not sure if it is normal to create [regression] bugs for tests that are not on
any upstream branch, but as today is a bank day here in Spain, I will not have
time for triagging for some days, so I prefer to save it somewhere, in order to
not forget about it.

Initially I found it while testing ARB_gl_spirv with borrowed tests (tests from
other specs). But it also fails with vulkan, by using vkrunner.

So, attached the ARB_gl_spirv test. Can also be found here:
  
<a href="https://github.com/Igalia/piglit/tree/apinheiro/copy-propagation-between-blocks-regression">https://github.com/Igalia/piglit/tree/apinheiro/copy-propagation-between-blocks-regression</a>

And the vkrunner equivalent here:
  
<a href="https://github.com/Igalia/vkrunner/tree/apinheiro/copy-propagation-between-blocks-regression">https://github.com/Igalia/vkrunner/tree/apinheiro/copy-propagation-between-blocks-regression</a>

FWIW, the ARB_gl_spirv test is executed as any other piglit shader_test,
although it needs to override the extension, so:
  $ export MESA_EXTENSION_OVERRIDE=GL_ARB_gl_spirv 
  $./bin/shader_runner
tests/spec/arb_gl_spirv/execution/fs-large-local-array-vec4.shader_test -auto

After bisecting, the candidates for the guilty commits are:

* dc349f07b5f9c257f68ecf0cbb89f9722a42233a ("nir: Take call instruction into
account in copy_prop_vars")
* b3c6146925595ec3a7eece3afb9ccaad32906d4c ("nir: Copy propagation between
blocks")

I have two candidates because the first commit doesn't build correctly ("error:
‘copies’ undeclared (first use in this function)")

Those commits changes nir_opt_copy_prop_vars among other things. And in fact,
if we don't call that optimization (dirty hack just to scope where the problem
is), the test goes back to passing (although everything gets slower).</pre>
        </div>
      </p>


      <hr>
      <span>You are receiving this mail because:</span>

      <ul>
          <li>You are the QA Contact for the bug.</li>
          <li>You are the assignee for the bug.</li>
      </ul>
    </body>
</html>