Commit c4c74422 by Jamie Madill

ES3: Don't validate precision qualifiers when linking UBOs.

According to the resolution of Khonos bug 10287, we shouldn't be validating these precisions. Note that this is counter to the current ESSL spec text, but there's an open action item to change the spec language. TEST=dEQP-GLES3.functional.shaders.linkage.uniform.block.differing_precision BUG=angleproject:1088 Change-Id: Ib05dca792b89e57e90d3a5f9efdb3a202230f585 Reviewed-on: https://chromium-review.googlesource.com/310760Reviewed-by: 's avatarGeoff Lang <geofflang@chromium.org> Reviewed-by: 's avatarCorentin Wallez <cwallez@chromium.org> Tested-by: 's avatarJamie Madill <jmadill@chromium.org>
parent 63e4e724
......@@ -1682,7 +1682,8 @@ void Program::indexUniforms()
bool Program::linkValidateInterfaceBlockFields(InfoLog &infoLog, const std::string &uniformName, const sh::InterfaceBlockField &vertexUniform, const sh::InterfaceBlockField &fragmentUniform)
{
if (!linkValidateVariablesBase(infoLog, uniformName, vertexUniform, fragmentUniform, true))
// We don't validate precision on UBO fields. See resolution of Khronos bug 10287.
if (!linkValidateVariablesBase(infoLog, uniformName, vertexUniform, fragmentUniform, false))
{
return false;
}
......
......@@ -42,7 +42,6 @@
1088 WIN : dEQP-GLES3.functional.shaders.linkage.varying.struct.float_vec3 = FAIL
1088 WIN : dEQP-GLES3.functional.shaders.linkage.varying.struct.float_uvec2_vec3 = FAIL
1088 WIN : dEQP-GLES3.functional.shaders.linkage.uniform.block.differing_precision = FAIL
1089 WIN : dEQP-GLES3.functional.shaders.functions.invalid.local_function_prototype_vertex = FAIL
1089 WIN : dEQP-GLES3.functional.shaders.functions.invalid.local_function_prototype_fragment = FAIL
1089 WIN : dEQP-GLES3.functional.shaders.functions.invalid.overload_builtin_function_vertex = FAIL
......
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