<html>
    <head>
      <base href="https://bugs.freedesktop.org/" />
    </head>
    <body>
      <p>
        <div>
            <b><a class="bz_bug_link 
          bz_status_NEW "
   title="NEW --- - Khronos conformance test ES3-CTS.shaders.struct.uniform.sampler_nested_vertex assert fails"
   href="https://bugs.freedesktop.org/show_bug.cgi?id=79085#c1">Comment # 1</a>
              on <a class="bz_bug_link 
          bz_status_NEW "
   title="NEW --- - Khronos conformance test ES3-CTS.shaders.struct.uniform.sampler_nested_vertex assert fails"
   href="https://bugs.freedesktop.org/show_bug.cgi?id=79085">bug 79085</a>
              from <span class="vcard"><a class="email" href="mailto:neil@linux.intel.com" title="Neil Roberts <neil@linux.intel.com>"> <span class="fn">Neil Roberts</span></a>
</span></b>
        <pre>I had a quick look at this with GDB but I don't yet know the code well enough
to diagnose it properly. The shader is creating a uniform with a nested struct.
It looks like the problem is caused in vec4_visitor::pack_uniform_registers. It
allocates some variable-length arrays to store a new location for some uniforms
and the size of the arrays is this->uniforms, which in this case is 3. The
arrays are indexed with src.reg from the instruction but in this case the
src.reg value for one of the instructions is 3 so it reads and writes off the
end of the arrays.

One of the members of the nested struct is a sampler2D. I think this causes
this->uniforms to have the wrong value. this->uniforms is calculated in
vec4_visitor::setup_uniform_values. However it doesn't increment for the
sampler variable because the vector_count is zero as a result of
storage->type->matrix_columns also being zero.</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>