Commit 2a412ea2 by Chris Forbes

Remove array restriction from EOpEqual, EOpNotEqual

The GLSL-version-specific behavior is already dealt with in earlier checks; here we can assume we are dealing with GLSL ES 3.00. The GLSL ES 3.00 spec section 5.7 explicitly calls out == and != as being supported operations on arrays. This is an unusual construct in real shaders, but it is used in the various "complex expression" tests (in an unreachable path). Bug: b/141916742 Test: dEQP-GLES3.functional.shaders.arrays.complex_expression.* Change-Id: I8a4ece122d604ffb917b94c03c8a086230e9108a Reviewed-on: https://swiftshader-review.googlesource.com/c/SwiftShader/+/36828Tested-by: 's avatarChris Forbes <chrisforbes@google.com> Kokoro-Presubmit: kokoro <noreply+kokoro@google.com> Reviewed-by: 's avatarNicolas Capens <nicolascapens@google.com>
parent 3044c241
...@@ -333,8 +333,6 @@ TIntermTyped* TIntermediate::addBinaryMath(TOperator op, TIntermTyped* left, TIn ...@@ -333,8 +333,6 @@ TIntermTyped* TIntermediate::addBinaryMath(TOperator op, TIntermTyped* left, TIn
switch (op) { switch (op) {
case EOpEqual: case EOpEqual:
case EOpNotEqual: case EOpNotEqual:
if (left->isArray())
return 0;
break; break;
case EOpLessThan: case EOpLessThan:
case EOpGreaterThan: case EOpGreaterThan:
......
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