GLES3: complex exprs, side effects, short circuits
authorKai Ninomiya <kainino@chromium.org>
Sat, 27 Jan 2018 03:25:26 +0000 (19:25 -0800)
committerKai Ninomiya <kainino@chromium.org>
Tue, 30 Jan 2018 21:30:10 +0000 (21:30 +0000)
commit35890647933b70c5ec51292ad72dccc41221d4a7
treef46c8b60a182d014ffaf9d9c0a801e1bb4520857
parentb12117312e4ae8c8bd693584f8a03378ffc17648
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
android/cts/master/gles3-master.txt
data/gles3/shaders/arrays.test
data/gles3/shaders/loops.test