<html>
    <head>
      <base href="https://bugs.freedesktop.org/" />
    </head>
    <body>
      <p>
        <div>
            <b><a class="bz_bug_link 
          bz_status_NEW "
   title="NEW - GLSL compilation can be very slow"
   href="https://bugs.freedesktop.org/show_bug.cgi?id=93681#c4">Comment # 4</a>
              on <a class="bz_bug_link 
          bz_status_NEW "
   title="NEW - GLSL compilation can be very slow"
   href="https://bugs.freedesktop.org/show_bug.cgi?id=93681">bug 93681</a>
              from <span class="vcard"><a class="email" href="mailto:mattst88@gmail.com" title="Matt Turner <mattst88@gmail.com>"> <span class="fn">Matt Turner</span></a>
</span></b>
        <pre>Created <span class=""><a href="attachment.cgi?id=120996" name="attach_120996" title="const.shader_test">attachment 120996</a> <a href="attachment.cgi?id=120996&action=edit" title="const.shader_test">[details]</a></span>
const.shader_test

Additionally, I noticed that the data that's in the indirectly addressed arrays
is constant. I only bothered to make the change to temps_15_20[],
temps_21_25[], and temps_26_30[] (temps_9_14[]'s initializers are multiple
statements, but still compile-time evaluable), and that shader generates:

602 instructions. 8 loops. 1017894 cycles. 0:0 spills:fills. 85 basic blocks.

I suspect giving temps_9_14[] the same treatment would further reduce
instruction counts.


In short, yes, there are things that our GLSL compiler could handle better
(namely, range analysis and alias analysis allowing array splitting, and
indirect handling) but I don't think anyone should be surprised to get garbage
out of a compiler when feeding garbage in. :)</pre>
        </div>
      </p>
      <hr>
      <span>You are receiving this mail because:</span>
      
      <ul>
          <li>You are the QA Contact for the bug.</li>
      </ul>
    </body>
</html>