<html>
    <head>
      <base href="https://bugs.freedesktop.org/" />
    </head>
    <body><span class="vcard"><a class="email" href="mailto:kenneth@whitecape.org" title="Kenneth Graunke <kenneth@whitecape.org>"> <span class="fn">Kenneth Graunke</span></a>
</span> changed
              <a class="bz_bug_link 
          bz_status_RESOLVED  bz_closed"
   title="RESOLVED FIXED - [SNB+]Ogles3conform ES3-CTS.shaders.struct.uniform.sampler_array_vertex crash"
   href="https://bugs.freedesktop.org/show_bug.cgi?id=83215">bug 83215</a>
        <br>
             <table border="1" cellspacing="0" cellpadding="8">
          <tr>
            <th>What</th>
            <th>Removed</th>
            <th>Added</th>
          </tr>

         <tr>
           <td style="text-align:right;">Status</td>
           <td>ASSIGNED
           </td>
           <td>RESOLVED
           </td>
         </tr>

         <tr>
           <td style="text-align:right;">Resolution</td>
           <td>---
           </td>
           <td>FIXED
           </td>
         </tr></table>
      <p>
        <div>
            <b><a class="bz_bug_link 
          bz_status_RESOLVED  bz_closed"
   title="RESOLVED FIXED - [SNB+]Ogles3conform ES3-CTS.shaders.struct.uniform.sampler_array_vertex crash"
   href="https://bugs.freedesktop.org/show_bug.cgi?id=83215#c11">Comment # 11</a>
              on <a class="bz_bug_link 
          bz_status_RESOLVED  bz_closed"
   title="RESOLVED FIXED - [SNB+]Ogles3conform ES3-CTS.shaders.struct.uniform.sampler_array_vertex crash"
   href="https://bugs.freedesktop.org/show_bug.cgi?id=83215">bug 83215</a>
              from <span class="vcard"><a class="email" href="mailto:kenneth@whitecape.org" title="Kenneth Graunke <kenneth@whitecape.org>"> <span class="fn">Kenneth Graunke</span></a>
</span></b>
        <pre>commit 7865026c04f6cc36dc81f993bc32ddda2806ecb5
Author: Kenneth Graunke <<a href="mailto:kenneth@whitecape.org">kenneth@whitecape.org</a>>
Date:   Thu Sep 11 22:07:41 2014 -0700

    i965/vec4: Make type_size() return 0 for samplers.

    The FS backend has always used 0, and the VS backend has always used 1.
    I think 1 is just working around other problems, and is incorrect.
    Samplers are baked in; nothing uses the UNIFORM register we would
    create, and we shouldn't upload any constant values for them.

    Fixes ES3-CTS.shaders.struct.uniform.sampler_array_vertex.

    Signed-off-by: Kenneth Graunke <<a href="mailto:kenneth@whitecape.org">kenneth@whitecape.org</a>>
    Cc: <a href="mailto:mesa-stable@lists.freedesktop.org">mesa-stable@lists.freedesktop.org</a>
    Reviewed-by: Ian Romanick <<a href="mailto:ian.d.romanick@intel.com">ian.d.romanick@intel.com</a>>
    Tested-by: Ian Romanick <<a href="mailto:ian.d.romanick@intel.com">ian.d.romanick@intel.com</a>>

commit 2408f166db1d81f2e9cc86b3f413ddba5ba537fa
Author: Kenneth Graunke <<a href="mailto:kenneth@whitecape.org">kenneth@whitecape.org</a>>
Date:   Thu Sep 11 22:07:40 2014 -0700

    i965: Skip allocating UNIFORM file storage for uniforms of size 0.

    Samplers take up zero slots and therefore don't exist in the params
    array, nor are they included in stage_prog_data->nr_params.  There's no
    need to store their size in param_size, as it's only used for dealing
    with arrays of "real" uniforms (ones uploaded as shader constants).

    We run into all kinds of problems trying to refer to the uniform storage
    for variables that don't have uniform storage.  For one, we may use some
    other variable's index, or access out of bounds in arrays.  In the FS
    backend, our extra 2 * MaxSamplerImageUnits params for texture rectangle
    rescaling paper over a lot of problems.  In the VS backend, we claim
    samplers take up a slot, which also papers over problems.

    Instead, just skip allocating storage for variables that don't have any.

    Signed-off-by: Kenneth Graunke <<a href="mailto:kenneth@whitecape.org">kenneth@whitecape.org</a>>
    Cc: <a href="mailto:mesa-stable@lists.freedesktop.org">mesa-stable@lists.freedesktop.org</a>
    Reviewed-by: Ian Romanick <<a href="mailto:ian.d.romanick@intel.com">ian.d.romanick@intel.com</a>>
    Tested-by: Ian Romanick <<a href="mailto:ian.d.romanick@intel.com">ian.d.romanick@intel.com</a>></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>