<div dir="ltr">I guess if there's no chance this will be extended to GLSL ES 1.10 or later then it's OK to use 100.<div><br></div><div>Reviewed-by: Stuart Abercrombie <<a href="mailto:sabercrombie@chromium.org">sabercrombie@chromium.org</a>></div>
</div><div class="gmail_extra"><br><br><div class="gmail_quote">On Thu, Mar 28, 2013 at 12:03 PM, Tom Gall <span dir="ltr"><<a href="mailto:tom.gall@linaro.org" target="_blank">tom.gall@linaro.org</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="im">On Thu, Mar 28, 2013 at 1:50 PM, Stuart Abercrombie<br>
<<a href="mailto:sabercrombie@google.com">sabercrombie@google.com</a>> wrote:<br>
> The content looks good.  I'm just not sure if supplying 100 as a parameter<br>
> should be the trigger for GLES GLSL 1.00.  It doesn't seem particularly<br>
> obvious, although I know there is no regular GL GLSL version 1.00.<br>
<br>
</div>It's probably quite safe to say that a GLSL 1.00 will never happen and<br>
that GLSL 1.00 will always mean GLSL ES 1.00.<br>
<br>
I hate to drive from 100 by adding a 100es or something but I can see<br>
the case for it.<br>
<div class="im"><br>
> A separate preexisting issue is the location of the file, which is again<br>
> misleading.<br>
<br>
</div>Yes these need to move. I think that's a separate patch and plan to<br>
submit that as well.<br>
<br>
Likewise the files that these scripts generate need to be deleted from<br>
git and then a little bit of script added so that at build time all<br>
these tests are generated in their respective glsl-xx-x.xx<br>
directories.  I think that's a separate patch and also I plan to do<br>
it.<br>
<div><div class="h5"><br>
> Stuart<br>
><br>
><br>
> On Wed, Mar 20, 2013 at 3:15 PM, Tom Gall <<a href="mailto:tom.gall@linaro.org">tom.gall@linaro.org</a>> wrote:<br>
>><br>
>> From tests/spec/glsl-1.10 extend variable-index-write.sh so that<br>
>> it can also correctly generates variable index write tests that<br>
>> support glsl-es-1.00.<br>
>><br>
>> 1.00 added as a valid parameter to generated tests for glsl-es-1.00.<br>
>><br>
>> For 1.00 tests in the vertex shader an orthographic projection is<br>
>> applied since ortho during the test portion isn't supported on<br>
>> OpenGL ES.<br>
>><br>
>> For 1.00 tests the fragent shader specifies default precision.<br>
>><br>
>> For 1.00 tests emit in the [require] section the correct<br>
>> GLSL ES and GL ES settings.<br>
>><br>
>> Signed-off-by: Tom Gall <<a href="mailto:tom.gall@linaro.org">tom.gall@linaro.org</a>><br>
>> ---<br>
>>  tests/spec/glsl-1.10/variable-index-write.sh |   67<br>
>> +++++++++++++++++++++++---<br>
>>  1 file changed, 61 insertions(+), 6 deletions(-)<br>
>><br>
>> diff --git a/tests/spec/glsl-1.10/variable-index-write.sh<br>
>> b/tests/spec/glsl-1.10/variable-index-write.sh<br>
>> index 96a4791..06802c4 100755<br>
>> --- a/tests/spec/glsl-1.10/variable-index-write.sh<br>
>> +++ b/tests/spec/glsl-1.10/variable-index-write.sh<br>
>> @@ -177,6 +177,10 @@ function emit_fs<br>
>>      fi<br>
>><br>
>>      echo "[fragment shader]"<br>
>> +    if [ $v -eq 100 ]; then<br>
>> +        echo "precision highp float;"<br>
>> +        echo "precision highp int;"<br>
>> +    fi<br>
>><br>
>>      emit_globals $*<br>
>><br>
>> @@ -207,14 +211,24 @@ function emit_test_vectors<br>
>>      index_value=$4<br>
>>      col=$5<br>
>>      value_type=$6<br>
>> +    v=${version/./}<br>
>><br>
>> -    cat <<EOF<br>
>> +    if [ "$v" -eq 100 ]; then<br>
>> +        cat <<EOF<br>
>> +[test]<br>
>> +clear color 0.5 0.5 0.5 0.5<br>
>> +clear<br>
>> +<br>
>> +EOF<br>
>> +    else<br>
>> +        cat <<EOF<br>
>>  [test]<br>
>>  clear color 0.5 0.5 0.5 0.5<br>
>>  clear<br>
>>  ortho<br>
>><br>
>>  EOF<br>
>> +    fi<br>
>><br>
>>      # NOTE: shader_runner uses the matCxR names even for GLSL 1.10<br>
>>      type="mat${matrix_dim}x${matrix_dim}"<br>
>> @@ -321,15 +335,37 @@ EOF<br>
>><br>
>>  function emit_fs_wr_test<br>
>>  {<br>
>> +    v=${version/./}<br>
>> +<br>
>>      echo "# Test generated by:"<br>
>>      echo "# ${cmd}"<br>
>>      echo<br>
>>      echo "[require]"<br>
>> -    echo "GLSL >= ${version}"<br>
>> +    if [ "$v" -eq 100 ]; then<br>
>> +        echo "GLSL ES >= ${version}"<br>
>> +        echo "GL ES >= 2.0"<br>
>> +    else<br>
>> +        echo "GLSL >= ${version}"<br>
>> +    fi<br>
>>      echo<br>
>><br>
>>      echo "[vertex shader]"<br>
>> -    echo "void main() { gl_Position = gl_ModelViewProjectionMatrix *<br>
>> gl_Vertex; }"<br>
>> +    if [ "$v" -eq 100 ]; then<br>
>> +        echo "attribute vec4 vertex;"<br>
>> +        echo "mat4 projection = mat4("<br>
>> +        echo "    2.0/250.0, 0.0, 0.0, -1.0,"<br>
>> +        echo "    0.0, 2.0/250.0, 0.0, -1.0,"<br>
>> +        echo "    0.0, 0.0, -1.0, 0.0,"<br>
>> +        echo "    0.0, 0.0, 0.0, 1.0);"<br>
>> +        echo<br>
>> +        echo "void main()"<br>
>> +        echo "{"<br>
>> +        echo "    gl_Position = vertex;"<br>
>> +        echo "    gl_Position *= projection;"<br>
>> +        echo "}"<br>
>> +    else<br>
>> +        echo "void main() { gl_Position = gl_ModelViewProjectionMatrix *<br>
>> gl_Vertex; }"<br>
>> +    fi<br>
>>      echo<br>
>><br>
>>      emit_fs $*<br>
>> @@ -342,20 +378,39 @@ function emit_vs_wr_test<br>
>>      matrix_dim=$1<br>
>>      array_dim=$2<br>
>>      mode=$3<br>
>> +    v=${version/./}<br>
>><br>
>>      echo "# Test generated by:"<br>
>>      echo "# ${cmd}"<br>
>>      echo<br>
>>      echo "[require]"<br>
>> -    echo "GLSL >= ${version}"<br>
>> +    if [ "$v" -eq 100 ]; then<br>
>> +        echo "GLSL ES >= ${version}"<br>
>> +        echo "GL ES >= 2.0"<br>
>> +    else<br>
>> +        echo "GLSL >= ${version}"<br>
>> +    fi<br>
>>      echo<br>
>><br>
>>      echo "[vertex shader]"<br>
>> +    if [ "$v" -eq 100 ]; then<br>
>> +        echo "attribute vec4 vertex;"<br>
>> +        echo "mat4 projection = mat4("<br>
>> +        echo "    2.0/250.0, 0.0, 0.0, -1.0,"<br>
>> +        echo "    0.0, 2.0/250.0, 0.0, -1.0,"<br>
>> +        echo "    0.0, 0.0, -1.0, 0.0,"<br>
>> +        echo "    0.0, 0.0, 0.0, 1.0);"<br>
>> +    fi<br>
>>      emit_globals $*<br>
>><br>
>>      echo "void main()"<br>
>>      echo "{"<br>
>> -    echo "    gl_Position = gl_ModelViewProjectionMatrix * gl_Vertex;"<br>
>> +    if [ "$v" -eq 100 ]; then<br>
>> +        echo "    gl_Position = vertex;"<br>
>> +        echo "    gl_Position *= projection;"<br>
>> +    else<br>
>> +        echo "    gl_Position = gl_ModelViewProjectionMatrix *<br>
>> gl_Vertex;"<br>
>> +    fi<br>
>>      echo<br>
>><br>
>>      emit_set_matrix $*<br>
>> @@ -387,7 +442,7 @@ if [ "x$1" = "x" ]; then<br>
>>      version="1.10"<br>
>>  else<br>
>>      case "$1" in<br>
>> -       1.[12]0) version="$1";;<br>
>> +       1.[012]0) version="$1";;<br>
>>         *)<br>
>>             echo "Bogus GLSL version \"$1\" specified."<br>
>>             exit 1<br>
>> --<br>
>> 1.7.10.4<br>
>><br>
>> _______________________________________________<br>
>> Piglit mailing list<br>
>> <a href="mailto:Piglit@lists.freedesktop.org">Piglit@lists.freedesktop.org</a><br>
>> <a href="http://lists.freedesktop.org/mailman/listinfo/piglit" target="_blank">http://lists.freedesktop.org/mailman/listinfo/piglit</a><br>
><br>
><br>
<br>
<br>
<br>
</div></div>--<br>
Regards,<br>
Tom<br>
<br>
"Where's the kaboom!? There was supposed to be an earth-shattering<br>
kaboom!" Marvin Martian<br>
Tech Lead, Graphics Working Group | Linaro.org │ Open source software<br>
for ARM SoCs<br>
w) tom.gall att <a href="http://linaro.org" target="_blank">linaro.org</a><br>
h) tom_gall att <a href="http://mac.com" target="_blank">mac.com</a><br>
</blockquote></div><br></div>