Commit c4c7442d by Geoff Lang

Fix missing uint cases for GLSL and ESSL output.

These were causing assertions in several WebGL2 conformance tests. BUG=angleproject:882 BUG=angleproject:1084 BUG=483282 Change-Id: I7651c359a528c95469dcbfb5da2715ae4616b49b Reviewed-on: https://chromium-review.googlesource.com/286592Reviewed-by: 's avatarJamie Madill <jmadill@chromium.org> Reviewed-by: 's avatarZhenyao Mo <zmo@chromium.org> Tested-by: 's avatarGeoff Lang <geofflang@chromium.org>
parent 9a4c8c46
...@@ -921,6 +921,18 @@ bool TOutputGLSLBase::visitAggregate(Visit visit, TIntermAggregate *node) ...@@ -921,6 +921,18 @@ bool TOutputGLSLBase::visitAggregate(Visit visit, TIntermAggregate *node)
case EOpConstructIVec4: case EOpConstructIVec4:
writeConstructorTriplet(visit, node->getType(), "ivec4"); writeConstructorTriplet(visit, node->getType(), "ivec4");
break; break;
case EOpConstructUInt:
writeConstructorTriplet(visit, node->getType(), "uint");
break;
case EOpConstructUVec2:
writeConstructorTriplet(visit, node->getType(), "uvec2");
break;
case EOpConstructUVec3:
writeConstructorTriplet(visit, node->getType(), "uvec3");
break;
case EOpConstructUVec4:
writeConstructorTriplet(visit, node->getType(), "uvec4");
break;
case EOpConstructMat2: case EOpConstructMat2:
writeConstructorTriplet(visit, node->getType(), "mat2"); writeConstructorTriplet(visit, node->getType(), "mat2");
break; break;
...@@ -1185,6 +1197,9 @@ TString TOutputGLSLBase::getTypeName(const TType &type) ...@@ -1185,6 +1197,9 @@ TString TOutputGLSLBase::getTypeName(const TType &type)
case EbtBool: case EbtBool:
out << "bvec"; out << "bvec";
break; break;
case EbtUInt:
out << "uvec";
break;
default: default:
UNREACHABLE(); UNREACHABLE();
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment