GLES3: complex exprs, side effects, short circuits
Some of these 8 tests (the 4 that rely on short circuiting) fail on
Nexus6P/7.0 (they were fixed in 8.0 and pass on Pixel2016/8.1):
https://crbug.com/695685
This is a port from WebGL:
https://github.com/KhronosGroup/WebGL/blob/master/sdk/tests/conformance2/glsl3/array-in-complex-expression.html
https://github.com/KhronosGroup/WebGL/blob/master/sdk/tests/conformance2/glsl3/short-circuiting-in-loop-condition.html
All of those tests are ported just for completeness.
New tests:
dEQP-GLES3.functional.shaders.arrays.complex_expression.and_short_circuits_vertex
dEQP-GLES3.functional.shaders.arrays.complex_expression.and_short_circuits_fragment
dEQP-GLES3.functional.shaders.arrays.complex_expression.or_short_circuits_vertex
dEQP-GLES3.functional.shaders.arrays.complex_expression.or_short_circuits_fragment
dEQP-GLES3.functional.shaders.arrays.complex_expression.ternary_only_evaluates_one_operand_vertex
dEQP-GLES3.functional.shaders.arrays.complex_expression.ternary_only_evaluates_one_operand_fragment
dEQP-GLES3.functional.shaders.arrays.complex_expression.sequence_side_effects_affecting_compared_array_content_vertex
dEQP-GLES3.functional.shaders.arrays.complex_expression.sequence_side_effects_affecting_compared_array_content_fragment
dEQP-GLES3.functional.shaders.loops.custom.short_circuit_in_while_vertex
dEQP-GLES3.functional.shaders.loops.custom.short_circuit_in_while_fragment
dEQP-GLES3.functional.shaders.loops.custom.short_circuit_in_for_vertex
dEQP-GLES3.functional.shaders.loops.custom.short_circuit_in_for_fragment
dEQP-GLES3.functional.shaders.loops.custom.short_circuit_in_dowhile_vertex
dEQP-GLES3.functional.shaders.loops.custom.short_circuit_in_dowhile_fragment
dEQP-GLES3.functional.shaders.loops.custom.short_circuit_in_while_sequence_vertex
dEQP-GLES3.functional.shaders.loops.custom.short_circuit_in_while_sequence_fragment
Components: AOSP
Change-Id: Ifa5590f91a8b16e1e2ab5ea8531f0d783c61cda4