Add cases for structs as inout and out parameters.
Structs with lowp, mediump and highp (when supported in fragment
shaders) members are tested as inout and out parameters in both ES 2.0
and 3.0 shaders.
The highp variant of this test catches a bug which was found by the
Three.js community in https://github.com/mrdoob/three.js/issues/14137 .
Similar tests were integrated into the WebGL conformance suite in
https://github.com/KhronosGroup/WebGL/pull/2663 .
Verified on:
Qualcomm Adreno 308 (LG Aristo) - bug reproduces in both ES2 and ES3
highp fragment shaders
Qualcomm Adreno 540 (Pixel 2),
NVIDIA Tegra (SHIELD Tablet) - all tests pass
New tests:
dEQP-GLES[23].functional.shaders.struct.local.parameter_inout_*
dEQP-GLES[23].functional.shaders.struct.local.parameter_out_*
VK-GL-CTS Issue 1280
Change-Id: Ie332aede0ad52453815d9e123145ec035009430b
(cherry picked from commit
3b0365b1a090c4e15f72b2cb877ee15f65c8befe)