| ------------------------------------------------------------------------- |
| drawElements Quality Program Test Specification |
| ----------------------------------------------- |
| |
| Copyright 2014 The Android Open Source Project |
| |
| Licensed under the Apache License, Version 2.0 (the "License"); |
| you may not use this file except in compliance with the License. |
| You may obtain a copy of the License at |
| |
| http://www.apache.org/licenses/LICENSE-2.0 |
| |
| Unless required by applicable law or agreed to in writing, software |
| distributed under the License is distributed on an "AS IS" BASIS, |
| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| See the License for the specific language governing permissions and |
| limitations under the License. |
| ------------------------------------------------------------------------- |
| GL_EXT_shader_implicit_conversions |
| |
| Tests: |
| + dEQP-GLES31.functional.shaders.implicit_conversions.* |
| |
| Includes: |
| + All valid implicit conversion pairs |
| + Promotion to vector types (for example int -> vec3) |
| + Binary operations |
| - Arithmetic |
| - Comparison |
| + Array subscription |
| + Calling function with implicit conversion on parameter type |
| + Negative tests for invalid assignments |
| + Negative tests for implict array / struct conversions |
| |
| Excludes: |
| + Extensive function overloading tests with implicit conversions |
| + Extensive negative tests for various other implicit conversions |
| - Will be added in 2014.4 release |
| |
| Description: |
| |
| Valid cases compile and run a program that perform the implicit conversion |
| operation in either vertex and fragment shader. Results are checked against |
| reference values in the shader code and either black or white color is |
| selected based on that. The test verifies that all result pixels are white. |
| |
| Negative cases attempt to compile a shader with the invalid operation and |
| checks that the compilation in fact fails. |