From 89cd886f8aa63b3b3b5442393a75109860534c1f Mon Sep 17 00:00:00 2001 From: Mikko Tiusanen Date: Fri, 13 Nov 2020 16:13:30 +0200 Subject: [PATCH] Add tests for GLES3 vector construction from other types Added tests for GLES3 vector construction from compatible data types with more than one component. Components: OpenGL New tests: KHR-GLES3.shaders.glsl_constructors.* VK-GL-CTS issue: 2178 Change-Id: If7fab5d0e950cc6c9d1dc39c32413e176df06e2f --- .../gl/khronos_mustpass/4.6.1.x/gl30-master.txt | 648 +++++++++++++++++++++ .../gl/khronos_mustpass/4.6.1.x/gl31-master.txt | 648 +++++++++++++++++++++ .../gl/khronos_mustpass/4.6.1.x/gl32-master.txt | 648 +++++++++++++++++++++ .../gl/khronos_mustpass/4.6.1.x/gl33-master.txt | 648 +++++++++++++++++++++ .../gl/khronos_mustpass/4.6.1.x/gl40-master.txt | 648 +++++++++++++++++++++ .../gl/khronos_mustpass/4.6.1.x/gl41-master.txt | 648 +++++++++++++++++++++ .../gl/khronos_mustpass/4.6.1.x/gl42-master.txt | 648 +++++++++++++++++++++ .../gl/khronos_mustpass/4.6.1.x/gl43-master.txt | 648 +++++++++++++++++++++ .../gl/khronos_mustpass/4.6.1.x/gl44-master.txt | 648 +++++++++++++++++++++ .../gl/khronos_mustpass/4.6.1.x/gl45-master.txt | 648 +++++++++++++++++++++ .../gl/khronos_mustpass/4.6.1.x/gl46-master.txt | 648 +++++++++++++++++++++ .../khronos_mustpass/3.2.5.x/gles3-khr-master.txt | 648 +++++++++++++++++++++ .../khronos_mustpass/3.2.6.x/gles3-khr-master.txt | 648 +++++++++++++++++++++ .../khronos_mustpass/master/gles3-khr-master.txt | 648 +++++++++++++++++++++ external/openglcts/modules/common/CMakeLists.txt | 2 + .../common/glcGLSLVectorConstructorTests.cpp | 592 +++++++++++++++++++ .../common/glcGLSLVectorConstructorTests.hpp | 52 ++ external/openglcts/modules/gl/gl3cTestPackages.cpp | 2 + .../openglcts/modules/gles3/es3cTestPackage.cpp | 2 + 19 files changed, 9722 insertions(+) create mode 100644 external/openglcts/modules/common/glcGLSLVectorConstructorTests.cpp create mode 100644 external/openglcts/modules/common/glcGLSLVectorConstructorTests.hpp diff --git a/external/openglcts/data/mustpass/gl/khronos_mustpass/4.6.1.x/gl30-master.txt b/external/openglcts/data/mustpass/gl/khronos_mustpass/4.6.1.x/gl30-master.txt index 232f2c1..68db298 100644 --- a/external/openglcts/data/mustpass/gl/khronos_mustpass/4.6.1.x/gl30-master.txt +++ b/external/openglcts/data/mustpass/gl/khronos_mustpass/4.6.1.x/gl30-master.txt @@ -192,6 +192,654 @@ KHR-GL30.texture_repeat_mode.depth24_stencil8_11x131_2_repeat KHR-GL30.texture_repeat_mode.depth24_stencil8_11x131_2_mirrored_repeat KHR-GL30.shaders30.declarations.declarations.redeclare_gl_FragColor KHR-GL30.shaders30.declarations.declarations.redeclare_gl_FragData +KHR-GL30.shaders30.glsl_constructors.vec2_from_mat2_vs +KHR-GL30.shaders30.glsl_constructors.vec2_from_mat2_fs +KHR-GL30.shaders30.glsl_constructors.vec2_from_mat2_mat2_invalid_vs +KHR-GL30.shaders30.glsl_constructors.vec2_from_mat2_mat2_invalid_fs +KHR-GL30.shaders30.glsl_constructors.vec2_from_mat2x3_vs +KHR-GL30.shaders30.glsl_constructors.vec2_from_mat2x3_fs +KHR-GL30.shaders30.glsl_constructors.vec2_from_mat2x3_mat2x3_invalid_vs +KHR-GL30.shaders30.glsl_constructors.vec2_from_mat2x3_mat2x3_invalid_fs +KHR-GL30.shaders30.glsl_constructors.vec2_from_mat2x4_vs +KHR-GL30.shaders30.glsl_constructors.vec2_from_mat2x4_fs +KHR-GL30.shaders30.glsl_constructors.vec2_from_mat2x4_mat2x4_invalid_vs +KHR-GL30.shaders30.glsl_constructors.vec2_from_mat2x4_mat2x4_invalid_fs +KHR-GL30.shaders30.glsl_constructors.vec2_from_mat3_vs +KHR-GL30.shaders30.glsl_constructors.vec2_from_mat3_fs +KHR-GL30.shaders30.glsl_constructors.vec2_from_mat3_mat3_invalid_vs +KHR-GL30.shaders30.glsl_constructors.vec2_from_mat3_mat3_invalid_fs +KHR-GL30.shaders30.glsl_constructors.vec2_from_mat3x2_vs +KHR-GL30.shaders30.glsl_constructors.vec2_from_mat3x2_fs +KHR-GL30.shaders30.glsl_constructors.vec2_from_mat3x2_mat3x2_invalid_vs +KHR-GL30.shaders30.glsl_constructors.vec2_from_mat3x2_mat3x2_invalid_fs +KHR-GL30.shaders30.glsl_constructors.vec2_from_mat3x4_vs +KHR-GL30.shaders30.glsl_constructors.vec2_from_mat3x4_fs +KHR-GL30.shaders30.glsl_constructors.vec2_from_mat3x4_mat3x4_invalid_vs +KHR-GL30.shaders30.glsl_constructors.vec2_from_mat3x4_mat3x4_invalid_fs +KHR-GL30.shaders30.glsl_constructors.vec2_from_mat4_vs +KHR-GL30.shaders30.glsl_constructors.vec2_from_mat4_fs +KHR-GL30.shaders30.glsl_constructors.vec2_from_mat4_mat4_invalid_vs +KHR-GL30.shaders30.glsl_constructors.vec2_from_mat4_mat4_invalid_fs +KHR-GL30.shaders30.glsl_constructors.vec2_from_mat4x2_vs +KHR-GL30.shaders30.glsl_constructors.vec2_from_mat4x2_fs +KHR-GL30.shaders30.glsl_constructors.vec2_from_mat4x2_mat4x2_invalid_vs +KHR-GL30.shaders30.glsl_constructors.vec2_from_mat4x2_mat4x2_invalid_fs +KHR-GL30.shaders30.glsl_constructors.vec2_from_mat4x3_vs +KHR-GL30.shaders30.glsl_constructors.vec2_from_mat4x3_fs +KHR-GL30.shaders30.glsl_constructors.vec2_from_mat4x3_mat4x3_invalid_vs +KHR-GL30.shaders30.glsl_constructors.vec2_from_mat4x3_mat4x3_invalid_fs +KHR-GL30.shaders30.glsl_constructors.vec2_from_float_mat2_vs +KHR-GL30.shaders30.glsl_constructors.vec2_from_float_mat2_fs +KHR-GL30.shaders30.glsl_constructors.vec2_from_float_mat2_float_invalid_vs +KHR-GL30.shaders30.glsl_constructors.vec2_from_float_mat2_float_invalid_fs +KHR-GL30.shaders30.glsl_constructors.vec2_from_float_mat2x3_vs +KHR-GL30.shaders30.glsl_constructors.vec2_from_float_mat2x3_fs +KHR-GL30.shaders30.glsl_constructors.vec2_from_float_mat2x3_float_invalid_vs +KHR-GL30.shaders30.glsl_constructors.vec2_from_float_mat2x3_float_invalid_fs +KHR-GL30.shaders30.glsl_constructors.vec2_from_float_mat2x4_vs +KHR-GL30.shaders30.glsl_constructors.vec2_from_float_mat2x4_fs +KHR-GL30.shaders30.glsl_constructors.vec2_from_float_mat2x4_float_invalid_vs +KHR-GL30.shaders30.glsl_constructors.vec2_from_float_mat2x4_float_invalid_fs +KHR-GL30.shaders30.glsl_constructors.vec2_from_float_mat3_vs +KHR-GL30.shaders30.glsl_constructors.vec2_from_float_mat3_fs +KHR-GL30.shaders30.glsl_constructors.vec2_from_float_mat3_float_invalid_vs +KHR-GL30.shaders30.glsl_constructors.vec2_from_float_mat3_float_invalid_fs +KHR-GL30.shaders30.glsl_constructors.vec2_from_float_mat3x2_vs +KHR-GL30.shaders30.glsl_constructors.vec2_from_float_mat3x2_fs +KHR-GL30.shaders30.glsl_constructors.vec2_from_float_mat3x2_float_invalid_vs +KHR-GL30.shaders30.glsl_constructors.vec2_from_float_mat3x2_float_invalid_fs +KHR-GL30.shaders30.glsl_constructors.vec2_from_float_mat3x4_vs +KHR-GL30.shaders30.glsl_constructors.vec2_from_float_mat3x4_fs +KHR-GL30.shaders30.glsl_constructors.vec2_from_float_mat3x4_float_invalid_vs +KHR-GL30.shaders30.glsl_constructors.vec2_from_float_mat3x4_float_invalid_fs +KHR-GL30.shaders30.glsl_constructors.vec2_from_float_mat4_vs +KHR-GL30.shaders30.glsl_constructors.vec2_from_float_mat4_fs +KHR-GL30.shaders30.glsl_constructors.vec2_from_float_mat4_float_invalid_vs +KHR-GL30.shaders30.glsl_constructors.vec2_from_float_mat4_float_invalid_fs +KHR-GL30.shaders30.glsl_constructors.vec2_from_float_mat4x2_vs +KHR-GL30.shaders30.glsl_constructors.vec2_from_float_mat4x2_fs +KHR-GL30.shaders30.glsl_constructors.vec2_from_float_mat4x2_float_invalid_vs +KHR-GL30.shaders30.glsl_constructors.vec2_from_float_mat4x2_float_invalid_fs +KHR-GL30.shaders30.glsl_constructors.vec2_from_float_mat4x3_vs +KHR-GL30.shaders30.glsl_constructors.vec2_from_float_mat4x3_fs +KHR-GL30.shaders30.glsl_constructors.vec2_from_float_mat4x3_float_invalid_vs +KHR-GL30.shaders30.glsl_constructors.vec2_from_float_mat4x3_float_invalid_fs +KHR-GL30.shaders30.glsl_constructors.vec3_from_mat2_vs +KHR-GL30.shaders30.glsl_constructors.vec3_from_mat2_fs +KHR-GL30.shaders30.glsl_constructors.vec3_from_mat2_mat2_invalid_vs +KHR-GL30.shaders30.glsl_constructors.vec3_from_mat2_mat2_invalid_fs +KHR-GL30.shaders30.glsl_constructors.vec3_from_mat2x3_vs +KHR-GL30.shaders30.glsl_constructors.vec3_from_mat2x3_fs +KHR-GL30.shaders30.glsl_constructors.vec3_from_mat2x3_mat2x3_invalid_vs +KHR-GL30.shaders30.glsl_constructors.vec3_from_mat2x3_mat2x3_invalid_fs +KHR-GL30.shaders30.glsl_constructors.vec3_from_mat2x4_vs +KHR-GL30.shaders30.glsl_constructors.vec3_from_mat2x4_fs +KHR-GL30.shaders30.glsl_constructors.vec3_from_mat2x4_mat2x4_invalid_vs +KHR-GL30.shaders30.glsl_constructors.vec3_from_mat2x4_mat2x4_invalid_fs +KHR-GL30.shaders30.glsl_constructors.vec3_from_mat3_vs +KHR-GL30.shaders30.glsl_constructors.vec3_from_mat3_fs +KHR-GL30.shaders30.glsl_constructors.vec3_from_mat3_mat3_invalid_vs +KHR-GL30.shaders30.glsl_constructors.vec3_from_mat3_mat3_invalid_fs +KHR-GL30.shaders30.glsl_constructors.vec3_from_mat3x2_vs +KHR-GL30.shaders30.glsl_constructors.vec3_from_mat3x2_fs +KHR-GL30.shaders30.glsl_constructors.vec3_from_mat3x2_mat3x2_invalid_vs +KHR-GL30.shaders30.glsl_constructors.vec3_from_mat3x2_mat3x2_invalid_fs +KHR-GL30.shaders30.glsl_constructors.vec3_from_mat3x4_vs +KHR-GL30.shaders30.glsl_constructors.vec3_from_mat3x4_fs +KHR-GL30.shaders30.glsl_constructors.vec3_from_mat3x4_mat3x4_invalid_vs +KHR-GL30.shaders30.glsl_constructors.vec3_from_mat3x4_mat3x4_invalid_fs +KHR-GL30.shaders30.glsl_constructors.vec3_from_mat4_vs +KHR-GL30.shaders30.glsl_constructors.vec3_from_mat4_fs +KHR-GL30.shaders30.glsl_constructors.vec3_from_mat4_mat4_invalid_vs +KHR-GL30.shaders30.glsl_constructors.vec3_from_mat4_mat4_invalid_fs +KHR-GL30.shaders30.glsl_constructors.vec3_from_mat4x2_vs +KHR-GL30.shaders30.glsl_constructors.vec3_from_mat4x2_fs +KHR-GL30.shaders30.glsl_constructors.vec3_from_mat4x2_mat4x2_invalid_vs +KHR-GL30.shaders30.glsl_constructors.vec3_from_mat4x2_mat4x2_invalid_fs +KHR-GL30.shaders30.glsl_constructors.vec3_from_mat4x3_vs +KHR-GL30.shaders30.glsl_constructors.vec3_from_mat4x3_fs +KHR-GL30.shaders30.glsl_constructors.vec3_from_mat4x3_mat4x3_invalid_vs +KHR-GL30.shaders30.glsl_constructors.vec3_from_mat4x3_mat4x3_invalid_fs +KHR-GL30.shaders30.glsl_constructors.vec3_from_float_mat2_vs +KHR-GL30.shaders30.glsl_constructors.vec3_from_float_mat2_fs +KHR-GL30.shaders30.glsl_constructors.vec3_from_float_mat2_float_invalid_vs +KHR-GL30.shaders30.glsl_constructors.vec3_from_float_mat2_float_invalid_fs +KHR-GL30.shaders30.glsl_constructors.vec3_from_float_mat2x3_vs +KHR-GL30.shaders30.glsl_constructors.vec3_from_float_mat2x3_fs +KHR-GL30.shaders30.glsl_constructors.vec3_from_float_mat2x3_float_invalid_vs +KHR-GL30.shaders30.glsl_constructors.vec3_from_float_mat2x3_float_invalid_fs +KHR-GL30.shaders30.glsl_constructors.vec3_from_float_mat2x4_vs +KHR-GL30.shaders30.glsl_constructors.vec3_from_float_mat2x4_fs +KHR-GL30.shaders30.glsl_constructors.vec3_from_float_mat2x4_float_invalid_vs +KHR-GL30.shaders30.glsl_constructors.vec3_from_float_mat2x4_float_invalid_fs +KHR-GL30.shaders30.glsl_constructors.vec3_from_float_mat3_vs +KHR-GL30.shaders30.glsl_constructors.vec3_from_float_mat3_fs +KHR-GL30.shaders30.glsl_constructors.vec3_from_float_mat3_float_invalid_vs +KHR-GL30.shaders30.glsl_constructors.vec3_from_float_mat3_float_invalid_fs +KHR-GL30.shaders30.glsl_constructors.vec3_from_float_mat3x2_vs +KHR-GL30.shaders30.glsl_constructors.vec3_from_float_mat3x2_fs +KHR-GL30.shaders30.glsl_constructors.vec3_from_float_mat3x2_float_invalid_vs +KHR-GL30.shaders30.glsl_constructors.vec3_from_float_mat3x2_float_invalid_fs +KHR-GL30.shaders30.glsl_constructors.vec3_from_float_mat3x4_vs +KHR-GL30.shaders30.glsl_constructors.vec3_from_float_mat3x4_fs +KHR-GL30.shaders30.glsl_constructors.vec3_from_float_mat3x4_float_invalid_vs +KHR-GL30.shaders30.glsl_constructors.vec3_from_float_mat3x4_float_invalid_fs +KHR-GL30.shaders30.glsl_constructors.vec3_from_float_mat4_vs +KHR-GL30.shaders30.glsl_constructors.vec3_from_float_mat4_fs +KHR-GL30.shaders30.glsl_constructors.vec3_from_float_mat4_float_invalid_vs +KHR-GL30.shaders30.glsl_constructors.vec3_from_float_mat4_float_invalid_fs +KHR-GL30.shaders30.glsl_constructors.vec3_from_float_mat4x2_vs +KHR-GL30.shaders30.glsl_constructors.vec3_from_float_mat4x2_fs +KHR-GL30.shaders30.glsl_constructors.vec3_from_float_mat4x2_float_invalid_vs +KHR-GL30.shaders30.glsl_constructors.vec3_from_float_mat4x2_float_invalid_fs +KHR-GL30.shaders30.glsl_constructors.vec3_from_float_mat4x3_vs +KHR-GL30.shaders30.glsl_constructors.vec3_from_float_mat4x3_fs +KHR-GL30.shaders30.glsl_constructors.vec3_from_float_mat4x3_float_invalid_vs +KHR-GL30.shaders30.glsl_constructors.vec3_from_float_mat4x3_float_invalid_fs +KHR-GL30.shaders30.glsl_constructors.vec4_from_mat2_vs +KHR-GL30.shaders30.glsl_constructors.vec4_from_mat2_fs +KHR-GL30.shaders30.glsl_constructors.vec4_from_mat2_mat2_invalid_vs +KHR-GL30.shaders30.glsl_constructors.vec4_from_mat2_mat2_invalid_fs +KHR-GL30.shaders30.glsl_constructors.vec4_from_mat2x3_vs +KHR-GL30.shaders30.glsl_constructors.vec4_from_mat2x3_fs +KHR-GL30.shaders30.glsl_constructors.vec4_from_mat2x3_mat2x3_invalid_vs +KHR-GL30.shaders30.glsl_constructors.vec4_from_mat2x3_mat2x3_invalid_fs +KHR-GL30.shaders30.glsl_constructors.vec4_from_mat2x4_vs +KHR-GL30.shaders30.glsl_constructors.vec4_from_mat2x4_fs +KHR-GL30.shaders30.glsl_constructors.vec4_from_mat2x4_mat2x4_invalid_vs +KHR-GL30.shaders30.glsl_constructors.vec4_from_mat2x4_mat2x4_invalid_fs +KHR-GL30.shaders30.glsl_constructors.vec4_from_mat3_vs +KHR-GL30.shaders30.glsl_constructors.vec4_from_mat3_fs +KHR-GL30.shaders30.glsl_constructors.vec4_from_mat3_mat3_invalid_vs +KHR-GL30.shaders30.glsl_constructors.vec4_from_mat3_mat3_invalid_fs +KHR-GL30.shaders30.glsl_constructors.vec4_from_mat3x2_vs +KHR-GL30.shaders30.glsl_constructors.vec4_from_mat3x2_fs +KHR-GL30.shaders30.glsl_constructors.vec4_from_mat3x2_mat3x2_invalid_vs +KHR-GL30.shaders30.glsl_constructors.vec4_from_mat3x2_mat3x2_invalid_fs +KHR-GL30.shaders30.glsl_constructors.vec4_from_mat3x4_vs +KHR-GL30.shaders30.glsl_constructors.vec4_from_mat3x4_fs +KHR-GL30.shaders30.glsl_constructors.vec4_from_mat3x4_mat3x4_invalid_vs +KHR-GL30.shaders30.glsl_constructors.vec4_from_mat3x4_mat3x4_invalid_fs +KHR-GL30.shaders30.glsl_constructors.vec4_from_mat4_vs +KHR-GL30.shaders30.glsl_constructors.vec4_from_mat4_fs +KHR-GL30.shaders30.glsl_constructors.vec4_from_mat4_mat4_invalid_vs +KHR-GL30.shaders30.glsl_constructors.vec4_from_mat4_mat4_invalid_fs +KHR-GL30.shaders30.glsl_constructors.vec4_from_mat4x2_vs +KHR-GL30.shaders30.glsl_constructors.vec4_from_mat4x2_fs +KHR-GL30.shaders30.glsl_constructors.vec4_from_mat4x2_mat4x2_invalid_vs +KHR-GL30.shaders30.glsl_constructors.vec4_from_mat4x2_mat4x2_invalid_fs +KHR-GL30.shaders30.glsl_constructors.vec4_from_mat4x3_vs +KHR-GL30.shaders30.glsl_constructors.vec4_from_mat4x3_fs +KHR-GL30.shaders30.glsl_constructors.vec4_from_mat4x3_mat4x3_invalid_vs +KHR-GL30.shaders30.glsl_constructors.vec4_from_mat4x3_mat4x3_invalid_fs +KHR-GL30.shaders30.glsl_constructors.vec4_from_float_mat2_vs +KHR-GL30.shaders30.glsl_constructors.vec4_from_float_mat2_fs +KHR-GL30.shaders30.glsl_constructors.vec4_from_float_mat2_float_invalid_vs +KHR-GL30.shaders30.glsl_constructors.vec4_from_float_mat2_float_invalid_fs +KHR-GL30.shaders30.glsl_constructors.vec4_from_float_mat2x3_vs +KHR-GL30.shaders30.glsl_constructors.vec4_from_float_mat2x3_fs +KHR-GL30.shaders30.glsl_constructors.vec4_from_float_mat2x3_float_invalid_vs +KHR-GL30.shaders30.glsl_constructors.vec4_from_float_mat2x3_float_invalid_fs +KHR-GL30.shaders30.glsl_constructors.vec4_from_float_mat2x4_vs +KHR-GL30.shaders30.glsl_constructors.vec4_from_float_mat2x4_fs +KHR-GL30.shaders30.glsl_constructors.vec4_from_float_mat2x4_float_invalid_vs +KHR-GL30.shaders30.glsl_constructors.vec4_from_float_mat2x4_float_invalid_fs +KHR-GL30.shaders30.glsl_constructors.vec4_from_float_mat3_vs +KHR-GL30.shaders30.glsl_constructors.vec4_from_float_mat3_fs +KHR-GL30.shaders30.glsl_constructors.vec4_from_float_mat3_float_invalid_vs +KHR-GL30.shaders30.glsl_constructors.vec4_from_float_mat3_float_invalid_fs +KHR-GL30.shaders30.glsl_constructors.vec4_from_float_mat3x2_vs +KHR-GL30.shaders30.glsl_constructors.vec4_from_float_mat3x2_fs +KHR-GL30.shaders30.glsl_constructors.vec4_from_float_mat3x2_float_invalid_vs +KHR-GL30.shaders30.glsl_constructors.vec4_from_float_mat3x2_float_invalid_fs +KHR-GL30.shaders30.glsl_constructors.vec4_from_float_mat3x4_vs +KHR-GL30.shaders30.glsl_constructors.vec4_from_float_mat3x4_fs +KHR-GL30.shaders30.glsl_constructors.vec4_from_float_mat3x4_float_invalid_vs +KHR-GL30.shaders30.glsl_constructors.vec4_from_float_mat3x4_float_invalid_fs +KHR-GL30.shaders30.glsl_constructors.vec4_from_float_mat4_vs +KHR-GL30.shaders30.glsl_constructors.vec4_from_float_mat4_fs +KHR-GL30.shaders30.glsl_constructors.vec4_from_float_mat4_float_invalid_vs +KHR-GL30.shaders30.glsl_constructors.vec4_from_float_mat4_float_invalid_fs +KHR-GL30.shaders30.glsl_constructors.vec4_from_float_mat4x2_vs +KHR-GL30.shaders30.glsl_constructors.vec4_from_float_mat4x2_fs +KHR-GL30.shaders30.glsl_constructors.vec4_from_float_mat4x2_float_invalid_vs +KHR-GL30.shaders30.glsl_constructors.vec4_from_float_mat4x2_float_invalid_fs +KHR-GL30.shaders30.glsl_constructors.vec4_from_float_mat4x3_vs +KHR-GL30.shaders30.glsl_constructors.vec4_from_float_mat4x3_fs +KHR-GL30.shaders30.glsl_constructors.vec4_from_float_mat4x3_float_invalid_vs +KHR-GL30.shaders30.glsl_constructors.vec4_from_float_mat4x3_float_invalid_fs +KHR-GL30.shaders30.glsl_constructors.ivec2_from_mat2_vs +KHR-GL30.shaders30.glsl_constructors.ivec2_from_mat2_fs +KHR-GL30.shaders30.glsl_constructors.ivec2_from_mat2_mat2_invalid_vs +KHR-GL30.shaders30.glsl_constructors.ivec2_from_mat2_mat2_invalid_fs +KHR-GL30.shaders30.glsl_constructors.ivec2_from_mat2x3_vs +KHR-GL30.shaders30.glsl_constructors.ivec2_from_mat2x3_fs +KHR-GL30.shaders30.glsl_constructors.ivec2_from_mat2x3_mat2x3_invalid_vs +KHR-GL30.shaders30.glsl_constructors.ivec2_from_mat2x3_mat2x3_invalid_fs +KHR-GL30.shaders30.glsl_constructors.ivec2_from_mat2x4_vs +KHR-GL30.shaders30.glsl_constructors.ivec2_from_mat2x4_fs +KHR-GL30.shaders30.glsl_constructors.ivec2_from_mat2x4_mat2x4_invalid_vs +KHR-GL30.shaders30.glsl_constructors.ivec2_from_mat2x4_mat2x4_invalid_fs +KHR-GL30.shaders30.glsl_constructors.ivec2_from_mat3_vs +KHR-GL30.shaders30.glsl_constructors.ivec2_from_mat3_fs +KHR-GL30.shaders30.glsl_constructors.ivec2_from_mat3_mat3_invalid_vs +KHR-GL30.shaders30.glsl_constructors.ivec2_from_mat3_mat3_invalid_fs +KHR-GL30.shaders30.glsl_constructors.ivec2_from_mat3x2_vs +KHR-GL30.shaders30.glsl_constructors.ivec2_from_mat3x2_fs +KHR-GL30.shaders30.glsl_constructors.ivec2_from_mat3x2_mat3x2_invalid_vs +KHR-GL30.shaders30.glsl_constructors.ivec2_from_mat3x2_mat3x2_invalid_fs +KHR-GL30.shaders30.glsl_constructors.ivec2_from_mat3x4_vs +KHR-GL30.shaders30.glsl_constructors.ivec2_from_mat3x4_fs +KHR-GL30.shaders30.glsl_constructors.ivec2_from_mat3x4_mat3x4_invalid_vs +KHR-GL30.shaders30.glsl_constructors.ivec2_from_mat3x4_mat3x4_invalid_fs +KHR-GL30.shaders30.glsl_constructors.ivec2_from_mat4_vs +KHR-GL30.shaders30.glsl_constructors.ivec2_from_mat4_fs +KHR-GL30.shaders30.glsl_constructors.ivec2_from_mat4_mat4_invalid_vs +KHR-GL30.shaders30.glsl_constructors.ivec2_from_mat4_mat4_invalid_fs +KHR-GL30.shaders30.glsl_constructors.ivec2_from_mat4x2_vs +KHR-GL30.shaders30.glsl_constructors.ivec2_from_mat4x2_fs +KHR-GL30.shaders30.glsl_constructors.ivec2_from_mat4x2_mat4x2_invalid_vs +KHR-GL30.shaders30.glsl_constructors.ivec2_from_mat4x2_mat4x2_invalid_fs +KHR-GL30.shaders30.glsl_constructors.ivec2_from_mat4x3_vs +KHR-GL30.shaders30.glsl_constructors.ivec2_from_mat4x3_fs +KHR-GL30.shaders30.glsl_constructors.ivec2_from_mat4x3_mat4x3_invalid_vs +KHR-GL30.shaders30.glsl_constructors.ivec2_from_mat4x3_mat4x3_invalid_fs +KHR-GL30.shaders30.glsl_constructors.ivec2_from_int_mat2_vs +KHR-GL30.shaders30.glsl_constructors.ivec2_from_int_mat2_fs +KHR-GL30.shaders30.glsl_constructors.ivec2_from_int_mat2_int_invalid_vs +KHR-GL30.shaders30.glsl_constructors.ivec2_from_int_mat2_int_invalid_fs +KHR-GL30.shaders30.glsl_constructors.ivec2_from_int_mat2x3_vs +KHR-GL30.shaders30.glsl_constructors.ivec2_from_int_mat2x3_fs +KHR-GL30.shaders30.glsl_constructors.ivec2_from_int_mat2x3_int_invalid_vs +KHR-GL30.shaders30.glsl_constructors.ivec2_from_int_mat2x3_int_invalid_fs +KHR-GL30.shaders30.glsl_constructors.ivec2_from_int_mat2x4_vs +KHR-GL30.shaders30.glsl_constructors.ivec2_from_int_mat2x4_fs +KHR-GL30.shaders30.glsl_constructors.ivec2_from_int_mat2x4_int_invalid_vs +KHR-GL30.shaders30.glsl_constructors.ivec2_from_int_mat2x4_int_invalid_fs +KHR-GL30.shaders30.glsl_constructors.ivec2_from_int_mat3_vs +KHR-GL30.shaders30.glsl_constructors.ivec2_from_int_mat3_fs +KHR-GL30.shaders30.glsl_constructors.ivec2_from_int_mat3_int_invalid_vs +KHR-GL30.shaders30.glsl_constructors.ivec2_from_int_mat3_int_invalid_fs +KHR-GL30.shaders30.glsl_constructors.ivec2_from_int_mat3x2_vs +KHR-GL30.shaders30.glsl_constructors.ivec2_from_int_mat3x2_fs +KHR-GL30.shaders30.glsl_constructors.ivec2_from_int_mat3x2_int_invalid_vs +KHR-GL30.shaders30.glsl_constructors.ivec2_from_int_mat3x2_int_invalid_fs +KHR-GL30.shaders30.glsl_constructors.ivec2_from_int_mat3x4_vs +KHR-GL30.shaders30.glsl_constructors.ivec2_from_int_mat3x4_fs +KHR-GL30.shaders30.glsl_constructors.ivec2_from_int_mat3x4_int_invalid_vs +KHR-GL30.shaders30.glsl_constructors.ivec2_from_int_mat3x4_int_invalid_fs +KHR-GL30.shaders30.glsl_constructors.ivec2_from_int_mat4_vs +KHR-GL30.shaders30.glsl_constructors.ivec2_from_int_mat4_fs +KHR-GL30.shaders30.glsl_constructors.ivec2_from_int_mat4_int_invalid_vs +KHR-GL30.shaders30.glsl_constructors.ivec2_from_int_mat4_int_invalid_fs +KHR-GL30.shaders30.glsl_constructors.ivec2_from_int_mat4x2_vs +KHR-GL30.shaders30.glsl_constructors.ivec2_from_int_mat4x2_fs +KHR-GL30.shaders30.glsl_constructors.ivec2_from_int_mat4x2_int_invalid_vs +KHR-GL30.shaders30.glsl_constructors.ivec2_from_int_mat4x2_int_invalid_fs +KHR-GL30.shaders30.glsl_constructors.ivec2_from_int_mat4x3_vs +KHR-GL30.shaders30.glsl_constructors.ivec2_from_int_mat4x3_fs +KHR-GL30.shaders30.glsl_constructors.ivec2_from_int_mat4x3_int_invalid_vs +KHR-GL30.shaders30.glsl_constructors.ivec2_from_int_mat4x3_int_invalid_fs +KHR-GL30.shaders30.glsl_constructors.ivec3_from_mat2_vs +KHR-GL30.shaders30.glsl_constructors.ivec3_from_mat2_fs +KHR-GL30.shaders30.glsl_constructors.ivec3_from_mat2_mat2_invalid_vs +KHR-GL30.shaders30.glsl_constructors.ivec3_from_mat2_mat2_invalid_fs +KHR-GL30.shaders30.glsl_constructors.ivec3_from_mat2x3_vs +KHR-GL30.shaders30.glsl_constructors.ivec3_from_mat2x3_fs +KHR-GL30.shaders30.glsl_constructors.ivec3_from_mat2x3_mat2x3_invalid_vs +KHR-GL30.shaders30.glsl_constructors.ivec3_from_mat2x3_mat2x3_invalid_fs +KHR-GL30.shaders30.glsl_constructors.ivec3_from_mat2x4_vs +KHR-GL30.shaders30.glsl_constructors.ivec3_from_mat2x4_fs +KHR-GL30.shaders30.glsl_constructors.ivec3_from_mat2x4_mat2x4_invalid_vs +KHR-GL30.shaders30.glsl_constructors.ivec3_from_mat2x4_mat2x4_invalid_fs +KHR-GL30.shaders30.glsl_constructors.ivec3_from_mat3_vs +KHR-GL30.shaders30.glsl_constructors.ivec3_from_mat3_fs +KHR-GL30.shaders30.glsl_constructors.ivec3_from_mat3_mat3_invalid_vs +KHR-GL30.shaders30.glsl_constructors.ivec3_from_mat3_mat3_invalid_fs +KHR-GL30.shaders30.glsl_constructors.ivec3_from_mat3x2_vs +KHR-GL30.shaders30.glsl_constructors.ivec3_from_mat3x2_fs +KHR-GL30.shaders30.glsl_constructors.ivec3_from_mat3x2_mat3x2_invalid_vs +KHR-GL30.shaders30.glsl_constructors.ivec3_from_mat3x2_mat3x2_invalid_fs +KHR-GL30.shaders30.glsl_constructors.ivec3_from_mat3x4_vs +KHR-GL30.shaders30.glsl_constructors.ivec3_from_mat3x4_fs +KHR-GL30.shaders30.glsl_constructors.ivec3_from_mat3x4_mat3x4_invalid_vs +KHR-GL30.shaders30.glsl_constructors.ivec3_from_mat3x4_mat3x4_invalid_fs +KHR-GL30.shaders30.glsl_constructors.ivec3_from_mat4_vs +KHR-GL30.shaders30.glsl_constructors.ivec3_from_mat4_fs +KHR-GL30.shaders30.glsl_constructors.ivec3_from_mat4_mat4_invalid_vs +KHR-GL30.shaders30.glsl_constructors.ivec3_from_mat4_mat4_invalid_fs +KHR-GL30.shaders30.glsl_constructors.ivec3_from_mat4x2_vs +KHR-GL30.shaders30.glsl_constructors.ivec3_from_mat4x2_fs +KHR-GL30.shaders30.glsl_constructors.ivec3_from_mat4x2_mat4x2_invalid_vs +KHR-GL30.shaders30.glsl_constructors.ivec3_from_mat4x2_mat4x2_invalid_fs +KHR-GL30.shaders30.glsl_constructors.ivec3_from_mat4x3_vs +KHR-GL30.shaders30.glsl_constructors.ivec3_from_mat4x3_fs +KHR-GL30.shaders30.glsl_constructors.ivec3_from_mat4x3_mat4x3_invalid_vs +KHR-GL30.shaders30.glsl_constructors.ivec3_from_mat4x3_mat4x3_invalid_fs +KHR-GL30.shaders30.glsl_constructors.ivec3_from_int_mat2_vs +KHR-GL30.shaders30.glsl_constructors.ivec3_from_int_mat2_fs +KHR-GL30.shaders30.glsl_constructors.ivec3_from_int_mat2_int_invalid_vs +KHR-GL30.shaders30.glsl_constructors.ivec3_from_int_mat2_int_invalid_fs +KHR-GL30.shaders30.glsl_constructors.ivec3_from_int_mat2x3_vs +KHR-GL30.shaders30.glsl_constructors.ivec3_from_int_mat2x3_fs +KHR-GL30.shaders30.glsl_constructors.ivec3_from_int_mat2x3_int_invalid_vs +KHR-GL30.shaders30.glsl_constructors.ivec3_from_int_mat2x3_int_invalid_fs +KHR-GL30.shaders30.glsl_constructors.ivec3_from_int_mat2x4_vs +KHR-GL30.shaders30.glsl_constructors.ivec3_from_int_mat2x4_fs +KHR-GL30.shaders30.glsl_constructors.ivec3_from_int_mat2x4_int_invalid_vs +KHR-GL30.shaders30.glsl_constructors.ivec3_from_int_mat2x4_int_invalid_fs +KHR-GL30.shaders30.glsl_constructors.ivec3_from_int_mat3_vs +KHR-GL30.shaders30.glsl_constructors.ivec3_from_int_mat3_fs +KHR-GL30.shaders30.glsl_constructors.ivec3_from_int_mat3_int_invalid_vs +KHR-GL30.shaders30.glsl_constructors.ivec3_from_int_mat3_int_invalid_fs +KHR-GL30.shaders30.glsl_constructors.ivec3_from_int_mat3x2_vs +KHR-GL30.shaders30.glsl_constructors.ivec3_from_int_mat3x2_fs +KHR-GL30.shaders30.glsl_constructors.ivec3_from_int_mat3x2_int_invalid_vs +KHR-GL30.shaders30.glsl_constructors.ivec3_from_int_mat3x2_int_invalid_fs +KHR-GL30.shaders30.glsl_constructors.ivec3_from_int_mat3x4_vs +KHR-GL30.shaders30.glsl_constructors.ivec3_from_int_mat3x4_fs +KHR-GL30.shaders30.glsl_constructors.ivec3_from_int_mat3x4_int_invalid_vs +KHR-GL30.shaders30.glsl_constructors.ivec3_from_int_mat3x4_int_invalid_fs +KHR-GL30.shaders30.glsl_constructors.ivec3_from_int_mat4_vs +KHR-GL30.shaders30.glsl_constructors.ivec3_from_int_mat4_fs +KHR-GL30.shaders30.glsl_constructors.ivec3_from_int_mat4_int_invalid_vs +KHR-GL30.shaders30.glsl_constructors.ivec3_from_int_mat4_int_invalid_fs +KHR-GL30.shaders30.glsl_constructors.ivec3_from_int_mat4x2_vs +KHR-GL30.shaders30.glsl_constructors.ivec3_from_int_mat4x2_fs +KHR-GL30.shaders30.glsl_constructors.ivec3_from_int_mat4x2_int_invalid_vs +KHR-GL30.shaders30.glsl_constructors.ivec3_from_int_mat4x2_int_invalid_fs +KHR-GL30.shaders30.glsl_constructors.ivec3_from_int_mat4x3_vs +KHR-GL30.shaders30.glsl_constructors.ivec3_from_int_mat4x3_fs +KHR-GL30.shaders30.glsl_constructors.ivec3_from_int_mat4x3_int_invalid_vs +KHR-GL30.shaders30.glsl_constructors.ivec3_from_int_mat4x3_int_invalid_fs +KHR-GL30.shaders30.glsl_constructors.ivec4_from_mat2_vs +KHR-GL30.shaders30.glsl_constructors.ivec4_from_mat2_fs +KHR-GL30.shaders30.glsl_constructors.ivec4_from_mat2_mat2_invalid_vs +KHR-GL30.shaders30.glsl_constructors.ivec4_from_mat2_mat2_invalid_fs +KHR-GL30.shaders30.glsl_constructors.ivec4_from_mat2x3_vs +KHR-GL30.shaders30.glsl_constructors.ivec4_from_mat2x3_fs +KHR-GL30.shaders30.glsl_constructors.ivec4_from_mat2x3_mat2x3_invalid_vs +KHR-GL30.shaders30.glsl_constructors.ivec4_from_mat2x3_mat2x3_invalid_fs +KHR-GL30.shaders30.glsl_constructors.ivec4_from_mat2x4_vs +KHR-GL30.shaders30.glsl_constructors.ivec4_from_mat2x4_fs +KHR-GL30.shaders30.glsl_constructors.ivec4_from_mat2x4_mat2x4_invalid_vs +KHR-GL30.shaders30.glsl_constructors.ivec4_from_mat2x4_mat2x4_invalid_fs +KHR-GL30.shaders30.glsl_constructors.ivec4_from_mat3_vs +KHR-GL30.shaders30.glsl_constructors.ivec4_from_mat3_fs +KHR-GL30.shaders30.glsl_constructors.ivec4_from_mat3_mat3_invalid_vs +KHR-GL30.shaders30.glsl_constructors.ivec4_from_mat3_mat3_invalid_fs +KHR-GL30.shaders30.glsl_constructors.ivec4_from_mat3x2_vs +KHR-GL30.shaders30.glsl_constructors.ivec4_from_mat3x2_fs +KHR-GL30.shaders30.glsl_constructors.ivec4_from_mat3x2_mat3x2_invalid_vs +KHR-GL30.shaders30.glsl_constructors.ivec4_from_mat3x2_mat3x2_invalid_fs +KHR-GL30.shaders30.glsl_constructors.ivec4_from_mat3x4_vs +KHR-GL30.shaders30.glsl_constructors.ivec4_from_mat3x4_fs +KHR-GL30.shaders30.glsl_constructors.ivec4_from_mat3x4_mat3x4_invalid_vs +KHR-GL30.shaders30.glsl_constructors.ivec4_from_mat3x4_mat3x4_invalid_fs +KHR-GL30.shaders30.glsl_constructors.ivec4_from_mat4_vs +KHR-GL30.shaders30.glsl_constructors.ivec4_from_mat4_fs +KHR-GL30.shaders30.glsl_constructors.ivec4_from_mat4_mat4_invalid_vs +KHR-GL30.shaders30.glsl_constructors.ivec4_from_mat4_mat4_invalid_fs +KHR-GL30.shaders30.glsl_constructors.ivec4_from_mat4x2_vs +KHR-GL30.shaders30.glsl_constructors.ivec4_from_mat4x2_fs +KHR-GL30.shaders30.glsl_constructors.ivec4_from_mat4x2_mat4x2_invalid_vs +KHR-GL30.shaders30.glsl_constructors.ivec4_from_mat4x2_mat4x2_invalid_fs +KHR-GL30.shaders30.glsl_constructors.ivec4_from_mat4x3_vs +KHR-GL30.shaders30.glsl_constructors.ivec4_from_mat4x3_fs +KHR-GL30.shaders30.glsl_constructors.ivec4_from_mat4x3_mat4x3_invalid_vs +KHR-GL30.shaders30.glsl_constructors.ivec4_from_mat4x3_mat4x3_invalid_fs +KHR-GL30.shaders30.glsl_constructors.ivec4_from_int_mat2_vs +KHR-GL30.shaders30.glsl_constructors.ivec4_from_int_mat2_fs +KHR-GL30.shaders30.glsl_constructors.ivec4_from_int_mat2_int_invalid_vs +KHR-GL30.shaders30.glsl_constructors.ivec4_from_int_mat2_int_invalid_fs +KHR-GL30.shaders30.glsl_constructors.ivec4_from_int_mat2x3_vs +KHR-GL30.shaders30.glsl_constructors.ivec4_from_int_mat2x3_fs +KHR-GL30.shaders30.glsl_constructors.ivec4_from_int_mat2x3_int_invalid_vs +KHR-GL30.shaders30.glsl_constructors.ivec4_from_int_mat2x3_int_invalid_fs +KHR-GL30.shaders30.glsl_constructors.ivec4_from_int_mat2x4_vs +KHR-GL30.shaders30.glsl_constructors.ivec4_from_int_mat2x4_fs +KHR-GL30.shaders30.glsl_constructors.ivec4_from_int_mat2x4_int_invalid_vs +KHR-GL30.shaders30.glsl_constructors.ivec4_from_int_mat2x4_int_invalid_fs +KHR-GL30.shaders30.glsl_constructors.ivec4_from_int_mat3_vs +KHR-GL30.shaders30.glsl_constructors.ivec4_from_int_mat3_fs +KHR-GL30.shaders30.glsl_constructors.ivec4_from_int_mat3_int_invalid_vs +KHR-GL30.shaders30.glsl_constructors.ivec4_from_int_mat3_int_invalid_fs +KHR-GL30.shaders30.glsl_constructors.ivec4_from_int_mat3x2_vs +KHR-GL30.shaders30.glsl_constructors.ivec4_from_int_mat3x2_fs +KHR-GL30.shaders30.glsl_constructors.ivec4_from_int_mat3x2_int_invalid_vs +KHR-GL30.shaders30.glsl_constructors.ivec4_from_int_mat3x2_int_invalid_fs +KHR-GL30.shaders30.glsl_constructors.ivec4_from_int_mat3x4_vs +KHR-GL30.shaders30.glsl_constructors.ivec4_from_int_mat3x4_fs +KHR-GL30.shaders30.glsl_constructors.ivec4_from_int_mat3x4_int_invalid_vs +KHR-GL30.shaders30.glsl_constructors.ivec4_from_int_mat3x4_int_invalid_fs +KHR-GL30.shaders30.glsl_constructors.ivec4_from_int_mat4_vs +KHR-GL30.shaders30.glsl_constructors.ivec4_from_int_mat4_fs +KHR-GL30.shaders30.glsl_constructors.ivec4_from_int_mat4_int_invalid_vs +KHR-GL30.shaders30.glsl_constructors.ivec4_from_int_mat4_int_invalid_fs +KHR-GL30.shaders30.glsl_constructors.ivec4_from_int_mat4x2_vs +KHR-GL30.shaders30.glsl_constructors.ivec4_from_int_mat4x2_fs +KHR-GL30.shaders30.glsl_constructors.ivec4_from_int_mat4x2_int_invalid_vs +KHR-GL30.shaders30.glsl_constructors.ivec4_from_int_mat4x2_int_invalid_fs +KHR-GL30.shaders30.glsl_constructors.ivec4_from_int_mat4x3_vs +KHR-GL30.shaders30.glsl_constructors.ivec4_from_int_mat4x3_fs +KHR-GL30.shaders30.glsl_constructors.ivec4_from_int_mat4x3_int_invalid_vs +KHR-GL30.shaders30.glsl_constructors.ivec4_from_int_mat4x3_int_invalid_fs +KHR-GL30.shaders30.glsl_constructors.bvec2_from_mat2_vs +KHR-GL30.shaders30.glsl_constructors.bvec2_from_mat2_fs +KHR-GL30.shaders30.glsl_constructors.bvec2_from_mat2_mat2_invalid_vs +KHR-GL30.shaders30.glsl_constructors.bvec2_from_mat2_mat2_invalid_fs +KHR-GL30.shaders30.glsl_constructors.bvec2_from_mat2x3_vs +KHR-GL30.shaders30.glsl_constructors.bvec2_from_mat2x3_fs +KHR-GL30.shaders30.glsl_constructors.bvec2_from_mat2x3_mat2x3_invalid_vs +KHR-GL30.shaders30.glsl_constructors.bvec2_from_mat2x3_mat2x3_invalid_fs +KHR-GL30.shaders30.glsl_constructors.bvec2_from_mat2x4_vs +KHR-GL30.shaders30.glsl_constructors.bvec2_from_mat2x4_fs +KHR-GL30.shaders30.glsl_constructors.bvec2_from_mat2x4_mat2x4_invalid_vs +KHR-GL30.shaders30.glsl_constructors.bvec2_from_mat2x4_mat2x4_invalid_fs +KHR-GL30.shaders30.glsl_constructors.bvec2_from_mat3_vs +KHR-GL30.shaders30.glsl_constructors.bvec2_from_mat3_fs +KHR-GL30.shaders30.glsl_constructors.bvec2_from_mat3_mat3_invalid_vs +KHR-GL30.shaders30.glsl_constructors.bvec2_from_mat3_mat3_invalid_fs +KHR-GL30.shaders30.glsl_constructors.bvec2_from_mat3x2_vs +KHR-GL30.shaders30.glsl_constructors.bvec2_from_mat3x2_fs +KHR-GL30.shaders30.glsl_constructors.bvec2_from_mat3x2_mat3x2_invalid_vs +KHR-GL30.shaders30.glsl_constructors.bvec2_from_mat3x2_mat3x2_invalid_fs +KHR-GL30.shaders30.glsl_constructors.bvec2_from_mat3x4_vs +KHR-GL30.shaders30.glsl_constructors.bvec2_from_mat3x4_fs +KHR-GL30.shaders30.glsl_constructors.bvec2_from_mat3x4_mat3x4_invalid_vs +KHR-GL30.shaders30.glsl_constructors.bvec2_from_mat3x4_mat3x4_invalid_fs +KHR-GL30.shaders30.glsl_constructors.bvec2_from_mat4_vs +KHR-GL30.shaders30.glsl_constructors.bvec2_from_mat4_fs +KHR-GL30.shaders30.glsl_constructors.bvec2_from_mat4_mat4_invalid_vs +KHR-GL30.shaders30.glsl_constructors.bvec2_from_mat4_mat4_invalid_fs +KHR-GL30.shaders30.glsl_constructors.bvec2_from_mat4x2_vs +KHR-GL30.shaders30.glsl_constructors.bvec2_from_mat4x2_fs +KHR-GL30.shaders30.glsl_constructors.bvec2_from_mat4x2_mat4x2_invalid_vs +KHR-GL30.shaders30.glsl_constructors.bvec2_from_mat4x2_mat4x2_invalid_fs +KHR-GL30.shaders30.glsl_constructors.bvec2_from_mat4x3_vs +KHR-GL30.shaders30.glsl_constructors.bvec2_from_mat4x3_fs +KHR-GL30.shaders30.glsl_constructors.bvec2_from_mat4x3_mat4x3_invalid_vs +KHR-GL30.shaders30.glsl_constructors.bvec2_from_mat4x3_mat4x3_invalid_fs +KHR-GL30.shaders30.glsl_constructors.bvec2_from_bool_mat2_vs +KHR-GL30.shaders30.glsl_constructors.bvec2_from_bool_mat2_fs +KHR-GL30.shaders30.glsl_constructors.bvec2_from_bool_mat2_bool_invalid_vs +KHR-GL30.shaders30.glsl_constructors.bvec2_from_bool_mat2_bool_invalid_fs +KHR-GL30.shaders30.glsl_constructors.bvec2_from_bool_mat2x3_vs +KHR-GL30.shaders30.glsl_constructors.bvec2_from_bool_mat2x3_fs +KHR-GL30.shaders30.glsl_constructors.bvec2_from_bool_mat2x3_bool_invalid_vs +KHR-GL30.shaders30.glsl_constructors.bvec2_from_bool_mat2x3_bool_invalid_fs +KHR-GL30.shaders30.glsl_constructors.bvec2_from_bool_mat2x4_vs +KHR-GL30.shaders30.glsl_constructors.bvec2_from_bool_mat2x4_fs +KHR-GL30.shaders30.glsl_constructors.bvec2_from_bool_mat2x4_bool_invalid_vs +KHR-GL30.shaders30.glsl_constructors.bvec2_from_bool_mat2x4_bool_invalid_fs +KHR-GL30.shaders30.glsl_constructors.bvec2_from_bool_mat3_vs +KHR-GL30.shaders30.glsl_constructors.bvec2_from_bool_mat3_fs +KHR-GL30.shaders30.glsl_constructors.bvec2_from_bool_mat3_bool_invalid_vs +KHR-GL30.shaders30.glsl_constructors.bvec2_from_bool_mat3_bool_invalid_fs +KHR-GL30.shaders30.glsl_constructors.bvec2_from_bool_mat3x2_vs +KHR-GL30.shaders30.glsl_constructors.bvec2_from_bool_mat3x2_fs +KHR-GL30.shaders30.glsl_constructors.bvec2_from_bool_mat3x2_bool_invalid_vs +KHR-GL30.shaders30.glsl_constructors.bvec2_from_bool_mat3x2_bool_invalid_fs +KHR-GL30.shaders30.glsl_constructors.bvec2_from_bool_mat3x4_vs +KHR-GL30.shaders30.glsl_constructors.bvec2_from_bool_mat3x4_fs +KHR-GL30.shaders30.glsl_constructors.bvec2_from_bool_mat3x4_bool_invalid_vs +KHR-GL30.shaders30.glsl_constructors.bvec2_from_bool_mat3x4_bool_invalid_fs +KHR-GL30.shaders30.glsl_constructors.bvec2_from_bool_mat4_vs +KHR-GL30.shaders30.glsl_constructors.bvec2_from_bool_mat4_fs +KHR-GL30.shaders30.glsl_constructors.bvec2_from_bool_mat4_bool_invalid_vs +KHR-GL30.shaders30.glsl_constructors.bvec2_from_bool_mat4_bool_invalid_fs +KHR-GL30.shaders30.glsl_constructors.bvec2_from_bool_mat4x2_vs +KHR-GL30.shaders30.glsl_constructors.bvec2_from_bool_mat4x2_fs +KHR-GL30.shaders30.glsl_constructors.bvec2_from_bool_mat4x2_bool_invalid_vs +KHR-GL30.shaders30.glsl_constructors.bvec2_from_bool_mat4x2_bool_invalid_fs +KHR-GL30.shaders30.glsl_constructors.bvec2_from_bool_mat4x3_vs +KHR-GL30.shaders30.glsl_constructors.bvec2_from_bool_mat4x3_fs +KHR-GL30.shaders30.glsl_constructors.bvec2_from_bool_mat4x3_bool_invalid_vs +KHR-GL30.shaders30.glsl_constructors.bvec2_from_bool_mat4x3_bool_invalid_fs +KHR-GL30.shaders30.glsl_constructors.bvec3_from_mat2_vs +KHR-GL30.shaders30.glsl_constructors.bvec3_from_mat2_fs +KHR-GL30.shaders30.glsl_constructors.bvec3_from_mat2_mat2_invalid_vs +KHR-GL30.shaders30.glsl_constructors.bvec3_from_mat2_mat2_invalid_fs +KHR-GL30.shaders30.glsl_constructors.bvec3_from_mat2x3_vs +KHR-GL30.shaders30.glsl_constructors.bvec3_from_mat2x3_fs +KHR-GL30.shaders30.glsl_constructors.bvec3_from_mat2x3_mat2x3_invalid_vs +KHR-GL30.shaders30.glsl_constructors.bvec3_from_mat2x3_mat2x3_invalid_fs +KHR-GL30.shaders30.glsl_constructors.bvec3_from_mat2x4_vs +KHR-GL30.shaders30.glsl_constructors.bvec3_from_mat2x4_fs +KHR-GL30.shaders30.glsl_constructors.bvec3_from_mat2x4_mat2x4_invalid_vs +KHR-GL30.shaders30.glsl_constructors.bvec3_from_mat2x4_mat2x4_invalid_fs +KHR-GL30.shaders30.glsl_constructors.bvec3_from_mat3_vs +KHR-GL30.shaders30.glsl_constructors.bvec3_from_mat3_fs +KHR-GL30.shaders30.glsl_constructors.bvec3_from_mat3_mat3_invalid_vs +KHR-GL30.shaders30.glsl_constructors.bvec3_from_mat3_mat3_invalid_fs +KHR-GL30.shaders30.glsl_constructors.bvec3_from_mat3x2_vs +KHR-GL30.shaders30.glsl_constructors.bvec3_from_mat3x2_fs +KHR-GL30.shaders30.glsl_constructors.bvec3_from_mat3x2_mat3x2_invalid_vs +KHR-GL30.shaders30.glsl_constructors.bvec3_from_mat3x2_mat3x2_invalid_fs +KHR-GL30.shaders30.glsl_constructors.bvec3_from_mat3x4_vs +KHR-GL30.shaders30.glsl_constructors.bvec3_from_mat3x4_fs +KHR-GL30.shaders30.glsl_constructors.bvec3_from_mat3x4_mat3x4_invalid_vs +KHR-GL30.shaders30.glsl_constructors.bvec3_from_mat3x4_mat3x4_invalid_fs +KHR-GL30.shaders30.glsl_constructors.bvec3_from_mat4_vs +KHR-GL30.shaders30.glsl_constructors.bvec3_from_mat4_fs +KHR-GL30.shaders30.glsl_constructors.bvec3_from_mat4_mat4_invalid_vs +KHR-GL30.shaders30.glsl_constructors.bvec3_from_mat4_mat4_invalid_fs +KHR-GL30.shaders30.glsl_constructors.bvec3_from_mat4x2_vs +KHR-GL30.shaders30.glsl_constructors.bvec3_from_mat4x2_fs +KHR-GL30.shaders30.glsl_constructors.bvec3_from_mat4x2_mat4x2_invalid_vs +KHR-GL30.shaders30.glsl_constructors.bvec3_from_mat4x2_mat4x2_invalid_fs +KHR-GL30.shaders30.glsl_constructors.bvec3_from_mat4x3_vs +KHR-GL30.shaders30.glsl_constructors.bvec3_from_mat4x3_fs +KHR-GL30.shaders30.glsl_constructors.bvec3_from_mat4x3_mat4x3_invalid_vs +KHR-GL30.shaders30.glsl_constructors.bvec3_from_mat4x3_mat4x3_invalid_fs +KHR-GL30.shaders30.glsl_constructors.bvec3_from_bool_mat2_vs +KHR-GL30.shaders30.glsl_constructors.bvec3_from_bool_mat2_fs +KHR-GL30.shaders30.glsl_constructors.bvec3_from_bool_mat2_bool_invalid_vs +KHR-GL30.shaders30.glsl_constructors.bvec3_from_bool_mat2_bool_invalid_fs +KHR-GL30.shaders30.glsl_constructors.bvec3_from_bool_mat2x3_vs +KHR-GL30.shaders30.glsl_constructors.bvec3_from_bool_mat2x3_fs +KHR-GL30.shaders30.glsl_constructors.bvec3_from_bool_mat2x3_bool_invalid_vs +KHR-GL30.shaders30.glsl_constructors.bvec3_from_bool_mat2x3_bool_invalid_fs +KHR-GL30.shaders30.glsl_constructors.bvec3_from_bool_mat2x4_vs +KHR-GL30.shaders30.glsl_constructors.bvec3_from_bool_mat2x4_fs +KHR-GL30.shaders30.glsl_constructors.bvec3_from_bool_mat2x4_bool_invalid_vs +KHR-GL30.shaders30.glsl_constructors.bvec3_from_bool_mat2x4_bool_invalid_fs +KHR-GL30.shaders30.glsl_constructors.bvec3_from_bool_mat3_vs +KHR-GL30.shaders30.glsl_constructors.bvec3_from_bool_mat3_fs +KHR-GL30.shaders30.glsl_constructors.bvec3_from_bool_mat3_bool_invalid_vs +KHR-GL30.shaders30.glsl_constructors.bvec3_from_bool_mat3_bool_invalid_fs +KHR-GL30.shaders30.glsl_constructors.bvec3_from_bool_mat3x2_vs +KHR-GL30.shaders30.glsl_constructors.bvec3_from_bool_mat3x2_fs +KHR-GL30.shaders30.glsl_constructors.bvec3_from_bool_mat3x2_bool_invalid_vs +KHR-GL30.shaders30.glsl_constructors.bvec3_from_bool_mat3x2_bool_invalid_fs +KHR-GL30.shaders30.glsl_constructors.bvec3_from_bool_mat3x4_vs +KHR-GL30.shaders30.glsl_constructors.bvec3_from_bool_mat3x4_fs +KHR-GL30.shaders30.glsl_constructors.bvec3_from_bool_mat3x4_bool_invalid_vs +KHR-GL30.shaders30.glsl_constructors.bvec3_from_bool_mat3x4_bool_invalid_fs +KHR-GL30.shaders30.glsl_constructors.bvec3_from_bool_mat4_vs +KHR-GL30.shaders30.glsl_constructors.bvec3_from_bool_mat4_fs +KHR-GL30.shaders30.glsl_constructors.bvec3_from_bool_mat4_bool_invalid_vs +KHR-GL30.shaders30.glsl_constructors.bvec3_from_bool_mat4_bool_invalid_fs +KHR-GL30.shaders30.glsl_constructors.bvec3_from_bool_mat4x2_vs +KHR-GL30.shaders30.glsl_constructors.bvec3_from_bool_mat4x2_fs +KHR-GL30.shaders30.glsl_constructors.bvec3_from_bool_mat4x2_bool_invalid_vs +KHR-GL30.shaders30.glsl_constructors.bvec3_from_bool_mat4x2_bool_invalid_fs +KHR-GL30.shaders30.glsl_constructors.bvec3_from_bool_mat4x3_vs +KHR-GL30.shaders30.glsl_constructors.bvec3_from_bool_mat4x3_fs +KHR-GL30.shaders30.glsl_constructors.bvec3_from_bool_mat4x3_bool_invalid_vs +KHR-GL30.shaders30.glsl_constructors.bvec3_from_bool_mat4x3_bool_invalid_fs +KHR-GL30.shaders30.glsl_constructors.bvec4_from_mat2_vs +KHR-GL30.shaders30.glsl_constructors.bvec4_from_mat2_fs +KHR-GL30.shaders30.glsl_constructors.bvec4_from_mat2_mat2_invalid_vs +KHR-GL30.shaders30.glsl_constructors.bvec4_from_mat2_mat2_invalid_fs +KHR-GL30.shaders30.glsl_constructors.bvec4_from_mat2x3_vs +KHR-GL30.shaders30.glsl_constructors.bvec4_from_mat2x3_fs +KHR-GL30.shaders30.glsl_constructors.bvec4_from_mat2x3_mat2x3_invalid_vs +KHR-GL30.shaders30.glsl_constructors.bvec4_from_mat2x3_mat2x3_invalid_fs +KHR-GL30.shaders30.glsl_constructors.bvec4_from_mat2x4_vs +KHR-GL30.shaders30.glsl_constructors.bvec4_from_mat2x4_fs +KHR-GL30.shaders30.glsl_constructors.bvec4_from_mat2x4_mat2x4_invalid_vs +KHR-GL30.shaders30.glsl_constructors.bvec4_from_mat2x4_mat2x4_invalid_fs +KHR-GL30.shaders30.glsl_constructors.bvec4_from_mat3_vs +KHR-GL30.shaders30.glsl_constructors.bvec4_from_mat3_fs +KHR-GL30.shaders30.glsl_constructors.bvec4_from_mat3_mat3_invalid_vs +KHR-GL30.shaders30.glsl_constructors.bvec4_from_mat3_mat3_invalid_fs +KHR-GL30.shaders30.glsl_constructors.bvec4_from_mat3x2_vs +KHR-GL30.shaders30.glsl_constructors.bvec4_from_mat3x2_fs +KHR-GL30.shaders30.glsl_constructors.bvec4_from_mat3x2_mat3x2_invalid_vs +KHR-GL30.shaders30.glsl_constructors.bvec4_from_mat3x2_mat3x2_invalid_fs +KHR-GL30.shaders30.glsl_constructors.bvec4_from_mat3x4_vs +KHR-GL30.shaders30.glsl_constructors.bvec4_from_mat3x4_fs +KHR-GL30.shaders30.glsl_constructors.bvec4_from_mat3x4_mat3x4_invalid_vs +KHR-GL30.shaders30.glsl_constructors.bvec4_from_mat3x4_mat3x4_invalid_fs +KHR-GL30.shaders30.glsl_constructors.bvec4_from_mat4_vs +KHR-GL30.shaders30.glsl_constructors.bvec4_from_mat4_fs +KHR-GL30.shaders30.glsl_constructors.bvec4_from_mat4_mat4_invalid_vs +KHR-GL30.shaders30.glsl_constructors.bvec4_from_mat4_mat4_invalid_fs +KHR-GL30.shaders30.glsl_constructors.bvec4_from_mat4x2_vs +KHR-GL30.shaders30.glsl_constructors.bvec4_from_mat4x2_fs +KHR-GL30.shaders30.glsl_constructors.bvec4_from_mat4x2_mat4x2_invalid_vs +KHR-GL30.shaders30.glsl_constructors.bvec4_from_mat4x2_mat4x2_invalid_fs +KHR-GL30.shaders30.glsl_constructors.bvec4_from_mat4x3_vs +KHR-GL30.shaders30.glsl_constructors.bvec4_from_mat4x3_fs +KHR-GL30.shaders30.glsl_constructors.bvec4_from_mat4x3_mat4x3_invalid_vs +KHR-GL30.shaders30.glsl_constructors.bvec4_from_mat4x3_mat4x3_invalid_fs +KHR-GL30.shaders30.glsl_constructors.bvec4_from_bool_mat2_vs +KHR-GL30.shaders30.glsl_constructors.bvec4_from_bool_mat2_fs +KHR-GL30.shaders30.glsl_constructors.bvec4_from_bool_mat2_bool_invalid_vs +KHR-GL30.shaders30.glsl_constructors.bvec4_from_bool_mat2_bool_invalid_fs +KHR-GL30.shaders30.glsl_constructors.bvec4_from_bool_mat2x3_vs +KHR-GL30.shaders30.glsl_constructors.bvec4_from_bool_mat2x3_fs +KHR-GL30.shaders30.glsl_constructors.bvec4_from_bool_mat2x3_bool_invalid_vs +KHR-GL30.shaders30.glsl_constructors.bvec4_from_bool_mat2x3_bool_invalid_fs +KHR-GL30.shaders30.glsl_constructors.bvec4_from_bool_mat2x4_vs +KHR-GL30.shaders30.glsl_constructors.bvec4_from_bool_mat2x4_fs +KHR-GL30.shaders30.glsl_constructors.bvec4_from_bool_mat2x4_bool_invalid_vs +KHR-GL30.shaders30.glsl_constructors.bvec4_from_bool_mat2x4_bool_invalid_fs +KHR-GL30.shaders30.glsl_constructors.bvec4_from_bool_mat3_vs +KHR-GL30.shaders30.glsl_constructors.bvec4_from_bool_mat3_fs +KHR-GL30.shaders30.glsl_constructors.bvec4_from_bool_mat3_bool_invalid_vs +KHR-GL30.shaders30.glsl_constructors.bvec4_from_bool_mat3_bool_invalid_fs +KHR-GL30.shaders30.glsl_constructors.bvec4_from_bool_mat3x2_vs +KHR-GL30.shaders30.glsl_constructors.bvec4_from_bool_mat3x2_fs +KHR-GL30.shaders30.glsl_constructors.bvec4_from_bool_mat3x2_bool_invalid_vs +KHR-GL30.shaders30.glsl_constructors.bvec4_from_bool_mat3x2_bool_invalid_fs +KHR-GL30.shaders30.glsl_constructors.bvec4_from_bool_mat3x4_vs +KHR-GL30.shaders30.glsl_constructors.bvec4_from_bool_mat3x4_fs +KHR-GL30.shaders30.glsl_constructors.bvec4_from_bool_mat3x4_bool_invalid_vs +KHR-GL30.shaders30.glsl_constructors.bvec4_from_bool_mat3x4_bool_invalid_fs +KHR-GL30.shaders30.glsl_constructors.bvec4_from_bool_mat4_vs +KHR-GL30.shaders30.glsl_constructors.bvec4_from_bool_mat4_fs +KHR-GL30.shaders30.glsl_constructors.bvec4_from_bool_mat4_bool_invalid_vs +KHR-GL30.shaders30.glsl_constructors.bvec4_from_bool_mat4_bool_invalid_fs +KHR-GL30.shaders30.glsl_constructors.bvec4_from_bool_mat4x2_vs +KHR-GL30.shaders30.glsl_constructors.bvec4_from_bool_mat4x2_fs +KHR-GL30.shaders30.glsl_constructors.bvec4_from_bool_mat4x2_bool_invalid_vs +KHR-GL30.shaders30.glsl_constructors.bvec4_from_bool_mat4x2_bool_invalid_fs +KHR-GL30.shaders30.glsl_constructors.bvec4_from_bool_mat4x3_vs +KHR-GL30.shaders30.glsl_constructors.bvec4_from_bool_mat4x3_fs +KHR-GL30.shaders30.glsl_constructors.bvec4_from_bool_mat4x3_bool_invalid_vs +KHR-GL30.shaders30.glsl_constructors.bvec4_from_bool_mat4x3_bool_invalid_fs KHR-GL30.ext_texture_shadow_lod.texture.sampler2darrayshadow_fragment KHR-GL30.ext_texture_shadow_lod.texture.sampler2darrayshadow_bias_fragment KHR-GL30.ext_texture_shadow_lod.texture.samplercubearrayshadow_vertex diff --git a/external/openglcts/data/mustpass/gl/khronos_mustpass/4.6.1.x/gl31-master.txt b/external/openglcts/data/mustpass/gl/khronos_mustpass/4.6.1.x/gl31-master.txt index 71e3fe0..6e3536e 100644 --- a/external/openglcts/data/mustpass/gl/khronos_mustpass/4.6.1.x/gl31-master.txt +++ b/external/openglcts/data/mustpass/gl/khronos_mustpass/4.6.1.x/gl31-master.txt @@ -192,6 +192,654 @@ KHR-GL31.texture_repeat_mode.depth24_stencil8_11x131_2_repeat KHR-GL31.texture_repeat_mode.depth24_stencil8_11x131_2_mirrored_repeat KHR-GL31.shaders30.declarations.declarations.redeclare_gl_FragColor KHR-GL31.shaders30.declarations.declarations.redeclare_gl_FragData +KHR-GL31.shaders30.glsl_constructors.vec2_from_mat2_vs +KHR-GL31.shaders30.glsl_constructors.vec2_from_mat2_fs +KHR-GL31.shaders30.glsl_constructors.vec2_from_mat2_mat2_invalid_vs +KHR-GL31.shaders30.glsl_constructors.vec2_from_mat2_mat2_invalid_fs +KHR-GL31.shaders30.glsl_constructors.vec2_from_mat2x3_vs +KHR-GL31.shaders30.glsl_constructors.vec2_from_mat2x3_fs +KHR-GL31.shaders30.glsl_constructors.vec2_from_mat2x3_mat2x3_invalid_vs +KHR-GL31.shaders30.glsl_constructors.vec2_from_mat2x3_mat2x3_invalid_fs +KHR-GL31.shaders30.glsl_constructors.vec2_from_mat2x4_vs +KHR-GL31.shaders30.glsl_constructors.vec2_from_mat2x4_fs +KHR-GL31.shaders30.glsl_constructors.vec2_from_mat2x4_mat2x4_invalid_vs +KHR-GL31.shaders30.glsl_constructors.vec2_from_mat2x4_mat2x4_invalid_fs +KHR-GL31.shaders30.glsl_constructors.vec2_from_mat3_vs +KHR-GL31.shaders30.glsl_constructors.vec2_from_mat3_fs +KHR-GL31.shaders30.glsl_constructors.vec2_from_mat3_mat3_invalid_vs +KHR-GL31.shaders30.glsl_constructors.vec2_from_mat3_mat3_invalid_fs +KHR-GL31.shaders30.glsl_constructors.vec2_from_mat3x2_vs +KHR-GL31.shaders30.glsl_constructors.vec2_from_mat3x2_fs +KHR-GL31.shaders30.glsl_constructors.vec2_from_mat3x2_mat3x2_invalid_vs +KHR-GL31.shaders30.glsl_constructors.vec2_from_mat3x2_mat3x2_invalid_fs +KHR-GL31.shaders30.glsl_constructors.vec2_from_mat3x4_vs +KHR-GL31.shaders30.glsl_constructors.vec2_from_mat3x4_fs +KHR-GL31.shaders30.glsl_constructors.vec2_from_mat3x4_mat3x4_invalid_vs +KHR-GL31.shaders30.glsl_constructors.vec2_from_mat3x4_mat3x4_invalid_fs +KHR-GL31.shaders30.glsl_constructors.vec2_from_mat4_vs +KHR-GL31.shaders30.glsl_constructors.vec2_from_mat4_fs +KHR-GL31.shaders30.glsl_constructors.vec2_from_mat4_mat4_invalid_vs +KHR-GL31.shaders30.glsl_constructors.vec2_from_mat4_mat4_invalid_fs +KHR-GL31.shaders30.glsl_constructors.vec2_from_mat4x2_vs +KHR-GL31.shaders30.glsl_constructors.vec2_from_mat4x2_fs +KHR-GL31.shaders30.glsl_constructors.vec2_from_mat4x2_mat4x2_invalid_vs +KHR-GL31.shaders30.glsl_constructors.vec2_from_mat4x2_mat4x2_invalid_fs +KHR-GL31.shaders30.glsl_constructors.vec2_from_mat4x3_vs +KHR-GL31.shaders30.glsl_constructors.vec2_from_mat4x3_fs +KHR-GL31.shaders30.glsl_constructors.vec2_from_mat4x3_mat4x3_invalid_vs +KHR-GL31.shaders30.glsl_constructors.vec2_from_mat4x3_mat4x3_invalid_fs +KHR-GL31.shaders30.glsl_constructors.vec2_from_float_mat2_vs +KHR-GL31.shaders30.glsl_constructors.vec2_from_float_mat2_fs +KHR-GL31.shaders30.glsl_constructors.vec2_from_float_mat2_float_invalid_vs +KHR-GL31.shaders30.glsl_constructors.vec2_from_float_mat2_float_invalid_fs +KHR-GL31.shaders30.glsl_constructors.vec2_from_float_mat2x3_vs +KHR-GL31.shaders30.glsl_constructors.vec2_from_float_mat2x3_fs +KHR-GL31.shaders30.glsl_constructors.vec2_from_float_mat2x3_float_invalid_vs +KHR-GL31.shaders30.glsl_constructors.vec2_from_float_mat2x3_float_invalid_fs +KHR-GL31.shaders30.glsl_constructors.vec2_from_float_mat2x4_vs +KHR-GL31.shaders30.glsl_constructors.vec2_from_float_mat2x4_fs +KHR-GL31.shaders30.glsl_constructors.vec2_from_float_mat2x4_float_invalid_vs +KHR-GL31.shaders30.glsl_constructors.vec2_from_float_mat2x4_float_invalid_fs +KHR-GL31.shaders30.glsl_constructors.vec2_from_float_mat3_vs +KHR-GL31.shaders30.glsl_constructors.vec2_from_float_mat3_fs +KHR-GL31.shaders30.glsl_constructors.vec2_from_float_mat3_float_invalid_vs +KHR-GL31.shaders30.glsl_constructors.vec2_from_float_mat3_float_invalid_fs +KHR-GL31.shaders30.glsl_constructors.vec2_from_float_mat3x2_vs +KHR-GL31.shaders30.glsl_constructors.vec2_from_float_mat3x2_fs +KHR-GL31.shaders30.glsl_constructors.vec2_from_float_mat3x2_float_invalid_vs +KHR-GL31.shaders30.glsl_constructors.vec2_from_float_mat3x2_float_invalid_fs +KHR-GL31.shaders30.glsl_constructors.vec2_from_float_mat3x4_vs +KHR-GL31.shaders30.glsl_constructors.vec2_from_float_mat3x4_fs +KHR-GL31.shaders30.glsl_constructors.vec2_from_float_mat3x4_float_invalid_vs +KHR-GL31.shaders30.glsl_constructors.vec2_from_float_mat3x4_float_invalid_fs +KHR-GL31.shaders30.glsl_constructors.vec2_from_float_mat4_vs +KHR-GL31.shaders30.glsl_constructors.vec2_from_float_mat4_fs +KHR-GL31.shaders30.glsl_constructors.vec2_from_float_mat4_float_invalid_vs +KHR-GL31.shaders30.glsl_constructors.vec2_from_float_mat4_float_invalid_fs +KHR-GL31.shaders30.glsl_constructors.vec2_from_float_mat4x2_vs +KHR-GL31.shaders30.glsl_constructors.vec2_from_float_mat4x2_fs +KHR-GL31.shaders30.glsl_constructors.vec2_from_float_mat4x2_float_invalid_vs +KHR-GL31.shaders30.glsl_constructors.vec2_from_float_mat4x2_float_invalid_fs +KHR-GL31.shaders30.glsl_constructors.vec2_from_float_mat4x3_vs +KHR-GL31.shaders30.glsl_constructors.vec2_from_float_mat4x3_fs +KHR-GL31.shaders30.glsl_constructors.vec2_from_float_mat4x3_float_invalid_vs +KHR-GL31.shaders30.glsl_constructors.vec2_from_float_mat4x3_float_invalid_fs +KHR-GL31.shaders30.glsl_constructors.vec3_from_mat2_vs +KHR-GL31.shaders30.glsl_constructors.vec3_from_mat2_fs +KHR-GL31.shaders30.glsl_constructors.vec3_from_mat2_mat2_invalid_vs +KHR-GL31.shaders30.glsl_constructors.vec3_from_mat2_mat2_invalid_fs +KHR-GL31.shaders30.glsl_constructors.vec3_from_mat2x3_vs +KHR-GL31.shaders30.glsl_constructors.vec3_from_mat2x3_fs +KHR-GL31.shaders30.glsl_constructors.vec3_from_mat2x3_mat2x3_invalid_vs +KHR-GL31.shaders30.glsl_constructors.vec3_from_mat2x3_mat2x3_invalid_fs +KHR-GL31.shaders30.glsl_constructors.vec3_from_mat2x4_vs +KHR-GL31.shaders30.glsl_constructors.vec3_from_mat2x4_fs +KHR-GL31.shaders30.glsl_constructors.vec3_from_mat2x4_mat2x4_invalid_vs +KHR-GL31.shaders30.glsl_constructors.vec3_from_mat2x4_mat2x4_invalid_fs +KHR-GL31.shaders30.glsl_constructors.vec3_from_mat3_vs +KHR-GL31.shaders30.glsl_constructors.vec3_from_mat3_fs +KHR-GL31.shaders30.glsl_constructors.vec3_from_mat3_mat3_invalid_vs +KHR-GL31.shaders30.glsl_constructors.vec3_from_mat3_mat3_invalid_fs +KHR-GL31.shaders30.glsl_constructors.vec3_from_mat3x2_vs +KHR-GL31.shaders30.glsl_constructors.vec3_from_mat3x2_fs +KHR-GL31.shaders30.glsl_constructors.vec3_from_mat3x2_mat3x2_invalid_vs +KHR-GL31.shaders30.glsl_constructors.vec3_from_mat3x2_mat3x2_invalid_fs +KHR-GL31.shaders30.glsl_constructors.vec3_from_mat3x4_vs +KHR-GL31.shaders30.glsl_constructors.vec3_from_mat3x4_fs +KHR-GL31.shaders30.glsl_constructors.vec3_from_mat3x4_mat3x4_invalid_vs +KHR-GL31.shaders30.glsl_constructors.vec3_from_mat3x4_mat3x4_invalid_fs +KHR-GL31.shaders30.glsl_constructors.vec3_from_mat4_vs +KHR-GL31.shaders30.glsl_constructors.vec3_from_mat4_fs +KHR-GL31.shaders30.glsl_constructors.vec3_from_mat4_mat4_invalid_vs +KHR-GL31.shaders30.glsl_constructors.vec3_from_mat4_mat4_invalid_fs +KHR-GL31.shaders30.glsl_constructors.vec3_from_mat4x2_vs +KHR-GL31.shaders30.glsl_constructors.vec3_from_mat4x2_fs +KHR-GL31.shaders30.glsl_constructors.vec3_from_mat4x2_mat4x2_invalid_vs +KHR-GL31.shaders30.glsl_constructors.vec3_from_mat4x2_mat4x2_invalid_fs +KHR-GL31.shaders30.glsl_constructors.vec3_from_mat4x3_vs +KHR-GL31.shaders30.glsl_constructors.vec3_from_mat4x3_fs +KHR-GL31.shaders30.glsl_constructors.vec3_from_mat4x3_mat4x3_invalid_vs +KHR-GL31.shaders30.glsl_constructors.vec3_from_mat4x3_mat4x3_invalid_fs +KHR-GL31.shaders30.glsl_constructors.vec3_from_float_mat2_vs +KHR-GL31.shaders30.glsl_constructors.vec3_from_float_mat2_fs +KHR-GL31.shaders30.glsl_constructors.vec3_from_float_mat2_float_invalid_vs +KHR-GL31.shaders30.glsl_constructors.vec3_from_float_mat2_float_invalid_fs +KHR-GL31.shaders30.glsl_constructors.vec3_from_float_mat2x3_vs +KHR-GL31.shaders30.glsl_constructors.vec3_from_float_mat2x3_fs +KHR-GL31.shaders30.glsl_constructors.vec3_from_float_mat2x3_float_invalid_vs +KHR-GL31.shaders30.glsl_constructors.vec3_from_float_mat2x3_float_invalid_fs +KHR-GL31.shaders30.glsl_constructors.vec3_from_float_mat2x4_vs +KHR-GL31.shaders30.glsl_constructors.vec3_from_float_mat2x4_fs +KHR-GL31.shaders30.glsl_constructors.vec3_from_float_mat2x4_float_invalid_vs +KHR-GL31.shaders30.glsl_constructors.vec3_from_float_mat2x4_float_invalid_fs +KHR-GL31.shaders30.glsl_constructors.vec3_from_float_mat3_vs +KHR-GL31.shaders30.glsl_constructors.vec3_from_float_mat3_fs +KHR-GL31.shaders30.glsl_constructors.vec3_from_float_mat3_float_invalid_vs +KHR-GL31.shaders30.glsl_constructors.vec3_from_float_mat3_float_invalid_fs +KHR-GL31.shaders30.glsl_constructors.vec3_from_float_mat3x2_vs +KHR-GL31.shaders30.glsl_constructors.vec3_from_float_mat3x2_fs +KHR-GL31.shaders30.glsl_constructors.vec3_from_float_mat3x2_float_invalid_vs +KHR-GL31.shaders30.glsl_constructors.vec3_from_float_mat3x2_float_invalid_fs +KHR-GL31.shaders30.glsl_constructors.vec3_from_float_mat3x4_vs +KHR-GL31.shaders30.glsl_constructors.vec3_from_float_mat3x4_fs +KHR-GL31.shaders30.glsl_constructors.vec3_from_float_mat3x4_float_invalid_vs +KHR-GL31.shaders30.glsl_constructors.vec3_from_float_mat3x4_float_invalid_fs +KHR-GL31.shaders30.glsl_constructors.vec3_from_float_mat4_vs +KHR-GL31.shaders30.glsl_constructors.vec3_from_float_mat4_fs +KHR-GL31.shaders30.glsl_constructors.vec3_from_float_mat4_float_invalid_vs +KHR-GL31.shaders30.glsl_constructors.vec3_from_float_mat4_float_invalid_fs +KHR-GL31.shaders30.glsl_constructors.vec3_from_float_mat4x2_vs +KHR-GL31.shaders30.glsl_constructors.vec3_from_float_mat4x2_fs +KHR-GL31.shaders30.glsl_constructors.vec3_from_float_mat4x2_float_invalid_vs +KHR-GL31.shaders30.glsl_constructors.vec3_from_float_mat4x2_float_invalid_fs +KHR-GL31.shaders30.glsl_constructors.vec3_from_float_mat4x3_vs +KHR-GL31.shaders30.glsl_constructors.vec3_from_float_mat4x3_fs +KHR-GL31.shaders30.glsl_constructors.vec3_from_float_mat4x3_float_invalid_vs +KHR-GL31.shaders30.glsl_constructors.vec3_from_float_mat4x3_float_invalid_fs +KHR-GL31.shaders30.glsl_constructors.vec4_from_mat2_vs +KHR-GL31.shaders30.glsl_constructors.vec4_from_mat2_fs +KHR-GL31.shaders30.glsl_constructors.vec4_from_mat2_mat2_invalid_vs +KHR-GL31.shaders30.glsl_constructors.vec4_from_mat2_mat2_invalid_fs +KHR-GL31.shaders30.glsl_constructors.vec4_from_mat2x3_vs +KHR-GL31.shaders30.glsl_constructors.vec4_from_mat2x3_fs +KHR-GL31.shaders30.glsl_constructors.vec4_from_mat2x3_mat2x3_invalid_vs +KHR-GL31.shaders30.glsl_constructors.vec4_from_mat2x3_mat2x3_invalid_fs +KHR-GL31.shaders30.glsl_constructors.vec4_from_mat2x4_vs +KHR-GL31.shaders30.glsl_constructors.vec4_from_mat2x4_fs +KHR-GL31.shaders30.glsl_constructors.vec4_from_mat2x4_mat2x4_invalid_vs +KHR-GL31.shaders30.glsl_constructors.vec4_from_mat2x4_mat2x4_invalid_fs +KHR-GL31.shaders30.glsl_constructors.vec4_from_mat3_vs +KHR-GL31.shaders30.glsl_constructors.vec4_from_mat3_fs +KHR-GL31.shaders30.glsl_constructors.vec4_from_mat3_mat3_invalid_vs +KHR-GL31.shaders30.glsl_constructors.vec4_from_mat3_mat3_invalid_fs +KHR-GL31.shaders30.glsl_constructors.vec4_from_mat3x2_vs +KHR-GL31.shaders30.glsl_constructors.vec4_from_mat3x2_fs +KHR-GL31.shaders30.glsl_constructors.vec4_from_mat3x2_mat3x2_invalid_vs +KHR-GL31.shaders30.glsl_constructors.vec4_from_mat3x2_mat3x2_invalid_fs +KHR-GL31.shaders30.glsl_constructors.vec4_from_mat3x4_vs +KHR-GL31.shaders30.glsl_constructors.vec4_from_mat3x4_fs +KHR-GL31.shaders30.glsl_constructors.vec4_from_mat3x4_mat3x4_invalid_vs +KHR-GL31.shaders30.glsl_constructors.vec4_from_mat3x4_mat3x4_invalid_fs +KHR-GL31.shaders30.glsl_constructors.vec4_from_mat4_vs +KHR-GL31.shaders30.glsl_constructors.vec4_from_mat4_fs +KHR-GL31.shaders30.glsl_constructors.vec4_from_mat4_mat4_invalid_vs +KHR-GL31.shaders30.glsl_constructors.vec4_from_mat4_mat4_invalid_fs +KHR-GL31.shaders30.glsl_constructors.vec4_from_mat4x2_vs +KHR-GL31.shaders30.glsl_constructors.vec4_from_mat4x2_fs +KHR-GL31.shaders30.glsl_constructors.vec4_from_mat4x2_mat4x2_invalid_vs +KHR-GL31.shaders30.glsl_constructors.vec4_from_mat4x2_mat4x2_invalid_fs +KHR-GL31.shaders30.glsl_constructors.vec4_from_mat4x3_vs +KHR-GL31.shaders30.glsl_constructors.vec4_from_mat4x3_fs +KHR-GL31.shaders30.glsl_constructors.vec4_from_mat4x3_mat4x3_invalid_vs +KHR-GL31.shaders30.glsl_constructors.vec4_from_mat4x3_mat4x3_invalid_fs +KHR-GL31.shaders30.glsl_constructors.vec4_from_float_mat2_vs +KHR-GL31.shaders30.glsl_constructors.vec4_from_float_mat2_fs +KHR-GL31.shaders30.glsl_constructors.vec4_from_float_mat2_float_invalid_vs +KHR-GL31.shaders30.glsl_constructors.vec4_from_float_mat2_float_invalid_fs +KHR-GL31.shaders30.glsl_constructors.vec4_from_float_mat2x3_vs +KHR-GL31.shaders30.glsl_constructors.vec4_from_float_mat2x3_fs +KHR-GL31.shaders30.glsl_constructors.vec4_from_float_mat2x3_float_invalid_vs +KHR-GL31.shaders30.glsl_constructors.vec4_from_float_mat2x3_float_invalid_fs +KHR-GL31.shaders30.glsl_constructors.vec4_from_float_mat2x4_vs +KHR-GL31.shaders30.glsl_constructors.vec4_from_float_mat2x4_fs +KHR-GL31.shaders30.glsl_constructors.vec4_from_float_mat2x4_float_invalid_vs +KHR-GL31.shaders30.glsl_constructors.vec4_from_float_mat2x4_float_invalid_fs +KHR-GL31.shaders30.glsl_constructors.vec4_from_float_mat3_vs +KHR-GL31.shaders30.glsl_constructors.vec4_from_float_mat3_fs +KHR-GL31.shaders30.glsl_constructors.vec4_from_float_mat3_float_invalid_vs +KHR-GL31.shaders30.glsl_constructors.vec4_from_float_mat3_float_invalid_fs +KHR-GL31.shaders30.glsl_constructors.vec4_from_float_mat3x2_vs +KHR-GL31.shaders30.glsl_constructors.vec4_from_float_mat3x2_fs +KHR-GL31.shaders30.glsl_constructors.vec4_from_float_mat3x2_float_invalid_vs +KHR-GL31.shaders30.glsl_constructors.vec4_from_float_mat3x2_float_invalid_fs +KHR-GL31.shaders30.glsl_constructors.vec4_from_float_mat3x4_vs +KHR-GL31.shaders30.glsl_constructors.vec4_from_float_mat3x4_fs +KHR-GL31.shaders30.glsl_constructors.vec4_from_float_mat3x4_float_invalid_vs +KHR-GL31.shaders30.glsl_constructors.vec4_from_float_mat3x4_float_invalid_fs +KHR-GL31.shaders30.glsl_constructors.vec4_from_float_mat4_vs +KHR-GL31.shaders30.glsl_constructors.vec4_from_float_mat4_fs +KHR-GL31.shaders30.glsl_constructors.vec4_from_float_mat4_float_invalid_vs +KHR-GL31.shaders30.glsl_constructors.vec4_from_float_mat4_float_invalid_fs +KHR-GL31.shaders30.glsl_constructors.vec4_from_float_mat4x2_vs +KHR-GL31.shaders30.glsl_constructors.vec4_from_float_mat4x2_fs +KHR-GL31.shaders30.glsl_constructors.vec4_from_float_mat4x2_float_invalid_vs +KHR-GL31.shaders30.glsl_constructors.vec4_from_float_mat4x2_float_invalid_fs +KHR-GL31.shaders30.glsl_constructors.vec4_from_float_mat4x3_vs +KHR-GL31.shaders30.glsl_constructors.vec4_from_float_mat4x3_fs +KHR-GL31.shaders30.glsl_constructors.vec4_from_float_mat4x3_float_invalid_vs +KHR-GL31.shaders30.glsl_constructors.vec4_from_float_mat4x3_float_invalid_fs +KHR-GL31.shaders30.glsl_constructors.ivec2_from_mat2_vs +KHR-GL31.shaders30.glsl_constructors.ivec2_from_mat2_fs +KHR-GL31.shaders30.glsl_constructors.ivec2_from_mat2_mat2_invalid_vs +KHR-GL31.shaders30.glsl_constructors.ivec2_from_mat2_mat2_invalid_fs +KHR-GL31.shaders30.glsl_constructors.ivec2_from_mat2x3_vs +KHR-GL31.shaders30.glsl_constructors.ivec2_from_mat2x3_fs +KHR-GL31.shaders30.glsl_constructors.ivec2_from_mat2x3_mat2x3_invalid_vs +KHR-GL31.shaders30.glsl_constructors.ivec2_from_mat2x3_mat2x3_invalid_fs +KHR-GL31.shaders30.glsl_constructors.ivec2_from_mat2x4_vs +KHR-GL31.shaders30.glsl_constructors.ivec2_from_mat2x4_fs +KHR-GL31.shaders30.glsl_constructors.ivec2_from_mat2x4_mat2x4_invalid_vs +KHR-GL31.shaders30.glsl_constructors.ivec2_from_mat2x4_mat2x4_invalid_fs +KHR-GL31.shaders30.glsl_constructors.ivec2_from_mat3_vs +KHR-GL31.shaders30.glsl_constructors.ivec2_from_mat3_fs +KHR-GL31.shaders30.glsl_constructors.ivec2_from_mat3_mat3_invalid_vs +KHR-GL31.shaders30.glsl_constructors.ivec2_from_mat3_mat3_invalid_fs +KHR-GL31.shaders30.glsl_constructors.ivec2_from_mat3x2_vs +KHR-GL31.shaders30.glsl_constructors.ivec2_from_mat3x2_fs +KHR-GL31.shaders30.glsl_constructors.ivec2_from_mat3x2_mat3x2_invalid_vs +KHR-GL31.shaders30.glsl_constructors.ivec2_from_mat3x2_mat3x2_invalid_fs +KHR-GL31.shaders30.glsl_constructors.ivec2_from_mat3x4_vs +KHR-GL31.shaders30.glsl_constructors.ivec2_from_mat3x4_fs +KHR-GL31.shaders30.glsl_constructors.ivec2_from_mat3x4_mat3x4_invalid_vs +KHR-GL31.shaders30.glsl_constructors.ivec2_from_mat3x4_mat3x4_invalid_fs +KHR-GL31.shaders30.glsl_constructors.ivec2_from_mat4_vs +KHR-GL31.shaders30.glsl_constructors.ivec2_from_mat4_fs +KHR-GL31.shaders30.glsl_constructors.ivec2_from_mat4_mat4_invalid_vs +KHR-GL31.shaders30.glsl_constructors.ivec2_from_mat4_mat4_invalid_fs +KHR-GL31.shaders30.glsl_constructors.ivec2_from_mat4x2_vs +KHR-GL31.shaders30.glsl_constructors.ivec2_from_mat4x2_fs +KHR-GL31.shaders30.glsl_constructors.ivec2_from_mat4x2_mat4x2_invalid_vs +KHR-GL31.shaders30.glsl_constructors.ivec2_from_mat4x2_mat4x2_invalid_fs +KHR-GL31.shaders30.glsl_constructors.ivec2_from_mat4x3_vs +KHR-GL31.shaders30.glsl_constructors.ivec2_from_mat4x3_fs +KHR-GL31.shaders30.glsl_constructors.ivec2_from_mat4x3_mat4x3_invalid_vs +KHR-GL31.shaders30.glsl_constructors.ivec2_from_mat4x3_mat4x3_invalid_fs +KHR-GL31.shaders30.glsl_constructors.ivec2_from_int_mat2_vs +KHR-GL31.shaders30.glsl_constructors.ivec2_from_int_mat2_fs +KHR-GL31.shaders30.glsl_constructors.ivec2_from_int_mat2_int_invalid_vs +KHR-GL31.shaders30.glsl_constructors.ivec2_from_int_mat2_int_invalid_fs +KHR-GL31.shaders30.glsl_constructors.ivec2_from_int_mat2x3_vs +KHR-GL31.shaders30.glsl_constructors.ivec2_from_int_mat2x3_fs +KHR-GL31.shaders30.glsl_constructors.ivec2_from_int_mat2x3_int_invalid_vs +KHR-GL31.shaders30.glsl_constructors.ivec2_from_int_mat2x3_int_invalid_fs +KHR-GL31.shaders30.glsl_constructors.ivec2_from_int_mat2x4_vs +KHR-GL31.shaders30.glsl_constructors.ivec2_from_int_mat2x4_fs +KHR-GL31.shaders30.glsl_constructors.ivec2_from_int_mat2x4_int_invalid_vs +KHR-GL31.shaders30.glsl_constructors.ivec2_from_int_mat2x4_int_invalid_fs +KHR-GL31.shaders30.glsl_constructors.ivec2_from_int_mat3_vs +KHR-GL31.shaders30.glsl_constructors.ivec2_from_int_mat3_fs +KHR-GL31.shaders30.glsl_constructors.ivec2_from_int_mat3_int_invalid_vs +KHR-GL31.shaders30.glsl_constructors.ivec2_from_int_mat3_int_invalid_fs +KHR-GL31.shaders30.glsl_constructors.ivec2_from_int_mat3x2_vs +KHR-GL31.shaders30.glsl_constructors.ivec2_from_int_mat3x2_fs +KHR-GL31.shaders30.glsl_constructors.ivec2_from_int_mat3x2_int_invalid_vs +KHR-GL31.shaders30.glsl_constructors.ivec2_from_int_mat3x2_int_invalid_fs +KHR-GL31.shaders30.glsl_constructors.ivec2_from_int_mat3x4_vs +KHR-GL31.shaders30.glsl_constructors.ivec2_from_int_mat3x4_fs +KHR-GL31.shaders30.glsl_constructors.ivec2_from_int_mat3x4_int_invalid_vs +KHR-GL31.shaders30.glsl_constructors.ivec2_from_int_mat3x4_int_invalid_fs +KHR-GL31.shaders30.glsl_constructors.ivec2_from_int_mat4_vs +KHR-GL31.shaders30.glsl_constructors.ivec2_from_int_mat4_fs +KHR-GL31.shaders30.glsl_constructors.ivec2_from_int_mat4_int_invalid_vs +KHR-GL31.shaders30.glsl_constructors.ivec2_from_int_mat4_int_invalid_fs +KHR-GL31.shaders30.glsl_constructors.ivec2_from_int_mat4x2_vs +KHR-GL31.shaders30.glsl_constructors.ivec2_from_int_mat4x2_fs +KHR-GL31.shaders30.glsl_constructors.ivec2_from_int_mat4x2_int_invalid_vs +KHR-GL31.shaders30.glsl_constructors.ivec2_from_int_mat4x2_int_invalid_fs +KHR-GL31.shaders30.glsl_constructors.ivec2_from_int_mat4x3_vs +KHR-GL31.shaders30.glsl_constructors.ivec2_from_int_mat4x3_fs +KHR-GL31.shaders30.glsl_constructors.ivec2_from_int_mat4x3_int_invalid_vs +KHR-GL31.shaders30.glsl_constructors.ivec2_from_int_mat4x3_int_invalid_fs +KHR-GL31.shaders30.glsl_constructors.ivec3_from_mat2_vs +KHR-GL31.shaders30.glsl_constructors.ivec3_from_mat2_fs +KHR-GL31.shaders30.glsl_constructors.ivec3_from_mat2_mat2_invalid_vs +KHR-GL31.shaders30.glsl_constructors.ivec3_from_mat2_mat2_invalid_fs +KHR-GL31.shaders30.glsl_constructors.ivec3_from_mat2x3_vs +KHR-GL31.shaders30.glsl_constructors.ivec3_from_mat2x3_fs +KHR-GL31.shaders30.glsl_constructors.ivec3_from_mat2x3_mat2x3_invalid_vs +KHR-GL31.shaders30.glsl_constructors.ivec3_from_mat2x3_mat2x3_invalid_fs +KHR-GL31.shaders30.glsl_constructors.ivec3_from_mat2x4_vs +KHR-GL31.shaders30.glsl_constructors.ivec3_from_mat2x4_fs +KHR-GL31.shaders30.glsl_constructors.ivec3_from_mat2x4_mat2x4_invalid_vs +KHR-GL31.shaders30.glsl_constructors.ivec3_from_mat2x4_mat2x4_invalid_fs +KHR-GL31.shaders30.glsl_constructors.ivec3_from_mat3_vs +KHR-GL31.shaders30.glsl_constructors.ivec3_from_mat3_fs +KHR-GL31.shaders30.glsl_constructors.ivec3_from_mat3_mat3_invalid_vs +KHR-GL31.shaders30.glsl_constructors.ivec3_from_mat3_mat3_invalid_fs +KHR-GL31.shaders30.glsl_constructors.ivec3_from_mat3x2_vs +KHR-GL31.shaders30.glsl_constructors.ivec3_from_mat3x2_fs +KHR-GL31.shaders30.glsl_constructors.ivec3_from_mat3x2_mat3x2_invalid_vs +KHR-GL31.shaders30.glsl_constructors.ivec3_from_mat3x2_mat3x2_invalid_fs +KHR-GL31.shaders30.glsl_constructors.ivec3_from_mat3x4_vs +KHR-GL31.shaders30.glsl_constructors.ivec3_from_mat3x4_fs +KHR-GL31.shaders30.glsl_constructors.ivec3_from_mat3x4_mat3x4_invalid_vs +KHR-GL31.shaders30.glsl_constructors.ivec3_from_mat3x4_mat3x4_invalid_fs +KHR-GL31.shaders30.glsl_constructors.ivec3_from_mat4_vs +KHR-GL31.shaders30.glsl_constructors.ivec3_from_mat4_fs +KHR-GL31.shaders30.glsl_constructors.ivec3_from_mat4_mat4_invalid_vs +KHR-GL31.shaders30.glsl_constructors.ivec3_from_mat4_mat4_invalid_fs +KHR-GL31.shaders30.glsl_constructors.ivec3_from_mat4x2_vs +KHR-GL31.shaders30.glsl_constructors.ivec3_from_mat4x2_fs +KHR-GL31.shaders30.glsl_constructors.ivec3_from_mat4x2_mat4x2_invalid_vs +KHR-GL31.shaders30.glsl_constructors.ivec3_from_mat4x2_mat4x2_invalid_fs +KHR-GL31.shaders30.glsl_constructors.ivec3_from_mat4x3_vs +KHR-GL31.shaders30.glsl_constructors.ivec3_from_mat4x3_fs +KHR-GL31.shaders30.glsl_constructors.ivec3_from_mat4x3_mat4x3_invalid_vs +KHR-GL31.shaders30.glsl_constructors.ivec3_from_mat4x3_mat4x3_invalid_fs +KHR-GL31.shaders30.glsl_constructors.ivec3_from_int_mat2_vs +KHR-GL31.shaders30.glsl_constructors.ivec3_from_int_mat2_fs +KHR-GL31.shaders30.glsl_constructors.ivec3_from_int_mat2_int_invalid_vs +KHR-GL31.shaders30.glsl_constructors.ivec3_from_int_mat2_int_invalid_fs +KHR-GL31.shaders30.glsl_constructors.ivec3_from_int_mat2x3_vs +KHR-GL31.shaders30.glsl_constructors.ivec3_from_int_mat2x3_fs +KHR-GL31.shaders30.glsl_constructors.ivec3_from_int_mat2x3_int_invalid_vs +KHR-GL31.shaders30.glsl_constructors.ivec3_from_int_mat2x3_int_invalid_fs +KHR-GL31.shaders30.glsl_constructors.ivec3_from_int_mat2x4_vs +KHR-GL31.shaders30.glsl_constructors.ivec3_from_int_mat2x4_fs +KHR-GL31.shaders30.glsl_constructors.ivec3_from_int_mat2x4_int_invalid_vs +KHR-GL31.shaders30.glsl_constructors.ivec3_from_int_mat2x4_int_invalid_fs +KHR-GL31.shaders30.glsl_constructors.ivec3_from_int_mat3_vs +KHR-GL31.shaders30.glsl_constructors.ivec3_from_int_mat3_fs +KHR-GL31.shaders30.glsl_constructors.ivec3_from_int_mat3_int_invalid_vs +KHR-GL31.shaders30.glsl_constructors.ivec3_from_int_mat3_int_invalid_fs +KHR-GL31.shaders30.glsl_constructors.ivec3_from_int_mat3x2_vs +KHR-GL31.shaders30.glsl_constructors.ivec3_from_int_mat3x2_fs +KHR-GL31.shaders30.glsl_constructors.ivec3_from_int_mat3x2_int_invalid_vs +KHR-GL31.shaders30.glsl_constructors.ivec3_from_int_mat3x2_int_invalid_fs +KHR-GL31.shaders30.glsl_constructors.ivec3_from_int_mat3x4_vs +KHR-GL31.shaders30.glsl_constructors.ivec3_from_int_mat3x4_fs +KHR-GL31.shaders30.glsl_constructors.ivec3_from_int_mat3x4_int_invalid_vs +KHR-GL31.shaders30.glsl_constructors.ivec3_from_int_mat3x4_int_invalid_fs +KHR-GL31.shaders30.glsl_constructors.ivec3_from_int_mat4_vs +KHR-GL31.shaders30.glsl_constructors.ivec3_from_int_mat4_fs +KHR-GL31.shaders30.glsl_constructors.ivec3_from_int_mat4_int_invalid_vs +KHR-GL31.shaders30.glsl_constructors.ivec3_from_int_mat4_int_invalid_fs +KHR-GL31.shaders30.glsl_constructors.ivec3_from_int_mat4x2_vs +KHR-GL31.shaders30.glsl_constructors.ivec3_from_int_mat4x2_fs +KHR-GL31.shaders30.glsl_constructors.ivec3_from_int_mat4x2_int_invalid_vs +KHR-GL31.shaders30.glsl_constructors.ivec3_from_int_mat4x2_int_invalid_fs +KHR-GL31.shaders30.glsl_constructors.ivec3_from_int_mat4x3_vs +KHR-GL31.shaders30.glsl_constructors.ivec3_from_int_mat4x3_fs +KHR-GL31.shaders30.glsl_constructors.ivec3_from_int_mat4x3_int_invalid_vs +KHR-GL31.shaders30.glsl_constructors.ivec3_from_int_mat4x3_int_invalid_fs +KHR-GL31.shaders30.glsl_constructors.ivec4_from_mat2_vs +KHR-GL31.shaders30.glsl_constructors.ivec4_from_mat2_fs +KHR-GL31.shaders30.glsl_constructors.ivec4_from_mat2_mat2_invalid_vs +KHR-GL31.shaders30.glsl_constructors.ivec4_from_mat2_mat2_invalid_fs +KHR-GL31.shaders30.glsl_constructors.ivec4_from_mat2x3_vs +KHR-GL31.shaders30.glsl_constructors.ivec4_from_mat2x3_fs +KHR-GL31.shaders30.glsl_constructors.ivec4_from_mat2x3_mat2x3_invalid_vs +KHR-GL31.shaders30.glsl_constructors.ivec4_from_mat2x3_mat2x3_invalid_fs +KHR-GL31.shaders30.glsl_constructors.ivec4_from_mat2x4_vs +KHR-GL31.shaders30.glsl_constructors.ivec4_from_mat2x4_fs +KHR-GL31.shaders30.glsl_constructors.ivec4_from_mat2x4_mat2x4_invalid_vs +KHR-GL31.shaders30.glsl_constructors.ivec4_from_mat2x4_mat2x4_invalid_fs +KHR-GL31.shaders30.glsl_constructors.ivec4_from_mat3_vs +KHR-GL31.shaders30.glsl_constructors.ivec4_from_mat3_fs +KHR-GL31.shaders30.glsl_constructors.ivec4_from_mat3_mat3_invalid_vs +KHR-GL31.shaders30.glsl_constructors.ivec4_from_mat3_mat3_invalid_fs +KHR-GL31.shaders30.glsl_constructors.ivec4_from_mat3x2_vs +KHR-GL31.shaders30.glsl_constructors.ivec4_from_mat3x2_fs +KHR-GL31.shaders30.glsl_constructors.ivec4_from_mat3x2_mat3x2_invalid_vs +KHR-GL31.shaders30.glsl_constructors.ivec4_from_mat3x2_mat3x2_invalid_fs +KHR-GL31.shaders30.glsl_constructors.ivec4_from_mat3x4_vs +KHR-GL31.shaders30.glsl_constructors.ivec4_from_mat3x4_fs +KHR-GL31.shaders30.glsl_constructors.ivec4_from_mat3x4_mat3x4_invalid_vs +KHR-GL31.shaders30.glsl_constructors.ivec4_from_mat3x4_mat3x4_invalid_fs +KHR-GL31.shaders30.glsl_constructors.ivec4_from_mat4_vs +KHR-GL31.shaders30.glsl_constructors.ivec4_from_mat4_fs +KHR-GL31.shaders30.glsl_constructors.ivec4_from_mat4_mat4_invalid_vs +KHR-GL31.shaders30.glsl_constructors.ivec4_from_mat4_mat4_invalid_fs +KHR-GL31.shaders30.glsl_constructors.ivec4_from_mat4x2_vs +KHR-GL31.shaders30.glsl_constructors.ivec4_from_mat4x2_fs +KHR-GL31.shaders30.glsl_constructors.ivec4_from_mat4x2_mat4x2_invalid_vs +KHR-GL31.shaders30.glsl_constructors.ivec4_from_mat4x2_mat4x2_invalid_fs +KHR-GL31.shaders30.glsl_constructors.ivec4_from_mat4x3_vs +KHR-GL31.shaders30.glsl_constructors.ivec4_from_mat4x3_fs +KHR-GL31.shaders30.glsl_constructors.ivec4_from_mat4x3_mat4x3_invalid_vs +KHR-GL31.shaders30.glsl_constructors.ivec4_from_mat4x3_mat4x3_invalid_fs +KHR-GL31.shaders30.glsl_constructors.ivec4_from_int_mat2_vs +KHR-GL31.shaders30.glsl_constructors.ivec4_from_int_mat2_fs +KHR-GL31.shaders30.glsl_constructors.ivec4_from_int_mat2_int_invalid_vs +KHR-GL31.shaders30.glsl_constructors.ivec4_from_int_mat2_int_invalid_fs +KHR-GL31.shaders30.glsl_constructors.ivec4_from_int_mat2x3_vs +KHR-GL31.shaders30.glsl_constructors.ivec4_from_int_mat2x3_fs +KHR-GL31.shaders30.glsl_constructors.ivec4_from_int_mat2x3_int_invalid_vs +KHR-GL31.shaders30.glsl_constructors.ivec4_from_int_mat2x3_int_invalid_fs +KHR-GL31.shaders30.glsl_constructors.ivec4_from_int_mat2x4_vs +KHR-GL31.shaders30.glsl_constructors.ivec4_from_int_mat2x4_fs +KHR-GL31.shaders30.glsl_constructors.ivec4_from_int_mat2x4_int_invalid_vs +KHR-GL31.shaders30.glsl_constructors.ivec4_from_int_mat2x4_int_invalid_fs +KHR-GL31.shaders30.glsl_constructors.ivec4_from_int_mat3_vs +KHR-GL31.shaders30.glsl_constructors.ivec4_from_int_mat3_fs +KHR-GL31.shaders30.glsl_constructors.ivec4_from_int_mat3_int_invalid_vs +KHR-GL31.shaders30.glsl_constructors.ivec4_from_int_mat3_int_invalid_fs +KHR-GL31.shaders30.glsl_constructors.ivec4_from_int_mat3x2_vs +KHR-GL31.shaders30.glsl_constructors.ivec4_from_int_mat3x2_fs +KHR-GL31.shaders30.glsl_constructors.ivec4_from_int_mat3x2_int_invalid_vs +KHR-GL31.shaders30.glsl_constructors.ivec4_from_int_mat3x2_int_invalid_fs +KHR-GL31.shaders30.glsl_constructors.ivec4_from_int_mat3x4_vs +KHR-GL31.shaders30.glsl_constructors.ivec4_from_int_mat3x4_fs +KHR-GL31.shaders30.glsl_constructors.ivec4_from_int_mat3x4_int_invalid_vs +KHR-GL31.shaders30.glsl_constructors.ivec4_from_int_mat3x4_int_invalid_fs +KHR-GL31.shaders30.glsl_constructors.ivec4_from_int_mat4_vs +KHR-GL31.shaders30.glsl_constructors.ivec4_from_int_mat4_fs +KHR-GL31.shaders30.glsl_constructors.ivec4_from_int_mat4_int_invalid_vs +KHR-GL31.shaders30.glsl_constructors.ivec4_from_int_mat4_int_invalid_fs +KHR-GL31.shaders30.glsl_constructors.ivec4_from_int_mat4x2_vs +KHR-GL31.shaders30.glsl_constructors.ivec4_from_int_mat4x2_fs +KHR-GL31.shaders30.glsl_constructors.ivec4_from_int_mat4x2_int_invalid_vs +KHR-GL31.shaders30.glsl_constructors.ivec4_from_int_mat4x2_int_invalid_fs +KHR-GL31.shaders30.glsl_constructors.ivec4_from_int_mat4x3_vs +KHR-GL31.shaders30.glsl_constructors.ivec4_from_int_mat4x3_fs +KHR-GL31.shaders30.glsl_constructors.ivec4_from_int_mat4x3_int_invalid_vs +KHR-GL31.shaders30.glsl_constructors.ivec4_from_int_mat4x3_int_invalid_fs +KHR-GL31.shaders30.glsl_constructors.bvec2_from_mat2_vs +KHR-GL31.shaders30.glsl_constructors.bvec2_from_mat2_fs +KHR-GL31.shaders30.glsl_constructors.bvec2_from_mat2_mat2_invalid_vs +KHR-GL31.shaders30.glsl_constructors.bvec2_from_mat2_mat2_invalid_fs +KHR-GL31.shaders30.glsl_constructors.bvec2_from_mat2x3_vs +KHR-GL31.shaders30.glsl_constructors.bvec2_from_mat2x3_fs +KHR-GL31.shaders30.glsl_constructors.bvec2_from_mat2x3_mat2x3_invalid_vs +KHR-GL31.shaders30.glsl_constructors.bvec2_from_mat2x3_mat2x3_invalid_fs +KHR-GL31.shaders30.glsl_constructors.bvec2_from_mat2x4_vs +KHR-GL31.shaders30.glsl_constructors.bvec2_from_mat2x4_fs +KHR-GL31.shaders30.glsl_constructors.bvec2_from_mat2x4_mat2x4_invalid_vs +KHR-GL31.shaders30.glsl_constructors.bvec2_from_mat2x4_mat2x4_invalid_fs +KHR-GL31.shaders30.glsl_constructors.bvec2_from_mat3_vs +KHR-GL31.shaders30.glsl_constructors.bvec2_from_mat3_fs +KHR-GL31.shaders30.glsl_constructors.bvec2_from_mat3_mat3_invalid_vs +KHR-GL31.shaders30.glsl_constructors.bvec2_from_mat3_mat3_invalid_fs +KHR-GL31.shaders30.glsl_constructors.bvec2_from_mat3x2_vs +KHR-GL31.shaders30.glsl_constructors.bvec2_from_mat3x2_fs +KHR-GL31.shaders30.glsl_constructors.bvec2_from_mat3x2_mat3x2_invalid_vs +KHR-GL31.shaders30.glsl_constructors.bvec2_from_mat3x2_mat3x2_invalid_fs +KHR-GL31.shaders30.glsl_constructors.bvec2_from_mat3x4_vs +KHR-GL31.shaders30.glsl_constructors.bvec2_from_mat3x4_fs +KHR-GL31.shaders30.glsl_constructors.bvec2_from_mat3x4_mat3x4_invalid_vs +KHR-GL31.shaders30.glsl_constructors.bvec2_from_mat3x4_mat3x4_invalid_fs +KHR-GL31.shaders30.glsl_constructors.bvec2_from_mat4_vs +KHR-GL31.shaders30.glsl_constructors.bvec2_from_mat4_fs +KHR-GL31.shaders30.glsl_constructors.bvec2_from_mat4_mat4_invalid_vs +KHR-GL31.shaders30.glsl_constructors.bvec2_from_mat4_mat4_invalid_fs +KHR-GL31.shaders30.glsl_constructors.bvec2_from_mat4x2_vs +KHR-GL31.shaders30.glsl_constructors.bvec2_from_mat4x2_fs +KHR-GL31.shaders30.glsl_constructors.bvec2_from_mat4x2_mat4x2_invalid_vs +KHR-GL31.shaders30.glsl_constructors.bvec2_from_mat4x2_mat4x2_invalid_fs +KHR-GL31.shaders30.glsl_constructors.bvec2_from_mat4x3_vs +KHR-GL31.shaders30.glsl_constructors.bvec2_from_mat4x3_fs +KHR-GL31.shaders30.glsl_constructors.bvec2_from_mat4x3_mat4x3_invalid_vs +KHR-GL31.shaders30.glsl_constructors.bvec2_from_mat4x3_mat4x3_invalid_fs +KHR-GL31.shaders30.glsl_constructors.bvec2_from_bool_mat2_vs +KHR-GL31.shaders30.glsl_constructors.bvec2_from_bool_mat2_fs +KHR-GL31.shaders30.glsl_constructors.bvec2_from_bool_mat2_bool_invalid_vs +KHR-GL31.shaders30.glsl_constructors.bvec2_from_bool_mat2_bool_invalid_fs +KHR-GL31.shaders30.glsl_constructors.bvec2_from_bool_mat2x3_vs +KHR-GL31.shaders30.glsl_constructors.bvec2_from_bool_mat2x3_fs +KHR-GL31.shaders30.glsl_constructors.bvec2_from_bool_mat2x3_bool_invalid_vs +KHR-GL31.shaders30.glsl_constructors.bvec2_from_bool_mat2x3_bool_invalid_fs +KHR-GL31.shaders30.glsl_constructors.bvec2_from_bool_mat2x4_vs +KHR-GL31.shaders30.glsl_constructors.bvec2_from_bool_mat2x4_fs +KHR-GL31.shaders30.glsl_constructors.bvec2_from_bool_mat2x4_bool_invalid_vs +KHR-GL31.shaders30.glsl_constructors.bvec2_from_bool_mat2x4_bool_invalid_fs +KHR-GL31.shaders30.glsl_constructors.bvec2_from_bool_mat3_vs +KHR-GL31.shaders30.glsl_constructors.bvec2_from_bool_mat3_fs +KHR-GL31.shaders30.glsl_constructors.bvec2_from_bool_mat3_bool_invalid_vs +KHR-GL31.shaders30.glsl_constructors.bvec2_from_bool_mat3_bool_invalid_fs +KHR-GL31.shaders30.glsl_constructors.bvec2_from_bool_mat3x2_vs +KHR-GL31.shaders30.glsl_constructors.bvec2_from_bool_mat3x2_fs +KHR-GL31.shaders30.glsl_constructors.bvec2_from_bool_mat3x2_bool_invalid_vs +KHR-GL31.shaders30.glsl_constructors.bvec2_from_bool_mat3x2_bool_invalid_fs +KHR-GL31.shaders30.glsl_constructors.bvec2_from_bool_mat3x4_vs +KHR-GL31.shaders30.glsl_constructors.bvec2_from_bool_mat3x4_fs +KHR-GL31.shaders30.glsl_constructors.bvec2_from_bool_mat3x4_bool_invalid_vs +KHR-GL31.shaders30.glsl_constructors.bvec2_from_bool_mat3x4_bool_invalid_fs +KHR-GL31.shaders30.glsl_constructors.bvec2_from_bool_mat4_vs +KHR-GL31.shaders30.glsl_constructors.bvec2_from_bool_mat4_fs +KHR-GL31.shaders30.glsl_constructors.bvec2_from_bool_mat4_bool_invalid_vs +KHR-GL31.shaders30.glsl_constructors.bvec2_from_bool_mat4_bool_invalid_fs +KHR-GL31.shaders30.glsl_constructors.bvec2_from_bool_mat4x2_vs +KHR-GL31.shaders30.glsl_constructors.bvec2_from_bool_mat4x2_fs +KHR-GL31.shaders30.glsl_constructors.bvec2_from_bool_mat4x2_bool_invalid_vs +KHR-GL31.shaders30.glsl_constructors.bvec2_from_bool_mat4x2_bool_invalid_fs +KHR-GL31.shaders30.glsl_constructors.bvec2_from_bool_mat4x3_vs +KHR-GL31.shaders30.glsl_constructors.bvec2_from_bool_mat4x3_fs +KHR-GL31.shaders30.glsl_constructors.bvec2_from_bool_mat4x3_bool_invalid_vs +KHR-GL31.shaders30.glsl_constructors.bvec2_from_bool_mat4x3_bool_invalid_fs +KHR-GL31.shaders30.glsl_constructors.bvec3_from_mat2_vs +KHR-GL31.shaders30.glsl_constructors.bvec3_from_mat2_fs +KHR-GL31.shaders30.glsl_constructors.bvec3_from_mat2_mat2_invalid_vs +KHR-GL31.shaders30.glsl_constructors.bvec3_from_mat2_mat2_invalid_fs +KHR-GL31.shaders30.glsl_constructors.bvec3_from_mat2x3_vs +KHR-GL31.shaders30.glsl_constructors.bvec3_from_mat2x3_fs +KHR-GL31.shaders30.glsl_constructors.bvec3_from_mat2x3_mat2x3_invalid_vs +KHR-GL31.shaders30.glsl_constructors.bvec3_from_mat2x3_mat2x3_invalid_fs +KHR-GL31.shaders30.glsl_constructors.bvec3_from_mat2x4_vs +KHR-GL31.shaders30.glsl_constructors.bvec3_from_mat2x4_fs +KHR-GL31.shaders30.glsl_constructors.bvec3_from_mat2x4_mat2x4_invalid_vs +KHR-GL31.shaders30.glsl_constructors.bvec3_from_mat2x4_mat2x4_invalid_fs +KHR-GL31.shaders30.glsl_constructors.bvec3_from_mat3_vs +KHR-GL31.shaders30.glsl_constructors.bvec3_from_mat3_fs +KHR-GL31.shaders30.glsl_constructors.bvec3_from_mat3_mat3_invalid_vs +KHR-GL31.shaders30.glsl_constructors.bvec3_from_mat3_mat3_invalid_fs +KHR-GL31.shaders30.glsl_constructors.bvec3_from_mat3x2_vs +KHR-GL31.shaders30.glsl_constructors.bvec3_from_mat3x2_fs +KHR-GL31.shaders30.glsl_constructors.bvec3_from_mat3x2_mat3x2_invalid_vs +KHR-GL31.shaders30.glsl_constructors.bvec3_from_mat3x2_mat3x2_invalid_fs +KHR-GL31.shaders30.glsl_constructors.bvec3_from_mat3x4_vs +KHR-GL31.shaders30.glsl_constructors.bvec3_from_mat3x4_fs +KHR-GL31.shaders30.glsl_constructors.bvec3_from_mat3x4_mat3x4_invalid_vs +KHR-GL31.shaders30.glsl_constructors.bvec3_from_mat3x4_mat3x4_invalid_fs +KHR-GL31.shaders30.glsl_constructors.bvec3_from_mat4_vs +KHR-GL31.shaders30.glsl_constructors.bvec3_from_mat4_fs +KHR-GL31.shaders30.glsl_constructors.bvec3_from_mat4_mat4_invalid_vs +KHR-GL31.shaders30.glsl_constructors.bvec3_from_mat4_mat4_invalid_fs +KHR-GL31.shaders30.glsl_constructors.bvec3_from_mat4x2_vs +KHR-GL31.shaders30.glsl_constructors.bvec3_from_mat4x2_fs +KHR-GL31.shaders30.glsl_constructors.bvec3_from_mat4x2_mat4x2_invalid_vs +KHR-GL31.shaders30.glsl_constructors.bvec3_from_mat4x2_mat4x2_invalid_fs +KHR-GL31.shaders30.glsl_constructors.bvec3_from_mat4x3_vs +KHR-GL31.shaders30.glsl_constructors.bvec3_from_mat4x3_fs +KHR-GL31.shaders30.glsl_constructors.bvec3_from_mat4x3_mat4x3_invalid_vs +KHR-GL31.shaders30.glsl_constructors.bvec3_from_mat4x3_mat4x3_invalid_fs +KHR-GL31.shaders30.glsl_constructors.bvec3_from_bool_mat2_vs +KHR-GL31.shaders30.glsl_constructors.bvec3_from_bool_mat2_fs +KHR-GL31.shaders30.glsl_constructors.bvec3_from_bool_mat2_bool_invalid_vs +KHR-GL31.shaders30.glsl_constructors.bvec3_from_bool_mat2_bool_invalid_fs +KHR-GL31.shaders30.glsl_constructors.bvec3_from_bool_mat2x3_vs +KHR-GL31.shaders30.glsl_constructors.bvec3_from_bool_mat2x3_fs +KHR-GL31.shaders30.glsl_constructors.bvec3_from_bool_mat2x3_bool_invalid_vs +KHR-GL31.shaders30.glsl_constructors.bvec3_from_bool_mat2x3_bool_invalid_fs +KHR-GL31.shaders30.glsl_constructors.bvec3_from_bool_mat2x4_vs +KHR-GL31.shaders30.glsl_constructors.bvec3_from_bool_mat2x4_fs +KHR-GL31.shaders30.glsl_constructors.bvec3_from_bool_mat2x4_bool_invalid_vs +KHR-GL31.shaders30.glsl_constructors.bvec3_from_bool_mat2x4_bool_invalid_fs +KHR-GL31.shaders30.glsl_constructors.bvec3_from_bool_mat3_vs +KHR-GL31.shaders30.glsl_constructors.bvec3_from_bool_mat3_fs +KHR-GL31.shaders30.glsl_constructors.bvec3_from_bool_mat3_bool_invalid_vs +KHR-GL31.shaders30.glsl_constructors.bvec3_from_bool_mat3_bool_invalid_fs +KHR-GL31.shaders30.glsl_constructors.bvec3_from_bool_mat3x2_vs +KHR-GL31.shaders30.glsl_constructors.bvec3_from_bool_mat3x2_fs +KHR-GL31.shaders30.glsl_constructors.bvec3_from_bool_mat3x2_bool_invalid_vs +KHR-GL31.shaders30.glsl_constructors.bvec3_from_bool_mat3x2_bool_invalid_fs +KHR-GL31.shaders30.glsl_constructors.bvec3_from_bool_mat3x4_vs +KHR-GL31.shaders30.glsl_constructors.bvec3_from_bool_mat3x4_fs +KHR-GL31.shaders30.glsl_constructors.bvec3_from_bool_mat3x4_bool_invalid_vs +KHR-GL31.shaders30.glsl_constructors.bvec3_from_bool_mat3x4_bool_invalid_fs +KHR-GL31.shaders30.glsl_constructors.bvec3_from_bool_mat4_vs +KHR-GL31.shaders30.glsl_constructors.bvec3_from_bool_mat4_fs +KHR-GL31.shaders30.glsl_constructors.bvec3_from_bool_mat4_bool_invalid_vs +KHR-GL31.shaders30.glsl_constructors.bvec3_from_bool_mat4_bool_invalid_fs +KHR-GL31.shaders30.glsl_constructors.bvec3_from_bool_mat4x2_vs +KHR-GL31.shaders30.glsl_constructors.bvec3_from_bool_mat4x2_fs +KHR-GL31.shaders30.glsl_constructors.bvec3_from_bool_mat4x2_bool_invalid_vs +KHR-GL31.shaders30.glsl_constructors.bvec3_from_bool_mat4x2_bool_invalid_fs +KHR-GL31.shaders30.glsl_constructors.bvec3_from_bool_mat4x3_vs +KHR-GL31.shaders30.glsl_constructors.bvec3_from_bool_mat4x3_fs +KHR-GL31.shaders30.glsl_constructors.bvec3_from_bool_mat4x3_bool_invalid_vs +KHR-GL31.shaders30.glsl_constructors.bvec3_from_bool_mat4x3_bool_invalid_fs +KHR-GL31.shaders30.glsl_constructors.bvec4_from_mat2_vs +KHR-GL31.shaders30.glsl_constructors.bvec4_from_mat2_fs +KHR-GL31.shaders30.glsl_constructors.bvec4_from_mat2_mat2_invalid_vs +KHR-GL31.shaders30.glsl_constructors.bvec4_from_mat2_mat2_invalid_fs +KHR-GL31.shaders30.glsl_constructors.bvec4_from_mat2x3_vs +KHR-GL31.shaders30.glsl_constructors.bvec4_from_mat2x3_fs +KHR-GL31.shaders30.glsl_constructors.bvec4_from_mat2x3_mat2x3_invalid_vs +KHR-GL31.shaders30.glsl_constructors.bvec4_from_mat2x3_mat2x3_invalid_fs +KHR-GL31.shaders30.glsl_constructors.bvec4_from_mat2x4_vs +KHR-GL31.shaders30.glsl_constructors.bvec4_from_mat2x4_fs +KHR-GL31.shaders30.glsl_constructors.bvec4_from_mat2x4_mat2x4_invalid_vs +KHR-GL31.shaders30.glsl_constructors.bvec4_from_mat2x4_mat2x4_invalid_fs +KHR-GL31.shaders30.glsl_constructors.bvec4_from_mat3_vs +KHR-GL31.shaders30.glsl_constructors.bvec4_from_mat3_fs +KHR-GL31.shaders30.glsl_constructors.bvec4_from_mat3_mat3_invalid_vs +KHR-GL31.shaders30.glsl_constructors.bvec4_from_mat3_mat3_invalid_fs +KHR-GL31.shaders30.glsl_constructors.bvec4_from_mat3x2_vs +KHR-GL31.shaders30.glsl_constructors.bvec4_from_mat3x2_fs +KHR-GL31.shaders30.glsl_constructors.bvec4_from_mat3x2_mat3x2_invalid_vs +KHR-GL31.shaders30.glsl_constructors.bvec4_from_mat3x2_mat3x2_invalid_fs +KHR-GL31.shaders30.glsl_constructors.bvec4_from_mat3x4_vs +KHR-GL31.shaders30.glsl_constructors.bvec4_from_mat3x4_fs +KHR-GL31.shaders30.glsl_constructors.bvec4_from_mat3x4_mat3x4_invalid_vs +KHR-GL31.shaders30.glsl_constructors.bvec4_from_mat3x4_mat3x4_invalid_fs +KHR-GL31.shaders30.glsl_constructors.bvec4_from_mat4_vs +KHR-GL31.shaders30.glsl_constructors.bvec4_from_mat4_fs +KHR-GL31.shaders30.glsl_constructors.bvec4_from_mat4_mat4_invalid_vs +KHR-GL31.shaders30.glsl_constructors.bvec4_from_mat4_mat4_invalid_fs +KHR-GL31.shaders30.glsl_constructors.bvec4_from_mat4x2_vs +KHR-GL31.shaders30.glsl_constructors.bvec4_from_mat4x2_fs +KHR-GL31.shaders30.glsl_constructors.bvec4_from_mat4x2_mat4x2_invalid_vs +KHR-GL31.shaders30.glsl_constructors.bvec4_from_mat4x2_mat4x2_invalid_fs +KHR-GL31.shaders30.glsl_constructors.bvec4_from_mat4x3_vs +KHR-GL31.shaders30.glsl_constructors.bvec4_from_mat4x3_fs +KHR-GL31.shaders30.glsl_constructors.bvec4_from_mat4x3_mat4x3_invalid_vs +KHR-GL31.shaders30.glsl_constructors.bvec4_from_mat4x3_mat4x3_invalid_fs +KHR-GL31.shaders30.glsl_constructors.bvec4_from_bool_mat2_vs +KHR-GL31.shaders30.glsl_constructors.bvec4_from_bool_mat2_fs +KHR-GL31.shaders30.glsl_constructors.bvec4_from_bool_mat2_bool_invalid_vs +KHR-GL31.shaders30.glsl_constructors.bvec4_from_bool_mat2_bool_invalid_fs +KHR-GL31.shaders30.glsl_constructors.bvec4_from_bool_mat2x3_vs +KHR-GL31.shaders30.glsl_constructors.bvec4_from_bool_mat2x3_fs +KHR-GL31.shaders30.glsl_constructors.bvec4_from_bool_mat2x3_bool_invalid_vs +KHR-GL31.shaders30.glsl_constructors.bvec4_from_bool_mat2x3_bool_invalid_fs +KHR-GL31.shaders30.glsl_constructors.bvec4_from_bool_mat2x4_vs +KHR-GL31.shaders30.glsl_constructors.bvec4_from_bool_mat2x4_fs +KHR-GL31.shaders30.glsl_constructors.bvec4_from_bool_mat2x4_bool_invalid_vs +KHR-GL31.shaders30.glsl_constructors.bvec4_from_bool_mat2x4_bool_invalid_fs +KHR-GL31.shaders30.glsl_constructors.bvec4_from_bool_mat3_vs +KHR-GL31.shaders30.glsl_constructors.bvec4_from_bool_mat3_fs +KHR-GL31.shaders30.glsl_constructors.bvec4_from_bool_mat3_bool_invalid_vs +KHR-GL31.shaders30.glsl_constructors.bvec4_from_bool_mat3_bool_invalid_fs +KHR-GL31.shaders30.glsl_constructors.bvec4_from_bool_mat3x2_vs +KHR-GL31.shaders30.glsl_constructors.bvec4_from_bool_mat3x2_fs +KHR-GL31.shaders30.glsl_constructors.bvec4_from_bool_mat3x2_bool_invalid_vs +KHR-GL31.shaders30.glsl_constructors.bvec4_from_bool_mat3x2_bool_invalid_fs +KHR-GL31.shaders30.glsl_constructors.bvec4_from_bool_mat3x4_vs +KHR-GL31.shaders30.glsl_constructors.bvec4_from_bool_mat3x4_fs +KHR-GL31.shaders30.glsl_constructors.bvec4_from_bool_mat3x4_bool_invalid_vs +KHR-GL31.shaders30.glsl_constructors.bvec4_from_bool_mat3x4_bool_invalid_fs +KHR-GL31.shaders30.glsl_constructors.bvec4_from_bool_mat4_vs +KHR-GL31.shaders30.glsl_constructors.bvec4_from_bool_mat4_fs +KHR-GL31.shaders30.glsl_constructors.bvec4_from_bool_mat4_bool_invalid_vs +KHR-GL31.shaders30.glsl_constructors.bvec4_from_bool_mat4_bool_invalid_fs +KHR-GL31.shaders30.glsl_constructors.bvec4_from_bool_mat4x2_vs +KHR-GL31.shaders30.glsl_constructors.bvec4_from_bool_mat4x2_fs +KHR-GL31.shaders30.glsl_constructors.bvec4_from_bool_mat4x2_bool_invalid_vs +KHR-GL31.shaders30.glsl_constructors.bvec4_from_bool_mat4x2_bool_invalid_fs +KHR-GL31.shaders30.glsl_constructors.bvec4_from_bool_mat4x3_vs +KHR-GL31.shaders30.glsl_constructors.bvec4_from_bool_mat4x3_fs +KHR-GL31.shaders30.glsl_constructors.bvec4_from_bool_mat4x3_bool_invalid_vs +KHR-GL31.shaders30.glsl_constructors.bvec4_from_bool_mat4x3_bool_invalid_fs KHR-GL31.ext_texture_shadow_lod.texture.sampler2darrayshadow_fragment KHR-GL31.ext_texture_shadow_lod.texture.sampler2darrayshadow_bias_fragment KHR-GL31.ext_texture_shadow_lod.texture.samplercubearrayshadow_vertex diff --git a/external/openglcts/data/mustpass/gl/khronos_mustpass/4.6.1.x/gl32-master.txt b/external/openglcts/data/mustpass/gl/khronos_mustpass/4.6.1.x/gl32-master.txt index a02f65f..bb66176 100644 --- a/external/openglcts/data/mustpass/gl/khronos_mustpass/4.6.1.x/gl32-master.txt +++ b/external/openglcts/data/mustpass/gl/khronos_mustpass/4.6.1.x/gl32-master.txt @@ -192,6 +192,654 @@ KHR-GL32.texture_repeat_mode.depth24_stencil8_11x131_2_repeat KHR-GL32.texture_repeat_mode.depth24_stencil8_11x131_2_mirrored_repeat KHR-GL32.shaders30.declarations.declarations.redeclare_gl_FragColor KHR-GL32.shaders30.declarations.declarations.redeclare_gl_FragData +KHR-GL32.shaders30.glsl_constructors.vec2_from_mat2_vs +KHR-GL32.shaders30.glsl_constructors.vec2_from_mat2_fs +KHR-GL32.shaders30.glsl_constructors.vec2_from_mat2_mat2_invalid_vs +KHR-GL32.shaders30.glsl_constructors.vec2_from_mat2_mat2_invalid_fs +KHR-GL32.shaders30.glsl_constructors.vec2_from_mat2x3_vs +KHR-GL32.shaders30.glsl_constructors.vec2_from_mat2x3_fs +KHR-GL32.shaders30.glsl_constructors.vec2_from_mat2x3_mat2x3_invalid_vs +KHR-GL32.shaders30.glsl_constructors.vec2_from_mat2x3_mat2x3_invalid_fs +KHR-GL32.shaders30.glsl_constructors.vec2_from_mat2x4_vs +KHR-GL32.shaders30.glsl_constructors.vec2_from_mat2x4_fs +KHR-GL32.shaders30.glsl_constructors.vec2_from_mat2x4_mat2x4_invalid_vs +KHR-GL32.shaders30.glsl_constructors.vec2_from_mat2x4_mat2x4_invalid_fs +KHR-GL32.shaders30.glsl_constructors.vec2_from_mat3_vs +KHR-GL32.shaders30.glsl_constructors.vec2_from_mat3_fs +KHR-GL32.shaders30.glsl_constructors.vec2_from_mat3_mat3_invalid_vs +KHR-GL32.shaders30.glsl_constructors.vec2_from_mat3_mat3_invalid_fs +KHR-GL32.shaders30.glsl_constructors.vec2_from_mat3x2_vs +KHR-GL32.shaders30.glsl_constructors.vec2_from_mat3x2_fs +KHR-GL32.shaders30.glsl_constructors.vec2_from_mat3x2_mat3x2_invalid_vs +KHR-GL32.shaders30.glsl_constructors.vec2_from_mat3x2_mat3x2_invalid_fs +KHR-GL32.shaders30.glsl_constructors.vec2_from_mat3x4_vs +KHR-GL32.shaders30.glsl_constructors.vec2_from_mat3x4_fs +KHR-GL32.shaders30.glsl_constructors.vec2_from_mat3x4_mat3x4_invalid_vs +KHR-GL32.shaders30.glsl_constructors.vec2_from_mat3x4_mat3x4_invalid_fs +KHR-GL32.shaders30.glsl_constructors.vec2_from_mat4_vs +KHR-GL32.shaders30.glsl_constructors.vec2_from_mat4_fs +KHR-GL32.shaders30.glsl_constructors.vec2_from_mat4_mat4_invalid_vs +KHR-GL32.shaders30.glsl_constructors.vec2_from_mat4_mat4_invalid_fs +KHR-GL32.shaders30.glsl_constructors.vec2_from_mat4x2_vs +KHR-GL32.shaders30.glsl_constructors.vec2_from_mat4x2_fs +KHR-GL32.shaders30.glsl_constructors.vec2_from_mat4x2_mat4x2_invalid_vs +KHR-GL32.shaders30.glsl_constructors.vec2_from_mat4x2_mat4x2_invalid_fs +KHR-GL32.shaders30.glsl_constructors.vec2_from_mat4x3_vs +KHR-GL32.shaders30.glsl_constructors.vec2_from_mat4x3_fs +KHR-GL32.shaders30.glsl_constructors.vec2_from_mat4x3_mat4x3_invalid_vs +KHR-GL32.shaders30.glsl_constructors.vec2_from_mat4x3_mat4x3_invalid_fs +KHR-GL32.shaders30.glsl_constructors.vec2_from_float_mat2_vs +KHR-GL32.shaders30.glsl_constructors.vec2_from_float_mat2_fs +KHR-GL32.shaders30.glsl_constructors.vec2_from_float_mat2_float_invalid_vs +KHR-GL32.shaders30.glsl_constructors.vec2_from_float_mat2_float_invalid_fs +KHR-GL32.shaders30.glsl_constructors.vec2_from_float_mat2x3_vs +KHR-GL32.shaders30.glsl_constructors.vec2_from_float_mat2x3_fs +KHR-GL32.shaders30.glsl_constructors.vec2_from_float_mat2x3_float_invalid_vs +KHR-GL32.shaders30.glsl_constructors.vec2_from_float_mat2x3_float_invalid_fs +KHR-GL32.shaders30.glsl_constructors.vec2_from_float_mat2x4_vs +KHR-GL32.shaders30.glsl_constructors.vec2_from_float_mat2x4_fs +KHR-GL32.shaders30.glsl_constructors.vec2_from_float_mat2x4_float_invalid_vs +KHR-GL32.shaders30.glsl_constructors.vec2_from_float_mat2x4_float_invalid_fs +KHR-GL32.shaders30.glsl_constructors.vec2_from_float_mat3_vs +KHR-GL32.shaders30.glsl_constructors.vec2_from_float_mat3_fs +KHR-GL32.shaders30.glsl_constructors.vec2_from_float_mat3_float_invalid_vs +KHR-GL32.shaders30.glsl_constructors.vec2_from_float_mat3_float_invalid_fs +KHR-GL32.shaders30.glsl_constructors.vec2_from_float_mat3x2_vs +KHR-GL32.shaders30.glsl_constructors.vec2_from_float_mat3x2_fs +KHR-GL32.shaders30.glsl_constructors.vec2_from_float_mat3x2_float_invalid_vs +KHR-GL32.shaders30.glsl_constructors.vec2_from_float_mat3x2_float_invalid_fs +KHR-GL32.shaders30.glsl_constructors.vec2_from_float_mat3x4_vs +KHR-GL32.shaders30.glsl_constructors.vec2_from_float_mat3x4_fs +KHR-GL32.shaders30.glsl_constructors.vec2_from_float_mat3x4_float_invalid_vs +KHR-GL32.shaders30.glsl_constructors.vec2_from_float_mat3x4_float_invalid_fs +KHR-GL32.shaders30.glsl_constructors.vec2_from_float_mat4_vs +KHR-GL32.shaders30.glsl_constructors.vec2_from_float_mat4_fs +KHR-GL32.shaders30.glsl_constructors.vec2_from_float_mat4_float_invalid_vs +KHR-GL32.shaders30.glsl_constructors.vec2_from_float_mat4_float_invalid_fs +KHR-GL32.shaders30.glsl_constructors.vec2_from_float_mat4x2_vs +KHR-GL32.shaders30.glsl_constructors.vec2_from_float_mat4x2_fs +KHR-GL32.shaders30.glsl_constructors.vec2_from_float_mat4x2_float_invalid_vs +KHR-GL32.shaders30.glsl_constructors.vec2_from_float_mat4x2_float_invalid_fs +KHR-GL32.shaders30.glsl_constructors.vec2_from_float_mat4x3_vs +KHR-GL32.shaders30.glsl_constructors.vec2_from_float_mat4x3_fs +KHR-GL32.shaders30.glsl_constructors.vec2_from_float_mat4x3_float_invalid_vs +KHR-GL32.shaders30.glsl_constructors.vec2_from_float_mat4x3_float_invalid_fs +KHR-GL32.shaders30.glsl_constructors.vec3_from_mat2_vs +KHR-GL32.shaders30.glsl_constructors.vec3_from_mat2_fs +KHR-GL32.shaders30.glsl_constructors.vec3_from_mat2_mat2_invalid_vs +KHR-GL32.shaders30.glsl_constructors.vec3_from_mat2_mat2_invalid_fs +KHR-GL32.shaders30.glsl_constructors.vec3_from_mat2x3_vs +KHR-GL32.shaders30.glsl_constructors.vec3_from_mat2x3_fs +KHR-GL32.shaders30.glsl_constructors.vec3_from_mat2x3_mat2x3_invalid_vs +KHR-GL32.shaders30.glsl_constructors.vec3_from_mat2x3_mat2x3_invalid_fs +KHR-GL32.shaders30.glsl_constructors.vec3_from_mat2x4_vs +KHR-GL32.shaders30.glsl_constructors.vec3_from_mat2x4_fs +KHR-GL32.shaders30.glsl_constructors.vec3_from_mat2x4_mat2x4_invalid_vs +KHR-GL32.shaders30.glsl_constructors.vec3_from_mat2x4_mat2x4_invalid_fs +KHR-GL32.shaders30.glsl_constructors.vec3_from_mat3_vs +KHR-GL32.shaders30.glsl_constructors.vec3_from_mat3_fs +KHR-GL32.shaders30.glsl_constructors.vec3_from_mat3_mat3_invalid_vs +KHR-GL32.shaders30.glsl_constructors.vec3_from_mat3_mat3_invalid_fs +KHR-GL32.shaders30.glsl_constructors.vec3_from_mat3x2_vs +KHR-GL32.shaders30.glsl_constructors.vec3_from_mat3x2_fs +KHR-GL32.shaders30.glsl_constructors.vec3_from_mat3x2_mat3x2_invalid_vs +KHR-GL32.shaders30.glsl_constructors.vec3_from_mat3x2_mat3x2_invalid_fs +KHR-GL32.shaders30.glsl_constructors.vec3_from_mat3x4_vs +KHR-GL32.shaders30.glsl_constructors.vec3_from_mat3x4_fs +KHR-GL32.shaders30.glsl_constructors.vec3_from_mat3x4_mat3x4_invalid_vs +KHR-GL32.shaders30.glsl_constructors.vec3_from_mat3x4_mat3x4_invalid_fs +KHR-GL32.shaders30.glsl_constructors.vec3_from_mat4_vs +KHR-GL32.shaders30.glsl_constructors.vec3_from_mat4_fs +KHR-GL32.shaders30.glsl_constructors.vec3_from_mat4_mat4_invalid_vs +KHR-GL32.shaders30.glsl_constructors.vec3_from_mat4_mat4_invalid_fs +KHR-GL32.shaders30.glsl_constructors.vec3_from_mat4x2_vs +KHR-GL32.shaders30.glsl_constructors.vec3_from_mat4x2_fs +KHR-GL32.shaders30.glsl_constructors.vec3_from_mat4x2_mat4x2_invalid_vs +KHR-GL32.shaders30.glsl_constructors.vec3_from_mat4x2_mat4x2_invalid_fs +KHR-GL32.shaders30.glsl_constructors.vec3_from_mat4x3_vs +KHR-GL32.shaders30.glsl_constructors.vec3_from_mat4x3_fs +KHR-GL32.shaders30.glsl_constructors.vec3_from_mat4x3_mat4x3_invalid_vs +KHR-GL32.shaders30.glsl_constructors.vec3_from_mat4x3_mat4x3_invalid_fs +KHR-GL32.shaders30.glsl_constructors.vec3_from_float_mat2_vs +KHR-GL32.shaders30.glsl_constructors.vec3_from_float_mat2_fs +KHR-GL32.shaders30.glsl_constructors.vec3_from_float_mat2_float_invalid_vs +KHR-GL32.shaders30.glsl_constructors.vec3_from_float_mat2_float_invalid_fs +KHR-GL32.shaders30.glsl_constructors.vec3_from_float_mat2x3_vs +KHR-GL32.shaders30.glsl_constructors.vec3_from_float_mat2x3_fs +KHR-GL32.shaders30.glsl_constructors.vec3_from_float_mat2x3_float_invalid_vs +KHR-GL32.shaders30.glsl_constructors.vec3_from_float_mat2x3_float_invalid_fs +KHR-GL32.shaders30.glsl_constructors.vec3_from_float_mat2x4_vs +KHR-GL32.shaders30.glsl_constructors.vec3_from_float_mat2x4_fs +KHR-GL32.shaders30.glsl_constructors.vec3_from_float_mat2x4_float_invalid_vs +KHR-GL32.shaders30.glsl_constructors.vec3_from_float_mat2x4_float_invalid_fs +KHR-GL32.shaders30.glsl_constructors.vec3_from_float_mat3_vs +KHR-GL32.shaders30.glsl_constructors.vec3_from_float_mat3_fs +KHR-GL32.shaders30.glsl_constructors.vec3_from_float_mat3_float_invalid_vs +KHR-GL32.shaders30.glsl_constructors.vec3_from_float_mat3_float_invalid_fs +KHR-GL32.shaders30.glsl_constructors.vec3_from_float_mat3x2_vs +KHR-GL32.shaders30.glsl_constructors.vec3_from_float_mat3x2_fs +KHR-GL32.shaders30.glsl_constructors.vec3_from_float_mat3x2_float_invalid_vs +KHR-GL32.shaders30.glsl_constructors.vec3_from_float_mat3x2_float_invalid_fs +KHR-GL32.shaders30.glsl_constructors.vec3_from_float_mat3x4_vs +KHR-GL32.shaders30.glsl_constructors.vec3_from_float_mat3x4_fs +KHR-GL32.shaders30.glsl_constructors.vec3_from_float_mat3x4_float_invalid_vs +KHR-GL32.shaders30.glsl_constructors.vec3_from_float_mat3x4_float_invalid_fs +KHR-GL32.shaders30.glsl_constructors.vec3_from_float_mat4_vs +KHR-GL32.shaders30.glsl_constructors.vec3_from_float_mat4_fs +KHR-GL32.shaders30.glsl_constructors.vec3_from_float_mat4_float_invalid_vs +KHR-GL32.shaders30.glsl_constructors.vec3_from_float_mat4_float_invalid_fs +KHR-GL32.shaders30.glsl_constructors.vec3_from_float_mat4x2_vs +KHR-GL32.shaders30.glsl_constructors.vec3_from_float_mat4x2_fs +KHR-GL32.shaders30.glsl_constructors.vec3_from_float_mat4x2_float_invalid_vs +KHR-GL32.shaders30.glsl_constructors.vec3_from_float_mat4x2_float_invalid_fs +KHR-GL32.shaders30.glsl_constructors.vec3_from_float_mat4x3_vs +KHR-GL32.shaders30.glsl_constructors.vec3_from_float_mat4x3_fs +KHR-GL32.shaders30.glsl_constructors.vec3_from_float_mat4x3_float_invalid_vs +KHR-GL32.shaders30.glsl_constructors.vec3_from_float_mat4x3_float_invalid_fs +KHR-GL32.shaders30.glsl_constructors.vec4_from_mat2_vs +KHR-GL32.shaders30.glsl_constructors.vec4_from_mat2_fs +KHR-GL32.shaders30.glsl_constructors.vec4_from_mat2_mat2_invalid_vs +KHR-GL32.shaders30.glsl_constructors.vec4_from_mat2_mat2_invalid_fs +KHR-GL32.shaders30.glsl_constructors.vec4_from_mat2x3_vs +KHR-GL32.shaders30.glsl_constructors.vec4_from_mat2x3_fs +KHR-GL32.shaders30.glsl_constructors.vec4_from_mat2x3_mat2x3_invalid_vs +KHR-GL32.shaders30.glsl_constructors.vec4_from_mat2x3_mat2x3_invalid_fs +KHR-GL32.shaders30.glsl_constructors.vec4_from_mat2x4_vs +KHR-GL32.shaders30.glsl_constructors.vec4_from_mat2x4_fs +KHR-GL32.shaders30.glsl_constructors.vec4_from_mat2x4_mat2x4_invalid_vs +KHR-GL32.shaders30.glsl_constructors.vec4_from_mat2x4_mat2x4_invalid_fs +KHR-GL32.shaders30.glsl_constructors.vec4_from_mat3_vs +KHR-GL32.shaders30.glsl_constructors.vec4_from_mat3_fs +KHR-GL32.shaders30.glsl_constructors.vec4_from_mat3_mat3_invalid_vs +KHR-GL32.shaders30.glsl_constructors.vec4_from_mat3_mat3_invalid_fs +KHR-GL32.shaders30.glsl_constructors.vec4_from_mat3x2_vs +KHR-GL32.shaders30.glsl_constructors.vec4_from_mat3x2_fs +KHR-GL32.shaders30.glsl_constructors.vec4_from_mat3x2_mat3x2_invalid_vs +KHR-GL32.shaders30.glsl_constructors.vec4_from_mat3x2_mat3x2_invalid_fs +KHR-GL32.shaders30.glsl_constructors.vec4_from_mat3x4_vs +KHR-GL32.shaders30.glsl_constructors.vec4_from_mat3x4_fs +KHR-GL32.shaders30.glsl_constructors.vec4_from_mat3x4_mat3x4_invalid_vs +KHR-GL32.shaders30.glsl_constructors.vec4_from_mat3x4_mat3x4_invalid_fs +KHR-GL32.shaders30.glsl_constructors.vec4_from_mat4_vs +KHR-GL32.shaders30.glsl_constructors.vec4_from_mat4_fs +KHR-GL32.shaders30.glsl_constructors.vec4_from_mat4_mat4_invalid_vs +KHR-GL32.shaders30.glsl_constructors.vec4_from_mat4_mat4_invalid_fs +KHR-GL32.shaders30.glsl_constructors.vec4_from_mat4x2_vs +KHR-GL32.shaders30.glsl_constructors.vec4_from_mat4x2_fs +KHR-GL32.shaders30.glsl_constructors.vec4_from_mat4x2_mat4x2_invalid_vs +KHR-GL32.shaders30.glsl_constructors.vec4_from_mat4x2_mat4x2_invalid_fs +KHR-GL32.shaders30.glsl_constructors.vec4_from_mat4x3_vs +KHR-GL32.shaders30.glsl_constructors.vec4_from_mat4x3_fs +KHR-GL32.shaders30.glsl_constructors.vec4_from_mat4x3_mat4x3_invalid_vs +KHR-GL32.shaders30.glsl_constructors.vec4_from_mat4x3_mat4x3_invalid_fs +KHR-GL32.shaders30.glsl_constructors.vec4_from_float_mat2_vs +KHR-GL32.shaders30.glsl_constructors.vec4_from_float_mat2_fs +KHR-GL32.shaders30.glsl_constructors.vec4_from_float_mat2_float_invalid_vs +KHR-GL32.shaders30.glsl_constructors.vec4_from_float_mat2_float_invalid_fs +KHR-GL32.shaders30.glsl_constructors.vec4_from_float_mat2x3_vs +KHR-GL32.shaders30.glsl_constructors.vec4_from_float_mat2x3_fs +KHR-GL32.shaders30.glsl_constructors.vec4_from_float_mat2x3_float_invalid_vs +KHR-GL32.shaders30.glsl_constructors.vec4_from_float_mat2x3_float_invalid_fs +KHR-GL32.shaders30.glsl_constructors.vec4_from_float_mat2x4_vs +KHR-GL32.shaders30.glsl_constructors.vec4_from_float_mat2x4_fs +KHR-GL32.shaders30.glsl_constructors.vec4_from_float_mat2x4_float_invalid_vs +KHR-GL32.shaders30.glsl_constructors.vec4_from_float_mat2x4_float_invalid_fs +KHR-GL32.shaders30.glsl_constructors.vec4_from_float_mat3_vs +KHR-GL32.shaders30.glsl_constructors.vec4_from_float_mat3_fs +KHR-GL32.shaders30.glsl_constructors.vec4_from_float_mat3_float_invalid_vs +KHR-GL32.shaders30.glsl_constructors.vec4_from_float_mat3_float_invalid_fs +KHR-GL32.shaders30.glsl_constructors.vec4_from_float_mat3x2_vs +KHR-GL32.shaders30.glsl_constructors.vec4_from_float_mat3x2_fs +KHR-GL32.shaders30.glsl_constructors.vec4_from_float_mat3x2_float_invalid_vs +KHR-GL32.shaders30.glsl_constructors.vec4_from_float_mat3x2_float_invalid_fs +KHR-GL32.shaders30.glsl_constructors.vec4_from_float_mat3x4_vs +KHR-GL32.shaders30.glsl_constructors.vec4_from_float_mat3x4_fs +KHR-GL32.shaders30.glsl_constructors.vec4_from_float_mat3x4_float_invalid_vs +KHR-GL32.shaders30.glsl_constructors.vec4_from_float_mat3x4_float_invalid_fs +KHR-GL32.shaders30.glsl_constructors.vec4_from_float_mat4_vs +KHR-GL32.shaders30.glsl_constructors.vec4_from_float_mat4_fs +KHR-GL32.shaders30.glsl_constructors.vec4_from_float_mat4_float_invalid_vs +KHR-GL32.shaders30.glsl_constructors.vec4_from_float_mat4_float_invalid_fs +KHR-GL32.shaders30.glsl_constructors.vec4_from_float_mat4x2_vs +KHR-GL32.shaders30.glsl_constructors.vec4_from_float_mat4x2_fs +KHR-GL32.shaders30.glsl_constructors.vec4_from_float_mat4x2_float_invalid_vs +KHR-GL32.shaders30.glsl_constructors.vec4_from_float_mat4x2_float_invalid_fs +KHR-GL32.shaders30.glsl_constructors.vec4_from_float_mat4x3_vs +KHR-GL32.shaders30.glsl_constructors.vec4_from_float_mat4x3_fs +KHR-GL32.shaders30.glsl_constructors.vec4_from_float_mat4x3_float_invalid_vs +KHR-GL32.shaders30.glsl_constructors.vec4_from_float_mat4x3_float_invalid_fs +KHR-GL32.shaders30.glsl_constructors.ivec2_from_mat2_vs +KHR-GL32.shaders30.glsl_constructors.ivec2_from_mat2_fs +KHR-GL32.shaders30.glsl_constructors.ivec2_from_mat2_mat2_invalid_vs +KHR-GL32.shaders30.glsl_constructors.ivec2_from_mat2_mat2_invalid_fs +KHR-GL32.shaders30.glsl_constructors.ivec2_from_mat2x3_vs +KHR-GL32.shaders30.glsl_constructors.ivec2_from_mat2x3_fs +KHR-GL32.shaders30.glsl_constructors.ivec2_from_mat2x3_mat2x3_invalid_vs +KHR-GL32.shaders30.glsl_constructors.ivec2_from_mat2x3_mat2x3_invalid_fs +KHR-GL32.shaders30.glsl_constructors.ivec2_from_mat2x4_vs +KHR-GL32.shaders30.glsl_constructors.ivec2_from_mat2x4_fs +KHR-GL32.shaders30.glsl_constructors.ivec2_from_mat2x4_mat2x4_invalid_vs +KHR-GL32.shaders30.glsl_constructors.ivec2_from_mat2x4_mat2x4_invalid_fs +KHR-GL32.shaders30.glsl_constructors.ivec2_from_mat3_vs +KHR-GL32.shaders30.glsl_constructors.ivec2_from_mat3_fs +KHR-GL32.shaders30.glsl_constructors.ivec2_from_mat3_mat3_invalid_vs +KHR-GL32.shaders30.glsl_constructors.ivec2_from_mat3_mat3_invalid_fs +KHR-GL32.shaders30.glsl_constructors.ivec2_from_mat3x2_vs +KHR-GL32.shaders30.glsl_constructors.ivec2_from_mat3x2_fs +KHR-GL32.shaders30.glsl_constructors.ivec2_from_mat3x2_mat3x2_invalid_vs +KHR-GL32.shaders30.glsl_constructors.ivec2_from_mat3x2_mat3x2_invalid_fs +KHR-GL32.shaders30.glsl_constructors.ivec2_from_mat3x4_vs +KHR-GL32.shaders30.glsl_constructors.ivec2_from_mat3x4_fs +KHR-GL32.shaders30.glsl_constructors.ivec2_from_mat3x4_mat3x4_invalid_vs +KHR-GL32.shaders30.glsl_constructors.ivec2_from_mat3x4_mat3x4_invalid_fs +KHR-GL32.shaders30.glsl_constructors.ivec2_from_mat4_vs +KHR-GL32.shaders30.glsl_constructors.ivec2_from_mat4_fs +KHR-GL32.shaders30.glsl_constructors.ivec2_from_mat4_mat4_invalid_vs +KHR-GL32.shaders30.glsl_constructors.ivec2_from_mat4_mat4_invalid_fs +KHR-GL32.shaders30.glsl_constructors.ivec2_from_mat4x2_vs +KHR-GL32.shaders30.glsl_constructors.ivec2_from_mat4x2_fs +KHR-GL32.shaders30.glsl_constructors.ivec2_from_mat4x2_mat4x2_invalid_vs +KHR-GL32.shaders30.glsl_constructors.ivec2_from_mat4x2_mat4x2_invalid_fs +KHR-GL32.shaders30.glsl_constructors.ivec2_from_mat4x3_vs +KHR-GL32.shaders30.glsl_constructors.ivec2_from_mat4x3_fs +KHR-GL32.shaders30.glsl_constructors.ivec2_from_mat4x3_mat4x3_invalid_vs +KHR-GL32.shaders30.glsl_constructors.ivec2_from_mat4x3_mat4x3_invalid_fs +KHR-GL32.shaders30.glsl_constructors.ivec2_from_int_mat2_vs +KHR-GL32.shaders30.glsl_constructors.ivec2_from_int_mat2_fs +KHR-GL32.shaders30.glsl_constructors.ivec2_from_int_mat2_int_invalid_vs +KHR-GL32.shaders30.glsl_constructors.ivec2_from_int_mat2_int_invalid_fs +KHR-GL32.shaders30.glsl_constructors.ivec2_from_int_mat2x3_vs +KHR-GL32.shaders30.glsl_constructors.ivec2_from_int_mat2x3_fs +KHR-GL32.shaders30.glsl_constructors.ivec2_from_int_mat2x3_int_invalid_vs +KHR-GL32.shaders30.glsl_constructors.ivec2_from_int_mat2x3_int_invalid_fs +KHR-GL32.shaders30.glsl_constructors.ivec2_from_int_mat2x4_vs +KHR-GL32.shaders30.glsl_constructors.ivec2_from_int_mat2x4_fs +KHR-GL32.shaders30.glsl_constructors.ivec2_from_int_mat2x4_int_invalid_vs +KHR-GL32.shaders30.glsl_constructors.ivec2_from_int_mat2x4_int_invalid_fs +KHR-GL32.shaders30.glsl_constructors.ivec2_from_int_mat3_vs +KHR-GL32.shaders30.glsl_constructors.ivec2_from_int_mat3_fs +KHR-GL32.shaders30.glsl_constructors.ivec2_from_int_mat3_int_invalid_vs +KHR-GL32.shaders30.glsl_constructors.ivec2_from_int_mat3_int_invalid_fs +KHR-GL32.shaders30.glsl_constructors.ivec2_from_int_mat3x2_vs +KHR-GL32.shaders30.glsl_constructors.ivec2_from_int_mat3x2_fs +KHR-GL32.shaders30.glsl_constructors.ivec2_from_int_mat3x2_int_invalid_vs +KHR-GL32.shaders30.glsl_constructors.ivec2_from_int_mat3x2_int_invalid_fs +KHR-GL32.shaders30.glsl_constructors.ivec2_from_int_mat3x4_vs +KHR-GL32.shaders30.glsl_constructors.ivec2_from_int_mat3x4_fs +KHR-GL32.shaders30.glsl_constructors.ivec2_from_int_mat3x4_int_invalid_vs +KHR-GL32.shaders30.glsl_constructors.ivec2_from_int_mat3x4_int_invalid_fs +KHR-GL32.shaders30.glsl_constructors.ivec2_from_int_mat4_vs +KHR-GL32.shaders30.glsl_constructors.ivec2_from_int_mat4_fs +KHR-GL32.shaders30.glsl_constructors.ivec2_from_int_mat4_int_invalid_vs +KHR-GL32.shaders30.glsl_constructors.ivec2_from_int_mat4_int_invalid_fs +KHR-GL32.shaders30.glsl_constructors.ivec2_from_int_mat4x2_vs +KHR-GL32.shaders30.glsl_constructors.ivec2_from_int_mat4x2_fs +KHR-GL32.shaders30.glsl_constructors.ivec2_from_int_mat4x2_int_invalid_vs +KHR-GL32.shaders30.glsl_constructors.ivec2_from_int_mat4x2_int_invalid_fs +KHR-GL32.shaders30.glsl_constructors.ivec2_from_int_mat4x3_vs +KHR-GL32.shaders30.glsl_constructors.ivec2_from_int_mat4x3_fs +KHR-GL32.shaders30.glsl_constructors.ivec2_from_int_mat4x3_int_invalid_vs +KHR-GL32.shaders30.glsl_constructors.ivec2_from_int_mat4x3_int_invalid_fs +KHR-GL32.shaders30.glsl_constructors.ivec3_from_mat2_vs +KHR-GL32.shaders30.glsl_constructors.ivec3_from_mat2_fs +KHR-GL32.shaders30.glsl_constructors.ivec3_from_mat2_mat2_invalid_vs +KHR-GL32.shaders30.glsl_constructors.ivec3_from_mat2_mat2_invalid_fs +KHR-GL32.shaders30.glsl_constructors.ivec3_from_mat2x3_vs +KHR-GL32.shaders30.glsl_constructors.ivec3_from_mat2x3_fs +KHR-GL32.shaders30.glsl_constructors.ivec3_from_mat2x3_mat2x3_invalid_vs +KHR-GL32.shaders30.glsl_constructors.ivec3_from_mat2x3_mat2x3_invalid_fs +KHR-GL32.shaders30.glsl_constructors.ivec3_from_mat2x4_vs +KHR-GL32.shaders30.glsl_constructors.ivec3_from_mat2x4_fs +KHR-GL32.shaders30.glsl_constructors.ivec3_from_mat2x4_mat2x4_invalid_vs +KHR-GL32.shaders30.glsl_constructors.ivec3_from_mat2x4_mat2x4_invalid_fs +KHR-GL32.shaders30.glsl_constructors.ivec3_from_mat3_vs +KHR-GL32.shaders30.glsl_constructors.ivec3_from_mat3_fs +KHR-GL32.shaders30.glsl_constructors.ivec3_from_mat3_mat3_invalid_vs +KHR-GL32.shaders30.glsl_constructors.ivec3_from_mat3_mat3_invalid_fs +KHR-GL32.shaders30.glsl_constructors.ivec3_from_mat3x2_vs +KHR-GL32.shaders30.glsl_constructors.ivec3_from_mat3x2_fs +KHR-GL32.shaders30.glsl_constructors.ivec3_from_mat3x2_mat3x2_invalid_vs +KHR-GL32.shaders30.glsl_constructors.ivec3_from_mat3x2_mat3x2_invalid_fs +KHR-GL32.shaders30.glsl_constructors.ivec3_from_mat3x4_vs +KHR-GL32.shaders30.glsl_constructors.ivec3_from_mat3x4_fs +KHR-GL32.shaders30.glsl_constructors.ivec3_from_mat3x4_mat3x4_invalid_vs +KHR-GL32.shaders30.glsl_constructors.ivec3_from_mat3x4_mat3x4_invalid_fs +KHR-GL32.shaders30.glsl_constructors.ivec3_from_mat4_vs +KHR-GL32.shaders30.glsl_constructors.ivec3_from_mat4_fs +KHR-GL32.shaders30.glsl_constructors.ivec3_from_mat4_mat4_invalid_vs +KHR-GL32.shaders30.glsl_constructors.ivec3_from_mat4_mat4_invalid_fs +KHR-GL32.shaders30.glsl_constructors.ivec3_from_mat4x2_vs +KHR-GL32.shaders30.glsl_constructors.ivec3_from_mat4x2_fs +KHR-GL32.shaders30.glsl_constructors.ivec3_from_mat4x2_mat4x2_invalid_vs +KHR-GL32.shaders30.glsl_constructors.ivec3_from_mat4x2_mat4x2_invalid_fs +KHR-GL32.shaders30.glsl_constructors.ivec3_from_mat4x3_vs +KHR-GL32.shaders30.glsl_constructors.ivec3_from_mat4x3_fs +KHR-GL32.shaders30.glsl_constructors.ivec3_from_mat4x3_mat4x3_invalid_vs +KHR-GL32.shaders30.glsl_constructors.ivec3_from_mat4x3_mat4x3_invalid_fs +KHR-GL32.shaders30.glsl_constructors.ivec3_from_int_mat2_vs +KHR-GL32.shaders30.glsl_constructors.ivec3_from_int_mat2_fs +KHR-GL32.shaders30.glsl_constructors.ivec3_from_int_mat2_int_invalid_vs +KHR-GL32.shaders30.glsl_constructors.ivec3_from_int_mat2_int_invalid_fs +KHR-GL32.shaders30.glsl_constructors.ivec3_from_int_mat2x3_vs +KHR-GL32.shaders30.glsl_constructors.ivec3_from_int_mat2x3_fs +KHR-GL32.shaders30.glsl_constructors.ivec3_from_int_mat2x3_int_invalid_vs +KHR-GL32.shaders30.glsl_constructors.ivec3_from_int_mat2x3_int_invalid_fs +KHR-GL32.shaders30.glsl_constructors.ivec3_from_int_mat2x4_vs +KHR-GL32.shaders30.glsl_constructors.ivec3_from_int_mat2x4_fs +KHR-GL32.shaders30.glsl_constructors.ivec3_from_int_mat2x4_int_invalid_vs +KHR-GL32.shaders30.glsl_constructors.ivec3_from_int_mat2x4_int_invalid_fs +KHR-GL32.shaders30.glsl_constructors.ivec3_from_int_mat3_vs +KHR-GL32.shaders30.glsl_constructors.ivec3_from_int_mat3_fs +KHR-GL32.shaders30.glsl_constructors.ivec3_from_int_mat3_int_invalid_vs +KHR-GL32.shaders30.glsl_constructors.ivec3_from_int_mat3_int_invalid_fs +KHR-GL32.shaders30.glsl_constructors.ivec3_from_int_mat3x2_vs +KHR-GL32.shaders30.glsl_constructors.ivec3_from_int_mat3x2_fs +KHR-GL32.shaders30.glsl_constructors.ivec3_from_int_mat3x2_int_invalid_vs +KHR-GL32.shaders30.glsl_constructors.ivec3_from_int_mat3x2_int_invalid_fs +KHR-GL32.shaders30.glsl_constructors.ivec3_from_int_mat3x4_vs +KHR-GL32.shaders30.glsl_constructors.ivec3_from_int_mat3x4_fs +KHR-GL32.shaders30.glsl_constructors.ivec3_from_int_mat3x4_int_invalid_vs +KHR-GL32.shaders30.glsl_constructors.ivec3_from_int_mat3x4_int_invalid_fs +KHR-GL32.shaders30.glsl_constructors.ivec3_from_int_mat4_vs +KHR-GL32.shaders30.glsl_constructors.ivec3_from_int_mat4_fs +KHR-GL32.shaders30.glsl_constructors.ivec3_from_int_mat4_int_invalid_vs +KHR-GL32.shaders30.glsl_constructors.ivec3_from_int_mat4_int_invalid_fs +KHR-GL32.shaders30.glsl_constructors.ivec3_from_int_mat4x2_vs +KHR-GL32.shaders30.glsl_constructors.ivec3_from_int_mat4x2_fs +KHR-GL32.shaders30.glsl_constructors.ivec3_from_int_mat4x2_int_invalid_vs +KHR-GL32.shaders30.glsl_constructors.ivec3_from_int_mat4x2_int_invalid_fs +KHR-GL32.shaders30.glsl_constructors.ivec3_from_int_mat4x3_vs +KHR-GL32.shaders30.glsl_constructors.ivec3_from_int_mat4x3_fs +KHR-GL32.shaders30.glsl_constructors.ivec3_from_int_mat4x3_int_invalid_vs +KHR-GL32.shaders30.glsl_constructors.ivec3_from_int_mat4x3_int_invalid_fs +KHR-GL32.shaders30.glsl_constructors.ivec4_from_mat2_vs +KHR-GL32.shaders30.glsl_constructors.ivec4_from_mat2_fs +KHR-GL32.shaders30.glsl_constructors.ivec4_from_mat2_mat2_invalid_vs +KHR-GL32.shaders30.glsl_constructors.ivec4_from_mat2_mat2_invalid_fs +KHR-GL32.shaders30.glsl_constructors.ivec4_from_mat2x3_vs +KHR-GL32.shaders30.glsl_constructors.ivec4_from_mat2x3_fs +KHR-GL32.shaders30.glsl_constructors.ivec4_from_mat2x3_mat2x3_invalid_vs +KHR-GL32.shaders30.glsl_constructors.ivec4_from_mat2x3_mat2x3_invalid_fs +KHR-GL32.shaders30.glsl_constructors.ivec4_from_mat2x4_vs +KHR-GL32.shaders30.glsl_constructors.ivec4_from_mat2x4_fs +KHR-GL32.shaders30.glsl_constructors.ivec4_from_mat2x4_mat2x4_invalid_vs +KHR-GL32.shaders30.glsl_constructors.ivec4_from_mat2x4_mat2x4_invalid_fs +KHR-GL32.shaders30.glsl_constructors.ivec4_from_mat3_vs +KHR-GL32.shaders30.glsl_constructors.ivec4_from_mat3_fs +KHR-GL32.shaders30.glsl_constructors.ivec4_from_mat3_mat3_invalid_vs +KHR-GL32.shaders30.glsl_constructors.ivec4_from_mat3_mat3_invalid_fs +KHR-GL32.shaders30.glsl_constructors.ivec4_from_mat3x2_vs +KHR-GL32.shaders30.glsl_constructors.ivec4_from_mat3x2_fs +KHR-GL32.shaders30.glsl_constructors.ivec4_from_mat3x2_mat3x2_invalid_vs +KHR-GL32.shaders30.glsl_constructors.ivec4_from_mat3x2_mat3x2_invalid_fs +KHR-GL32.shaders30.glsl_constructors.ivec4_from_mat3x4_vs +KHR-GL32.shaders30.glsl_constructors.ivec4_from_mat3x4_fs +KHR-GL32.shaders30.glsl_constructors.ivec4_from_mat3x4_mat3x4_invalid_vs +KHR-GL32.shaders30.glsl_constructors.ivec4_from_mat3x4_mat3x4_invalid_fs +KHR-GL32.shaders30.glsl_constructors.ivec4_from_mat4_vs +KHR-GL32.shaders30.glsl_constructors.ivec4_from_mat4_fs +KHR-GL32.shaders30.glsl_constructors.ivec4_from_mat4_mat4_invalid_vs +KHR-GL32.shaders30.glsl_constructors.ivec4_from_mat4_mat4_invalid_fs +KHR-GL32.shaders30.glsl_constructors.ivec4_from_mat4x2_vs +KHR-GL32.shaders30.glsl_constructors.ivec4_from_mat4x2_fs +KHR-GL32.shaders30.glsl_constructors.ivec4_from_mat4x2_mat4x2_invalid_vs +KHR-GL32.shaders30.glsl_constructors.ivec4_from_mat4x2_mat4x2_invalid_fs +KHR-GL32.shaders30.glsl_constructors.ivec4_from_mat4x3_vs +KHR-GL32.shaders30.glsl_constructors.ivec4_from_mat4x3_fs +KHR-GL32.shaders30.glsl_constructors.ivec4_from_mat4x3_mat4x3_invalid_vs +KHR-GL32.shaders30.glsl_constructors.ivec4_from_mat4x3_mat4x3_invalid_fs +KHR-GL32.shaders30.glsl_constructors.ivec4_from_int_mat2_vs +KHR-GL32.shaders30.glsl_constructors.ivec4_from_int_mat2_fs +KHR-GL32.shaders30.glsl_constructors.ivec4_from_int_mat2_int_invalid_vs +KHR-GL32.shaders30.glsl_constructors.ivec4_from_int_mat2_int_invalid_fs +KHR-GL32.shaders30.glsl_constructors.ivec4_from_int_mat2x3_vs +KHR-GL32.shaders30.glsl_constructors.ivec4_from_int_mat2x3_fs +KHR-GL32.shaders30.glsl_constructors.ivec4_from_int_mat2x3_int_invalid_vs +KHR-GL32.shaders30.glsl_constructors.ivec4_from_int_mat2x3_int_invalid_fs +KHR-GL32.shaders30.glsl_constructors.ivec4_from_int_mat2x4_vs +KHR-GL32.shaders30.glsl_constructors.ivec4_from_int_mat2x4_fs +KHR-GL32.shaders30.glsl_constructors.ivec4_from_int_mat2x4_int_invalid_vs +KHR-GL32.shaders30.glsl_constructors.ivec4_from_int_mat2x4_int_invalid_fs +KHR-GL32.shaders30.glsl_constructors.ivec4_from_int_mat3_vs +KHR-GL32.shaders30.glsl_constructors.ivec4_from_int_mat3_fs +KHR-GL32.shaders30.glsl_constructors.ivec4_from_int_mat3_int_invalid_vs +KHR-GL32.shaders30.glsl_constructors.ivec4_from_int_mat3_int_invalid_fs +KHR-GL32.shaders30.glsl_constructors.ivec4_from_int_mat3x2_vs +KHR-GL32.shaders30.glsl_constructors.ivec4_from_int_mat3x2_fs +KHR-GL32.shaders30.glsl_constructors.ivec4_from_int_mat3x2_int_invalid_vs +KHR-GL32.shaders30.glsl_constructors.ivec4_from_int_mat3x2_int_invalid_fs +KHR-GL32.shaders30.glsl_constructors.ivec4_from_int_mat3x4_vs +KHR-GL32.shaders30.glsl_constructors.ivec4_from_int_mat3x4_fs +KHR-GL32.shaders30.glsl_constructors.ivec4_from_int_mat3x4_int_invalid_vs +KHR-GL32.shaders30.glsl_constructors.ivec4_from_int_mat3x4_int_invalid_fs +KHR-GL32.shaders30.glsl_constructors.ivec4_from_int_mat4_vs +KHR-GL32.shaders30.glsl_constructors.ivec4_from_int_mat4_fs +KHR-GL32.shaders30.glsl_constructors.ivec4_from_int_mat4_int_invalid_vs +KHR-GL32.shaders30.glsl_constructors.ivec4_from_int_mat4_int_invalid_fs +KHR-GL32.shaders30.glsl_constructors.ivec4_from_int_mat4x2_vs +KHR-GL32.shaders30.glsl_constructors.ivec4_from_int_mat4x2_fs +KHR-GL32.shaders30.glsl_constructors.ivec4_from_int_mat4x2_int_invalid_vs +KHR-GL32.shaders30.glsl_constructors.ivec4_from_int_mat4x2_int_invalid_fs +KHR-GL32.shaders30.glsl_constructors.ivec4_from_int_mat4x3_vs +KHR-GL32.shaders30.glsl_constructors.ivec4_from_int_mat4x3_fs +KHR-GL32.shaders30.glsl_constructors.ivec4_from_int_mat4x3_int_invalid_vs +KHR-GL32.shaders30.glsl_constructors.ivec4_from_int_mat4x3_int_invalid_fs +KHR-GL32.shaders30.glsl_constructors.bvec2_from_mat2_vs +KHR-GL32.shaders30.glsl_constructors.bvec2_from_mat2_fs +KHR-GL32.shaders30.glsl_constructors.bvec2_from_mat2_mat2_invalid_vs +KHR-GL32.shaders30.glsl_constructors.bvec2_from_mat2_mat2_invalid_fs +KHR-GL32.shaders30.glsl_constructors.bvec2_from_mat2x3_vs +KHR-GL32.shaders30.glsl_constructors.bvec2_from_mat2x3_fs +KHR-GL32.shaders30.glsl_constructors.bvec2_from_mat2x3_mat2x3_invalid_vs +KHR-GL32.shaders30.glsl_constructors.bvec2_from_mat2x3_mat2x3_invalid_fs +KHR-GL32.shaders30.glsl_constructors.bvec2_from_mat2x4_vs +KHR-GL32.shaders30.glsl_constructors.bvec2_from_mat2x4_fs +KHR-GL32.shaders30.glsl_constructors.bvec2_from_mat2x4_mat2x4_invalid_vs +KHR-GL32.shaders30.glsl_constructors.bvec2_from_mat2x4_mat2x4_invalid_fs +KHR-GL32.shaders30.glsl_constructors.bvec2_from_mat3_vs +KHR-GL32.shaders30.glsl_constructors.bvec2_from_mat3_fs +KHR-GL32.shaders30.glsl_constructors.bvec2_from_mat3_mat3_invalid_vs +KHR-GL32.shaders30.glsl_constructors.bvec2_from_mat3_mat3_invalid_fs +KHR-GL32.shaders30.glsl_constructors.bvec2_from_mat3x2_vs +KHR-GL32.shaders30.glsl_constructors.bvec2_from_mat3x2_fs +KHR-GL32.shaders30.glsl_constructors.bvec2_from_mat3x2_mat3x2_invalid_vs +KHR-GL32.shaders30.glsl_constructors.bvec2_from_mat3x2_mat3x2_invalid_fs +KHR-GL32.shaders30.glsl_constructors.bvec2_from_mat3x4_vs +KHR-GL32.shaders30.glsl_constructors.bvec2_from_mat3x4_fs +KHR-GL32.shaders30.glsl_constructors.bvec2_from_mat3x4_mat3x4_invalid_vs +KHR-GL32.shaders30.glsl_constructors.bvec2_from_mat3x4_mat3x4_invalid_fs +KHR-GL32.shaders30.glsl_constructors.bvec2_from_mat4_vs +KHR-GL32.shaders30.glsl_constructors.bvec2_from_mat4_fs +KHR-GL32.shaders30.glsl_constructors.bvec2_from_mat4_mat4_invalid_vs +KHR-GL32.shaders30.glsl_constructors.bvec2_from_mat4_mat4_invalid_fs +KHR-GL32.shaders30.glsl_constructors.bvec2_from_mat4x2_vs +KHR-GL32.shaders30.glsl_constructors.bvec2_from_mat4x2_fs +KHR-GL32.shaders30.glsl_constructors.bvec2_from_mat4x2_mat4x2_invalid_vs +KHR-GL32.shaders30.glsl_constructors.bvec2_from_mat4x2_mat4x2_invalid_fs +KHR-GL32.shaders30.glsl_constructors.bvec2_from_mat4x3_vs +KHR-GL32.shaders30.glsl_constructors.bvec2_from_mat4x3_fs +KHR-GL32.shaders30.glsl_constructors.bvec2_from_mat4x3_mat4x3_invalid_vs +KHR-GL32.shaders30.glsl_constructors.bvec2_from_mat4x3_mat4x3_invalid_fs +KHR-GL32.shaders30.glsl_constructors.bvec2_from_bool_mat2_vs +KHR-GL32.shaders30.glsl_constructors.bvec2_from_bool_mat2_fs +KHR-GL32.shaders30.glsl_constructors.bvec2_from_bool_mat2_bool_invalid_vs +KHR-GL32.shaders30.glsl_constructors.bvec2_from_bool_mat2_bool_invalid_fs +KHR-GL32.shaders30.glsl_constructors.bvec2_from_bool_mat2x3_vs +KHR-GL32.shaders30.glsl_constructors.bvec2_from_bool_mat2x3_fs +KHR-GL32.shaders30.glsl_constructors.bvec2_from_bool_mat2x3_bool_invalid_vs +KHR-GL32.shaders30.glsl_constructors.bvec2_from_bool_mat2x3_bool_invalid_fs +KHR-GL32.shaders30.glsl_constructors.bvec2_from_bool_mat2x4_vs +KHR-GL32.shaders30.glsl_constructors.bvec2_from_bool_mat2x4_fs +KHR-GL32.shaders30.glsl_constructors.bvec2_from_bool_mat2x4_bool_invalid_vs +KHR-GL32.shaders30.glsl_constructors.bvec2_from_bool_mat2x4_bool_invalid_fs +KHR-GL32.shaders30.glsl_constructors.bvec2_from_bool_mat3_vs +KHR-GL32.shaders30.glsl_constructors.bvec2_from_bool_mat3_fs +KHR-GL32.shaders30.glsl_constructors.bvec2_from_bool_mat3_bool_invalid_vs +KHR-GL32.shaders30.glsl_constructors.bvec2_from_bool_mat3_bool_invalid_fs +KHR-GL32.shaders30.glsl_constructors.bvec2_from_bool_mat3x2_vs +KHR-GL32.shaders30.glsl_constructors.bvec2_from_bool_mat3x2_fs +KHR-GL32.shaders30.glsl_constructors.bvec2_from_bool_mat3x2_bool_invalid_vs +KHR-GL32.shaders30.glsl_constructors.bvec2_from_bool_mat3x2_bool_invalid_fs +KHR-GL32.shaders30.glsl_constructors.bvec2_from_bool_mat3x4_vs +KHR-GL32.shaders30.glsl_constructors.bvec2_from_bool_mat3x4_fs +KHR-GL32.shaders30.glsl_constructors.bvec2_from_bool_mat3x4_bool_invalid_vs +KHR-GL32.shaders30.glsl_constructors.bvec2_from_bool_mat3x4_bool_invalid_fs +KHR-GL32.shaders30.glsl_constructors.bvec2_from_bool_mat4_vs +KHR-GL32.shaders30.glsl_constructors.bvec2_from_bool_mat4_fs +KHR-GL32.shaders30.glsl_constructors.bvec2_from_bool_mat4_bool_invalid_vs +KHR-GL32.shaders30.glsl_constructors.bvec2_from_bool_mat4_bool_invalid_fs +KHR-GL32.shaders30.glsl_constructors.bvec2_from_bool_mat4x2_vs +KHR-GL32.shaders30.glsl_constructors.bvec2_from_bool_mat4x2_fs +KHR-GL32.shaders30.glsl_constructors.bvec2_from_bool_mat4x2_bool_invalid_vs +KHR-GL32.shaders30.glsl_constructors.bvec2_from_bool_mat4x2_bool_invalid_fs +KHR-GL32.shaders30.glsl_constructors.bvec2_from_bool_mat4x3_vs +KHR-GL32.shaders30.glsl_constructors.bvec2_from_bool_mat4x3_fs +KHR-GL32.shaders30.glsl_constructors.bvec2_from_bool_mat4x3_bool_invalid_vs +KHR-GL32.shaders30.glsl_constructors.bvec2_from_bool_mat4x3_bool_invalid_fs +KHR-GL32.shaders30.glsl_constructors.bvec3_from_mat2_vs +KHR-GL32.shaders30.glsl_constructors.bvec3_from_mat2_fs +KHR-GL32.shaders30.glsl_constructors.bvec3_from_mat2_mat2_invalid_vs +KHR-GL32.shaders30.glsl_constructors.bvec3_from_mat2_mat2_invalid_fs +KHR-GL32.shaders30.glsl_constructors.bvec3_from_mat2x3_vs +KHR-GL32.shaders30.glsl_constructors.bvec3_from_mat2x3_fs +KHR-GL32.shaders30.glsl_constructors.bvec3_from_mat2x3_mat2x3_invalid_vs +KHR-GL32.shaders30.glsl_constructors.bvec3_from_mat2x3_mat2x3_invalid_fs +KHR-GL32.shaders30.glsl_constructors.bvec3_from_mat2x4_vs +KHR-GL32.shaders30.glsl_constructors.bvec3_from_mat2x4_fs +KHR-GL32.shaders30.glsl_constructors.bvec3_from_mat2x4_mat2x4_invalid_vs +KHR-GL32.shaders30.glsl_constructors.bvec3_from_mat2x4_mat2x4_invalid_fs +KHR-GL32.shaders30.glsl_constructors.bvec3_from_mat3_vs +KHR-GL32.shaders30.glsl_constructors.bvec3_from_mat3_fs +KHR-GL32.shaders30.glsl_constructors.bvec3_from_mat3_mat3_invalid_vs +KHR-GL32.shaders30.glsl_constructors.bvec3_from_mat3_mat3_invalid_fs +KHR-GL32.shaders30.glsl_constructors.bvec3_from_mat3x2_vs +KHR-GL32.shaders30.glsl_constructors.bvec3_from_mat3x2_fs +KHR-GL32.shaders30.glsl_constructors.bvec3_from_mat3x2_mat3x2_invalid_vs +KHR-GL32.shaders30.glsl_constructors.bvec3_from_mat3x2_mat3x2_invalid_fs +KHR-GL32.shaders30.glsl_constructors.bvec3_from_mat3x4_vs +KHR-GL32.shaders30.glsl_constructors.bvec3_from_mat3x4_fs +KHR-GL32.shaders30.glsl_constructors.bvec3_from_mat3x4_mat3x4_invalid_vs +KHR-GL32.shaders30.glsl_constructors.bvec3_from_mat3x4_mat3x4_invalid_fs +KHR-GL32.shaders30.glsl_constructors.bvec3_from_mat4_vs +KHR-GL32.shaders30.glsl_constructors.bvec3_from_mat4_fs +KHR-GL32.shaders30.glsl_constructors.bvec3_from_mat4_mat4_invalid_vs +KHR-GL32.shaders30.glsl_constructors.bvec3_from_mat4_mat4_invalid_fs +KHR-GL32.shaders30.glsl_constructors.bvec3_from_mat4x2_vs +KHR-GL32.shaders30.glsl_constructors.bvec3_from_mat4x2_fs +KHR-GL32.shaders30.glsl_constructors.bvec3_from_mat4x2_mat4x2_invalid_vs +KHR-GL32.shaders30.glsl_constructors.bvec3_from_mat4x2_mat4x2_invalid_fs +KHR-GL32.shaders30.glsl_constructors.bvec3_from_mat4x3_vs +KHR-GL32.shaders30.glsl_constructors.bvec3_from_mat4x3_fs +KHR-GL32.shaders30.glsl_constructors.bvec3_from_mat4x3_mat4x3_invalid_vs +KHR-GL32.shaders30.glsl_constructors.bvec3_from_mat4x3_mat4x3_invalid_fs +KHR-GL32.shaders30.glsl_constructors.bvec3_from_bool_mat2_vs +KHR-GL32.shaders30.glsl_constructors.bvec3_from_bool_mat2_fs +KHR-GL32.shaders30.glsl_constructors.bvec3_from_bool_mat2_bool_invalid_vs +KHR-GL32.shaders30.glsl_constructors.bvec3_from_bool_mat2_bool_invalid_fs +KHR-GL32.shaders30.glsl_constructors.bvec3_from_bool_mat2x3_vs +KHR-GL32.shaders30.glsl_constructors.bvec3_from_bool_mat2x3_fs +KHR-GL32.shaders30.glsl_constructors.bvec3_from_bool_mat2x3_bool_invalid_vs +KHR-GL32.shaders30.glsl_constructors.bvec3_from_bool_mat2x3_bool_invalid_fs +KHR-GL32.shaders30.glsl_constructors.bvec3_from_bool_mat2x4_vs +KHR-GL32.shaders30.glsl_constructors.bvec3_from_bool_mat2x4_fs +KHR-GL32.shaders30.glsl_constructors.bvec3_from_bool_mat2x4_bool_invalid_vs +KHR-GL32.shaders30.glsl_constructors.bvec3_from_bool_mat2x4_bool_invalid_fs +KHR-GL32.shaders30.glsl_constructors.bvec3_from_bool_mat3_vs +KHR-GL32.shaders30.glsl_constructors.bvec3_from_bool_mat3_fs +KHR-GL32.shaders30.glsl_constructors.bvec3_from_bool_mat3_bool_invalid_vs +KHR-GL32.shaders30.glsl_constructors.bvec3_from_bool_mat3_bool_invalid_fs +KHR-GL32.shaders30.glsl_constructors.bvec3_from_bool_mat3x2_vs +KHR-GL32.shaders30.glsl_constructors.bvec3_from_bool_mat3x2_fs +KHR-GL32.shaders30.glsl_constructors.bvec3_from_bool_mat3x2_bool_invalid_vs +KHR-GL32.shaders30.glsl_constructors.bvec3_from_bool_mat3x2_bool_invalid_fs +KHR-GL32.shaders30.glsl_constructors.bvec3_from_bool_mat3x4_vs +KHR-GL32.shaders30.glsl_constructors.bvec3_from_bool_mat3x4_fs +KHR-GL32.shaders30.glsl_constructors.bvec3_from_bool_mat3x4_bool_invalid_vs +KHR-GL32.shaders30.glsl_constructors.bvec3_from_bool_mat3x4_bool_invalid_fs +KHR-GL32.shaders30.glsl_constructors.bvec3_from_bool_mat4_vs +KHR-GL32.shaders30.glsl_constructors.bvec3_from_bool_mat4_fs +KHR-GL32.shaders30.glsl_constructors.bvec3_from_bool_mat4_bool_invalid_vs +KHR-GL32.shaders30.glsl_constructors.bvec3_from_bool_mat4_bool_invalid_fs +KHR-GL32.shaders30.glsl_constructors.bvec3_from_bool_mat4x2_vs +KHR-GL32.shaders30.glsl_constructors.bvec3_from_bool_mat4x2_fs +KHR-GL32.shaders30.glsl_constructors.bvec3_from_bool_mat4x2_bool_invalid_vs +KHR-GL32.shaders30.glsl_constructors.bvec3_from_bool_mat4x2_bool_invalid_fs +KHR-GL32.shaders30.glsl_constructors.bvec3_from_bool_mat4x3_vs +KHR-GL32.shaders30.glsl_constructors.bvec3_from_bool_mat4x3_fs +KHR-GL32.shaders30.glsl_constructors.bvec3_from_bool_mat4x3_bool_invalid_vs +KHR-GL32.shaders30.glsl_constructors.bvec3_from_bool_mat4x3_bool_invalid_fs +KHR-GL32.shaders30.glsl_constructors.bvec4_from_mat2_vs +KHR-GL32.shaders30.glsl_constructors.bvec4_from_mat2_fs +KHR-GL32.shaders30.glsl_constructors.bvec4_from_mat2_mat2_invalid_vs +KHR-GL32.shaders30.glsl_constructors.bvec4_from_mat2_mat2_invalid_fs +KHR-GL32.shaders30.glsl_constructors.bvec4_from_mat2x3_vs +KHR-GL32.shaders30.glsl_constructors.bvec4_from_mat2x3_fs +KHR-GL32.shaders30.glsl_constructors.bvec4_from_mat2x3_mat2x3_invalid_vs +KHR-GL32.shaders30.glsl_constructors.bvec4_from_mat2x3_mat2x3_invalid_fs +KHR-GL32.shaders30.glsl_constructors.bvec4_from_mat2x4_vs +KHR-GL32.shaders30.glsl_constructors.bvec4_from_mat2x4_fs +KHR-GL32.shaders30.glsl_constructors.bvec4_from_mat2x4_mat2x4_invalid_vs +KHR-GL32.shaders30.glsl_constructors.bvec4_from_mat2x4_mat2x4_invalid_fs +KHR-GL32.shaders30.glsl_constructors.bvec4_from_mat3_vs +KHR-GL32.shaders30.glsl_constructors.bvec4_from_mat3_fs +KHR-GL32.shaders30.glsl_constructors.bvec4_from_mat3_mat3_invalid_vs +KHR-GL32.shaders30.glsl_constructors.bvec4_from_mat3_mat3_invalid_fs +KHR-GL32.shaders30.glsl_constructors.bvec4_from_mat3x2_vs +KHR-GL32.shaders30.glsl_constructors.bvec4_from_mat3x2_fs +KHR-GL32.shaders30.glsl_constructors.bvec4_from_mat3x2_mat3x2_invalid_vs +KHR-GL32.shaders30.glsl_constructors.bvec4_from_mat3x2_mat3x2_invalid_fs +KHR-GL32.shaders30.glsl_constructors.bvec4_from_mat3x4_vs +KHR-GL32.shaders30.glsl_constructors.bvec4_from_mat3x4_fs +KHR-GL32.shaders30.glsl_constructors.bvec4_from_mat3x4_mat3x4_invalid_vs +KHR-GL32.shaders30.glsl_constructors.bvec4_from_mat3x4_mat3x4_invalid_fs +KHR-GL32.shaders30.glsl_constructors.bvec4_from_mat4_vs +KHR-GL32.shaders30.glsl_constructors.bvec4_from_mat4_fs +KHR-GL32.shaders30.glsl_constructors.bvec4_from_mat4_mat4_invalid_vs +KHR-GL32.shaders30.glsl_constructors.bvec4_from_mat4_mat4_invalid_fs +KHR-GL32.shaders30.glsl_constructors.bvec4_from_mat4x2_vs +KHR-GL32.shaders30.glsl_constructors.bvec4_from_mat4x2_fs +KHR-GL32.shaders30.glsl_constructors.bvec4_from_mat4x2_mat4x2_invalid_vs +KHR-GL32.shaders30.glsl_constructors.bvec4_from_mat4x2_mat4x2_invalid_fs +KHR-GL32.shaders30.glsl_constructors.bvec4_from_mat4x3_vs +KHR-GL32.shaders30.glsl_constructors.bvec4_from_mat4x3_fs +KHR-GL32.shaders30.glsl_constructors.bvec4_from_mat4x3_mat4x3_invalid_vs +KHR-GL32.shaders30.glsl_constructors.bvec4_from_mat4x3_mat4x3_invalid_fs +KHR-GL32.shaders30.glsl_constructors.bvec4_from_bool_mat2_vs +KHR-GL32.shaders30.glsl_constructors.bvec4_from_bool_mat2_fs +KHR-GL32.shaders30.glsl_constructors.bvec4_from_bool_mat2_bool_invalid_vs +KHR-GL32.shaders30.glsl_constructors.bvec4_from_bool_mat2_bool_invalid_fs +KHR-GL32.shaders30.glsl_constructors.bvec4_from_bool_mat2x3_vs +KHR-GL32.shaders30.glsl_constructors.bvec4_from_bool_mat2x3_fs +KHR-GL32.shaders30.glsl_constructors.bvec4_from_bool_mat2x3_bool_invalid_vs +KHR-GL32.shaders30.glsl_constructors.bvec4_from_bool_mat2x3_bool_invalid_fs +KHR-GL32.shaders30.glsl_constructors.bvec4_from_bool_mat2x4_vs +KHR-GL32.shaders30.glsl_constructors.bvec4_from_bool_mat2x4_fs +KHR-GL32.shaders30.glsl_constructors.bvec4_from_bool_mat2x4_bool_invalid_vs +KHR-GL32.shaders30.glsl_constructors.bvec4_from_bool_mat2x4_bool_invalid_fs +KHR-GL32.shaders30.glsl_constructors.bvec4_from_bool_mat3_vs +KHR-GL32.shaders30.glsl_constructors.bvec4_from_bool_mat3_fs +KHR-GL32.shaders30.glsl_constructors.bvec4_from_bool_mat3_bool_invalid_vs +KHR-GL32.shaders30.glsl_constructors.bvec4_from_bool_mat3_bool_invalid_fs +KHR-GL32.shaders30.glsl_constructors.bvec4_from_bool_mat3x2_vs +KHR-GL32.shaders30.glsl_constructors.bvec4_from_bool_mat3x2_fs +KHR-GL32.shaders30.glsl_constructors.bvec4_from_bool_mat3x2_bool_invalid_vs +KHR-GL32.shaders30.glsl_constructors.bvec4_from_bool_mat3x2_bool_invalid_fs +KHR-GL32.shaders30.glsl_constructors.bvec4_from_bool_mat3x4_vs +KHR-GL32.shaders30.glsl_constructors.bvec4_from_bool_mat3x4_fs +KHR-GL32.shaders30.glsl_constructors.bvec4_from_bool_mat3x4_bool_invalid_vs +KHR-GL32.shaders30.glsl_constructors.bvec4_from_bool_mat3x4_bool_invalid_fs +KHR-GL32.shaders30.glsl_constructors.bvec4_from_bool_mat4_vs +KHR-GL32.shaders30.glsl_constructors.bvec4_from_bool_mat4_fs +KHR-GL32.shaders30.glsl_constructors.bvec4_from_bool_mat4_bool_invalid_vs +KHR-GL32.shaders30.glsl_constructors.bvec4_from_bool_mat4_bool_invalid_fs +KHR-GL32.shaders30.glsl_constructors.bvec4_from_bool_mat4x2_vs +KHR-GL32.shaders30.glsl_constructors.bvec4_from_bool_mat4x2_fs +KHR-GL32.shaders30.glsl_constructors.bvec4_from_bool_mat4x2_bool_invalid_vs +KHR-GL32.shaders30.glsl_constructors.bvec4_from_bool_mat4x2_bool_invalid_fs +KHR-GL32.shaders30.glsl_constructors.bvec4_from_bool_mat4x3_vs +KHR-GL32.shaders30.glsl_constructors.bvec4_from_bool_mat4x3_fs +KHR-GL32.shaders30.glsl_constructors.bvec4_from_bool_mat4x3_bool_invalid_vs +KHR-GL32.shaders30.glsl_constructors.bvec4_from_bool_mat4x3_bool_invalid_fs KHR-GL32.ext_texture_shadow_lod.texture.sampler2darrayshadow_fragment KHR-GL32.ext_texture_shadow_lod.texture.sampler2darrayshadow_bias_fragment KHR-GL32.ext_texture_shadow_lod.texture.samplercubearrayshadow_vertex diff --git a/external/openglcts/data/mustpass/gl/khronos_mustpass/4.6.1.x/gl33-master.txt b/external/openglcts/data/mustpass/gl/khronos_mustpass/4.6.1.x/gl33-master.txt index 716d41e..e78436b 100644 --- a/external/openglcts/data/mustpass/gl/khronos_mustpass/4.6.1.x/gl33-master.txt +++ b/external/openglcts/data/mustpass/gl/khronos_mustpass/4.6.1.x/gl33-master.txt @@ -192,6 +192,654 @@ KHR-GL33.texture_repeat_mode.depth24_stencil8_11x131_2_repeat KHR-GL33.texture_repeat_mode.depth24_stencil8_11x131_2_mirrored_repeat KHR-GL33.shaders30.declarations.declarations.redeclare_gl_FragColor KHR-GL33.shaders30.declarations.declarations.redeclare_gl_FragData +KHR-GL33.shaders30.glsl_constructors.vec2_from_mat2_vs +KHR-GL33.shaders30.glsl_constructors.vec2_from_mat2_fs +KHR-GL33.shaders30.glsl_constructors.vec2_from_mat2_mat2_invalid_vs +KHR-GL33.shaders30.glsl_constructors.vec2_from_mat2_mat2_invalid_fs +KHR-GL33.shaders30.glsl_constructors.vec2_from_mat2x3_vs +KHR-GL33.shaders30.glsl_constructors.vec2_from_mat2x3_fs +KHR-GL33.shaders30.glsl_constructors.vec2_from_mat2x3_mat2x3_invalid_vs +KHR-GL33.shaders30.glsl_constructors.vec2_from_mat2x3_mat2x3_invalid_fs +KHR-GL33.shaders30.glsl_constructors.vec2_from_mat2x4_vs +KHR-GL33.shaders30.glsl_constructors.vec2_from_mat2x4_fs +KHR-GL33.shaders30.glsl_constructors.vec2_from_mat2x4_mat2x4_invalid_vs +KHR-GL33.shaders30.glsl_constructors.vec2_from_mat2x4_mat2x4_invalid_fs +KHR-GL33.shaders30.glsl_constructors.vec2_from_mat3_vs +KHR-GL33.shaders30.glsl_constructors.vec2_from_mat3_fs +KHR-GL33.shaders30.glsl_constructors.vec2_from_mat3_mat3_invalid_vs +KHR-GL33.shaders30.glsl_constructors.vec2_from_mat3_mat3_invalid_fs +KHR-GL33.shaders30.glsl_constructors.vec2_from_mat3x2_vs +KHR-GL33.shaders30.glsl_constructors.vec2_from_mat3x2_fs +KHR-GL33.shaders30.glsl_constructors.vec2_from_mat3x2_mat3x2_invalid_vs +KHR-GL33.shaders30.glsl_constructors.vec2_from_mat3x2_mat3x2_invalid_fs +KHR-GL33.shaders30.glsl_constructors.vec2_from_mat3x4_vs +KHR-GL33.shaders30.glsl_constructors.vec2_from_mat3x4_fs +KHR-GL33.shaders30.glsl_constructors.vec2_from_mat3x4_mat3x4_invalid_vs +KHR-GL33.shaders30.glsl_constructors.vec2_from_mat3x4_mat3x4_invalid_fs +KHR-GL33.shaders30.glsl_constructors.vec2_from_mat4_vs +KHR-GL33.shaders30.glsl_constructors.vec2_from_mat4_fs +KHR-GL33.shaders30.glsl_constructors.vec2_from_mat4_mat4_invalid_vs +KHR-GL33.shaders30.glsl_constructors.vec2_from_mat4_mat4_invalid_fs +KHR-GL33.shaders30.glsl_constructors.vec2_from_mat4x2_vs +KHR-GL33.shaders30.glsl_constructors.vec2_from_mat4x2_fs +KHR-GL33.shaders30.glsl_constructors.vec2_from_mat4x2_mat4x2_invalid_vs +KHR-GL33.shaders30.glsl_constructors.vec2_from_mat4x2_mat4x2_invalid_fs +KHR-GL33.shaders30.glsl_constructors.vec2_from_mat4x3_vs +KHR-GL33.shaders30.glsl_constructors.vec2_from_mat4x3_fs +KHR-GL33.shaders30.glsl_constructors.vec2_from_mat4x3_mat4x3_invalid_vs +KHR-GL33.shaders30.glsl_constructors.vec2_from_mat4x3_mat4x3_invalid_fs +KHR-GL33.shaders30.glsl_constructors.vec2_from_float_mat2_vs +KHR-GL33.shaders30.glsl_constructors.vec2_from_float_mat2_fs +KHR-GL33.shaders30.glsl_constructors.vec2_from_float_mat2_float_invalid_vs +KHR-GL33.shaders30.glsl_constructors.vec2_from_float_mat2_float_invalid_fs +KHR-GL33.shaders30.glsl_constructors.vec2_from_float_mat2x3_vs +KHR-GL33.shaders30.glsl_constructors.vec2_from_float_mat2x3_fs +KHR-GL33.shaders30.glsl_constructors.vec2_from_float_mat2x3_float_invalid_vs +KHR-GL33.shaders30.glsl_constructors.vec2_from_float_mat2x3_float_invalid_fs +KHR-GL33.shaders30.glsl_constructors.vec2_from_float_mat2x4_vs +KHR-GL33.shaders30.glsl_constructors.vec2_from_float_mat2x4_fs +KHR-GL33.shaders30.glsl_constructors.vec2_from_float_mat2x4_float_invalid_vs +KHR-GL33.shaders30.glsl_constructors.vec2_from_float_mat2x4_float_invalid_fs +KHR-GL33.shaders30.glsl_constructors.vec2_from_float_mat3_vs +KHR-GL33.shaders30.glsl_constructors.vec2_from_float_mat3_fs +KHR-GL33.shaders30.glsl_constructors.vec2_from_float_mat3_float_invalid_vs +KHR-GL33.shaders30.glsl_constructors.vec2_from_float_mat3_float_invalid_fs +KHR-GL33.shaders30.glsl_constructors.vec2_from_float_mat3x2_vs +KHR-GL33.shaders30.glsl_constructors.vec2_from_float_mat3x2_fs +KHR-GL33.shaders30.glsl_constructors.vec2_from_float_mat3x2_float_invalid_vs +KHR-GL33.shaders30.glsl_constructors.vec2_from_float_mat3x2_float_invalid_fs +KHR-GL33.shaders30.glsl_constructors.vec2_from_float_mat3x4_vs +KHR-GL33.shaders30.glsl_constructors.vec2_from_float_mat3x4_fs +KHR-GL33.shaders30.glsl_constructors.vec2_from_float_mat3x4_float_invalid_vs +KHR-GL33.shaders30.glsl_constructors.vec2_from_float_mat3x4_float_invalid_fs +KHR-GL33.shaders30.glsl_constructors.vec2_from_float_mat4_vs +KHR-GL33.shaders30.glsl_constructors.vec2_from_float_mat4_fs +KHR-GL33.shaders30.glsl_constructors.vec2_from_float_mat4_float_invalid_vs +KHR-GL33.shaders30.glsl_constructors.vec2_from_float_mat4_float_invalid_fs +KHR-GL33.shaders30.glsl_constructors.vec2_from_float_mat4x2_vs +KHR-GL33.shaders30.glsl_constructors.vec2_from_float_mat4x2_fs +KHR-GL33.shaders30.glsl_constructors.vec2_from_float_mat4x2_float_invalid_vs +KHR-GL33.shaders30.glsl_constructors.vec2_from_float_mat4x2_float_invalid_fs +KHR-GL33.shaders30.glsl_constructors.vec2_from_float_mat4x3_vs +KHR-GL33.shaders30.glsl_constructors.vec2_from_float_mat4x3_fs +KHR-GL33.shaders30.glsl_constructors.vec2_from_float_mat4x3_float_invalid_vs +KHR-GL33.shaders30.glsl_constructors.vec2_from_float_mat4x3_float_invalid_fs +KHR-GL33.shaders30.glsl_constructors.vec3_from_mat2_vs +KHR-GL33.shaders30.glsl_constructors.vec3_from_mat2_fs +KHR-GL33.shaders30.glsl_constructors.vec3_from_mat2_mat2_invalid_vs +KHR-GL33.shaders30.glsl_constructors.vec3_from_mat2_mat2_invalid_fs +KHR-GL33.shaders30.glsl_constructors.vec3_from_mat2x3_vs +KHR-GL33.shaders30.glsl_constructors.vec3_from_mat2x3_fs +KHR-GL33.shaders30.glsl_constructors.vec3_from_mat2x3_mat2x3_invalid_vs +KHR-GL33.shaders30.glsl_constructors.vec3_from_mat2x3_mat2x3_invalid_fs +KHR-GL33.shaders30.glsl_constructors.vec3_from_mat2x4_vs +KHR-GL33.shaders30.glsl_constructors.vec3_from_mat2x4_fs +KHR-GL33.shaders30.glsl_constructors.vec3_from_mat2x4_mat2x4_invalid_vs +KHR-GL33.shaders30.glsl_constructors.vec3_from_mat2x4_mat2x4_invalid_fs +KHR-GL33.shaders30.glsl_constructors.vec3_from_mat3_vs +KHR-GL33.shaders30.glsl_constructors.vec3_from_mat3_fs +KHR-GL33.shaders30.glsl_constructors.vec3_from_mat3_mat3_invalid_vs +KHR-GL33.shaders30.glsl_constructors.vec3_from_mat3_mat3_invalid_fs +KHR-GL33.shaders30.glsl_constructors.vec3_from_mat3x2_vs +KHR-GL33.shaders30.glsl_constructors.vec3_from_mat3x2_fs +KHR-GL33.shaders30.glsl_constructors.vec3_from_mat3x2_mat3x2_invalid_vs +KHR-GL33.shaders30.glsl_constructors.vec3_from_mat3x2_mat3x2_invalid_fs +KHR-GL33.shaders30.glsl_constructors.vec3_from_mat3x4_vs +KHR-GL33.shaders30.glsl_constructors.vec3_from_mat3x4_fs +KHR-GL33.shaders30.glsl_constructors.vec3_from_mat3x4_mat3x4_invalid_vs +KHR-GL33.shaders30.glsl_constructors.vec3_from_mat3x4_mat3x4_invalid_fs +KHR-GL33.shaders30.glsl_constructors.vec3_from_mat4_vs +KHR-GL33.shaders30.glsl_constructors.vec3_from_mat4_fs +KHR-GL33.shaders30.glsl_constructors.vec3_from_mat4_mat4_invalid_vs +KHR-GL33.shaders30.glsl_constructors.vec3_from_mat4_mat4_invalid_fs +KHR-GL33.shaders30.glsl_constructors.vec3_from_mat4x2_vs +KHR-GL33.shaders30.glsl_constructors.vec3_from_mat4x2_fs +KHR-GL33.shaders30.glsl_constructors.vec3_from_mat4x2_mat4x2_invalid_vs +KHR-GL33.shaders30.glsl_constructors.vec3_from_mat4x2_mat4x2_invalid_fs +KHR-GL33.shaders30.glsl_constructors.vec3_from_mat4x3_vs +KHR-GL33.shaders30.glsl_constructors.vec3_from_mat4x3_fs +KHR-GL33.shaders30.glsl_constructors.vec3_from_mat4x3_mat4x3_invalid_vs +KHR-GL33.shaders30.glsl_constructors.vec3_from_mat4x3_mat4x3_invalid_fs +KHR-GL33.shaders30.glsl_constructors.vec3_from_float_mat2_vs +KHR-GL33.shaders30.glsl_constructors.vec3_from_float_mat2_fs +KHR-GL33.shaders30.glsl_constructors.vec3_from_float_mat2_float_invalid_vs +KHR-GL33.shaders30.glsl_constructors.vec3_from_float_mat2_float_invalid_fs +KHR-GL33.shaders30.glsl_constructors.vec3_from_float_mat2x3_vs +KHR-GL33.shaders30.glsl_constructors.vec3_from_float_mat2x3_fs +KHR-GL33.shaders30.glsl_constructors.vec3_from_float_mat2x3_float_invalid_vs +KHR-GL33.shaders30.glsl_constructors.vec3_from_float_mat2x3_float_invalid_fs +KHR-GL33.shaders30.glsl_constructors.vec3_from_float_mat2x4_vs +KHR-GL33.shaders30.glsl_constructors.vec3_from_float_mat2x4_fs +KHR-GL33.shaders30.glsl_constructors.vec3_from_float_mat2x4_float_invalid_vs +KHR-GL33.shaders30.glsl_constructors.vec3_from_float_mat2x4_float_invalid_fs +KHR-GL33.shaders30.glsl_constructors.vec3_from_float_mat3_vs +KHR-GL33.shaders30.glsl_constructors.vec3_from_float_mat3_fs +KHR-GL33.shaders30.glsl_constructors.vec3_from_float_mat3_float_invalid_vs +KHR-GL33.shaders30.glsl_constructors.vec3_from_float_mat3_float_invalid_fs +KHR-GL33.shaders30.glsl_constructors.vec3_from_float_mat3x2_vs +KHR-GL33.shaders30.glsl_constructors.vec3_from_float_mat3x2_fs +KHR-GL33.shaders30.glsl_constructors.vec3_from_float_mat3x2_float_invalid_vs +KHR-GL33.shaders30.glsl_constructors.vec3_from_float_mat3x2_float_invalid_fs +KHR-GL33.shaders30.glsl_constructors.vec3_from_float_mat3x4_vs +KHR-GL33.shaders30.glsl_constructors.vec3_from_float_mat3x4_fs +KHR-GL33.shaders30.glsl_constructors.vec3_from_float_mat3x4_float_invalid_vs +KHR-GL33.shaders30.glsl_constructors.vec3_from_float_mat3x4_float_invalid_fs +KHR-GL33.shaders30.glsl_constructors.vec3_from_float_mat4_vs +KHR-GL33.shaders30.glsl_constructors.vec3_from_float_mat4_fs +KHR-GL33.shaders30.glsl_constructors.vec3_from_float_mat4_float_invalid_vs +KHR-GL33.shaders30.glsl_constructors.vec3_from_float_mat4_float_invalid_fs +KHR-GL33.shaders30.glsl_constructors.vec3_from_float_mat4x2_vs +KHR-GL33.shaders30.glsl_constructors.vec3_from_float_mat4x2_fs +KHR-GL33.shaders30.glsl_constructors.vec3_from_float_mat4x2_float_invalid_vs +KHR-GL33.shaders30.glsl_constructors.vec3_from_float_mat4x2_float_invalid_fs +KHR-GL33.shaders30.glsl_constructors.vec3_from_float_mat4x3_vs +KHR-GL33.shaders30.glsl_constructors.vec3_from_float_mat4x3_fs +KHR-GL33.shaders30.glsl_constructors.vec3_from_float_mat4x3_float_invalid_vs +KHR-GL33.shaders30.glsl_constructors.vec3_from_float_mat4x3_float_invalid_fs +KHR-GL33.shaders30.glsl_constructors.vec4_from_mat2_vs +KHR-GL33.shaders30.glsl_constructors.vec4_from_mat2_fs +KHR-GL33.shaders30.glsl_constructors.vec4_from_mat2_mat2_invalid_vs +KHR-GL33.shaders30.glsl_constructors.vec4_from_mat2_mat2_invalid_fs +KHR-GL33.shaders30.glsl_constructors.vec4_from_mat2x3_vs +KHR-GL33.shaders30.glsl_constructors.vec4_from_mat2x3_fs +KHR-GL33.shaders30.glsl_constructors.vec4_from_mat2x3_mat2x3_invalid_vs +KHR-GL33.shaders30.glsl_constructors.vec4_from_mat2x3_mat2x3_invalid_fs +KHR-GL33.shaders30.glsl_constructors.vec4_from_mat2x4_vs +KHR-GL33.shaders30.glsl_constructors.vec4_from_mat2x4_fs +KHR-GL33.shaders30.glsl_constructors.vec4_from_mat2x4_mat2x4_invalid_vs +KHR-GL33.shaders30.glsl_constructors.vec4_from_mat2x4_mat2x4_invalid_fs +KHR-GL33.shaders30.glsl_constructors.vec4_from_mat3_vs +KHR-GL33.shaders30.glsl_constructors.vec4_from_mat3_fs +KHR-GL33.shaders30.glsl_constructors.vec4_from_mat3_mat3_invalid_vs +KHR-GL33.shaders30.glsl_constructors.vec4_from_mat3_mat3_invalid_fs +KHR-GL33.shaders30.glsl_constructors.vec4_from_mat3x2_vs +KHR-GL33.shaders30.glsl_constructors.vec4_from_mat3x2_fs +KHR-GL33.shaders30.glsl_constructors.vec4_from_mat3x2_mat3x2_invalid_vs +KHR-GL33.shaders30.glsl_constructors.vec4_from_mat3x2_mat3x2_invalid_fs +KHR-GL33.shaders30.glsl_constructors.vec4_from_mat3x4_vs +KHR-GL33.shaders30.glsl_constructors.vec4_from_mat3x4_fs +KHR-GL33.shaders30.glsl_constructors.vec4_from_mat3x4_mat3x4_invalid_vs +KHR-GL33.shaders30.glsl_constructors.vec4_from_mat3x4_mat3x4_invalid_fs +KHR-GL33.shaders30.glsl_constructors.vec4_from_mat4_vs +KHR-GL33.shaders30.glsl_constructors.vec4_from_mat4_fs +KHR-GL33.shaders30.glsl_constructors.vec4_from_mat4_mat4_invalid_vs +KHR-GL33.shaders30.glsl_constructors.vec4_from_mat4_mat4_invalid_fs +KHR-GL33.shaders30.glsl_constructors.vec4_from_mat4x2_vs +KHR-GL33.shaders30.glsl_constructors.vec4_from_mat4x2_fs +KHR-GL33.shaders30.glsl_constructors.vec4_from_mat4x2_mat4x2_invalid_vs +KHR-GL33.shaders30.glsl_constructors.vec4_from_mat4x2_mat4x2_invalid_fs +KHR-GL33.shaders30.glsl_constructors.vec4_from_mat4x3_vs +KHR-GL33.shaders30.glsl_constructors.vec4_from_mat4x3_fs +KHR-GL33.shaders30.glsl_constructors.vec4_from_mat4x3_mat4x3_invalid_vs +KHR-GL33.shaders30.glsl_constructors.vec4_from_mat4x3_mat4x3_invalid_fs +KHR-GL33.shaders30.glsl_constructors.vec4_from_float_mat2_vs +KHR-GL33.shaders30.glsl_constructors.vec4_from_float_mat2_fs +KHR-GL33.shaders30.glsl_constructors.vec4_from_float_mat2_float_invalid_vs +KHR-GL33.shaders30.glsl_constructors.vec4_from_float_mat2_float_invalid_fs +KHR-GL33.shaders30.glsl_constructors.vec4_from_float_mat2x3_vs +KHR-GL33.shaders30.glsl_constructors.vec4_from_float_mat2x3_fs +KHR-GL33.shaders30.glsl_constructors.vec4_from_float_mat2x3_float_invalid_vs +KHR-GL33.shaders30.glsl_constructors.vec4_from_float_mat2x3_float_invalid_fs +KHR-GL33.shaders30.glsl_constructors.vec4_from_float_mat2x4_vs +KHR-GL33.shaders30.glsl_constructors.vec4_from_float_mat2x4_fs +KHR-GL33.shaders30.glsl_constructors.vec4_from_float_mat2x4_float_invalid_vs +KHR-GL33.shaders30.glsl_constructors.vec4_from_float_mat2x4_float_invalid_fs +KHR-GL33.shaders30.glsl_constructors.vec4_from_float_mat3_vs +KHR-GL33.shaders30.glsl_constructors.vec4_from_float_mat3_fs +KHR-GL33.shaders30.glsl_constructors.vec4_from_float_mat3_float_invalid_vs +KHR-GL33.shaders30.glsl_constructors.vec4_from_float_mat3_float_invalid_fs +KHR-GL33.shaders30.glsl_constructors.vec4_from_float_mat3x2_vs +KHR-GL33.shaders30.glsl_constructors.vec4_from_float_mat3x2_fs +KHR-GL33.shaders30.glsl_constructors.vec4_from_float_mat3x2_float_invalid_vs +KHR-GL33.shaders30.glsl_constructors.vec4_from_float_mat3x2_float_invalid_fs +KHR-GL33.shaders30.glsl_constructors.vec4_from_float_mat3x4_vs +KHR-GL33.shaders30.glsl_constructors.vec4_from_float_mat3x4_fs +KHR-GL33.shaders30.glsl_constructors.vec4_from_float_mat3x4_float_invalid_vs +KHR-GL33.shaders30.glsl_constructors.vec4_from_float_mat3x4_float_invalid_fs +KHR-GL33.shaders30.glsl_constructors.vec4_from_float_mat4_vs +KHR-GL33.shaders30.glsl_constructors.vec4_from_float_mat4_fs +KHR-GL33.shaders30.glsl_constructors.vec4_from_float_mat4_float_invalid_vs +KHR-GL33.shaders30.glsl_constructors.vec4_from_float_mat4_float_invalid_fs +KHR-GL33.shaders30.glsl_constructors.vec4_from_float_mat4x2_vs +KHR-GL33.shaders30.glsl_constructors.vec4_from_float_mat4x2_fs +KHR-GL33.shaders30.glsl_constructors.vec4_from_float_mat4x2_float_invalid_vs +KHR-GL33.shaders30.glsl_constructors.vec4_from_float_mat4x2_float_invalid_fs +KHR-GL33.shaders30.glsl_constructors.vec4_from_float_mat4x3_vs +KHR-GL33.shaders30.glsl_constructors.vec4_from_float_mat4x3_fs +KHR-GL33.shaders30.glsl_constructors.vec4_from_float_mat4x3_float_invalid_vs +KHR-GL33.shaders30.glsl_constructors.vec4_from_float_mat4x3_float_invalid_fs +KHR-GL33.shaders30.glsl_constructors.ivec2_from_mat2_vs +KHR-GL33.shaders30.glsl_constructors.ivec2_from_mat2_fs +KHR-GL33.shaders30.glsl_constructors.ivec2_from_mat2_mat2_invalid_vs +KHR-GL33.shaders30.glsl_constructors.ivec2_from_mat2_mat2_invalid_fs +KHR-GL33.shaders30.glsl_constructors.ivec2_from_mat2x3_vs +KHR-GL33.shaders30.glsl_constructors.ivec2_from_mat2x3_fs +KHR-GL33.shaders30.glsl_constructors.ivec2_from_mat2x3_mat2x3_invalid_vs +KHR-GL33.shaders30.glsl_constructors.ivec2_from_mat2x3_mat2x3_invalid_fs +KHR-GL33.shaders30.glsl_constructors.ivec2_from_mat2x4_vs +KHR-GL33.shaders30.glsl_constructors.ivec2_from_mat2x4_fs +KHR-GL33.shaders30.glsl_constructors.ivec2_from_mat2x4_mat2x4_invalid_vs +KHR-GL33.shaders30.glsl_constructors.ivec2_from_mat2x4_mat2x4_invalid_fs +KHR-GL33.shaders30.glsl_constructors.ivec2_from_mat3_vs +KHR-GL33.shaders30.glsl_constructors.ivec2_from_mat3_fs +KHR-GL33.shaders30.glsl_constructors.ivec2_from_mat3_mat3_invalid_vs +KHR-GL33.shaders30.glsl_constructors.ivec2_from_mat3_mat3_invalid_fs +KHR-GL33.shaders30.glsl_constructors.ivec2_from_mat3x2_vs +KHR-GL33.shaders30.glsl_constructors.ivec2_from_mat3x2_fs +KHR-GL33.shaders30.glsl_constructors.ivec2_from_mat3x2_mat3x2_invalid_vs +KHR-GL33.shaders30.glsl_constructors.ivec2_from_mat3x2_mat3x2_invalid_fs +KHR-GL33.shaders30.glsl_constructors.ivec2_from_mat3x4_vs +KHR-GL33.shaders30.glsl_constructors.ivec2_from_mat3x4_fs +KHR-GL33.shaders30.glsl_constructors.ivec2_from_mat3x4_mat3x4_invalid_vs +KHR-GL33.shaders30.glsl_constructors.ivec2_from_mat3x4_mat3x4_invalid_fs +KHR-GL33.shaders30.glsl_constructors.ivec2_from_mat4_vs +KHR-GL33.shaders30.glsl_constructors.ivec2_from_mat4_fs +KHR-GL33.shaders30.glsl_constructors.ivec2_from_mat4_mat4_invalid_vs +KHR-GL33.shaders30.glsl_constructors.ivec2_from_mat4_mat4_invalid_fs +KHR-GL33.shaders30.glsl_constructors.ivec2_from_mat4x2_vs +KHR-GL33.shaders30.glsl_constructors.ivec2_from_mat4x2_fs +KHR-GL33.shaders30.glsl_constructors.ivec2_from_mat4x2_mat4x2_invalid_vs +KHR-GL33.shaders30.glsl_constructors.ivec2_from_mat4x2_mat4x2_invalid_fs +KHR-GL33.shaders30.glsl_constructors.ivec2_from_mat4x3_vs +KHR-GL33.shaders30.glsl_constructors.ivec2_from_mat4x3_fs +KHR-GL33.shaders30.glsl_constructors.ivec2_from_mat4x3_mat4x3_invalid_vs +KHR-GL33.shaders30.glsl_constructors.ivec2_from_mat4x3_mat4x3_invalid_fs +KHR-GL33.shaders30.glsl_constructors.ivec2_from_int_mat2_vs +KHR-GL33.shaders30.glsl_constructors.ivec2_from_int_mat2_fs +KHR-GL33.shaders30.glsl_constructors.ivec2_from_int_mat2_int_invalid_vs +KHR-GL33.shaders30.glsl_constructors.ivec2_from_int_mat2_int_invalid_fs +KHR-GL33.shaders30.glsl_constructors.ivec2_from_int_mat2x3_vs +KHR-GL33.shaders30.glsl_constructors.ivec2_from_int_mat2x3_fs +KHR-GL33.shaders30.glsl_constructors.ivec2_from_int_mat2x3_int_invalid_vs +KHR-GL33.shaders30.glsl_constructors.ivec2_from_int_mat2x3_int_invalid_fs +KHR-GL33.shaders30.glsl_constructors.ivec2_from_int_mat2x4_vs +KHR-GL33.shaders30.glsl_constructors.ivec2_from_int_mat2x4_fs +KHR-GL33.shaders30.glsl_constructors.ivec2_from_int_mat2x4_int_invalid_vs +KHR-GL33.shaders30.glsl_constructors.ivec2_from_int_mat2x4_int_invalid_fs +KHR-GL33.shaders30.glsl_constructors.ivec2_from_int_mat3_vs +KHR-GL33.shaders30.glsl_constructors.ivec2_from_int_mat3_fs +KHR-GL33.shaders30.glsl_constructors.ivec2_from_int_mat3_int_invalid_vs +KHR-GL33.shaders30.glsl_constructors.ivec2_from_int_mat3_int_invalid_fs +KHR-GL33.shaders30.glsl_constructors.ivec2_from_int_mat3x2_vs +KHR-GL33.shaders30.glsl_constructors.ivec2_from_int_mat3x2_fs +KHR-GL33.shaders30.glsl_constructors.ivec2_from_int_mat3x2_int_invalid_vs +KHR-GL33.shaders30.glsl_constructors.ivec2_from_int_mat3x2_int_invalid_fs +KHR-GL33.shaders30.glsl_constructors.ivec2_from_int_mat3x4_vs +KHR-GL33.shaders30.glsl_constructors.ivec2_from_int_mat3x4_fs +KHR-GL33.shaders30.glsl_constructors.ivec2_from_int_mat3x4_int_invalid_vs +KHR-GL33.shaders30.glsl_constructors.ivec2_from_int_mat3x4_int_invalid_fs +KHR-GL33.shaders30.glsl_constructors.ivec2_from_int_mat4_vs +KHR-GL33.shaders30.glsl_constructors.ivec2_from_int_mat4_fs +KHR-GL33.shaders30.glsl_constructors.ivec2_from_int_mat4_int_invalid_vs +KHR-GL33.shaders30.glsl_constructors.ivec2_from_int_mat4_int_invalid_fs +KHR-GL33.shaders30.glsl_constructors.ivec2_from_int_mat4x2_vs +KHR-GL33.shaders30.glsl_constructors.ivec2_from_int_mat4x2_fs +KHR-GL33.shaders30.glsl_constructors.ivec2_from_int_mat4x2_int_invalid_vs +KHR-GL33.shaders30.glsl_constructors.ivec2_from_int_mat4x2_int_invalid_fs +KHR-GL33.shaders30.glsl_constructors.ivec2_from_int_mat4x3_vs +KHR-GL33.shaders30.glsl_constructors.ivec2_from_int_mat4x3_fs +KHR-GL33.shaders30.glsl_constructors.ivec2_from_int_mat4x3_int_invalid_vs +KHR-GL33.shaders30.glsl_constructors.ivec2_from_int_mat4x3_int_invalid_fs +KHR-GL33.shaders30.glsl_constructors.ivec3_from_mat2_vs +KHR-GL33.shaders30.glsl_constructors.ivec3_from_mat2_fs +KHR-GL33.shaders30.glsl_constructors.ivec3_from_mat2_mat2_invalid_vs +KHR-GL33.shaders30.glsl_constructors.ivec3_from_mat2_mat2_invalid_fs +KHR-GL33.shaders30.glsl_constructors.ivec3_from_mat2x3_vs +KHR-GL33.shaders30.glsl_constructors.ivec3_from_mat2x3_fs +KHR-GL33.shaders30.glsl_constructors.ivec3_from_mat2x3_mat2x3_invalid_vs +KHR-GL33.shaders30.glsl_constructors.ivec3_from_mat2x3_mat2x3_invalid_fs +KHR-GL33.shaders30.glsl_constructors.ivec3_from_mat2x4_vs +KHR-GL33.shaders30.glsl_constructors.ivec3_from_mat2x4_fs +KHR-GL33.shaders30.glsl_constructors.ivec3_from_mat2x4_mat2x4_invalid_vs +KHR-GL33.shaders30.glsl_constructors.ivec3_from_mat2x4_mat2x4_invalid_fs +KHR-GL33.shaders30.glsl_constructors.ivec3_from_mat3_vs +KHR-GL33.shaders30.glsl_constructors.ivec3_from_mat3_fs +KHR-GL33.shaders30.glsl_constructors.ivec3_from_mat3_mat3_invalid_vs +KHR-GL33.shaders30.glsl_constructors.ivec3_from_mat3_mat3_invalid_fs +KHR-GL33.shaders30.glsl_constructors.ivec3_from_mat3x2_vs +KHR-GL33.shaders30.glsl_constructors.ivec3_from_mat3x2_fs +KHR-GL33.shaders30.glsl_constructors.ivec3_from_mat3x2_mat3x2_invalid_vs +KHR-GL33.shaders30.glsl_constructors.ivec3_from_mat3x2_mat3x2_invalid_fs +KHR-GL33.shaders30.glsl_constructors.ivec3_from_mat3x4_vs +KHR-GL33.shaders30.glsl_constructors.ivec3_from_mat3x4_fs +KHR-GL33.shaders30.glsl_constructors.ivec3_from_mat3x4_mat3x4_invalid_vs +KHR-GL33.shaders30.glsl_constructors.ivec3_from_mat3x4_mat3x4_invalid_fs +KHR-GL33.shaders30.glsl_constructors.ivec3_from_mat4_vs +KHR-GL33.shaders30.glsl_constructors.ivec3_from_mat4_fs +KHR-GL33.shaders30.glsl_constructors.ivec3_from_mat4_mat4_invalid_vs +KHR-GL33.shaders30.glsl_constructors.ivec3_from_mat4_mat4_invalid_fs +KHR-GL33.shaders30.glsl_constructors.ivec3_from_mat4x2_vs +KHR-GL33.shaders30.glsl_constructors.ivec3_from_mat4x2_fs +KHR-GL33.shaders30.glsl_constructors.ivec3_from_mat4x2_mat4x2_invalid_vs +KHR-GL33.shaders30.glsl_constructors.ivec3_from_mat4x2_mat4x2_invalid_fs +KHR-GL33.shaders30.glsl_constructors.ivec3_from_mat4x3_vs +KHR-GL33.shaders30.glsl_constructors.ivec3_from_mat4x3_fs +KHR-GL33.shaders30.glsl_constructors.ivec3_from_mat4x3_mat4x3_invalid_vs +KHR-GL33.shaders30.glsl_constructors.ivec3_from_mat4x3_mat4x3_invalid_fs +KHR-GL33.shaders30.glsl_constructors.ivec3_from_int_mat2_vs +KHR-GL33.shaders30.glsl_constructors.ivec3_from_int_mat2_fs +KHR-GL33.shaders30.glsl_constructors.ivec3_from_int_mat2_int_invalid_vs +KHR-GL33.shaders30.glsl_constructors.ivec3_from_int_mat2_int_invalid_fs +KHR-GL33.shaders30.glsl_constructors.ivec3_from_int_mat2x3_vs +KHR-GL33.shaders30.glsl_constructors.ivec3_from_int_mat2x3_fs +KHR-GL33.shaders30.glsl_constructors.ivec3_from_int_mat2x3_int_invalid_vs +KHR-GL33.shaders30.glsl_constructors.ivec3_from_int_mat2x3_int_invalid_fs +KHR-GL33.shaders30.glsl_constructors.ivec3_from_int_mat2x4_vs +KHR-GL33.shaders30.glsl_constructors.ivec3_from_int_mat2x4_fs +KHR-GL33.shaders30.glsl_constructors.ivec3_from_int_mat2x4_int_invalid_vs +KHR-GL33.shaders30.glsl_constructors.ivec3_from_int_mat2x4_int_invalid_fs +KHR-GL33.shaders30.glsl_constructors.ivec3_from_int_mat3_vs +KHR-GL33.shaders30.glsl_constructors.ivec3_from_int_mat3_fs +KHR-GL33.shaders30.glsl_constructors.ivec3_from_int_mat3_int_invalid_vs +KHR-GL33.shaders30.glsl_constructors.ivec3_from_int_mat3_int_invalid_fs +KHR-GL33.shaders30.glsl_constructors.ivec3_from_int_mat3x2_vs +KHR-GL33.shaders30.glsl_constructors.ivec3_from_int_mat3x2_fs +KHR-GL33.shaders30.glsl_constructors.ivec3_from_int_mat3x2_int_invalid_vs +KHR-GL33.shaders30.glsl_constructors.ivec3_from_int_mat3x2_int_invalid_fs +KHR-GL33.shaders30.glsl_constructors.ivec3_from_int_mat3x4_vs +KHR-GL33.shaders30.glsl_constructors.ivec3_from_int_mat3x4_fs +KHR-GL33.shaders30.glsl_constructors.ivec3_from_int_mat3x4_int_invalid_vs +KHR-GL33.shaders30.glsl_constructors.ivec3_from_int_mat3x4_int_invalid_fs +KHR-GL33.shaders30.glsl_constructors.ivec3_from_int_mat4_vs +KHR-GL33.shaders30.glsl_constructors.ivec3_from_int_mat4_fs +KHR-GL33.shaders30.glsl_constructors.ivec3_from_int_mat4_int_invalid_vs +KHR-GL33.shaders30.glsl_constructors.ivec3_from_int_mat4_int_invalid_fs +KHR-GL33.shaders30.glsl_constructors.ivec3_from_int_mat4x2_vs +KHR-GL33.shaders30.glsl_constructors.ivec3_from_int_mat4x2_fs +KHR-GL33.shaders30.glsl_constructors.ivec3_from_int_mat4x2_int_invalid_vs +KHR-GL33.shaders30.glsl_constructors.ivec3_from_int_mat4x2_int_invalid_fs +KHR-GL33.shaders30.glsl_constructors.ivec3_from_int_mat4x3_vs +KHR-GL33.shaders30.glsl_constructors.ivec3_from_int_mat4x3_fs +KHR-GL33.shaders30.glsl_constructors.ivec3_from_int_mat4x3_int_invalid_vs +KHR-GL33.shaders30.glsl_constructors.ivec3_from_int_mat4x3_int_invalid_fs +KHR-GL33.shaders30.glsl_constructors.ivec4_from_mat2_vs +KHR-GL33.shaders30.glsl_constructors.ivec4_from_mat2_fs +KHR-GL33.shaders30.glsl_constructors.ivec4_from_mat2_mat2_invalid_vs +KHR-GL33.shaders30.glsl_constructors.ivec4_from_mat2_mat2_invalid_fs +KHR-GL33.shaders30.glsl_constructors.ivec4_from_mat2x3_vs +KHR-GL33.shaders30.glsl_constructors.ivec4_from_mat2x3_fs +KHR-GL33.shaders30.glsl_constructors.ivec4_from_mat2x3_mat2x3_invalid_vs +KHR-GL33.shaders30.glsl_constructors.ivec4_from_mat2x3_mat2x3_invalid_fs +KHR-GL33.shaders30.glsl_constructors.ivec4_from_mat2x4_vs +KHR-GL33.shaders30.glsl_constructors.ivec4_from_mat2x4_fs +KHR-GL33.shaders30.glsl_constructors.ivec4_from_mat2x4_mat2x4_invalid_vs +KHR-GL33.shaders30.glsl_constructors.ivec4_from_mat2x4_mat2x4_invalid_fs +KHR-GL33.shaders30.glsl_constructors.ivec4_from_mat3_vs +KHR-GL33.shaders30.glsl_constructors.ivec4_from_mat3_fs +KHR-GL33.shaders30.glsl_constructors.ivec4_from_mat3_mat3_invalid_vs +KHR-GL33.shaders30.glsl_constructors.ivec4_from_mat3_mat3_invalid_fs +KHR-GL33.shaders30.glsl_constructors.ivec4_from_mat3x2_vs +KHR-GL33.shaders30.glsl_constructors.ivec4_from_mat3x2_fs +KHR-GL33.shaders30.glsl_constructors.ivec4_from_mat3x2_mat3x2_invalid_vs +KHR-GL33.shaders30.glsl_constructors.ivec4_from_mat3x2_mat3x2_invalid_fs +KHR-GL33.shaders30.glsl_constructors.ivec4_from_mat3x4_vs +KHR-GL33.shaders30.glsl_constructors.ivec4_from_mat3x4_fs +KHR-GL33.shaders30.glsl_constructors.ivec4_from_mat3x4_mat3x4_invalid_vs +KHR-GL33.shaders30.glsl_constructors.ivec4_from_mat3x4_mat3x4_invalid_fs +KHR-GL33.shaders30.glsl_constructors.ivec4_from_mat4_vs +KHR-GL33.shaders30.glsl_constructors.ivec4_from_mat4_fs +KHR-GL33.shaders30.glsl_constructors.ivec4_from_mat4_mat4_invalid_vs +KHR-GL33.shaders30.glsl_constructors.ivec4_from_mat4_mat4_invalid_fs +KHR-GL33.shaders30.glsl_constructors.ivec4_from_mat4x2_vs +KHR-GL33.shaders30.glsl_constructors.ivec4_from_mat4x2_fs +KHR-GL33.shaders30.glsl_constructors.ivec4_from_mat4x2_mat4x2_invalid_vs +KHR-GL33.shaders30.glsl_constructors.ivec4_from_mat4x2_mat4x2_invalid_fs +KHR-GL33.shaders30.glsl_constructors.ivec4_from_mat4x3_vs +KHR-GL33.shaders30.glsl_constructors.ivec4_from_mat4x3_fs +KHR-GL33.shaders30.glsl_constructors.ivec4_from_mat4x3_mat4x3_invalid_vs +KHR-GL33.shaders30.glsl_constructors.ivec4_from_mat4x3_mat4x3_invalid_fs +KHR-GL33.shaders30.glsl_constructors.ivec4_from_int_mat2_vs +KHR-GL33.shaders30.glsl_constructors.ivec4_from_int_mat2_fs +KHR-GL33.shaders30.glsl_constructors.ivec4_from_int_mat2_int_invalid_vs +KHR-GL33.shaders30.glsl_constructors.ivec4_from_int_mat2_int_invalid_fs +KHR-GL33.shaders30.glsl_constructors.ivec4_from_int_mat2x3_vs +KHR-GL33.shaders30.glsl_constructors.ivec4_from_int_mat2x3_fs +KHR-GL33.shaders30.glsl_constructors.ivec4_from_int_mat2x3_int_invalid_vs +KHR-GL33.shaders30.glsl_constructors.ivec4_from_int_mat2x3_int_invalid_fs +KHR-GL33.shaders30.glsl_constructors.ivec4_from_int_mat2x4_vs +KHR-GL33.shaders30.glsl_constructors.ivec4_from_int_mat2x4_fs +KHR-GL33.shaders30.glsl_constructors.ivec4_from_int_mat2x4_int_invalid_vs +KHR-GL33.shaders30.glsl_constructors.ivec4_from_int_mat2x4_int_invalid_fs +KHR-GL33.shaders30.glsl_constructors.ivec4_from_int_mat3_vs +KHR-GL33.shaders30.glsl_constructors.ivec4_from_int_mat3_fs +KHR-GL33.shaders30.glsl_constructors.ivec4_from_int_mat3_int_invalid_vs +KHR-GL33.shaders30.glsl_constructors.ivec4_from_int_mat3_int_invalid_fs +KHR-GL33.shaders30.glsl_constructors.ivec4_from_int_mat3x2_vs +KHR-GL33.shaders30.glsl_constructors.ivec4_from_int_mat3x2_fs +KHR-GL33.shaders30.glsl_constructors.ivec4_from_int_mat3x2_int_invalid_vs +KHR-GL33.shaders30.glsl_constructors.ivec4_from_int_mat3x2_int_invalid_fs +KHR-GL33.shaders30.glsl_constructors.ivec4_from_int_mat3x4_vs +KHR-GL33.shaders30.glsl_constructors.ivec4_from_int_mat3x4_fs +KHR-GL33.shaders30.glsl_constructors.ivec4_from_int_mat3x4_int_invalid_vs +KHR-GL33.shaders30.glsl_constructors.ivec4_from_int_mat3x4_int_invalid_fs +KHR-GL33.shaders30.glsl_constructors.ivec4_from_int_mat4_vs +KHR-GL33.shaders30.glsl_constructors.ivec4_from_int_mat4_fs +KHR-GL33.shaders30.glsl_constructors.ivec4_from_int_mat4_int_invalid_vs +KHR-GL33.shaders30.glsl_constructors.ivec4_from_int_mat4_int_invalid_fs +KHR-GL33.shaders30.glsl_constructors.ivec4_from_int_mat4x2_vs +KHR-GL33.shaders30.glsl_constructors.ivec4_from_int_mat4x2_fs +KHR-GL33.shaders30.glsl_constructors.ivec4_from_int_mat4x2_int_invalid_vs +KHR-GL33.shaders30.glsl_constructors.ivec4_from_int_mat4x2_int_invalid_fs +KHR-GL33.shaders30.glsl_constructors.ivec4_from_int_mat4x3_vs +KHR-GL33.shaders30.glsl_constructors.ivec4_from_int_mat4x3_fs +KHR-GL33.shaders30.glsl_constructors.ivec4_from_int_mat4x3_int_invalid_vs +KHR-GL33.shaders30.glsl_constructors.ivec4_from_int_mat4x3_int_invalid_fs +KHR-GL33.shaders30.glsl_constructors.bvec2_from_mat2_vs +KHR-GL33.shaders30.glsl_constructors.bvec2_from_mat2_fs +KHR-GL33.shaders30.glsl_constructors.bvec2_from_mat2_mat2_invalid_vs +KHR-GL33.shaders30.glsl_constructors.bvec2_from_mat2_mat2_invalid_fs +KHR-GL33.shaders30.glsl_constructors.bvec2_from_mat2x3_vs +KHR-GL33.shaders30.glsl_constructors.bvec2_from_mat2x3_fs +KHR-GL33.shaders30.glsl_constructors.bvec2_from_mat2x3_mat2x3_invalid_vs +KHR-GL33.shaders30.glsl_constructors.bvec2_from_mat2x3_mat2x3_invalid_fs +KHR-GL33.shaders30.glsl_constructors.bvec2_from_mat2x4_vs +KHR-GL33.shaders30.glsl_constructors.bvec2_from_mat2x4_fs +KHR-GL33.shaders30.glsl_constructors.bvec2_from_mat2x4_mat2x4_invalid_vs +KHR-GL33.shaders30.glsl_constructors.bvec2_from_mat2x4_mat2x4_invalid_fs +KHR-GL33.shaders30.glsl_constructors.bvec2_from_mat3_vs +KHR-GL33.shaders30.glsl_constructors.bvec2_from_mat3_fs +KHR-GL33.shaders30.glsl_constructors.bvec2_from_mat3_mat3_invalid_vs +KHR-GL33.shaders30.glsl_constructors.bvec2_from_mat3_mat3_invalid_fs +KHR-GL33.shaders30.glsl_constructors.bvec2_from_mat3x2_vs +KHR-GL33.shaders30.glsl_constructors.bvec2_from_mat3x2_fs +KHR-GL33.shaders30.glsl_constructors.bvec2_from_mat3x2_mat3x2_invalid_vs +KHR-GL33.shaders30.glsl_constructors.bvec2_from_mat3x2_mat3x2_invalid_fs +KHR-GL33.shaders30.glsl_constructors.bvec2_from_mat3x4_vs +KHR-GL33.shaders30.glsl_constructors.bvec2_from_mat3x4_fs +KHR-GL33.shaders30.glsl_constructors.bvec2_from_mat3x4_mat3x4_invalid_vs +KHR-GL33.shaders30.glsl_constructors.bvec2_from_mat3x4_mat3x4_invalid_fs +KHR-GL33.shaders30.glsl_constructors.bvec2_from_mat4_vs +KHR-GL33.shaders30.glsl_constructors.bvec2_from_mat4_fs +KHR-GL33.shaders30.glsl_constructors.bvec2_from_mat4_mat4_invalid_vs +KHR-GL33.shaders30.glsl_constructors.bvec2_from_mat4_mat4_invalid_fs +KHR-GL33.shaders30.glsl_constructors.bvec2_from_mat4x2_vs +KHR-GL33.shaders30.glsl_constructors.bvec2_from_mat4x2_fs +KHR-GL33.shaders30.glsl_constructors.bvec2_from_mat4x2_mat4x2_invalid_vs +KHR-GL33.shaders30.glsl_constructors.bvec2_from_mat4x2_mat4x2_invalid_fs +KHR-GL33.shaders30.glsl_constructors.bvec2_from_mat4x3_vs +KHR-GL33.shaders30.glsl_constructors.bvec2_from_mat4x3_fs +KHR-GL33.shaders30.glsl_constructors.bvec2_from_mat4x3_mat4x3_invalid_vs +KHR-GL33.shaders30.glsl_constructors.bvec2_from_mat4x3_mat4x3_invalid_fs +KHR-GL33.shaders30.glsl_constructors.bvec2_from_bool_mat2_vs +KHR-GL33.shaders30.glsl_constructors.bvec2_from_bool_mat2_fs +KHR-GL33.shaders30.glsl_constructors.bvec2_from_bool_mat2_bool_invalid_vs +KHR-GL33.shaders30.glsl_constructors.bvec2_from_bool_mat2_bool_invalid_fs +KHR-GL33.shaders30.glsl_constructors.bvec2_from_bool_mat2x3_vs +KHR-GL33.shaders30.glsl_constructors.bvec2_from_bool_mat2x3_fs +KHR-GL33.shaders30.glsl_constructors.bvec2_from_bool_mat2x3_bool_invalid_vs +KHR-GL33.shaders30.glsl_constructors.bvec2_from_bool_mat2x3_bool_invalid_fs +KHR-GL33.shaders30.glsl_constructors.bvec2_from_bool_mat2x4_vs +KHR-GL33.shaders30.glsl_constructors.bvec2_from_bool_mat2x4_fs +KHR-GL33.shaders30.glsl_constructors.bvec2_from_bool_mat2x4_bool_invalid_vs +KHR-GL33.shaders30.glsl_constructors.bvec2_from_bool_mat2x4_bool_invalid_fs +KHR-GL33.shaders30.glsl_constructors.bvec2_from_bool_mat3_vs +KHR-GL33.shaders30.glsl_constructors.bvec2_from_bool_mat3_fs +KHR-GL33.shaders30.glsl_constructors.bvec2_from_bool_mat3_bool_invalid_vs +KHR-GL33.shaders30.glsl_constructors.bvec2_from_bool_mat3_bool_invalid_fs +KHR-GL33.shaders30.glsl_constructors.bvec2_from_bool_mat3x2_vs +KHR-GL33.shaders30.glsl_constructors.bvec2_from_bool_mat3x2_fs +KHR-GL33.shaders30.glsl_constructors.bvec2_from_bool_mat3x2_bool_invalid_vs +KHR-GL33.shaders30.glsl_constructors.bvec2_from_bool_mat3x2_bool_invalid_fs +KHR-GL33.shaders30.glsl_constructors.bvec2_from_bool_mat3x4_vs +KHR-GL33.shaders30.glsl_constructors.bvec2_from_bool_mat3x4_fs +KHR-GL33.shaders30.glsl_constructors.bvec2_from_bool_mat3x4_bool_invalid_vs +KHR-GL33.shaders30.glsl_constructors.bvec2_from_bool_mat3x4_bool_invalid_fs +KHR-GL33.shaders30.glsl_constructors.bvec2_from_bool_mat4_vs +KHR-GL33.shaders30.glsl_constructors.bvec2_from_bool_mat4_fs +KHR-GL33.shaders30.glsl_constructors.bvec2_from_bool_mat4_bool_invalid_vs +KHR-GL33.shaders30.glsl_constructors.bvec2_from_bool_mat4_bool_invalid_fs +KHR-GL33.shaders30.glsl_constructors.bvec2_from_bool_mat4x2_vs +KHR-GL33.shaders30.glsl_constructors.bvec2_from_bool_mat4x2_fs +KHR-GL33.shaders30.glsl_constructors.bvec2_from_bool_mat4x2_bool_invalid_vs +KHR-GL33.shaders30.glsl_constructors.bvec2_from_bool_mat4x2_bool_invalid_fs +KHR-GL33.shaders30.glsl_constructors.bvec2_from_bool_mat4x3_vs +KHR-GL33.shaders30.glsl_constructors.bvec2_from_bool_mat4x3_fs +KHR-GL33.shaders30.glsl_constructors.bvec2_from_bool_mat4x3_bool_invalid_vs +KHR-GL33.shaders30.glsl_constructors.bvec2_from_bool_mat4x3_bool_invalid_fs +KHR-GL33.shaders30.glsl_constructors.bvec3_from_mat2_vs +KHR-GL33.shaders30.glsl_constructors.bvec3_from_mat2_fs +KHR-GL33.shaders30.glsl_constructors.bvec3_from_mat2_mat2_invalid_vs +KHR-GL33.shaders30.glsl_constructors.bvec3_from_mat2_mat2_invalid_fs +KHR-GL33.shaders30.glsl_constructors.bvec3_from_mat2x3_vs +KHR-GL33.shaders30.glsl_constructors.bvec3_from_mat2x3_fs +KHR-GL33.shaders30.glsl_constructors.bvec3_from_mat2x3_mat2x3_invalid_vs +KHR-GL33.shaders30.glsl_constructors.bvec3_from_mat2x3_mat2x3_invalid_fs +KHR-GL33.shaders30.glsl_constructors.bvec3_from_mat2x4_vs +KHR-GL33.shaders30.glsl_constructors.bvec3_from_mat2x4_fs +KHR-GL33.shaders30.glsl_constructors.bvec3_from_mat2x4_mat2x4_invalid_vs +KHR-GL33.shaders30.glsl_constructors.bvec3_from_mat2x4_mat2x4_invalid_fs +KHR-GL33.shaders30.glsl_constructors.bvec3_from_mat3_vs +KHR-GL33.shaders30.glsl_constructors.bvec3_from_mat3_fs +KHR-GL33.shaders30.glsl_constructors.bvec3_from_mat3_mat3_invalid_vs +KHR-GL33.shaders30.glsl_constructors.bvec3_from_mat3_mat3_invalid_fs +KHR-GL33.shaders30.glsl_constructors.bvec3_from_mat3x2_vs +KHR-GL33.shaders30.glsl_constructors.bvec3_from_mat3x2_fs +KHR-GL33.shaders30.glsl_constructors.bvec3_from_mat3x2_mat3x2_invalid_vs +KHR-GL33.shaders30.glsl_constructors.bvec3_from_mat3x2_mat3x2_invalid_fs +KHR-GL33.shaders30.glsl_constructors.bvec3_from_mat3x4_vs +KHR-GL33.shaders30.glsl_constructors.bvec3_from_mat3x4_fs +KHR-GL33.shaders30.glsl_constructors.bvec3_from_mat3x4_mat3x4_invalid_vs +KHR-GL33.shaders30.glsl_constructors.bvec3_from_mat3x4_mat3x4_invalid_fs +KHR-GL33.shaders30.glsl_constructors.bvec3_from_mat4_vs +KHR-GL33.shaders30.glsl_constructors.bvec3_from_mat4_fs +KHR-GL33.shaders30.glsl_constructors.bvec3_from_mat4_mat4_invalid_vs +KHR-GL33.shaders30.glsl_constructors.bvec3_from_mat4_mat4_invalid_fs +KHR-GL33.shaders30.glsl_constructors.bvec3_from_mat4x2_vs +KHR-GL33.shaders30.glsl_constructors.bvec3_from_mat4x2_fs +KHR-GL33.shaders30.glsl_constructors.bvec3_from_mat4x2_mat4x2_invalid_vs +KHR-GL33.shaders30.glsl_constructors.bvec3_from_mat4x2_mat4x2_invalid_fs +KHR-GL33.shaders30.glsl_constructors.bvec3_from_mat4x3_vs +KHR-GL33.shaders30.glsl_constructors.bvec3_from_mat4x3_fs +KHR-GL33.shaders30.glsl_constructors.bvec3_from_mat4x3_mat4x3_invalid_vs +KHR-GL33.shaders30.glsl_constructors.bvec3_from_mat4x3_mat4x3_invalid_fs +KHR-GL33.shaders30.glsl_constructors.bvec3_from_bool_mat2_vs +KHR-GL33.shaders30.glsl_constructors.bvec3_from_bool_mat2_fs +KHR-GL33.shaders30.glsl_constructors.bvec3_from_bool_mat2_bool_invalid_vs +KHR-GL33.shaders30.glsl_constructors.bvec3_from_bool_mat2_bool_invalid_fs +KHR-GL33.shaders30.glsl_constructors.bvec3_from_bool_mat2x3_vs +KHR-GL33.shaders30.glsl_constructors.bvec3_from_bool_mat2x3_fs +KHR-GL33.shaders30.glsl_constructors.bvec3_from_bool_mat2x3_bool_invalid_vs +KHR-GL33.shaders30.glsl_constructors.bvec3_from_bool_mat2x3_bool_invalid_fs +KHR-GL33.shaders30.glsl_constructors.bvec3_from_bool_mat2x4_vs +KHR-GL33.shaders30.glsl_constructors.bvec3_from_bool_mat2x4_fs +KHR-GL33.shaders30.glsl_constructors.bvec3_from_bool_mat2x4_bool_invalid_vs +KHR-GL33.shaders30.glsl_constructors.bvec3_from_bool_mat2x4_bool_invalid_fs +KHR-GL33.shaders30.glsl_constructors.bvec3_from_bool_mat3_vs +KHR-GL33.shaders30.glsl_constructors.bvec3_from_bool_mat3_fs +KHR-GL33.shaders30.glsl_constructors.bvec3_from_bool_mat3_bool_invalid_vs +KHR-GL33.shaders30.glsl_constructors.bvec3_from_bool_mat3_bool_invalid_fs +KHR-GL33.shaders30.glsl_constructors.bvec3_from_bool_mat3x2_vs +KHR-GL33.shaders30.glsl_constructors.bvec3_from_bool_mat3x2_fs +KHR-GL33.shaders30.glsl_constructors.bvec3_from_bool_mat3x2_bool_invalid_vs +KHR-GL33.shaders30.glsl_constructors.bvec3_from_bool_mat3x2_bool_invalid_fs +KHR-GL33.shaders30.glsl_constructors.bvec3_from_bool_mat3x4_vs +KHR-GL33.shaders30.glsl_constructors.bvec3_from_bool_mat3x4_fs +KHR-GL33.shaders30.glsl_constructors.bvec3_from_bool_mat3x4_bool_invalid_vs +KHR-GL33.shaders30.glsl_constructors.bvec3_from_bool_mat3x4_bool_invalid_fs +KHR-GL33.shaders30.glsl_constructors.bvec3_from_bool_mat4_vs +KHR-GL33.shaders30.glsl_constructors.bvec3_from_bool_mat4_fs +KHR-GL33.shaders30.glsl_constructors.bvec3_from_bool_mat4_bool_invalid_vs +KHR-GL33.shaders30.glsl_constructors.bvec3_from_bool_mat4_bool_invalid_fs +KHR-GL33.shaders30.glsl_constructors.bvec3_from_bool_mat4x2_vs +KHR-GL33.shaders30.glsl_constructors.bvec3_from_bool_mat4x2_fs +KHR-GL33.shaders30.glsl_constructors.bvec3_from_bool_mat4x2_bool_invalid_vs +KHR-GL33.shaders30.glsl_constructors.bvec3_from_bool_mat4x2_bool_invalid_fs +KHR-GL33.shaders30.glsl_constructors.bvec3_from_bool_mat4x3_vs +KHR-GL33.shaders30.glsl_constructors.bvec3_from_bool_mat4x3_fs +KHR-GL33.shaders30.glsl_constructors.bvec3_from_bool_mat4x3_bool_invalid_vs +KHR-GL33.shaders30.glsl_constructors.bvec3_from_bool_mat4x3_bool_invalid_fs +KHR-GL33.shaders30.glsl_constructors.bvec4_from_mat2_vs +KHR-GL33.shaders30.glsl_constructors.bvec4_from_mat2_fs +KHR-GL33.shaders30.glsl_constructors.bvec4_from_mat2_mat2_invalid_vs +KHR-GL33.shaders30.glsl_constructors.bvec4_from_mat2_mat2_invalid_fs +KHR-GL33.shaders30.glsl_constructors.bvec4_from_mat2x3_vs +KHR-GL33.shaders30.glsl_constructors.bvec4_from_mat2x3_fs +KHR-GL33.shaders30.glsl_constructors.bvec4_from_mat2x3_mat2x3_invalid_vs +KHR-GL33.shaders30.glsl_constructors.bvec4_from_mat2x3_mat2x3_invalid_fs +KHR-GL33.shaders30.glsl_constructors.bvec4_from_mat2x4_vs +KHR-GL33.shaders30.glsl_constructors.bvec4_from_mat2x4_fs +KHR-GL33.shaders30.glsl_constructors.bvec4_from_mat2x4_mat2x4_invalid_vs +KHR-GL33.shaders30.glsl_constructors.bvec4_from_mat2x4_mat2x4_invalid_fs +KHR-GL33.shaders30.glsl_constructors.bvec4_from_mat3_vs +KHR-GL33.shaders30.glsl_constructors.bvec4_from_mat3_fs +KHR-GL33.shaders30.glsl_constructors.bvec4_from_mat3_mat3_invalid_vs +KHR-GL33.shaders30.glsl_constructors.bvec4_from_mat3_mat3_invalid_fs +KHR-GL33.shaders30.glsl_constructors.bvec4_from_mat3x2_vs +KHR-GL33.shaders30.glsl_constructors.bvec4_from_mat3x2_fs +KHR-GL33.shaders30.glsl_constructors.bvec4_from_mat3x2_mat3x2_invalid_vs +KHR-GL33.shaders30.glsl_constructors.bvec4_from_mat3x2_mat3x2_invalid_fs +KHR-GL33.shaders30.glsl_constructors.bvec4_from_mat3x4_vs +KHR-GL33.shaders30.glsl_constructors.bvec4_from_mat3x4_fs +KHR-GL33.shaders30.glsl_constructors.bvec4_from_mat3x4_mat3x4_invalid_vs +KHR-GL33.shaders30.glsl_constructors.bvec4_from_mat3x4_mat3x4_invalid_fs +KHR-GL33.shaders30.glsl_constructors.bvec4_from_mat4_vs +KHR-GL33.shaders30.glsl_constructors.bvec4_from_mat4_fs +KHR-GL33.shaders30.glsl_constructors.bvec4_from_mat4_mat4_invalid_vs +KHR-GL33.shaders30.glsl_constructors.bvec4_from_mat4_mat4_invalid_fs +KHR-GL33.shaders30.glsl_constructors.bvec4_from_mat4x2_vs +KHR-GL33.shaders30.glsl_constructors.bvec4_from_mat4x2_fs +KHR-GL33.shaders30.glsl_constructors.bvec4_from_mat4x2_mat4x2_invalid_vs +KHR-GL33.shaders30.glsl_constructors.bvec4_from_mat4x2_mat4x2_invalid_fs +KHR-GL33.shaders30.glsl_constructors.bvec4_from_mat4x3_vs +KHR-GL33.shaders30.glsl_constructors.bvec4_from_mat4x3_fs +KHR-GL33.shaders30.glsl_constructors.bvec4_from_mat4x3_mat4x3_invalid_vs +KHR-GL33.shaders30.glsl_constructors.bvec4_from_mat4x3_mat4x3_invalid_fs +KHR-GL33.shaders30.glsl_constructors.bvec4_from_bool_mat2_vs +KHR-GL33.shaders30.glsl_constructors.bvec4_from_bool_mat2_fs +KHR-GL33.shaders30.glsl_constructors.bvec4_from_bool_mat2_bool_invalid_vs +KHR-GL33.shaders30.glsl_constructors.bvec4_from_bool_mat2_bool_invalid_fs +KHR-GL33.shaders30.glsl_constructors.bvec4_from_bool_mat2x3_vs +KHR-GL33.shaders30.glsl_constructors.bvec4_from_bool_mat2x3_fs +KHR-GL33.shaders30.glsl_constructors.bvec4_from_bool_mat2x3_bool_invalid_vs +KHR-GL33.shaders30.glsl_constructors.bvec4_from_bool_mat2x3_bool_invalid_fs +KHR-GL33.shaders30.glsl_constructors.bvec4_from_bool_mat2x4_vs +KHR-GL33.shaders30.glsl_constructors.bvec4_from_bool_mat2x4_fs +KHR-GL33.shaders30.glsl_constructors.bvec4_from_bool_mat2x4_bool_invalid_vs +KHR-GL33.shaders30.glsl_constructors.bvec4_from_bool_mat2x4_bool_invalid_fs +KHR-GL33.shaders30.glsl_constructors.bvec4_from_bool_mat3_vs +KHR-GL33.shaders30.glsl_constructors.bvec4_from_bool_mat3_fs +KHR-GL33.shaders30.glsl_constructors.bvec4_from_bool_mat3_bool_invalid_vs +KHR-GL33.shaders30.glsl_constructors.bvec4_from_bool_mat3_bool_invalid_fs +KHR-GL33.shaders30.glsl_constructors.bvec4_from_bool_mat3x2_vs +KHR-GL33.shaders30.glsl_constructors.bvec4_from_bool_mat3x2_fs +KHR-GL33.shaders30.glsl_constructors.bvec4_from_bool_mat3x2_bool_invalid_vs +KHR-GL33.shaders30.glsl_constructors.bvec4_from_bool_mat3x2_bool_invalid_fs +KHR-GL33.shaders30.glsl_constructors.bvec4_from_bool_mat3x4_vs +KHR-GL33.shaders30.glsl_constructors.bvec4_from_bool_mat3x4_fs +KHR-GL33.shaders30.glsl_constructors.bvec4_from_bool_mat3x4_bool_invalid_vs +KHR-GL33.shaders30.glsl_constructors.bvec4_from_bool_mat3x4_bool_invalid_fs +KHR-GL33.shaders30.glsl_constructors.bvec4_from_bool_mat4_vs +KHR-GL33.shaders30.glsl_constructors.bvec4_from_bool_mat4_fs +KHR-GL33.shaders30.glsl_constructors.bvec4_from_bool_mat4_bool_invalid_vs +KHR-GL33.shaders30.glsl_constructors.bvec4_from_bool_mat4_bool_invalid_fs +KHR-GL33.shaders30.glsl_constructors.bvec4_from_bool_mat4x2_vs +KHR-GL33.shaders30.glsl_constructors.bvec4_from_bool_mat4x2_fs +KHR-GL33.shaders30.glsl_constructors.bvec4_from_bool_mat4x2_bool_invalid_vs +KHR-GL33.shaders30.glsl_constructors.bvec4_from_bool_mat4x2_bool_invalid_fs +KHR-GL33.shaders30.glsl_constructors.bvec4_from_bool_mat4x3_vs +KHR-GL33.shaders30.glsl_constructors.bvec4_from_bool_mat4x3_fs +KHR-GL33.shaders30.glsl_constructors.bvec4_from_bool_mat4x3_bool_invalid_vs +KHR-GL33.shaders30.glsl_constructors.bvec4_from_bool_mat4x3_bool_invalid_fs KHR-GL33.ext_texture_shadow_lod.texture.sampler2darrayshadow_fragment KHR-GL33.ext_texture_shadow_lod.texture.sampler2darrayshadow_bias_fragment KHR-GL33.ext_texture_shadow_lod.texture.samplercubearrayshadow_vertex diff --git a/external/openglcts/data/mustpass/gl/khronos_mustpass/4.6.1.x/gl40-master.txt b/external/openglcts/data/mustpass/gl/khronos_mustpass/4.6.1.x/gl40-master.txt index 1e10f49..436bb39 100644 --- a/external/openglcts/data/mustpass/gl/khronos_mustpass/4.6.1.x/gl40-master.txt +++ b/external/openglcts/data/mustpass/gl/khronos_mustpass/4.6.1.x/gl40-master.txt @@ -192,6 +192,654 @@ KHR-GL40.texture_repeat_mode.depth24_stencil8_11x131_2_repeat KHR-GL40.texture_repeat_mode.depth24_stencil8_11x131_2_mirrored_repeat KHR-GL40.shaders30.declarations.declarations.redeclare_gl_FragColor KHR-GL40.shaders30.declarations.declarations.redeclare_gl_FragData +KHR-GL40.shaders30.glsl_constructors.vec2_from_mat2_vs +KHR-GL40.shaders30.glsl_constructors.vec2_from_mat2_fs +KHR-GL40.shaders30.glsl_constructors.vec2_from_mat2_mat2_invalid_vs +KHR-GL40.shaders30.glsl_constructors.vec2_from_mat2_mat2_invalid_fs +KHR-GL40.shaders30.glsl_constructors.vec2_from_mat2x3_vs +KHR-GL40.shaders30.glsl_constructors.vec2_from_mat2x3_fs +KHR-GL40.shaders30.glsl_constructors.vec2_from_mat2x3_mat2x3_invalid_vs +KHR-GL40.shaders30.glsl_constructors.vec2_from_mat2x3_mat2x3_invalid_fs +KHR-GL40.shaders30.glsl_constructors.vec2_from_mat2x4_vs +KHR-GL40.shaders30.glsl_constructors.vec2_from_mat2x4_fs +KHR-GL40.shaders30.glsl_constructors.vec2_from_mat2x4_mat2x4_invalid_vs +KHR-GL40.shaders30.glsl_constructors.vec2_from_mat2x4_mat2x4_invalid_fs +KHR-GL40.shaders30.glsl_constructors.vec2_from_mat3_vs +KHR-GL40.shaders30.glsl_constructors.vec2_from_mat3_fs +KHR-GL40.shaders30.glsl_constructors.vec2_from_mat3_mat3_invalid_vs +KHR-GL40.shaders30.glsl_constructors.vec2_from_mat3_mat3_invalid_fs +KHR-GL40.shaders30.glsl_constructors.vec2_from_mat3x2_vs +KHR-GL40.shaders30.glsl_constructors.vec2_from_mat3x2_fs +KHR-GL40.shaders30.glsl_constructors.vec2_from_mat3x2_mat3x2_invalid_vs +KHR-GL40.shaders30.glsl_constructors.vec2_from_mat3x2_mat3x2_invalid_fs +KHR-GL40.shaders30.glsl_constructors.vec2_from_mat3x4_vs +KHR-GL40.shaders30.glsl_constructors.vec2_from_mat3x4_fs +KHR-GL40.shaders30.glsl_constructors.vec2_from_mat3x4_mat3x4_invalid_vs +KHR-GL40.shaders30.glsl_constructors.vec2_from_mat3x4_mat3x4_invalid_fs +KHR-GL40.shaders30.glsl_constructors.vec2_from_mat4_vs +KHR-GL40.shaders30.glsl_constructors.vec2_from_mat4_fs +KHR-GL40.shaders30.glsl_constructors.vec2_from_mat4_mat4_invalid_vs +KHR-GL40.shaders30.glsl_constructors.vec2_from_mat4_mat4_invalid_fs +KHR-GL40.shaders30.glsl_constructors.vec2_from_mat4x2_vs +KHR-GL40.shaders30.glsl_constructors.vec2_from_mat4x2_fs +KHR-GL40.shaders30.glsl_constructors.vec2_from_mat4x2_mat4x2_invalid_vs +KHR-GL40.shaders30.glsl_constructors.vec2_from_mat4x2_mat4x2_invalid_fs +KHR-GL40.shaders30.glsl_constructors.vec2_from_mat4x3_vs +KHR-GL40.shaders30.glsl_constructors.vec2_from_mat4x3_fs +KHR-GL40.shaders30.glsl_constructors.vec2_from_mat4x3_mat4x3_invalid_vs +KHR-GL40.shaders30.glsl_constructors.vec2_from_mat4x3_mat4x3_invalid_fs +KHR-GL40.shaders30.glsl_constructors.vec2_from_float_mat2_vs +KHR-GL40.shaders30.glsl_constructors.vec2_from_float_mat2_fs +KHR-GL40.shaders30.glsl_constructors.vec2_from_float_mat2_float_invalid_vs +KHR-GL40.shaders30.glsl_constructors.vec2_from_float_mat2_float_invalid_fs +KHR-GL40.shaders30.glsl_constructors.vec2_from_float_mat2x3_vs +KHR-GL40.shaders30.glsl_constructors.vec2_from_float_mat2x3_fs +KHR-GL40.shaders30.glsl_constructors.vec2_from_float_mat2x3_float_invalid_vs +KHR-GL40.shaders30.glsl_constructors.vec2_from_float_mat2x3_float_invalid_fs +KHR-GL40.shaders30.glsl_constructors.vec2_from_float_mat2x4_vs +KHR-GL40.shaders30.glsl_constructors.vec2_from_float_mat2x4_fs +KHR-GL40.shaders30.glsl_constructors.vec2_from_float_mat2x4_float_invalid_vs +KHR-GL40.shaders30.glsl_constructors.vec2_from_float_mat2x4_float_invalid_fs +KHR-GL40.shaders30.glsl_constructors.vec2_from_float_mat3_vs +KHR-GL40.shaders30.glsl_constructors.vec2_from_float_mat3_fs +KHR-GL40.shaders30.glsl_constructors.vec2_from_float_mat3_float_invalid_vs +KHR-GL40.shaders30.glsl_constructors.vec2_from_float_mat3_float_invalid_fs +KHR-GL40.shaders30.glsl_constructors.vec2_from_float_mat3x2_vs +KHR-GL40.shaders30.glsl_constructors.vec2_from_float_mat3x2_fs +KHR-GL40.shaders30.glsl_constructors.vec2_from_float_mat3x2_float_invalid_vs +KHR-GL40.shaders30.glsl_constructors.vec2_from_float_mat3x2_float_invalid_fs +KHR-GL40.shaders30.glsl_constructors.vec2_from_float_mat3x4_vs +KHR-GL40.shaders30.glsl_constructors.vec2_from_float_mat3x4_fs +KHR-GL40.shaders30.glsl_constructors.vec2_from_float_mat3x4_float_invalid_vs +KHR-GL40.shaders30.glsl_constructors.vec2_from_float_mat3x4_float_invalid_fs +KHR-GL40.shaders30.glsl_constructors.vec2_from_float_mat4_vs +KHR-GL40.shaders30.glsl_constructors.vec2_from_float_mat4_fs +KHR-GL40.shaders30.glsl_constructors.vec2_from_float_mat4_float_invalid_vs +KHR-GL40.shaders30.glsl_constructors.vec2_from_float_mat4_float_invalid_fs +KHR-GL40.shaders30.glsl_constructors.vec2_from_float_mat4x2_vs +KHR-GL40.shaders30.glsl_constructors.vec2_from_float_mat4x2_fs +KHR-GL40.shaders30.glsl_constructors.vec2_from_float_mat4x2_float_invalid_vs +KHR-GL40.shaders30.glsl_constructors.vec2_from_float_mat4x2_float_invalid_fs +KHR-GL40.shaders30.glsl_constructors.vec2_from_float_mat4x3_vs +KHR-GL40.shaders30.glsl_constructors.vec2_from_float_mat4x3_fs +KHR-GL40.shaders30.glsl_constructors.vec2_from_float_mat4x3_float_invalid_vs +KHR-GL40.shaders30.glsl_constructors.vec2_from_float_mat4x3_float_invalid_fs +KHR-GL40.shaders30.glsl_constructors.vec3_from_mat2_vs +KHR-GL40.shaders30.glsl_constructors.vec3_from_mat2_fs +KHR-GL40.shaders30.glsl_constructors.vec3_from_mat2_mat2_invalid_vs +KHR-GL40.shaders30.glsl_constructors.vec3_from_mat2_mat2_invalid_fs +KHR-GL40.shaders30.glsl_constructors.vec3_from_mat2x3_vs +KHR-GL40.shaders30.glsl_constructors.vec3_from_mat2x3_fs +KHR-GL40.shaders30.glsl_constructors.vec3_from_mat2x3_mat2x3_invalid_vs +KHR-GL40.shaders30.glsl_constructors.vec3_from_mat2x3_mat2x3_invalid_fs +KHR-GL40.shaders30.glsl_constructors.vec3_from_mat2x4_vs +KHR-GL40.shaders30.glsl_constructors.vec3_from_mat2x4_fs +KHR-GL40.shaders30.glsl_constructors.vec3_from_mat2x4_mat2x4_invalid_vs +KHR-GL40.shaders30.glsl_constructors.vec3_from_mat2x4_mat2x4_invalid_fs +KHR-GL40.shaders30.glsl_constructors.vec3_from_mat3_vs +KHR-GL40.shaders30.glsl_constructors.vec3_from_mat3_fs +KHR-GL40.shaders30.glsl_constructors.vec3_from_mat3_mat3_invalid_vs +KHR-GL40.shaders30.glsl_constructors.vec3_from_mat3_mat3_invalid_fs +KHR-GL40.shaders30.glsl_constructors.vec3_from_mat3x2_vs +KHR-GL40.shaders30.glsl_constructors.vec3_from_mat3x2_fs +KHR-GL40.shaders30.glsl_constructors.vec3_from_mat3x2_mat3x2_invalid_vs +KHR-GL40.shaders30.glsl_constructors.vec3_from_mat3x2_mat3x2_invalid_fs +KHR-GL40.shaders30.glsl_constructors.vec3_from_mat3x4_vs +KHR-GL40.shaders30.glsl_constructors.vec3_from_mat3x4_fs +KHR-GL40.shaders30.glsl_constructors.vec3_from_mat3x4_mat3x4_invalid_vs +KHR-GL40.shaders30.glsl_constructors.vec3_from_mat3x4_mat3x4_invalid_fs +KHR-GL40.shaders30.glsl_constructors.vec3_from_mat4_vs +KHR-GL40.shaders30.glsl_constructors.vec3_from_mat4_fs +KHR-GL40.shaders30.glsl_constructors.vec3_from_mat4_mat4_invalid_vs +KHR-GL40.shaders30.glsl_constructors.vec3_from_mat4_mat4_invalid_fs +KHR-GL40.shaders30.glsl_constructors.vec3_from_mat4x2_vs +KHR-GL40.shaders30.glsl_constructors.vec3_from_mat4x2_fs +KHR-GL40.shaders30.glsl_constructors.vec3_from_mat4x2_mat4x2_invalid_vs +KHR-GL40.shaders30.glsl_constructors.vec3_from_mat4x2_mat4x2_invalid_fs +KHR-GL40.shaders30.glsl_constructors.vec3_from_mat4x3_vs +KHR-GL40.shaders30.glsl_constructors.vec3_from_mat4x3_fs +KHR-GL40.shaders30.glsl_constructors.vec3_from_mat4x3_mat4x3_invalid_vs +KHR-GL40.shaders30.glsl_constructors.vec3_from_mat4x3_mat4x3_invalid_fs +KHR-GL40.shaders30.glsl_constructors.vec3_from_float_mat2_vs +KHR-GL40.shaders30.glsl_constructors.vec3_from_float_mat2_fs +KHR-GL40.shaders30.glsl_constructors.vec3_from_float_mat2_float_invalid_vs +KHR-GL40.shaders30.glsl_constructors.vec3_from_float_mat2_float_invalid_fs +KHR-GL40.shaders30.glsl_constructors.vec3_from_float_mat2x3_vs +KHR-GL40.shaders30.glsl_constructors.vec3_from_float_mat2x3_fs +KHR-GL40.shaders30.glsl_constructors.vec3_from_float_mat2x3_float_invalid_vs +KHR-GL40.shaders30.glsl_constructors.vec3_from_float_mat2x3_float_invalid_fs +KHR-GL40.shaders30.glsl_constructors.vec3_from_float_mat2x4_vs +KHR-GL40.shaders30.glsl_constructors.vec3_from_float_mat2x4_fs +KHR-GL40.shaders30.glsl_constructors.vec3_from_float_mat2x4_float_invalid_vs +KHR-GL40.shaders30.glsl_constructors.vec3_from_float_mat2x4_float_invalid_fs +KHR-GL40.shaders30.glsl_constructors.vec3_from_float_mat3_vs +KHR-GL40.shaders30.glsl_constructors.vec3_from_float_mat3_fs +KHR-GL40.shaders30.glsl_constructors.vec3_from_float_mat3_float_invalid_vs +KHR-GL40.shaders30.glsl_constructors.vec3_from_float_mat3_float_invalid_fs +KHR-GL40.shaders30.glsl_constructors.vec3_from_float_mat3x2_vs +KHR-GL40.shaders30.glsl_constructors.vec3_from_float_mat3x2_fs +KHR-GL40.shaders30.glsl_constructors.vec3_from_float_mat3x2_float_invalid_vs +KHR-GL40.shaders30.glsl_constructors.vec3_from_float_mat3x2_float_invalid_fs +KHR-GL40.shaders30.glsl_constructors.vec3_from_float_mat3x4_vs +KHR-GL40.shaders30.glsl_constructors.vec3_from_float_mat3x4_fs +KHR-GL40.shaders30.glsl_constructors.vec3_from_float_mat3x4_float_invalid_vs +KHR-GL40.shaders30.glsl_constructors.vec3_from_float_mat3x4_float_invalid_fs +KHR-GL40.shaders30.glsl_constructors.vec3_from_float_mat4_vs +KHR-GL40.shaders30.glsl_constructors.vec3_from_float_mat4_fs +KHR-GL40.shaders30.glsl_constructors.vec3_from_float_mat4_float_invalid_vs +KHR-GL40.shaders30.glsl_constructors.vec3_from_float_mat4_float_invalid_fs +KHR-GL40.shaders30.glsl_constructors.vec3_from_float_mat4x2_vs +KHR-GL40.shaders30.glsl_constructors.vec3_from_float_mat4x2_fs +KHR-GL40.shaders30.glsl_constructors.vec3_from_float_mat4x2_float_invalid_vs +KHR-GL40.shaders30.glsl_constructors.vec3_from_float_mat4x2_float_invalid_fs +KHR-GL40.shaders30.glsl_constructors.vec3_from_float_mat4x3_vs +KHR-GL40.shaders30.glsl_constructors.vec3_from_float_mat4x3_fs +KHR-GL40.shaders30.glsl_constructors.vec3_from_float_mat4x3_float_invalid_vs +KHR-GL40.shaders30.glsl_constructors.vec3_from_float_mat4x3_float_invalid_fs +KHR-GL40.shaders30.glsl_constructors.vec4_from_mat2_vs +KHR-GL40.shaders30.glsl_constructors.vec4_from_mat2_fs +KHR-GL40.shaders30.glsl_constructors.vec4_from_mat2_mat2_invalid_vs +KHR-GL40.shaders30.glsl_constructors.vec4_from_mat2_mat2_invalid_fs +KHR-GL40.shaders30.glsl_constructors.vec4_from_mat2x3_vs +KHR-GL40.shaders30.glsl_constructors.vec4_from_mat2x3_fs +KHR-GL40.shaders30.glsl_constructors.vec4_from_mat2x3_mat2x3_invalid_vs +KHR-GL40.shaders30.glsl_constructors.vec4_from_mat2x3_mat2x3_invalid_fs +KHR-GL40.shaders30.glsl_constructors.vec4_from_mat2x4_vs +KHR-GL40.shaders30.glsl_constructors.vec4_from_mat2x4_fs +KHR-GL40.shaders30.glsl_constructors.vec4_from_mat2x4_mat2x4_invalid_vs +KHR-GL40.shaders30.glsl_constructors.vec4_from_mat2x4_mat2x4_invalid_fs +KHR-GL40.shaders30.glsl_constructors.vec4_from_mat3_vs +KHR-GL40.shaders30.glsl_constructors.vec4_from_mat3_fs +KHR-GL40.shaders30.glsl_constructors.vec4_from_mat3_mat3_invalid_vs +KHR-GL40.shaders30.glsl_constructors.vec4_from_mat3_mat3_invalid_fs +KHR-GL40.shaders30.glsl_constructors.vec4_from_mat3x2_vs +KHR-GL40.shaders30.glsl_constructors.vec4_from_mat3x2_fs +KHR-GL40.shaders30.glsl_constructors.vec4_from_mat3x2_mat3x2_invalid_vs +KHR-GL40.shaders30.glsl_constructors.vec4_from_mat3x2_mat3x2_invalid_fs +KHR-GL40.shaders30.glsl_constructors.vec4_from_mat3x4_vs +KHR-GL40.shaders30.glsl_constructors.vec4_from_mat3x4_fs +KHR-GL40.shaders30.glsl_constructors.vec4_from_mat3x4_mat3x4_invalid_vs +KHR-GL40.shaders30.glsl_constructors.vec4_from_mat3x4_mat3x4_invalid_fs +KHR-GL40.shaders30.glsl_constructors.vec4_from_mat4_vs +KHR-GL40.shaders30.glsl_constructors.vec4_from_mat4_fs +KHR-GL40.shaders30.glsl_constructors.vec4_from_mat4_mat4_invalid_vs +KHR-GL40.shaders30.glsl_constructors.vec4_from_mat4_mat4_invalid_fs +KHR-GL40.shaders30.glsl_constructors.vec4_from_mat4x2_vs +KHR-GL40.shaders30.glsl_constructors.vec4_from_mat4x2_fs +KHR-GL40.shaders30.glsl_constructors.vec4_from_mat4x2_mat4x2_invalid_vs +KHR-GL40.shaders30.glsl_constructors.vec4_from_mat4x2_mat4x2_invalid_fs +KHR-GL40.shaders30.glsl_constructors.vec4_from_mat4x3_vs +KHR-GL40.shaders30.glsl_constructors.vec4_from_mat4x3_fs +KHR-GL40.shaders30.glsl_constructors.vec4_from_mat4x3_mat4x3_invalid_vs +KHR-GL40.shaders30.glsl_constructors.vec4_from_mat4x3_mat4x3_invalid_fs +KHR-GL40.shaders30.glsl_constructors.vec4_from_float_mat2_vs +KHR-GL40.shaders30.glsl_constructors.vec4_from_float_mat2_fs +KHR-GL40.shaders30.glsl_constructors.vec4_from_float_mat2_float_invalid_vs +KHR-GL40.shaders30.glsl_constructors.vec4_from_float_mat2_float_invalid_fs +KHR-GL40.shaders30.glsl_constructors.vec4_from_float_mat2x3_vs +KHR-GL40.shaders30.glsl_constructors.vec4_from_float_mat2x3_fs +KHR-GL40.shaders30.glsl_constructors.vec4_from_float_mat2x3_float_invalid_vs +KHR-GL40.shaders30.glsl_constructors.vec4_from_float_mat2x3_float_invalid_fs +KHR-GL40.shaders30.glsl_constructors.vec4_from_float_mat2x4_vs +KHR-GL40.shaders30.glsl_constructors.vec4_from_float_mat2x4_fs +KHR-GL40.shaders30.glsl_constructors.vec4_from_float_mat2x4_float_invalid_vs +KHR-GL40.shaders30.glsl_constructors.vec4_from_float_mat2x4_float_invalid_fs +KHR-GL40.shaders30.glsl_constructors.vec4_from_float_mat3_vs +KHR-GL40.shaders30.glsl_constructors.vec4_from_float_mat3_fs +KHR-GL40.shaders30.glsl_constructors.vec4_from_float_mat3_float_invalid_vs +KHR-GL40.shaders30.glsl_constructors.vec4_from_float_mat3_float_invalid_fs +KHR-GL40.shaders30.glsl_constructors.vec4_from_float_mat3x2_vs +KHR-GL40.shaders30.glsl_constructors.vec4_from_float_mat3x2_fs +KHR-GL40.shaders30.glsl_constructors.vec4_from_float_mat3x2_float_invalid_vs +KHR-GL40.shaders30.glsl_constructors.vec4_from_float_mat3x2_float_invalid_fs +KHR-GL40.shaders30.glsl_constructors.vec4_from_float_mat3x4_vs +KHR-GL40.shaders30.glsl_constructors.vec4_from_float_mat3x4_fs +KHR-GL40.shaders30.glsl_constructors.vec4_from_float_mat3x4_float_invalid_vs +KHR-GL40.shaders30.glsl_constructors.vec4_from_float_mat3x4_float_invalid_fs +KHR-GL40.shaders30.glsl_constructors.vec4_from_float_mat4_vs +KHR-GL40.shaders30.glsl_constructors.vec4_from_float_mat4_fs +KHR-GL40.shaders30.glsl_constructors.vec4_from_float_mat4_float_invalid_vs +KHR-GL40.shaders30.glsl_constructors.vec4_from_float_mat4_float_invalid_fs +KHR-GL40.shaders30.glsl_constructors.vec4_from_float_mat4x2_vs +KHR-GL40.shaders30.glsl_constructors.vec4_from_float_mat4x2_fs +KHR-GL40.shaders30.glsl_constructors.vec4_from_float_mat4x2_float_invalid_vs +KHR-GL40.shaders30.glsl_constructors.vec4_from_float_mat4x2_float_invalid_fs +KHR-GL40.shaders30.glsl_constructors.vec4_from_float_mat4x3_vs +KHR-GL40.shaders30.glsl_constructors.vec4_from_float_mat4x3_fs +KHR-GL40.shaders30.glsl_constructors.vec4_from_float_mat4x3_float_invalid_vs +KHR-GL40.shaders30.glsl_constructors.vec4_from_float_mat4x3_float_invalid_fs +KHR-GL40.shaders30.glsl_constructors.ivec2_from_mat2_vs +KHR-GL40.shaders30.glsl_constructors.ivec2_from_mat2_fs +KHR-GL40.shaders30.glsl_constructors.ivec2_from_mat2_mat2_invalid_vs +KHR-GL40.shaders30.glsl_constructors.ivec2_from_mat2_mat2_invalid_fs +KHR-GL40.shaders30.glsl_constructors.ivec2_from_mat2x3_vs +KHR-GL40.shaders30.glsl_constructors.ivec2_from_mat2x3_fs +KHR-GL40.shaders30.glsl_constructors.ivec2_from_mat2x3_mat2x3_invalid_vs +KHR-GL40.shaders30.glsl_constructors.ivec2_from_mat2x3_mat2x3_invalid_fs +KHR-GL40.shaders30.glsl_constructors.ivec2_from_mat2x4_vs +KHR-GL40.shaders30.glsl_constructors.ivec2_from_mat2x4_fs +KHR-GL40.shaders30.glsl_constructors.ivec2_from_mat2x4_mat2x4_invalid_vs +KHR-GL40.shaders30.glsl_constructors.ivec2_from_mat2x4_mat2x4_invalid_fs +KHR-GL40.shaders30.glsl_constructors.ivec2_from_mat3_vs +KHR-GL40.shaders30.glsl_constructors.ivec2_from_mat3_fs +KHR-GL40.shaders30.glsl_constructors.ivec2_from_mat3_mat3_invalid_vs +KHR-GL40.shaders30.glsl_constructors.ivec2_from_mat3_mat3_invalid_fs +KHR-GL40.shaders30.glsl_constructors.ivec2_from_mat3x2_vs +KHR-GL40.shaders30.glsl_constructors.ivec2_from_mat3x2_fs +KHR-GL40.shaders30.glsl_constructors.ivec2_from_mat3x2_mat3x2_invalid_vs +KHR-GL40.shaders30.glsl_constructors.ivec2_from_mat3x2_mat3x2_invalid_fs +KHR-GL40.shaders30.glsl_constructors.ivec2_from_mat3x4_vs +KHR-GL40.shaders30.glsl_constructors.ivec2_from_mat3x4_fs +KHR-GL40.shaders30.glsl_constructors.ivec2_from_mat3x4_mat3x4_invalid_vs +KHR-GL40.shaders30.glsl_constructors.ivec2_from_mat3x4_mat3x4_invalid_fs +KHR-GL40.shaders30.glsl_constructors.ivec2_from_mat4_vs +KHR-GL40.shaders30.glsl_constructors.ivec2_from_mat4_fs +KHR-GL40.shaders30.glsl_constructors.ivec2_from_mat4_mat4_invalid_vs +KHR-GL40.shaders30.glsl_constructors.ivec2_from_mat4_mat4_invalid_fs +KHR-GL40.shaders30.glsl_constructors.ivec2_from_mat4x2_vs +KHR-GL40.shaders30.glsl_constructors.ivec2_from_mat4x2_fs +KHR-GL40.shaders30.glsl_constructors.ivec2_from_mat4x2_mat4x2_invalid_vs +KHR-GL40.shaders30.glsl_constructors.ivec2_from_mat4x2_mat4x2_invalid_fs +KHR-GL40.shaders30.glsl_constructors.ivec2_from_mat4x3_vs +KHR-GL40.shaders30.glsl_constructors.ivec2_from_mat4x3_fs +KHR-GL40.shaders30.glsl_constructors.ivec2_from_mat4x3_mat4x3_invalid_vs +KHR-GL40.shaders30.glsl_constructors.ivec2_from_mat4x3_mat4x3_invalid_fs +KHR-GL40.shaders30.glsl_constructors.ivec2_from_int_mat2_vs +KHR-GL40.shaders30.glsl_constructors.ivec2_from_int_mat2_fs +KHR-GL40.shaders30.glsl_constructors.ivec2_from_int_mat2_int_invalid_vs +KHR-GL40.shaders30.glsl_constructors.ivec2_from_int_mat2_int_invalid_fs +KHR-GL40.shaders30.glsl_constructors.ivec2_from_int_mat2x3_vs +KHR-GL40.shaders30.glsl_constructors.ivec2_from_int_mat2x3_fs +KHR-GL40.shaders30.glsl_constructors.ivec2_from_int_mat2x3_int_invalid_vs +KHR-GL40.shaders30.glsl_constructors.ivec2_from_int_mat2x3_int_invalid_fs +KHR-GL40.shaders30.glsl_constructors.ivec2_from_int_mat2x4_vs +KHR-GL40.shaders30.glsl_constructors.ivec2_from_int_mat2x4_fs +KHR-GL40.shaders30.glsl_constructors.ivec2_from_int_mat2x4_int_invalid_vs +KHR-GL40.shaders30.glsl_constructors.ivec2_from_int_mat2x4_int_invalid_fs +KHR-GL40.shaders30.glsl_constructors.ivec2_from_int_mat3_vs +KHR-GL40.shaders30.glsl_constructors.ivec2_from_int_mat3_fs +KHR-GL40.shaders30.glsl_constructors.ivec2_from_int_mat3_int_invalid_vs +KHR-GL40.shaders30.glsl_constructors.ivec2_from_int_mat3_int_invalid_fs +KHR-GL40.shaders30.glsl_constructors.ivec2_from_int_mat3x2_vs +KHR-GL40.shaders30.glsl_constructors.ivec2_from_int_mat3x2_fs +KHR-GL40.shaders30.glsl_constructors.ivec2_from_int_mat3x2_int_invalid_vs +KHR-GL40.shaders30.glsl_constructors.ivec2_from_int_mat3x2_int_invalid_fs +KHR-GL40.shaders30.glsl_constructors.ivec2_from_int_mat3x4_vs +KHR-GL40.shaders30.glsl_constructors.ivec2_from_int_mat3x4_fs +KHR-GL40.shaders30.glsl_constructors.ivec2_from_int_mat3x4_int_invalid_vs +KHR-GL40.shaders30.glsl_constructors.ivec2_from_int_mat3x4_int_invalid_fs +KHR-GL40.shaders30.glsl_constructors.ivec2_from_int_mat4_vs +KHR-GL40.shaders30.glsl_constructors.ivec2_from_int_mat4_fs +KHR-GL40.shaders30.glsl_constructors.ivec2_from_int_mat4_int_invalid_vs +KHR-GL40.shaders30.glsl_constructors.ivec2_from_int_mat4_int_invalid_fs +KHR-GL40.shaders30.glsl_constructors.ivec2_from_int_mat4x2_vs +KHR-GL40.shaders30.glsl_constructors.ivec2_from_int_mat4x2_fs +KHR-GL40.shaders30.glsl_constructors.ivec2_from_int_mat4x2_int_invalid_vs +KHR-GL40.shaders30.glsl_constructors.ivec2_from_int_mat4x2_int_invalid_fs +KHR-GL40.shaders30.glsl_constructors.ivec2_from_int_mat4x3_vs +KHR-GL40.shaders30.glsl_constructors.ivec2_from_int_mat4x3_fs +KHR-GL40.shaders30.glsl_constructors.ivec2_from_int_mat4x3_int_invalid_vs +KHR-GL40.shaders30.glsl_constructors.ivec2_from_int_mat4x3_int_invalid_fs +KHR-GL40.shaders30.glsl_constructors.ivec3_from_mat2_vs +KHR-GL40.shaders30.glsl_constructors.ivec3_from_mat2_fs +KHR-GL40.shaders30.glsl_constructors.ivec3_from_mat2_mat2_invalid_vs +KHR-GL40.shaders30.glsl_constructors.ivec3_from_mat2_mat2_invalid_fs +KHR-GL40.shaders30.glsl_constructors.ivec3_from_mat2x3_vs +KHR-GL40.shaders30.glsl_constructors.ivec3_from_mat2x3_fs +KHR-GL40.shaders30.glsl_constructors.ivec3_from_mat2x3_mat2x3_invalid_vs +KHR-GL40.shaders30.glsl_constructors.ivec3_from_mat2x3_mat2x3_invalid_fs +KHR-GL40.shaders30.glsl_constructors.ivec3_from_mat2x4_vs +KHR-GL40.shaders30.glsl_constructors.ivec3_from_mat2x4_fs +KHR-GL40.shaders30.glsl_constructors.ivec3_from_mat2x4_mat2x4_invalid_vs +KHR-GL40.shaders30.glsl_constructors.ivec3_from_mat2x4_mat2x4_invalid_fs +KHR-GL40.shaders30.glsl_constructors.ivec3_from_mat3_vs +KHR-GL40.shaders30.glsl_constructors.ivec3_from_mat3_fs +KHR-GL40.shaders30.glsl_constructors.ivec3_from_mat3_mat3_invalid_vs +KHR-GL40.shaders30.glsl_constructors.ivec3_from_mat3_mat3_invalid_fs +KHR-GL40.shaders30.glsl_constructors.ivec3_from_mat3x2_vs +KHR-GL40.shaders30.glsl_constructors.ivec3_from_mat3x2_fs +KHR-GL40.shaders30.glsl_constructors.ivec3_from_mat3x2_mat3x2_invalid_vs +KHR-GL40.shaders30.glsl_constructors.ivec3_from_mat3x2_mat3x2_invalid_fs +KHR-GL40.shaders30.glsl_constructors.ivec3_from_mat3x4_vs +KHR-GL40.shaders30.glsl_constructors.ivec3_from_mat3x4_fs +KHR-GL40.shaders30.glsl_constructors.ivec3_from_mat3x4_mat3x4_invalid_vs +KHR-GL40.shaders30.glsl_constructors.ivec3_from_mat3x4_mat3x4_invalid_fs +KHR-GL40.shaders30.glsl_constructors.ivec3_from_mat4_vs +KHR-GL40.shaders30.glsl_constructors.ivec3_from_mat4_fs +KHR-GL40.shaders30.glsl_constructors.ivec3_from_mat4_mat4_invalid_vs +KHR-GL40.shaders30.glsl_constructors.ivec3_from_mat4_mat4_invalid_fs +KHR-GL40.shaders30.glsl_constructors.ivec3_from_mat4x2_vs +KHR-GL40.shaders30.glsl_constructors.ivec3_from_mat4x2_fs +KHR-GL40.shaders30.glsl_constructors.ivec3_from_mat4x2_mat4x2_invalid_vs +KHR-GL40.shaders30.glsl_constructors.ivec3_from_mat4x2_mat4x2_invalid_fs +KHR-GL40.shaders30.glsl_constructors.ivec3_from_mat4x3_vs +KHR-GL40.shaders30.glsl_constructors.ivec3_from_mat4x3_fs +KHR-GL40.shaders30.glsl_constructors.ivec3_from_mat4x3_mat4x3_invalid_vs +KHR-GL40.shaders30.glsl_constructors.ivec3_from_mat4x3_mat4x3_invalid_fs +KHR-GL40.shaders30.glsl_constructors.ivec3_from_int_mat2_vs +KHR-GL40.shaders30.glsl_constructors.ivec3_from_int_mat2_fs +KHR-GL40.shaders30.glsl_constructors.ivec3_from_int_mat2_int_invalid_vs +KHR-GL40.shaders30.glsl_constructors.ivec3_from_int_mat2_int_invalid_fs +KHR-GL40.shaders30.glsl_constructors.ivec3_from_int_mat2x3_vs +KHR-GL40.shaders30.glsl_constructors.ivec3_from_int_mat2x3_fs +KHR-GL40.shaders30.glsl_constructors.ivec3_from_int_mat2x3_int_invalid_vs +KHR-GL40.shaders30.glsl_constructors.ivec3_from_int_mat2x3_int_invalid_fs +KHR-GL40.shaders30.glsl_constructors.ivec3_from_int_mat2x4_vs +KHR-GL40.shaders30.glsl_constructors.ivec3_from_int_mat2x4_fs +KHR-GL40.shaders30.glsl_constructors.ivec3_from_int_mat2x4_int_invalid_vs +KHR-GL40.shaders30.glsl_constructors.ivec3_from_int_mat2x4_int_invalid_fs +KHR-GL40.shaders30.glsl_constructors.ivec3_from_int_mat3_vs +KHR-GL40.shaders30.glsl_constructors.ivec3_from_int_mat3_fs +KHR-GL40.shaders30.glsl_constructors.ivec3_from_int_mat3_int_invalid_vs +KHR-GL40.shaders30.glsl_constructors.ivec3_from_int_mat3_int_invalid_fs +KHR-GL40.shaders30.glsl_constructors.ivec3_from_int_mat3x2_vs +KHR-GL40.shaders30.glsl_constructors.ivec3_from_int_mat3x2_fs +KHR-GL40.shaders30.glsl_constructors.ivec3_from_int_mat3x2_int_invalid_vs +KHR-GL40.shaders30.glsl_constructors.ivec3_from_int_mat3x2_int_invalid_fs +KHR-GL40.shaders30.glsl_constructors.ivec3_from_int_mat3x4_vs +KHR-GL40.shaders30.glsl_constructors.ivec3_from_int_mat3x4_fs +KHR-GL40.shaders30.glsl_constructors.ivec3_from_int_mat3x4_int_invalid_vs +KHR-GL40.shaders30.glsl_constructors.ivec3_from_int_mat3x4_int_invalid_fs +KHR-GL40.shaders30.glsl_constructors.ivec3_from_int_mat4_vs +KHR-GL40.shaders30.glsl_constructors.ivec3_from_int_mat4_fs +KHR-GL40.shaders30.glsl_constructors.ivec3_from_int_mat4_int_invalid_vs +KHR-GL40.shaders30.glsl_constructors.ivec3_from_int_mat4_int_invalid_fs +KHR-GL40.shaders30.glsl_constructors.ivec3_from_int_mat4x2_vs +KHR-GL40.shaders30.glsl_constructors.ivec3_from_int_mat4x2_fs +KHR-GL40.shaders30.glsl_constructors.ivec3_from_int_mat4x2_int_invalid_vs +KHR-GL40.shaders30.glsl_constructors.ivec3_from_int_mat4x2_int_invalid_fs +KHR-GL40.shaders30.glsl_constructors.ivec3_from_int_mat4x3_vs +KHR-GL40.shaders30.glsl_constructors.ivec3_from_int_mat4x3_fs +KHR-GL40.shaders30.glsl_constructors.ivec3_from_int_mat4x3_int_invalid_vs +KHR-GL40.shaders30.glsl_constructors.ivec3_from_int_mat4x3_int_invalid_fs +KHR-GL40.shaders30.glsl_constructors.ivec4_from_mat2_vs +KHR-GL40.shaders30.glsl_constructors.ivec4_from_mat2_fs +KHR-GL40.shaders30.glsl_constructors.ivec4_from_mat2_mat2_invalid_vs +KHR-GL40.shaders30.glsl_constructors.ivec4_from_mat2_mat2_invalid_fs +KHR-GL40.shaders30.glsl_constructors.ivec4_from_mat2x3_vs +KHR-GL40.shaders30.glsl_constructors.ivec4_from_mat2x3_fs +KHR-GL40.shaders30.glsl_constructors.ivec4_from_mat2x3_mat2x3_invalid_vs +KHR-GL40.shaders30.glsl_constructors.ivec4_from_mat2x3_mat2x3_invalid_fs +KHR-GL40.shaders30.glsl_constructors.ivec4_from_mat2x4_vs +KHR-GL40.shaders30.glsl_constructors.ivec4_from_mat2x4_fs +KHR-GL40.shaders30.glsl_constructors.ivec4_from_mat2x4_mat2x4_invalid_vs +KHR-GL40.shaders30.glsl_constructors.ivec4_from_mat2x4_mat2x4_invalid_fs +KHR-GL40.shaders30.glsl_constructors.ivec4_from_mat3_vs +KHR-GL40.shaders30.glsl_constructors.ivec4_from_mat3_fs +KHR-GL40.shaders30.glsl_constructors.ivec4_from_mat3_mat3_invalid_vs +KHR-GL40.shaders30.glsl_constructors.ivec4_from_mat3_mat3_invalid_fs +KHR-GL40.shaders30.glsl_constructors.ivec4_from_mat3x2_vs +KHR-GL40.shaders30.glsl_constructors.ivec4_from_mat3x2_fs +KHR-GL40.shaders30.glsl_constructors.ivec4_from_mat3x2_mat3x2_invalid_vs +KHR-GL40.shaders30.glsl_constructors.ivec4_from_mat3x2_mat3x2_invalid_fs +KHR-GL40.shaders30.glsl_constructors.ivec4_from_mat3x4_vs +KHR-GL40.shaders30.glsl_constructors.ivec4_from_mat3x4_fs +KHR-GL40.shaders30.glsl_constructors.ivec4_from_mat3x4_mat3x4_invalid_vs +KHR-GL40.shaders30.glsl_constructors.ivec4_from_mat3x4_mat3x4_invalid_fs +KHR-GL40.shaders30.glsl_constructors.ivec4_from_mat4_vs +KHR-GL40.shaders30.glsl_constructors.ivec4_from_mat4_fs +KHR-GL40.shaders30.glsl_constructors.ivec4_from_mat4_mat4_invalid_vs +KHR-GL40.shaders30.glsl_constructors.ivec4_from_mat4_mat4_invalid_fs +KHR-GL40.shaders30.glsl_constructors.ivec4_from_mat4x2_vs +KHR-GL40.shaders30.glsl_constructors.ivec4_from_mat4x2_fs +KHR-GL40.shaders30.glsl_constructors.ivec4_from_mat4x2_mat4x2_invalid_vs +KHR-GL40.shaders30.glsl_constructors.ivec4_from_mat4x2_mat4x2_invalid_fs +KHR-GL40.shaders30.glsl_constructors.ivec4_from_mat4x3_vs +KHR-GL40.shaders30.glsl_constructors.ivec4_from_mat4x3_fs +KHR-GL40.shaders30.glsl_constructors.ivec4_from_mat4x3_mat4x3_invalid_vs +KHR-GL40.shaders30.glsl_constructors.ivec4_from_mat4x3_mat4x3_invalid_fs +KHR-GL40.shaders30.glsl_constructors.ivec4_from_int_mat2_vs +KHR-GL40.shaders30.glsl_constructors.ivec4_from_int_mat2_fs +KHR-GL40.shaders30.glsl_constructors.ivec4_from_int_mat2_int_invalid_vs +KHR-GL40.shaders30.glsl_constructors.ivec4_from_int_mat2_int_invalid_fs +KHR-GL40.shaders30.glsl_constructors.ivec4_from_int_mat2x3_vs +KHR-GL40.shaders30.glsl_constructors.ivec4_from_int_mat2x3_fs +KHR-GL40.shaders30.glsl_constructors.ivec4_from_int_mat2x3_int_invalid_vs +KHR-GL40.shaders30.glsl_constructors.ivec4_from_int_mat2x3_int_invalid_fs +KHR-GL40.shaders30.glsl_constructors.ivec4_from_int_mat2x4_vs +KHR-GL40.shaders30.glsl_constructors.ivec4_from_int_mat2x4_fs +KHR-GL40.shaders30.glsl_constructors.ivec4_from_int_mat2x4_int_invalid_vs +KHR-GL40.shaders30.glsl_constructors.ivec4_from_int_mat2x4_int_invalid_fs +KHR-GL40.shaders30.glsl_constructors.ivec4_from_int_mat3_vs +KHR-GL40.shaders30.glsl_constructors.ivec4_from_int_mat3_fs +KHR-GL40.shaders30.glsl_constructors.ivec4_from_int_mat3_int_invalid_vs +KHR-GL40.shaders30.glsl_constructors.ivec4_from_int_mat3_int_invalid_fs +KHR-GL40.shaders30.glsl_constructors.ivec4_from_int_mat3x2_vs +KHR-GL40.shaders30.glsl_constructors.ivec4_from_int_mat3x2_fs +KHR-GL40.shaders30.glsl_constructors.ivec4_from_int_mat3x2_int_invalid_vs +KHR-GL40.shaders30.glsl_constructors.ivec4_from_int_mat3x2_int_invalid_fs +KHR-GL40.shaders30.glsl_constructors.ivec4_from_int_mat3x4_vs +KHR-GL40.shaders30.glsl_constructors.ivec4_from_int_mat3x4_fs +KHR-GL40.shaders30.glsl_constructors.ivec4_from_int_mat3x4_int_invalid_vs +KHR-GL40.shaders30.glsl_constructors.ivec4_from_int_mat3x4_int_invalid_fs +KHR-GL40.shaders30.glsl_constructors.ivec4_from_int_mat4_vs +KHR-GL40.shaders30.glsl_constructors.ivec4_from_int_mat4_fs +KHR-GL40.shaders30.glsl_constructors.ivec4_from_int_mat4_int_invalid_vs +KHR-GL40.shaders30.glsl_constructors.ivec4_from_int_mat4_int_invalid_fs +KHR-GL40.shaders30.glsl_constructors.ivec4_from_int_mat4x2_vs +KHR-GL40.shaders30.glsl_constructors.ivec4_from_int_mat4x2_fs +KHR-GL40.shaders30.glsl_constructors.ivec4_from_int_mat4x2_int_invalid_vs +KHR-GL40.shaders30.glsl_constructors.ivec4_from_int_mat4x2_int_invalid_fs +KHR-GL40.shaders30.glsl_constructors.ivec4_from_int_mat4x3_vs +KHR-GL40.shaders30.glsl_constructors.ivec4_from_int_mat4x3_fs +KHR-GL40.shaders30.glsl_constructors.ivec4_from_int_mat4x3_int_invalid_vs +KHR-GL40.shaders30.glsl_constructors.ivec4_from_int_mat4x3_int_invalid_fs +KHR-GL40.shaders30.glsl_constructors.bvec2_from_mat2_vs +KHR-GL40.shaders30.glsl_constructors.bvec2_from_mat2_fs +KHR-GL40.shaders30.glsl_constructors.bvec2_from_mat2_mat2_invalid_vs +KHR-GL40.shaders30.glsl_constructors.bvec2_from_mat2_mat2_invalid_fs +KHR-GL40.shaders30.glsl_constructors.bvec2_from_mat2x3_vs +KHR-GL40.shaders30.glsl_constructors.bvec2_from_mat2x3_fs +KHR-GL40.shaders30.glsl_constructors.bvec2_from_mat2x3_mat2x3_invalid_vs +KHR-GL40.shaders30.glsl_constructors.bvec2_from_mat2x3_mat2x3_invalid_fs +KHR-GL40.shaders30.glsl_constructors.bvec2_from_mat2x4_vs +KHR-GL40.shaders30.glsl_constructors.bvec2_from_mat2x4_fs +KHR-GL40.shaders30.glsl_constructors.bvec2_from_mat2x4_mat2x4_invalid_vs +KHR-GL40.shaders30.glsl_constructors.bvec2_from_mat2x4_mat2x4_invalid_fs +KHR-GL40.shaders30.glsl_constructors.bvec2_from_mat3_vs +KHR-GL40.shaders30.glsl_constructors.bvec2_from_mat3_fs +KHR-GL40.shaders30.glsl_constructors.bvec2_from_mat3_mat3_invalid_vs +KHR-GL40.shaders30.glsl_constructors.bvec2_from_mat3_mat3_invalid_fs +KHR-GL40.shaders30.glsl_constructors.bvec2_from_mat3x2_vs +KHR-GL40.shaders30.glsl_constructors.bvec2_from_mat3x2_fs +KHR-GL40.shaders30.glsl_constructors.bvec2_from_mat3x2_mat3x2_invalid_vs +KHR-GL40.shaders30.glsl_constructors.bvec2_from_mat3x2_mat3x2_invalid_fs +KHR-GL40.shaders30.glsl_constructors.bvec2_from_mat3x4_vs +KHR-GL40.shaders30.glsl_constructors.bvec2_from_mat3x4_fs +KHR-GL40.shaders30.glsl_constructors.bvec2_from_mat3x4_mat3x4_invalid_vs +KHR-GL40.shaders30.glsl_constructors.bvec2_from_mat3x4_mat3x4_invalid_fs +KHR-GL40.shaders30.glsl_constructors.bvec2_from_mat4_vs +KHR-GL40.shaders30.glsl_constructors.bvec2_from_mat4_fs +KHR-GL40.shaders30.glsl_constructors.bvec2_from_mat4_mat4_invalid_vs +KHR-GL40.shaders30.glsl_constructors.bvec2_from_mat4_mat4_invalid_fs +KHR-GL40.shaders30.glsl_constructors.bvec2_from_mat4x2_vs +KHR-GL40.shaders30.glsl_constructors.bvec2_from_mat4x2_fs +KHR-GL40.shaders30.glsl_constructors.bvec2_from_mat4x2_mat4x2_invalid_vs +KHR-GL40.shaders30.glsl_constructors.bvec2_from_mat4x2_mat4x2_invalid_fs +KHR-GL40.shaders30.glsl_constructors.bvec2_from_mat4x3_vs +KHR-GL40.shaders30.glsl_constructors.bvec2_from_mat4x3_fs +KHR-GL40.shaders30.glsl_constructors.bvec2_from_mat4x3_mat4x3_invalid_vs +KHR-GL40.shaders30.glsl_constructors.bvec2_from_mat4x3_mat4x3_invalid_fs +KHR-GL40.shaders30.glsl_constructors.bvec2_from_bool_mat2_vs +KHR-GL40.shaders30.glsl_constructors.bvec2_from_bool_mat2_fs +KHR-GL40.shaders30.glsl_constructors.bvec2_from_bool_mat2_bool_invalid_vs +KHR-GL40.shaders30.glsl_constructors.bvec2_from_bool_mat2_bool_invalid_fs +KHR-GL40.shaders30.glsl_constructors.bvec2_from_bool_mat2x3_vs +KHR-GL40.shaders30.glsl_constructors.bvec2_from_bool_mat2x3_fs +KHR-GL40.shaders30.glsl_constructors.bvec2_from_bool_mat2x3_bool_invalid_vs +KHR-GL40.shaders30.glsl_constructors.bvec2_from_bool_mat2x3_bool_invalid_fs +KHR-GL40.shaders30.glsl_constructors.bvec2_from_bool_mat2x4_vs +KHR-GL40.shaders30.glsl_constructors.bvec2_from_bool_mat2x4_fs +KHR-GL40.shaders30.glsl_constructors.bvec2_from_bool_mat2x4_bool_invalid_vs +KHR-GL40.shaders30.glsl_constructors.bvec2_from_bool_mat2x4_bool_invalid_fs +KHR-GL40.shaders30.glsl_constructors.bvec2_from_bool_mat3_vs +KHR-GL40.shaders30.glsl_constructors.bvec2_from_bool_mat3_fs +KHR-GL40.shaders30.glsl_constructors.bvec2_from_bool_mat3_bool_invalid_vs +KHR-GL40.shaders30.glsl_constructors.bvec2_from_bool_mat3_bool_invalid_fs +KHR-GL40.shaders30.glsl_constructors.bvec2_from_bool_mat3x2_vs +KHR-GL40.shaders30.glsl_constructors.bvec2_from_bool_mat3x2_fs +KHR-GL40.shaders30.glsl_constructors.bvec2_from_bool_mat3x2_bool_invalid_vs +KHR-GL40.shaders30.glsl_constructors.bvec2_from_bool_mat3x2_bool_invalid_fs +KHR-GL40.shaders30.glsl_constructors.bvec2_from_bool_mat3x4_vs +KHR-GL40.shaders30.glsl_constructors.bvec2_from_bool_mat3x4_fs +KHR-GL40.shaders30.glsl_constructors.bvec2_from_bool_mat3x4_bool_invalid_vs +KHR-GL40.shaders30.glsl_constructors.bvec2_from_bool_mat3x4_bool_invalid_fs +KHR-GL40.shaders30.glsl_constructors.bvec2_from_bool_mat4_vs +KHR-GL40.shaders30.glsl_constructors.bvec2_from_bool_mat4_fs +KHR-GL40.shaders30.glsl_constructors.bvec2_from_bool_mat4_bool_invalid_vs +KHR-GL40.shaders30.glsl_constructors.bvec2_from_bool_mat4_bool_invalid_fs +KHR-GL40.shaders30.glsl_constructors.bvec2_from_bool_mat4x2_vs +KHR-GL40.shaders30.glsl_constructors.bvec2_from_bool_mat4x2_fs +KHR-GL40.shaders30.glsl_constructors.bvec2_from_bool_mat4x2_bool_invalid_vs +KHR-GL40.shaders30.glsl_constructors.bvec2_from_bool_mat4x2_bool_invalid_fs +KHR-GL40.shaders30.glsl_constructors.bvec2_from_bool_mat4x3_vs +KHR-GL40.shaders30.glsl_constructors.bvec2_from_bool_mat4x3_fs +KHR-GL40.shaders30.glsl_constructors.bvec2_from_bool_mat4x3_bool_invalid_vs +KHR-GL40.shaders30.glsl_constructors.bvec2_from_bool_mat4x3_bool_invalid_fs +KHR-GL40.shaders30.glsl_constructors.bvec3_from_mat2_vs +KHR-GL40.shaders30.glsl_constructors.bvec3_from_mat2_fs +KHR-GL40.shaders30.glsl_constructors.bvec3_from_mat2_mat2_invalid_vs +KHR-GL40.shaders30.glsl_constructors.bvec3_from_mat2_mat2_invalid_fs +KHR-GL40.shaders30.glsl_constructors.bvec3_from_mat2x3_vs +KHR-GL40.shaders30.glsl_constructors.bvec3_from_mat2x3_fs +KHR-GL40.shaders30.glsl_constructors.bvec3_from_mat2x3_mat2x3_invalid_vs +KHR-GL40.shaders30.glsl_constructors.bvec3_from_mat2x3_mat2x3_invalid_fs +KHR-GL40.shaders30.glsl_constructors.bvec3_from_mat2x4_vs +KHR-GL40.shaders30.glsl_constructors.bvec3_from_mat2x4_fs +KHR-GL40.shaders30.glsl_constructors.bvec3_from_mat2x4_mat2x4_invalid_vs +KHR-GL40.shaders30.glsl_constructors.bvec3_from_mat2x4_mat2x4_invalid_fs +KHR-GL40.shaders30.glsl_constructors.bvec3_from_mat3_vs +KHR-GL40.shaders30.glsl_constructors.bvec3_from_mat3_fs +KHR-GL40.shaders30.glsl_constructors.bvec3_from_mat3_mat3_invalid_vs +KHR-GL40.shaders30.glsl_constructors.bvec3_from_mat3_mat3_invalid_fs +KHR-GL40.shaders30.glsl_constructors.bvec3_from_mat3x2_vs +KHR-GL40.shaders30.glsl_constructors.bvec3_from_mat3x2_fs +KHR-GL40.shaders30.glsl_constructors.bvec3_from_mat3x2_mat3x2_invalid_vs +KHR-GL40.shaders30.glsl_constructors.bvec3_from_mat3x2_mat3x2_invalid_fs +KHR-GL40.shaders30.glsl_constructors.bvec3_from_mat3x4_vs +KHR-GL40.shaders30.glsl_constructors.bvec3_from_mat3x4_fs +KHR-GL40.shaders30.glsl_constructors.bvec3_from_mat3x4_mat3x4_invalid_vs +KHR-GL40.shaders30.glsl_constructors.bvec3_from_mat3x4_mat3x4_invalid_fs +KHR-GL40.shaders30.glsl_constructors.bvec3_from_mat4_vs +KHR-GL40.shaders30.glsl_constructors.bvec3_from_mat4_fs +KHR-GL40.shaders30.glsl_constructors.bvec3_from_mat4_mat4_invalid_vs +KHR-GL40.shaders30.glsl_constructors.bvec3_from_mat4_mat4_invalid_fs +KHR-GL40.shaders30.glsl_constructors.bvec3_from_mat4x2_vs +KHR-GL40.shaders30.glsl_constructors.bvec3_from_mat4x2_fs +KHR-GL40.shaders30.glsl_constructors.bvec3_from_mat4x2_mat4x2_invalid_vs +KHR-GL40.shaders30.glsl_constructors.bvec3_from_mat4x2_mat4x2_invalid_fs +KHR-GL40.shaders30.glsl_constructors.bvec3_from_mat4x3_vs +KHR-GL40.shaders30.glsl_constructors.bvec3_from_mat4x3_fs +KHR-GL40.shaders30.glsl_constructors.bvec3_from_mat4x3_mat4x3_invalid_vs +KHR-GL40.shaders30.glsl_constructors.bvec3_from_mat4x3_mat4x3_invalid_fs +KHR-GL40.shaders30.glsl_constructors.bvec3_from_bool_mat2_vs +KHR-GL40.shaders30.glsl_constructors.bvec3_from_bool_mat2_fs +KHR-GL40.shaders30.glsl_constructors.bvec3_from_bool_mat2_bool_invalid_vs +KHR-GL40.shaders30.glsl_constructors.bvec3_from_bool_mat2_bool_invalid_fs +KHR-GL40.shaders30.glsl_constructors.bvec3_from_bool_mat2x3_vs +KHR-GL40.shaders30.glsl_constructors.bvec3_from_bool_mat2x3_fs +KHR-GL40.shaders30.glsl_constructors.bvec3_from_bool_mat2x3_bool_invalid_vs +KHR-GL40.shaders30.glsl_constructors.bvec3_from_bool_mat2x3_bool_invalid_fs +KHR-GL40.shaders30.glsl_constructors.bvec3_from_bool_mat2x4_vs +KHR-GL40.shaders30.glsl_constructors.bvec3_from_bool_mat2x4_fs +KHR-GL40.shaders30.glsl_constructors.bvec3_from_bool_mat2x4_bool_invalid_vs +KHR-GL40.shaders30.glsl_constructors.bvec3_from_bool_mat2x4_bool_invalid_fs +KHR-GL40.shaders30.glsl_constructors.bvec3_from_bool_mat3_vs +KHR-GL40.shaders30.glsl_constructors.bvec3_from_bool_mat3_fs +KHR-GL40.shaders30.glsl_constructors.bvec3_from_bool_mat3_bool_invalid_vs +KHR-GL40.shaders30.glsl_constructors.bvec3_from_bool_mat3_bool_invalid_fs +KHR-GL40.shaders30.glsl_constructors.bvec3_from_bool_mat3x2_vs +KHR-GL40.shaders30.glsl_constructors.bvec3_from_bool_mat3x2_fs +KHR-GL40.shaders30.glsl_constructors.bvec3_from_bool_mat3x2_bool_invalid_vs +KHR-GL40.shaders30.glsl_constructors.bvec3_from_bool_mat3x2_bool_invalid_fs +KHR-GL40.shaders30.glsl_constructors.bvec3_from_bool_mat3x4_vs +KHR-GL40.shaders30.glsl_constructors.bvec3_from_bool_mat3x4_fs +KHR-GL40.shaders30.glsl_constructors.bvec3_from_bool_mat3x4_bool_invalid_vs +KHR-GL40.shaders30.glsl_constructors.bvec3_from_bool_mat3x4_bool_invalid_fs +KHR-GL40.shaders30.glsl_constructors.bvec3_from_bool_mat4_vs +KHR-GL40.shaders30.glsl_constructors.bvec3_from_bool_mat4_fs +KHR-GL40.shaders30.glsl_constructors.bvec3_from_bool_mat4_bool_invalid_vs +KHR-GL40.shaders30.glsl_constructors.bvec3_from_bool_mat4_bool_invalid_fs +KHR-GL40.shaders30.glsl_constructors.bvec3_from_bool_mat4x2_vs +KHR-GL40.shaders30.glsl_constructors.bvec3_from_bool_mat4x2_fs +KHR-GL40.shaders30.glsl_constructors.bvec3_from_bool_mat4x2_bool_invalid_vs +KHR-GL40.shaders30.glsl_constructors.bvec3_from_bool_mat4x2_bool_invalid_fs +KHR-GL40.shaders30.glsl_constructors.bvec3_from_bool_mat4x3_vs +KHR-GL40.shaders30.glsl_constructors.bvec3_from_bool_mat4x3_fs +KHR-GL40.shaders30.glsl_constructors.bvec3_from_bool_mat4x3_bool_invalid_vs +KHR-GL40.shaders30.glsl_constructors.bvec3_from_bool_mat4x3_bool_invalid_fs +KHR-GL40.shaders30.glsl_constructors.bvec4_from_mat2_vs +KHR-GL40.shaders30.glsl_constructors.bvec4_from_mat2_fs +KHR-GL40.shaders30.glsl_constructors.bvec4_from_mat2_mat2_invalid_vs +KHR-GL40.shaders30.glsl_constructors.bvec4_from_mat2_mat2_invalid_fs +KHR-GL40.shaders30.glsl_constructors.bvec4_from_mat2x3_vs +KHR-GL40.shaders30.glsl_constructors.bvec4_from_mat2x3_fs +KHR-GL40.shaders30.glsl_constructors.bvec4_from_mat2x3_mat2x3_invalid_vs +KHR-GL40.shaders30.glsl_constructors.bvec4_from_mat2x3_mat2x3_invalid_fs +KHR-GL40.shaders30.glsl_constructors.bvec4_from_mat2x4_vs +KHR-GL40.shaders30.glsl_constructors.bvec4_from_mat2x4_fs +KHR-GL40.shaders30.glsl_constructors.bvec4_from_mat2x4_mat2x4_invalid_vs +KHR-GL40.shaders30.glsl_constructors.bvec4_from_mat2x4_mat2x4_invalid_fs +KHR-GL40.shaders30.glsl_constructors.bvec4_from_mat3_vs +KHR-GL40.shaders30.glsl_constructors.bvec4_from_mat3_fs +KHR-GL40.shaders30.glsl_constructors.bvec4_from_mat3_mat3_invalid_vs +KHR-GL40.shaders30.glsl_constructors.bvec4_from_mat3_mat3_invalid_fs +KHR-GL40.shaders30.glsl_constructors.bvec4_from_mat3x2_vs +KHR-GL40.shaders30.glsl_constructors.bvec4_from_mat3x2_fs +KHR-GL40.shaders30.glsl_constructors.bvec4_from_mat3x2_mat3x2_invalid_vs +KHR-GL40.shaders30.glsl_constructors.bvec4_from_mat3x2_mat3x2_invalid_fs +KHR-GL40.shaders30.glsl_constructors.bvec4_from_mat3x4_vs +KHR-GL40.shaders30.glsl_constructors.bvec4_from_mat3x4_fs +KHR-GL40.shaders30.glsl_constructors.bvec4_from_mat3x4_mat3x4_invalid_vs +KHR-GL40.shaders30.glsl_constructors.bvec4_from_mat3x4_mat3x4_invalid_fs +KHR-GL40.shaders30.glsl_constructors.bvec4_from_mat4_vs +KHR-GL40.shaders30.glsl_constructors.bvec4_from_mat4_fs +KHR-GL40.shaders30.glsl_constructors.bvec4_from_mat4_mat4_invalid_vs +KHR-GL40.shaders30.glsl_constructors.bvec4_from_mat4_mat4_invalid_fs +KHR-GL40.shaders30.glsl_constructors.bvec4_from_mat4x2_vs +KHR-GL40.shaders30.glsl_constructors.bvec4_from_mat4x2_fs +KHR-GL40.shaders30.glsl_constructors.bvec4_from_mat4x2_mat4x2_invalid_vs +KHR-GL40.shaders30.glsl_constructors.bvec4_from_mat4x2_mat4x2_invalid_fs +KHR-GL40.shaders30.glsl_constructors.bvec4_from_mat4x3_vs +KHR-GL40.shaders30.glsl_constructors.bvec4_from_mat4x3_fs +KHR-GL40.shaders30.glsl_constructors.bvec4_from_mat4x3_mat4x3_invalid_vs +KHR-GL40.shaders30.glsl_constructors.bvec4_from_mat4x3_mat4x3_invalid_fs +KHR-GL40.shaders30.glsl_constructors.bvec4_from_bool_mat2_vs +KHR-GL40.shaders30.glsl_constructors.bvec4_from_bool_mat2_fs +KHR-GL40.shaders30.glsl_constructors.bvec4_from_bool_mat2_bool_invalid_vs +KHR-GL40.shaders30.glsl_constructors.bvec4_from_bool_mat2_bool_invalid_fs +KHR-GL40.shaders30.glsl_constructors.bvec4_from_bool_mat2x3_vs +KHR-GL40.shaders30.glsl_constructors.bvec4_from_bool_mat2x3_fs +KHR-GL40.shaders30.glsl_constructors.bvec4_from_bool_mat2x3_bool_invalid_vs +KHR-GL40.shaders30.glsl_constructors.bvec4_from_bool_mat2x3_bool_invalid_fs +KHR-GL40.shaders30.glsl_constructors.bvec4_from_bool_mat2x4_vs +KHR-GL40.shaders30.glsl_constructors.bvec4_from_bool_mat2x4_fs +KHR-GL40.shaders30.glsl_constructors.bvec4_from_bool_mat2x4_bool_invalid_vs +KHR-GL40.shaders30.glsl_constructors.bvec4_from_bool_mat2x4_bool_invalid_fs +KHR-GL40.shaders30.glsl_constructors.bvec4_from_bool_mat3_vs +KHR-GL40.shaders30.glsl_constructors.bvec4_from_bool_mat3_fs +KHR-GL40.shaders30.glsl_constructors.bvec4_from_bool_mat3_bool_invalid_vs +KHR-GL40.shaders30.glsl_constructors.bvec4_from_bool_mat3_bool_invalid_fs +KHR-GL40.shaders30.glsl_constructors.bvec4_from_bool_mat3x2_vs +KHR-GL40.shaders30.glsl_constructors.bvec4_from_bool_mat3x2_fs +KHR-GL40.shaders30.glsl_constructors.bvec4_from_bool_mat3x2_bool_invalid_vs +KHR-GL40.shaders30.glsl_constructors.bvec4_from_bool_mat3x2_bool_invalid_fs +KHR-GL40.shaders30.glsl_constructors.bvec4_from_bool_mat3x4_vs +KHR-GL40.shaders30.glsl_constructors.bvec4_from_bool_mat3x4_fs +KHR-GL40.shaders30.glsl_constructors.bvec4_from_bool_mat3x4_bool_invalid_vs +KHR-GL40.shaders30.glsl_constructors.bvec4_from_bool_mat3x4_bool_invalid_fs +KHR-GL40.shaders30.glsl_constructors.bvec4_from_bool_mat4_vs +KHR-GL40.shaders30.glsl_constructors.bvec4_from_bool_mat4_fs +KHR-GL40.shaders30.glsl_constructors.bvec4_from_bool_mat4_bool_invalid_vs +KHR-GL40.shaders30.glsl_constructors.bvec4_from_bool_mat4_bool_invalid_fs +KHR-GL40.shaders30.glsl_constructors.bvec4_from_bool_mat4x2_vs +KHR-GL40.shaders30.glsl_constructors.bvec4_from_bool_mat4x2_fs +KHR-GL40.shaders30.glsl_constructors.bvec4_from_bool_mat4x2_bool_invalid_vs +KHR-GL40.shaders30.glsl_constructors.bvec4_from_bool_mat4x2_bool_invalid_fs +KHR-GL40.shaders30.glsl_constructors.bvec4_from_bool_mat4x3_vs +KHR-GL40.shaders30.glsl_constructors.bvec4_from_bool_mat4x3_fs +KHR-GL40.shaders30.glsl_constructors.bvec4_from_bool_mat4x3_bool_invalid_vs +KHR-GL40.shaders30.glsl_constructors.bvec4_from_bool_mat4x3_bool_invalid_fs KHR-GL40.ext_texture_shadow_lod.texture.sampler2darrayshadow_fragment KHR-GL40.ext_texture_shadow_lod.texture.sampler2darrayshadow_bias_fragment KHR-GL40.ext_texture_shadow_lod.texture.samplercubearrayshadow_vertex diff --git a/external/openglcts/data/mustpass/gl/khronos_mustpass/4.6.1.x/gl41-master.txt b/external/openglcts/data/mustpass/gl/khronos_mustpass/4.6.1.x/gl41-master.txt index 63788f9..4d3a715 100644 --- a/external/openglcts/data/mustpass/gl/khronos_mustpass/4.6.1.x/gl41-master.txt +++ b/external/openglcts/data/mustpass/gl/khronos_mustpass/4.6.1.x/gl41-master.txt @@ -192,6 +192,654 @@ KHR-GL41.texture_repeat_mode.depth24_stencil8_11x131_2_repeat KHR-GL41.texture_repeat_mode.depth24_stencil8_11x131_2_mirrored_repeat KHR-GL41.shaders30.declarations.declarations.redeclare_gl_FragColor KHR-GL41.shaders30.declarations.declarations.redeclare_gl_FragData +KHR-GL41.shaders30.glsl_constructors.vec2_from_mat2_vs +KHR-GL41.shaders30.glsl_constructors.vec2_from_mat2_fs +KHR-GL41.shaders30.glsl_constructors.vec2_from_mat2_mat2_invalid_vs +KHR-GL41.shaders30.glsl_constructors.vec2_from_mat2_mat2_invalid_fs +KHR-GL41.shaders30.glsl_constructors.vec2_from_mat2x3_vs +KHR-GL41.shaders30.glsl_constructors.vec2_from_mat2x3_fs +KHR-GL41.shaders30.glsl_constructors.vec2_from_mat2x3_mat2x3_invalid_vs +KHR-GL41.shaders30.glsl_constructors.vec2_from_mat2x3_mat2x3_invalid_fs +KHR-GL41.shaders30.glsl_constructors.vec2_from_mat2x4_vs +KHR-GL41.shaders30.glsl_constructors.vec2_from_mat2x4_fs +KHR-GL41.shaders30.glsl_constructors.vec2_from_mat2x4_mat2x4_invalid_vs +KHR-GL41.shaders30.glsl_constructors.vec2_from_mat2x4_mat2x4_invalid_fs +KHR-GL41.shaders30.glsl_constructors.vec2_from_mat3_vs +KHR-GL41.shaders30.glsl_constructors.vec2_from_mat3_fs +KHR-GL41.shaders30.glsl_constructors.vec2_from_mat3_mat3_invalid_vs +KHR-GL41.shaders30.glsl_constructors.vec2_from_mat3_mat3_invalid_fs +KHR-GL41.shaders30.glsl_constructors.vec2_from_mat3x2_vs +KHR-GL41.shaders30.glsl_constructors.vec2_from_mat3x2_fs +KHR-GL41.shaders30.glsl_constructors.vec2_from_mat3x2_mat3x2_invalid_vs +KHR-GL41.shaders30.glsl_constructors.vec2_from_mat3x2_mat3x2_invalid_fs +KHR-GL41.shaders30.glsl_constructors.vec2_from_mat3x4_vs +KHR-GL41.shaders30.glsl_constructors.vec2_from_mat3x4_fs +KHR-GL41.shaders30.glsl_constructors.vec2_from_mat3x4_mat3x4_invalid_vs +KHR-GL41.shaders30.glsl_constructors.vec2_from_mat3x4_mat3x4_invalid_fs +KHR-GL41.shaders30.glsl_constructors.vec2_from_mat4_vs +KHR-GL41.shaders30.glsl_constructors.vec2_from_mat4_fs +KHR-GL41.shaders30.glsl_constructors.vec2_from_mat4_mat4_invalid_vs +KHR-GL41.shaders30.glsl_constructors.vec2_from_mat4_mat4_invalid_fs +KHR-GL41.shaders30.glsl_constructors.vec2_from_mat4x2_vs +KHR-GL41.shaders30.glsl_constructors.vec2_from_mat4x2_fs +KHR-GL41.shaders30.glsl_constructors.vec2_from_mat4x2_mat4x2_invalid_vs +KHR-GL41.shaders30.glsl_constructors.vec2_from_mat4x2_mat4x2_invalid_fs +KHR-GL41.shaders30.glsl_constructors.vec2_from_mat4x3_vs +KHR-GL41.shaders30.glsl_constructors.vec2_from_mat4x3_fs +KHR-GL41.shaders30.glsl_constructors.vec2_from_mat4x3_mat4x3_invalid_vs +KHR-GL41.shaders30.glsl_constructors.vec2_from_mat4x3_mat4x3_invalid_fs +KHR-GL41.shaders30.glsl_constructors.vec2_from_float_mat2_vs +KHR-GL41.shaders30.glsl_constructors.vec2_from_float_mat2_fs +KHR-GL41.shaders30.glsl_constructors.vec2_from_float_mat2_float_invalid_vs +KHR-GL41.shaders30.glsl_constructors.vec2_from_float_mat2_float_invalid_fs +KHR-GL41.shaders30.glsl_constructors.vec2_from_float_mat2x3_vs +KHR-GL41.shaders30.glsl_constructors.vec2_from_float_mat2x3_fs +KHR-GL41.shaders30.glsl_constructors.vec2_from_float_mat2x3_float_invalid_vs +KHR-GL41.shaders30.glsl_constructors.vec2_from_float_mat2x3_float_invalid_fs +KHR-GL41.shaders30.glsl_constructors.vec2_from_float_mat2x4_vs +KHR-GL41.shaders30.glsl_constructors.vec2_from_float_mat2x4_fs +KHR-GL41.shaders30.glsl_constructors.vec2_from_float_mat2x4_float_invalid_vs +KHR-GL41.shaders30.glsl_constructors.vec2_from_float_mat2x4_float_invalid_fs +KHR-GL41.shaders30.glsl_constructors.vec2_from_float_mat3_vs +KHR-GL41.shaders30.glsl_constructors.vec2_from_float_mat3_fs +KHR-GL41.shaders30.glsl_constructors.vec2_from_float_mat3_float_invalid_vs +KHR-GL41.shaders30.glsl_constructors.vec2_from_float_mat3_float_invalid_fs +KHR-GL41.shaders30.glsl_constructors.vec2_from_float_mat3x2_vs +KHR-GL41.shaders30.glsl_constructors.vec2_from_float_mat3x2_fs +KHR-GL41.shaders30.glsl_constructors.vec2_from_float_mat3x2_float_invalid_vs +KHR-GL41.shaders30.glsl_constructors.vec2_from_float_mat3x2_float_invalid_fs +KHR-GL41.shaders30.glsl_constructors.vec2_from_float_mat3x4_vs +KHR-GL41.shaders30.glsl_constructors.vec2_from_float_mat3x4_fs +KHR-GL41.shaders30.glsl_constructors.vec2_from_float_mat3x4_float_invalid_vs +KHR-GL41.shaders30.glsl_constructors.vec2_from_float_mat3x4_float_invalid_fs +KHR-GL41.shaders30.glsl_constructors.vec2_from_float_mat4_vs +KHR-GL41.shaders30.glsl_constructors.vec2_from_float_mat4_fs +KHR-GL41.shaders30.glsl_constructors.vec2_from_float_mat4_float_invalid_vs +KHR-GL41.shaders30.glsl_constructors.vec2_from_float_mat4_float_invalid_fs +KHR-GL41.shaders30.glsl_constructors.vec2_from_float_mat4x2_vs +KHR-GL41.shaders30.glsl_constructors.vec2_from_float_mat4x2_fs +KHR-GL41.shaders30.glsl_constructors.vec2_from_float_mat4x2_float_invalid_vs +KHR-GL41.shaders30.glsl_constructors.vec2_from_float_mat4x2_float_invalid_fs +KHR-GL41.shaders30.glsl_constructors.vec2_from_float_mat4x3_vs +KHR-GL41.shaders30.glsl_constructors.vec2_from_float_mat4x3_fs +KHR-GL41.shaders30.glsl_constructors.vec2_from_float_mat4x3_float_invalid_vs +KHR-GL41.shaders30.glsl_constructors.vec2_from_float_mat4x3_float_invalid_fs +KHR-GL41.shaders30.glsl_constructors.vec3_from_mat2_vs +KHR-GL41.shaders30.glsl_constructors.vec3_from_mat2_fs +KHR-GL41.shaders30.glsl_constructors.vec3_from_mat2_mat2_invalid_vs +KHR-GL41.shaders30.glsl_constructors.vec3_from_mat2_mat2_invalid_fs +KHR-GL41.shaders30.glsl_constructors.vec3_from_mat2x3_vs +KHR-GL41.shaders30.glsl_constructors.vec3_from_mat2x3_fs +KHR-GL41.shaders30.glsl_constructors.vec3_from_mat2x3_mat2x3_invalid_vs +KHR-GL41.shaders30.glsl_constructors.vec3_from_mat2x3_mat2x3_invalid_fs +KHR-GL41.shaders30.glsl_constructors.vec3_from_mat2x4_vs +KHR-GL41.shaders30.glsl_constructors.vec3_from_mat2x4_fs +KHR-GL41.shaders30.glsl_constructors.vec3_from_mat2x4_mat2x4_invalid_vs +KHR-GL41.shaders30.glsl_constructors.vec3_from_mat2x4_mat2x4_invalid_fs +KHR-GL41.shaders30.glsl_constructors.vec3_from_mat3_vs +KHR-GL41.shaders30.glsl_constructors.vec3_from_mat3_fs +KHR-GL41.shaders30.glsl_constructors.vec3_from_mat3_mat3_invalid_vs +KHR-GL41.shaders30.glsl_constructors.vec3_from_mat3_mat3_invalid_fs +KHR-GL41.shaders30.glsl_constructors.vec3_from_mat3x2_vs +KHR-GL41.shaders30.glsl_constructors.vec3_from_mat3x2_fs +KHR-GL41.shaders30.glsl_constructors.vec3_from_mat3x2_mat3x2_invalid_vs +KHR-GL41.shaders30.glsl_constructors.vec3_from_mat3x2_mat3x2_invalid_fs +KHR-GL41.shaders30.glsl_constructors.vec3_from_mat3x4_vs +KHR-GL41.shaders30.glsl_constructors.vec3_from_mat3x4_fs +KHR-GL41.shaders30.glsl_constructors.vec3_from_mat3x4_mat3x4_invalid_vs +KHR-GL41.shaders30.glsl_constructors.vec3_from_mat3x4_mat3x4_invalid_fs +KHR-GL41.shaders30.glsl_constructors.vec3_from_mat4_vs +KHR-GL41.shaders30.glsl_constructors.vec3_from_mat4_fs +KHR-GL41.shaders30.glsl_constructors.vec3_from_mat4_mat4_invalid_vs +KHR-GL41.shaders30.glsl_constructors.vec3_from_mat4_mat4_invalid_fs +KHR-GL41.shaders30.glsl_constructors.vec3_from_mat4x2_vs +KHR-GL41.shaders30.glsl_constructors.vec3_from_mat4x2_fs +KHR-GL41.shaders30.glsl_constructors.vec3_from_mat4x2_mat4x2_invalid_vs +KHR-GL41.shaders30.glsl_constructors.vec3_from_mat4x2_mat4x2_invalid_fs +KHR-GL41.shaders30.glsl_constructors.vec3_from_mat4x3_vs +KHR-GL41.shaders30.glsl_constructors.vec3_from_mat4x3_fs +KHR-GL41.shaders30.glsl_constructors.vec3_from_mat4x3_mat4x3_invalid_vs +KHR-GL41.shaders30.glsl_constructors.vec3_from_mat4x3_mat4x3_invalid_fs +KHR-GL41.shaders30.glsl_constructors.vec3_from_float_mat2_vs +KHR-GL41.shaders30.glsl_constructors.vec3_from_float_mat2_fs +KHR-GL41.shaders30.glsl_constructors.vec3_from_float_mat2_float_invalid_vs +KHR-GL41.shaders30.glsl_constructors.vec3_from_float_mat2_float_invalid_fs +KHR-GL41.shaders30.glsl_constructors.vec3_from_float_mat2x3_vs +KHR-GL41.shaders30.glsl_constructors.vec3_from_float_mat2x3_fs +KHR-GL41.shaders30.glsl_constructors.vec3_from_float_mat2x3_float_invalid_vs +KHR-GL41.shaders30.glsl_constructors.vec3_from_float_mat2x3_float_invalid_fs +KHR-GL41.shaders30.glsl_constructors.vec3_from_float_mat2x4_vs +KHR-GL41.shaders30.glsl_constructors.vec3_from_float_mat2x4_fs +KHR-GL41.shaders30.glsl_constructors.vec3_from_float_mat2x4_float_invalid_vs +KHR-GL41.shaders30.glsl_constructors.vec3_from_float_mat2x4_float_invalid_fs +KHR-GL41.shaders30.glsl_constructors.vec3_from_float_mat3_vs +KHR-GL41.shaders30.glsl_constructors.vec3_from_float_mat3_fs +KHR-GL41.shaders30.glsl_constructors.vec3_from_float_mat3_float_invalid_vs +KHR-GL41.shaders30.glsl_constructors.vec3_from_float_mat3_float_invalid_fs +KHR-GL41.shaders30.glsl_constructors.vec3_from_float_mat3x2_vs +KHR-GL41.shaders30.glsl_constructors.vec3_from_float_mat3x2_fs +KHR-GL41.shaders30.glsl_constructors.vec3_from_float_mat3x2_float_invalid_vs +KHR-GL41.shaders30.glsl_constructors.vec3_from_float_mat3x2_float_invalid_fs +KHR-GL41.shaders30.glsl_constructors.vec3_from_float_mat3x4_vs +KHR-GL41.shaders30.glsl_constructors.vec3_from_float_mat3x4_fs +KHR-GL41.shaders30.glsl_constructors.vec3_from_float_mat3x4_float_invalid_vs +KHR-GL41.shaders30.glsl_constructors.vec3_from_float_mat3x4_float_invalid_fs +KHR-GL41.shaders30.glsl_constructors.vec3_from_float_mat4_vs +KHR-GL41.shaders30.glsl_constructors.vec3_from_float_mat4_fs +KHR-GL41.shaders30.glsl_constructors.vec3_from_float_mat4_float_invalid_vs +KHR-GL41.shaders30.glsl_constructors.vec3_from_float_mat4_float_invalid_fs +KHR-GL41.shaders30.glsl_constructors.vec3_from_float_mat4x2_vs +KHR-GL41.shaders30.glsl_constructors.vec3_from_float_mat4x2_fs +KHR-GL41.shaders30.glsl_constructors.vec3_from_float_mat4x2_float_invalid_vs +KHR-GL41.shaders30.glsl_constructors.vec3_from_float_mat4x2_float_invalid_fs +KHR-GL41.shaders30.glsl_constructors.vec3_from_float_mat4x3_vs +KHR-GL41.shaders30.glsl_constructors.vec3_from_float_mat4x3_fs +KHR-GL41.shaders30.glsl_constructors.vec3_from_float_mat4x3_float_invalid_vs +KHR-GL41.shaders30.glsl_constructors.vec3_from_float_mat4x3_float_invalid_fs +KHR-GL41.shaders30.glsl_constructors.vec4_from_mat2_vs +KHR-GL41.shaders30.glsl_constructors.vec4_from_mat2_fs +KHR-GL41.shaders30.glsl_constructors.vec4_from_mat2_mat2_invalid_vs +KHR-GL41.shaders30.glsl_constructors.vec4_from_mat2_mat2_invalid_fs +KHR-GL41.shaders30.glsl_constructors.vec4_from_mat2x3_vs +KHR-GL41.shaders30.glsl_constructors.vec4_from_mat2x3_fs +KHR-GL41.shaders30.glsl_constructors.vec4_from_mat2x3_mat2x3_invalid_vs +KHR-GL41.shaders30.glsl_constructors.vec4_from_mat2x3_mat2x3_invalid_fs +KHR-GL41.shaders30.glsl_constructors.vec4_from_mat2x4_vs +KHR-GL41.shaders30.glsl_constructors.vec4_from_mat2x4_fs +KHR-GL41.shaders30.glsl_constructors.vec4_from_mat2x4_mat2x4_invalid_vs +KHR-GL41.shaders30.glsl_constructors.vec4_from_mat2x4_mat2x4_invalid_fs +KHR-GL41.shaders30.glsl_constructors.vec4_from_mat3_vs +KHR-GL41.shaders30.glsl_constructors.vec4_from_mat3_fs +KHR-GL41.shaders30.glsl_constructors.vec4_from_mat3_mat3_invalid_vs +KHR-GL41.shaders30.glsl_constructors.vec4_from_mat3_mat3_invalid_fs +KHR-GL41.shaders30.glsl_constructors.vec4_from_mat3x2_vs +KHR-GL41.shaders30.glsl_constructors.vec4_from_mat3x2_fs +KHR-GL41.shaders30.glsl_constructors.vec4_from_mat3x2_mat3x2_invalid_vs +KHR-GL41.shaders30.glsl_constructors.vec4_from_mat3x2_mat3x2_invalid_fs +KHR-GL41.shaders30.glsl_constructors.vec4_from_mat3x4_vs +KHR-GL41.shaders30.glsl_constructors.vec4_from_mat3x4_fs +KHR-GL41.shaders30.glsl_constructors.vec4_from_mat3x4_mat3x4_invalid_vs +KHR-GL41.shaders30.glsl_constructors.vec4_from_mat3x4_mat3x4_invalid_fs +KHR-GL41.shaders30.glsl_constructors.vec4_from_mat4_vs +KHR-GL41.shaders30.glsl_constructors.vec4_from_mat4_fs +KHR-GL41.shaders30.glsl_constructors.vec4_from_mat4_mat4_invalid_vs +KHR-GL41.shaders30.glsl_constructors.vec4_from_mat4_mat4_invalid_fs +KHR-GL41.shaders30.glsl_constructors.vec4_from_mat4x2_vs +KHR-GL41.shaders30.glsl_constructors.vec4_from_mat4x2_fs +KHR-GL41.shaders30.glsl_constructors.vec4_from_mat4x2_mat4x2_invalid_vs +KHR-GL41.shaders30.glsl_constructors.vec4_from_mat4x2_mat4x2_invalid_fs +KHR-GL41.shaders30.glsl_constructors.vec4_from_mat4x3_vs +KHR-GL41.shaders30.glsl_constructors.vec4_from_mat4x3_fs +KHR-GL41.shaders30.glsl_constructors.vec4_from_mat4x3_mat4x3_invalid_vs +KHR-GL41.shaders30.glsl_constructors.vec4_from_mat4x3_mat4x3_invalid_fs +KHR-GL41.shaders30.glsl_constructors.vec4_from_float_mat2_vs +KHR-GL41.shaders30.glsl_constructors.vec4_from_float_mat2_fs +KHR-GL41.shaders30.glsl_constructors.vec4_from_float_mat2_float_invalid_vs +KHR-GL41.shaders30.glsl_constructors.vec4_from_float_mat2_float_invalid_fs +KHR-GL41.shaders30.glsl_constructors.vec4_from_float_mat2x3_vs +KHR-GL41.shaders30.glsl_constructors.vec4_from_float_mat2x3_fs +KHR-GL41.shaders30.glsl_constructors.vec4_from_float_mat2x3_float_invalid_vs +KHR-GL41.shaders30.glsl_constructors.vec4_from_float_mat2x3_float_invalid_fs +KHR-GL41.shaders30.glsl_constructors.vec4_from_float_mat2x4_vs +KHR-GL41.shaders30.glsl_constructors.vec4_from_float_mat2x4_fs +KHR-GL41.shaders30.glsl_constructors.vec4_from_float_mat2x4_float_invalid_vs +KHR-GL41.shaders30.glsl_constructors.vec4_from_float_mat2x4_float_invalid_fs +KHR-GL41.shaders30.glsl_constructors.vec4_from_float_mat3_vs +KHR-GL41.shaders30.glsl_constructors.vec4_from_float_mat3_fs +KHR-GL41.shaders30.glsl_constructors.vec4_from_float_mat3_float_invalid_vs +KHR-GL41.shaders30.glsl_constructors.vec4_from_float_mat3_float_invalid_fs +KHR-GL41.shaders30.glsl_constructors.vec4_from_float_mat3x2_vs +KHR-GL41.shaders30.glsl_constructors.vec4_from_float_mat3x2_fs +KHR-GL41.shaders30.glsl_constructors.vec4_from_float_mat3x2_float_invalid_vs +KHR-GL41.shaders30.glsl_constructors.vec4_from_float_mat3x2_float_invalid_fs +KHR-GL41.shaders30.glsl_constructors.vec4_from_float_mat3x4_vs +KHR-GL41.shaders30.glsl_constructors.vec4_from_float_mat3x4_fs +KHR-GL41.shaders30.glsl_constructors.vec4_from_float_mat3x4_float_invalid_vs +KHR-GL41.shaders30.glsl_constructors.vec4_from_float_mat3x4_float_invalid_fs +KHR-GL41.shaders30.glsl_constructors.vec4_from_float_mat4_vs +KHR-GL41.shaders30.glsl_constructors.vec4_from_float_mat4_fs +KHR-GL41.shaders30.glsl_constructors.vec4_from_float_mat4_float_invalid_vs +KHR-GL41.shaders30.glsl_constructors.vec4_from_float_mat4_float_invalid_fs +KHR-GL41.shaders30.glsl_constructors.vec4_from_float_mat4x2_vs +KHR-GL41.shaders30.glsl_constructors.vec4_from_float_mat4x2_fs +KHR-GL41.shaders30.glsl_constructors.vec4_from_float_mat4x2_float_invalid_vs +KHR-GL41.shaders30.glsl_constructors.vec4_from_float_mat4x2_float_invalid_fs +KHR-GL41.shaders30.glsl_constructors.vec4_from_float_mat4x3_vs +KHR-GL41.shaders30.glsl_constructors.vec4_from_float_mat4x3_fs +KHR-GL41.shaders30.glsl_constructors.vec4_from_float_mat4x3_float_invalid_vs +KHR-GL41.shaders30.glsl_constructors.vec4_from_float_mat4x3_float_invalid_fs +KHR-GL41.shaders30.glsl_constructors.ivec2_from_mat2_vs +KHR-GL41.shaders30.glsl_constructors.ivec2_from_mat2_fs +KHR-GL41.shaders30.glsl_constructors.ivec2_from_mat2_mat2_invalid_vs +KHR-GL41.shaders30.glsl_constructors.ivec2_from_mat2_mat2_invalid_fs +KHR-GL41.shaders30.glsl_constructors.ivec2_from_mat2x3_vs +KHR-GL41.shaders30.glsl_constructors.ivec2_from_mat2x3_fs +KHR-GL41.shaders30.glsl_constructors.ivec2_from_mat2x3_mat2x3_invalid_vs +KHR-GL41.shaders30.glsl_constructors.ivec2_from_mat2x3_mat2x3_invalid_fs +KHR-GL41.shaders30.glsl_constructors.ivec2_from_mat2x4_vs +KHR-GL41.shaders30.glsl_constructors.ivec2_from_mat2x4_fs +KHR-GL41.shaders30.glsl_constructors.ivec2_from_mat2x4_mat2x4_invalid_vs +KHR-GL41.shaders30.glsl_constructors.ivec2_from_mat2x4_mat2x4_invalid_fs +KHR-GL41.shaders30.glsl_constructors.ivec2_from_mat3_vs +KHR-GL41.shaders30.glsl_constructors.ivec2_from_mat3_fs +KHR-GL41.shaders30.glsl_constructors.ivec2_from_mat3_mat3_invalid_vs +KHR-GL41.shaders30.glsl_constructors.ivec2_from_mat3_mat3_invalid_fs +KHR-GL41.shaders30.glsl_constructors.ivec2_from_mat3x2_vs +KHR-GL41.shaders30.glsl_constructors.ivec2_from_mat3x2_fs +KHR-GL41.shaders30.glsl_constructors.ivec2_from_mat3x2_mat3x2_invalid_vs +KHR-GL41.shaders30.glsl_constructors.ivec2_from_mat3x2_mat3x2_invalid_fs +KHR-GL41.shaders30.glsl_constructors.ivec2_from_mat3x4_vs +KHR-GL41.shaders30.glsl_constructors.ivec2_from_mat3x4_fs +KHR-GL41.shaders30.glsl_constructors.ivec2_from_mat3x4_mat3x4_invalid_vs +KHR-GL41.shaders30.glsl_constructors.ivec2_from_mat3x4_mat3x4_invalid_fs +KHR-GL41.shaders30.glsl_constructors.ivec2_from_mat4_vs +KHR-GL41.shaders30.glsl_constructors.ivec2_from_mat4_fs +KHR-GL41.shaders30.glsl_constructors.ivec2_from_mat4_mat4_invalid_vs +KHR-GL41.shaders30.glsl_constructors.ivec2_from_mat4_mat4_invalid_fs +KHR-GL41.shaders30.glsl_constructors.ivec2_from_mat4x2_vs +KHR-GL41.shaders30.glsl_constructors.ivec2_from_mat4x2_fs +KHR-GL41.shaders30.glsl_constructors.ivec2_from_mat4x2_mat4x2_invalid_vs +KHR-GL41.shaders30.glsl_constructors.ivec2_from_mat4x2_mat4x2_invalid_fs +KHR-GL41.shaders30.glsl_constructors.ivec2_from_mat4x3_vs +KHR-GL41.shaders30.glsl_constructors.ivec2_from_mat4x3_fs +KHR-GL41.shaders30.glsl_constructors.ivec2_from_mat4x3_mat4x3_invalid_vs +KHR-GL41.shaders30.glsl_constructors.ivec2_from_mat4x3_mat4x3_invalid_fs +KHR-GL41.shaders30.glsl_constructors.ivec2_from_int_mat2_vs +KHR-GL41.shaders30.glsl_constructors.ivec2_from_int_mat2_fs +KHR-GL41.shaders30.glsl_constructors.ivec2_from_int_mat2_int_invalid_vs +KHR-GL41.shaders30.glsl_constructors.ivec2_from_int_mat2_int_invalid_fs +KHR-GL41.shaders30.glsl_constructors.ivec2_from_int_mat2x3_vs +KHR-GL41.shaders30.glsl_constructors.ivec2_from_int_mat2x3_fs +KHR-GL41.shaders30.glsl_constructors.ivec2_from_int_mat2x3_int_invalid_vs +KHR-GL41.shaders30.glsl_constructors.ivec2_from_int_mat2x3_int_invalid_fs +KHR-GL41.shaders30.glsl_constructors.ivec2_from_int_mat2x4_vs +KHR-GL41.shaders30.glsl_constructors.ivec2_from_int_mat2x4_fs +KHR-GL41.shaders30.glsl_constructors.ivec2_from_int_mat2x4_int_invalid_vs +KHR-GL41.shaders30.glsl_constructors.ivec2_from_int_mat2x4_int_invalid_fs +KHR-GL41.shaders30.glsl_constructors.ivec2_from_int_mat3_vs +KHR-GL41.shaders30.glsl_constructors.ivec2_from_int_mat3_fs +KHR-GL41.shaders30.glsl_constructors.ivec2_from_int_mat3_int_invalid_vs +KHR-GL41.shaders30.glsl_constructors.ivec2_from_int_mat3_int_invalid_fs +KHR-GL41.shaders30.glsl_constructors.ivec2_from_int_mat3x2_vs +KHR-GL41.shaders30.glsl_constructors.ivec2_from_int_mat3x2_fs +KHR-GL41.shaders30.glsl_constructors.ivec2_from_int_mat3x2_int_invalid_vs +KHR-GL41.shaders30.glsl_constructors.ivec2_from_int_mat3x2_int_invalid_fs +KHR-GL41.shaders30.glsl_constructors.ivec2_from_int_mat3x4_vs +KHR-GL41.shaders30.glsl_constructors.ivec2_from_int_mat3x4_fs +KHR-GL41.shaders30.glsl_constructors.ivec2_from_int_mat3x4_int_invalid_vs +KHR-GL41.shaders30.glsl_constructors.ivec2_from_int_mat3x4_int_invalid_fs +KHR-GL41.shaders30.glsl_constructors.ivec2_from_int_mat4_vs +KHR-GL41.shaders30.glsl_constructors.ivec2_from_int_mat4_fs +KHR-GL41.shaders30.glsl_constructors.ivec2_from_int_mat4_int_invalid_vs +KHR-GL41.shaders30.glsl_constructors.ivec2_from_int_mat4_int_invalid_fs +KHR-GL41.shaders30.glsl_constructors.ivec2_from_int_mat4x2_vs +KHR-GL41.shaders30.glsl_constructors.ivec2_from_int_mat4x2_fs +KHR-GL41.shaders30.glsl_constructors.ivec2_from_int_mat4x2_int_invalid_vs +KHR-GL41.shaders30.glsl_constructors.ivec2_from_int_mat4x2_int_invalid_fs +KHR-GL41.shaders30.glsl_constructors.ivec2_from_int_mat4x3_vs +KHR-GL41.shaders30.glsl_constructors.ivec2_from_int_mat4x3_fs +KHR-GL41.shaders30.glsl_constructors.ivec2_from_int_mat4x3_int_invalid_vs +KHR-GL41.shaders30.glsl_constructors.ivec2_from_int_mat4x3_int_invalid_fs +KHR-GL41.shaders30.glsl_constructors.ivec3_from_mat2_vs +KHR-GL41.shaders30.glsl_constructors.ivec3_from_mat2_fs +KHR-GL41.shaders30.glsl_constructors.ivec3_from_mat2_mat2_invalid_vs +KHR-GL41.shaders30.glsl_constructors.ivec3_from_mat2_mat2_invalid_fs +KHR-GL41.shaders30.glsl_constructors.ivec3_from_mat2x3_vs +KHR-GL41.shaders30.glsl_constructors.ivec3_from_mat2x3_fs +KHR-GL41.shaders30.glsl_constructors.ivec3_from_mat2x3_mat2x3_invalid_vs +KHR-GL41.shaders30.glsl_constructors.ivec3_from_mat2x3_mat2x3_invalid_fs +KHR-GL41.shaders30.glsl_constructors.ivec3_from_mat2x4_vs +KHR-GL41.shaders30.glsl_constructors.ivec3_from_mat2x4_fs +KHR-GL41.shaders30.glsl_constructors.ivec3_from_mat2x4_mat2x4_invalid_vs +KHR-GL41.shaders30.glsl_constructors.ivec3_from_mat2x4_mat2x4_invalid_fs +KHR-GL41.shaders30.glsl_constructors.ivec3_from_mat3_vs +KHR-GL41.shaders30.glsl_constructors.ivec3_from_mat3_fs +KHR-GL41.shaders30.glsl_constructors.ivec3_from_mat3_mat3_invalid_vs +KHR-GL41.shaders30.glsl_constructors.ivec3_from_mat3_mat3_invalid_fs +KHR-GL41.shaders30.glsl_constructors.ivec3_from_mat3x2_vs +KHR-GL41.shaders30.glsl_constructors.ivec3_from_mat3x2_fs +KHR-GL41.shaders30.glsl_constructors.ivec3_from_mat3x2_mat3x2_invalid_vs +KHR-GL41.shaders30.glsl_constructors.ivec3_from_mat3x2_mat3x2_invalid_fs +KHR-GL41.shaders30.glsl_constructors.ivec3_from_mat3x4_vs +KHR-GL41.shaders30.glsl_constructors.ivec3_from_mat3x4_fs +KHR-GL41.shaders30.glsl_constructors.ivec3_from_mat3x4_mat3x4_invalid_vs +KHR-GL41.shaders30.glsl_constructors.ivec3_from_mat3x4_mat3x4_invalid_fs +KHR-GL41.shaders30.glsl_constructors.ivec3_from_mat4_vs +KHR-GL41.shaders30.glsl_constructors.ivec3_from_mat4_fs +KHR-GL41.shaders30.glsl_constructors.ivec3_from_mat4_mat4_invalid_vs +KHR-GL41.shaders30.glsl_constructors.ivec3_from_mat4_mat4_invalid_fs +KHR-GL41.shaders30.glsl_constructors.ivec3_from_mat4x2_vs +KHR-GL41.shaders30.glsl_constructors.ivec3_from_mat4x2_fs +KHR-GL41.shaders30.glsl_constructors.ivec3_from_mat4x2_mat4x2_invalid_vs +KHR-GL41.shaders30.glsl_constructors.ivec3_from_mat4x2_mat4x2_invalid_fs +KHR-GL41.shaders30.glsl_constructors.ivec3_from_mat4x3_vs +KHR-GL41.shaders30.glsl_constructors.ivec3_from_mat4x3_fs +KHR-GL41.shaders30.glsl_constructors.ivec3_from_mat4x3_mat4x3_invalid_vs +KHR-GL41.shaders30.glsl_constructors.ivec3_from_mat4x3_mat4x3_invalid_fs +KHR-GL41.shaders30.glsl_constructors.ivec3_from_int_mat2_vs +KHR-GL41.shaders30.glsl_constructors.ivec3_from_int_mat2_fs +KHR-GL41.shaders30.glsl_constructors.ivec3_from_int_mat2_int_invalid_vs +KHR-GL41.shaders30.glsl_constructors.ivec3_from_int_mat2_int_invalid_fs +KHR-GL41.shaders30.glsl_constructors.ivec3_from_int_mat2x3_vs +KHR-GL41.shaders30.glsl_constructors.ivec3_from_int_mat2x3_fs +KHR-GL41.shaders30.glsl_constructors.ivec3_from_int_mat2x3_int_invalid_vs +KHR-GL41.shaders30.glsl_constructors.ivec3_from_int_mat2x3_int_invalid_fs +KHR-GL41.shaders30.glsl_constructors.ivec3_from_int_mat2x4_vs +KHR-GL41.shaders30.glsl_constructors.ivec3_from_int_mat2x4_fs +KHR-GL41.shaders30.glsl_constructors.ivec3_from_int_mat2x4_int_invalid_vs +KHR-GL41.shaders30.glsl_constructors.ivec3_from_int_mat2x4_int_invalid_fs +KHR-GL41.shaders30.glsl_constructors.ivec3_from_int_mat3_vs +KHR-GL41.shaders30.glsl_constructors.ivec3_from_int_mat3_fs +KHR-GL41.shaders30.glsl_constructors.ivec3_from_int_mat3_int_invalid_vs +KHR-GL41.shaders30.glsl_constructors.ivec3_from_int_mat3_int_invalid_fs +KHR-GL41.shaders30.glsl_constructors.ivec3_from_int_mat3x2_vs +KHR-GL41.shaders30.glsl_constructors.ivec3_from_int_mat3x2_fs +KHR-GL41.shaders30.glsl_constructors.ivec3_from_int_mat3x2_int_invalid_vs +KHR-GL41.shaders30.glsl_constructors.ivec3_from_int_mat3x2_int_invalid_fs +KHR-GL41.shaders30.glsl_constructors.ivec3_from_int_mat3x4_vs +KHR-GL41.shaders30.glsl_constructors.ivec3_from_int_mat3x4_fs +KHR-GL41.shaders30.glsl_constructors.ivec3_from_int_mat3x4_int_invalid_vs +KHR-GL41.shaders30.glsl_constructors.ivec3_from_int_mat3x4_int_invalid_fs +KHR-GL41.shaders30.glsl_constructors.ivec3_from_int_mat4_vs +KHR-GL41.shaders30.glsl_constructors.ivec3_from_int_mat4_fs +KHR-GL41.shaders30.glsl_constructors.ivec3_from_int_mat4_int_invalid_vs +KHR-GL41.shaders30.glsl_constructors.ivec3_from_int_mat4_int_invalid_fs +KHR-GL41.shaders30.glsl_constructors.ivec3_from_int_mat4x2_vs +KHR-GL41.shaders30.glsl_constructors.ivec3_from_int_mat4x2_fs +KHR-GL41.shaders30.glsl_constructors.ivec3_from_int_mat4x2_int_invalid_vs +KHR-GL41.shaders30.glsl_constructors.ivec3_from_int_mat4x2_int_invalid_fs +KHR-GL41.shaders30.glsl_constructors.ivec3_from_int_mat4x3_vs +KHR-GL41.shaders30.glsl_constructors.ivec3_from_int_mat4x3_fs +KHR-GL41.shaders30.glsl_constructors.ivec3_from_int_mat4x3_int_invalid_vs +KHR-GL41.shaders30.glsl_constructors.ivec3_from_int_mat4x3_int_invalid_fs +KHR-GL41.shaders30.glsl_constructors.ivec4_from_mat2_vs +KHR-GL41.shaders30.glsl_constructors.ivec4_from_mat2_fs +KHR-GL41.shaders30.glsl_constructors.ivec4_from_mat2_mat2_invalid_vs +KHR-GL41.shaders30.glsl_constructors.ivec4_from_mat2_mat2_invalid_fs +KHR-GL41.shaders30.glsl_constructors.ivec4_from_mat2x3_vs +KHR-GL41.shaders30.glsl_constructors.ivec4_from_mat2x3_fs +KHR-GL41.shaders30.glsl_constructors.ivec4_from_mat2x3_mat2x3_invalid_vs +KHR-GL41.shaders30.glsl_constructors.ivec4_from_mat2x3_mat2x3_invalid_fs +KHR-GL41.shaders30.glsl_constructors.ivec4_from_mat2x4_vs +KHR-GL41.shaders30.glsl_constructors.ivec4_from_mat2x4_fs +KHR-GL41.shaders30.glsl_constructors.ivec4_from_mat2x4_mat2x4_invalid_vs +KHR-GL41.shaders30.glsl_constructors.ivec4_from_mat2x4_mat2x4_invalid_fs +KHR-GL41.shaders30.glsl_constructors.ivec4_from_mat3_vs +KHR-GL41.shaders30.glsl_constructors.ivec4_from_mat3_fs +KHR-GL41.shaders30.glsl_constructors.ivec4_from_mat3_mat3_invalid_vs +KHR-GL41.shaders30.glsl_constructors.ivec4_from_mat3_mat3_invalid_fs +KHR-GL41.shaders30.glsl_constructors.ivec4_from_mat3x2_vs +KHR-GL41.shaders30.glsl_constructors.ivec4_from_mat3x2_fs +KHR-GL41.shaders30.glsl_constructors.ivec4_from_mat3x2_mat3x2_invalid_vs +KHR-GL41.shaders30.glsl_constructors.ivec4_from_mat3x2_mat3x2_invalid_fs +KHR-GL41.shaders30.glsl_constructors.ivec4_from_mat3x4_vs +KHR-GL41.shaders30.glsl_constructors.ivec4_from_mat3x4_fs +KHR-GL41.shaders30.glsl_constructors.ivec4_from_mat3x4_mat3x4_invalid_vs +KHR-GL41.shaders30.glsl_constructors.ivec4_from_mat3x4_mat3x4_invalid_fs +KHR-GL41.shaders30.glsl_constructors.ivec4_from_mat4_vs +KHR-GL41.shaders30.glsl_constructors.ivec4_from_mat4_fs +KHR-GL41.shaders30.glsl_constructors.ivec4_from_mat4_mat4_invalid_vs +KHR-GL41.shaders30.glsl_constructors.ivec4_from_mat4_mat4_invalid_fs +KHR-GL41.shaders30.glsl_constructors.ivec4_from_mat4x2_vs +KHR-GL41.shaders30.glsl_constructors.ivec4_from_mat4x2_fs +KHR-GL41.shaders30.glsl_constructors.ivec4_from_mat4x2_mat4x2_invalid_vs +KHR-GL41.shaders30.glsl_constructors.ivec4_from_mat4x2_mat4x2_invalid_fs +KHR-GL41.shaders30.glsl_constructors.ivec4_from_mat4x3_vs +KHR-GL41.shaders30.glsl_constructors.ivec4_from_mat4x3_fs +KHR-GL41.shaders30.glsl_constructors.ivec4_from_mat4x3_mat4x3_invalid_vs +KHR-GL41.shaders30.glsl_constructors.ivec4_from_mat4x3_mat4x3_invalid_fs +KHR-GL41.shaders30.glsl_constructors.ivec4_from_int_mat2_vs +KHR-GL41.shaders30.glsl_constructors.ivec4_from_int_mat2_fs +KHR-GL41.shaders30.glsl_constructors.ivec4_from_int_mat2_int_invalid_vs +KHR-GL41.shaders30.glsl_constructors.ivec4_from_int_mat2_int_invalid_fs +KHR-GL41.shaders30.glsl_constructors.ivec4_from_int_mat2x3_vs +KHR-GL41.shaders30.glsl_constructors.ivec4_from_int_mat2x3_fs +KHR-GL41.shaders30.glsl_constructors.ivec4_from_int_mat2x3_int_invalid_vs +KHR-GL41.shaders30.glsl_constructors.ivec4_from_int_mat2x3_int_invalid_fs +KHR-GL41.shaders30.glsl_constructors.ivec4_from_int_mat2x4_vs +KHR-GL41.shaders30.glsl_constructors.ivec4_from_int_mat2x4_fs +KHR-GL41.shaders30.glsl_constructors.ivec4_from_int_mat2x4_int_invalid_vs +KHR-GL41.shaders30.glsl_constructors.ivec4_from_int_mat2x4_int_invalid_fs +KHR-GL41.shaders30.glsl_constructors.ivec4_from_int_mat3_vs +KHR-GL41.shaders30.glsl_constructors.ivec4_from_int_mat3_fs +KHR-GL41.shaders30.glsl_constructors.ivec4_from_int_mat3_int_invalid_vs +KHR-GL41.shaders30.glsl_constructors.ivec4_from_int_mat3_int_invalid_fs +KHR-GL41.shaders30.glsl_constructors.ivec4_from_int_mat3x2_vs +KHR-GL41.shaders30.glsl_constructors.ivec4_from_int_mat3x2_fs +KHR-GL41.shaders30.glsl_constructors.ivec4_from_int_mat3x2_int_invalid_vs +KHR-GL41.shaders30.glsl_constructors.ivec4_from_int_mat3x2_int_invalid_fs +KHR-GL41.shaders30.glsl_constructors.ivec4_from_int_mat3x4_vs +KHR-GL41.shaders30.glsl_constructors.ivec4_from_int_mat3x4_fs +KHR-GL41.shaders30.glsl_constructors.ivec4_from_int_mat3x4_int_invalid_vs +KHR-GL41.shaders30.glsl_constructors.ivec4_from_int_mat3x4_int_invalid_fs +KHR-GL41.shaders30.glsl_constructors.ivec4_from_int_mat4_vs +KHR-GL41.shaders30.glsl_constructors.ivec4_from_int_mat4_fs +KHR-GL41.shaders30.glsl_constructors.ivec4_from_int_mat4_int_invalid_vs +KHR-GL41.shaders30.glsl_constructors.ivec4_from_int_mat4_int_invalid_fs +KHR-GL41.shaders30.glsl_constructors.ivec4_from_int_mat4x2_vs +KHR-GL41.shaders30.glsl_constructors.ivec4_from_int_mat4x2_fs +KHR-GL41.shaders30.glsl_constructors.ivec4_from_int_mat4x2_int_invalid_vs +KHR-GL41.shaders30.glsl_constructors.ivec4_from_int_mat4x2_int_invalid_fs +KHR-GL41.shaders30.glsl_constructors.ivec4_from_int_mat4x3_vs +KHR-GL41.shaders30.glsl_constructors.ivec4_from_int_mat4x3_fs +KHR-GL41.shaders30.glsl_constructors.ivec4_from_int_mat4x3_int_invalid_vs +KHR-GL41.shaders30.glsl_constructors.ivec4_from_int_mat4x3_int_invalid_fs +KHR-GL41.shaders30.glsl_constructors.bvec2_from_mat2_vs +KHR-GL41.shaders30.glsl_constructors.bvec2_from_mat2_fs +KHR-GL41.shaders30.glsl_constructors.bvec2_from_mat2_mat2_invalid_vs +KHR-GL41.shaders30.glsl_constructors.bvec2_from_mat2_mat2_invalid_fs +KHR-GL41.shaders30.glsl_constructors.bvec2_from_mat2x3_vs +KHR-GL41.shaders30.glsl_constructors.bvec2_from_mat2x3_fs +KHR-GL41.shaders30.glsl_constructors.bvec2_from_mat2x3_mat2x3_invalid_vs +KHR-GL41.shaders30.glsl_constructors.bvec2_from_mat2x3_mat2x3_invalid_fs +KHR-GL41.shaders30.glsl_constructors.bvec2_from_mat2x4_vs +KHR-GL41.shaders30.glsl_constructors.bvec2_from_mat2x4_fs +KHR-GL41.shaders30.glsl_constructors.bvec2_from_mat2x4_mat2x4_invalid_vs +KHR-GL41.shaders30.glsl_constructors.bvec2_from_mat2x4_mat2x4_invalid_fs +KHR-GL41.shaders30.glsl_constructors.bvec2_from_mat3_vs +KHR-GL41.shaders30.glsl_constructors.bvec2_from_mat3_fs +KHR-GL41.shaders30.glsl_constructors.bvec2_from_mat3_mat3_invalid_vs +KHR-GL41.shaders30.glsl_constructors.bvec2_from_mat3_mat3_invalid_fs +KHR-GL41.shaders30.glsl_constructors.bvec2_from_mat3x2_vs +KHR-GL41.shaders30.glsl_constructors.bvec2_from_mat3x2_fs +KHR-GL41.shaders30.glsl_constructors.bvec2_from_mat3x2_mat3x2_invalid_vs +KHR-GL41.shaders30.glsl_constructors.bvec2_from_mat3x2_mat3x2_invalid_fs +KHR-GL41.shaders30.glsl_constructors.bvec2_from_mat3x4_vs +KHR-GL41.shaders30.glsl_constructors.bvec2_from_mat3x4_fs +KHR-GL41.shaders30.glsl_constructors.bvec2_from_mat3x4_mat3x4_invalid_vs +KHR-GL41.shaders30.glsl_constructors.bvec2_from_mat3x4_mat3x4_invalid_fs +KHR-GL41.shaders30.glsl_constructors.bvec2_from_mat4_vs +KHR-GL41.shaders30.glsl_constructors.bvec2_from_mat4_fs +KHR-GL41.shaders30.glsl_constructors.bvec2_from_mat4_mat4_invalid_vs +KHR-GL41.shaders30.glsl_constructors.bvec2_from_mat4_mat4_invalid_fs +KHR-GL41.shaders30.glsl_constructors.bvec2_from_mat4x2_vs +KHR-GL41.shaders30.glsl_constructors.bvec2_from_mat4x2_fs +KHR-GL41.shaders30.glsl_constructors.bvec2_from_mat4x2_mat4x2_invalid_vs +KHR-GL41.shaders30.glsl_constructors.bvec2_from_mat4x2_mat4x2_invalid_fs +KHR-GL41.shaders30.glsl_constructors.bvec2_from_mat4x3_vs +KHR-GL41.shaders30.glsl_constructors.bvec2_from_mat4x3_fs +KHR-GL41.shaders30.glsl_constructors.bvec2_from_mat4x3_mat4x3_invalid_vs +KHR-GL41.shaders30.glsl_constructors.bvec2_from_mat4x3_mat4x3_invalid_fs +KHR-GL41.shaders30.glsl_constructors.bvec2_from_bool_mat2_vs +KHR-GL41.shaders30.glsl_constructors.bvec2_from_bool_mat2_fs +KHR-GL41.shaders30.glsl_constructors.bvec2_from_bool_mat2_bool_invalid_vs +KHR-GL41.shaders30.glsl_constructors.bvec2_from_bool_mat2_bool_invalid_fs +KHR-GL41.shaders30.glsl_constructors.bvec2_from_bool_mat2x3_vs +KHR-GL41.shaders30.glsl_constructors.bvec2_from_bool_mat2x3_fs +KHR-GL41.shaders30.glsl_constructors.bvec2_from_bool_mat2x3_bool_invalid_vs +KHR-GL41.shaders30.glsl_constructors.bvec2_from_bool_mat2x3_bool_invalid_fs +KHR-GL41.shaders30.glsl_constructors.bvec2_from_bool_mat2x4_vs +KHR-GL41.shaders30.glsl_constructors.bvec2_from_bool_mat2x4_fs +KHR-GL41.shaders30.glsl_constructors.bvec2_from_bool_mat2x4_bool_invalid_vs +KHR-GL41.shaders30.glsl_constructors.bvec2_from_bool_mat2x4_bool_invalid_fs +KHR-GL41.shaders30.glsl_constructors.bvec2_from_bool_mat3_vs +KHR-GL41.shaders30.glsl_constructors.bvec2_from_bool_mat3_fs +KHR-GL41.shaders30.glsl_constructors.bvec2_from_bool_mat3_bool_invalid_vs +KHR-GL41.shaders30.glsl_constructors.bvec2_from_bool_mat3_bool_invalid_fs +KHR-GL41.shaders30.glsl_constructors.bvec2_from_bool_mat3x2_vs +KHR-GL41.shaders30.glsl_constructors.bvec2_from_bool_mat3x2_fs +KHR-GL41.shaders30.glsl_constructors.bvec2_from_bool_mat3x2_bool_invalid_vs +KHR-GL41.shaders30.glsl_constructors.bvec2_from_bool_mat3x2_bool_invalid_fs +KHR-GL41.shaders30.glsl_constructors.bvec2_from_bool_mat3x4_vs +KHR-GL41.shaders30.glsl_constructors.bvec2_from_bool_mat3x4_fs +KHR-GL41.shaders30.glsl_constructors.bvec2_from_bool_mat3x4_bool_invalid_vs +KHR-GL41.shaders30.glsl_constructors.bvec2_from_bool_mat3x4_bool_invalid_fs +KHR-GL41.shaders30.glsl_constructors.bvec2_from_bool_mat4_vs +KHR-GL41.shaders30.glsl_constructors.bvec2_from_bool_mat4_fs +KHR-GL41.shaders30.glsl_constructors.bvec2_from_bool_mat4_bool_invalid_vs +KHR-GL41.shaders30.glsl_constructors.bvec2_from_bool_mat4_bool_invalid_fs +KHR-GL41.shaders30.glsl_constructors.bvec2_from_bool_mat4x2_vs +KHR-GL41.shaders30.glsl_constructors.bvec2_from_bool_mat4x2_fs +KHR-GL41.shaders30.glsl_constructors.bvec2_from_bool_mat4x2_bool_invalid_vs +KHR-GL41.shaders30.glsl_constructors.bvec2_from_bool_mat4x2_bool_invalid_fs +KHR-GL41.shaders30.glsl_constructors.bvec2_from_bool_mat4x3_vs +KHR-GL41.shaders30.glsl_constructors.bvec2_from_bool_mat4x3_fs +KHR-GL41.shaders30.glsl_constructors.bvec2_from_bool_mat4x3_bool_invalid_vs +KHR-GL41.shaders30.glsl_constructors.bvec2_from_bool_mat4x3_bool_invalid_fs +KHR-GL41.shaders30.glsl_constructors.bvec3_from_mat2_vs +KHR-GL41.shaders30.glsl_constructors.bvec3_from_mat2_fs +KHR-GL41.shaders30.glsl_constructors.bvec3_from_mat2_mat2_invalid_vs +KHR-GL41.shaders30.glsl_constructors.bvec3_from_mat2_mat2_invalid_fs +KHR-GL41.shaders30.glsl_constructors.bvec3_from_mat2x3_vs +KHR-GL41.shaders30.glsl_constructors.bvec3_from_mat2x3_fs +KHR-GL41.shaders30.glsl_constructors.bvec3_from_mat2x3_mat2x3_invalid_vs +KHR-GL41.shaders30.glsl_constructors.bvec3_from_mat2x3_mat2x3_invalid_fs +KHR-GL41.shaders30.glsl_constructors.bvec3_from_mat2x4_vs +KHR-GL41.shaders30.glsl_constructors.bvec3_from_mat2x4_fs +KHR-GL41.shaders30.glsl_constructors.bvec3_from_mat2x4_mat2x4_invalid_vs +KHR-GL41.shaders30.glsl_constructors.bvec3_from_mat2x4_mat2x4_invalid_fs +KHR-GL41.shaders30.glsl_constructors.bvec3_from_mat3_vs +KHR-GL41.shaders30.glsl_constructors.bvec3_from_mat3_fs +KHR-GL41.shaders30.glsl_constructors.bvec3_from_mat3_mat3_invalid_vs +KHR-GL41.shaders30.glsl_constructors.bvec3_from_mat3_mat3_invalid_fs +KHR-GL41.shaders30.glsl_constructors.bvec3_from_mat3x2_vs +KHR-GL41.shaders30.glsl_constructors.bvec3_from_mat3x2_fs +KHR-GL41.shaders30.glsl_constructors.bvec3_from_mat3x2_mat3x2_invalid_vs +KHR-GL41.shaders30.glsl_constructors.bvec3_from_mat3x2_mat3x2_invalid_fs +KHR-GL41.shaders30.glsl_constructors.bvec3_from_mat3x4_vs +KHR-GL41.shaders30.glsl_constructors.bvec3_from_mat3x4_fs +KHR-GL41.shaders30.glsl_constructors.bvec3_from_mat3x4_mat3x4_invalid_vs +KHR-GL41.shaders30.glsl_constructors.bvec3_from_mat3x4_mat3x4_invalid_fs +KHR-GL41.shaders30.glsl_constructors.bvec3_from_mat4_vs +KHR-GL41.shaders30.glsl_constructors.bvec3_from_mat4_fs +KHR-GL41.shaders30.glsl_constructors.bvec3_from_mat4_mat4_invalid_vs +KHR-GL41.shaders30.glsl_constructors.bvec3_from_mat4_mat4_invalid_fs +KHR-GL41.shaders30.glsl_constructors.bvec3_from_mat4x2_vs +KHR-GL41.shaders30.glsl_constructors.bvec3_from_mat4x2_fs +KHR-GL41.shaders30.glsl_constructors.bvec3_from_mat4x2_mat4x2_invalid_vs +KHR-GL41.shaders30.glsl_constructors.bvec3_from_mat4x2_mat4x2_invalid_fs +KHR-GL41.shaders30.glsl_constructors.bvec3_from_mat4x3_vs +KHR-GL41.shaders30.glsl_constructors.bvec3_from_mat4x3_fs +KHR-GL41.shaders30.glsl_constructors.bvec3_from_mat4x3_mat4x3_invalid_vs +KHR-GL41.shaders30.glsl_constructors.bvec3_from_mat4x3_mat4x3_invalid_fs +KHR-GL41.shaders30.glsl_constructors.bvec3_from_bool_mat2_vs +KHR-GL41.shaders30.glsl_constructors.bvec3_from_bool_mat2_fs +KHR-GL41.shaders30.glsl_constructors.bvec3_from_bool_mat2_bool_invalid_vs +KHR-GL41.shaders30.glsl_constructors.bvec3_from_bool_mat2_bool_invalid_fs +KHR-GL41.shaders30.glsl_constructors.bvec3_from_bool_mat2x3_vs +KHR-GL41.shaders30.glsl_constructors.bvec3_from_bool_mat2x3_fs +KHR-GL41.shaders30.glsl_constructors.bvec3_from_bool_mat2x3_bool_invalid_vs +KHR-GL41.shaders30.glsl_constructors.bvec3_from_bool_mat2x3_bool_invalid_fs +KHR-GL41.shaders30.glsl_constructors.bvec3_from_bool_mat2x4_vs +KHR-GL41.shaders30.glsl_constructors.bvec3_from_bool_mat2x4_fs +KHR-GL41.shaders30.glsl_constructors.bvec3_from_bool_mat2x4_bool_invalid_vs +KHR-GL41.shaders30.glsl_constructors.bvec3_from_bool_mat2x4_bool_invalid_fs +KHR-GL41.shaders30.glsl_constructors.bvec3_from_bool_mat3_vs +KHR-GL41.shaders30.glsl_constructors.bvec3_from_bool_mat3_fs +KHR-GL41.shaders30.glsl_constructors.bvec3_from_bool_mat3_bool_invalid_vs +KHR-GL41.shaders30.glsl_constructors.bvec3_from_bool_mat3_bool_invalid_fs +KHR-GL41.shaders30.glsl_constructors.bvec3_from_bool_mat3x2_vs +KHR-GL41.shaders30.glsl_constructors.bvec3_from_bool_mat3x2_fs +KHR-GL41.shaders30.glsl_constructors.bvec3_from_bool_mat3x2_bool_invalid_vs +KHR-GL41.shaders30.glsl_constructors.bvec3_from_bool_mat3x2_bool_invalid_fs +KHR-GL41.shaders30.glsl_constructors.bvec3_from_bool_mat3x4_vs +KHR-GL41.shaders30.glsl_constructors.bvec3_from_bool_mat3x4_fs +KHR-GL41.shaders30.glsl_constructors.bvec3_from_bool_mat3x4_bool_invalid_vs +KHR-GL41.shaders30.glsl_constructors.bvec3_from_bool_mat3x4_bool_invalid_fs +KHR-GL41.shaders30.glsl_constructors.bvec3_from_bool_mat4_vs +KHR-GL41.shaders30.glsl_constructors.bvec3_from_bool_mat4_fs +KHR-GL41.shaders30.glsl_constructors.bvec3_from_bool_mat4_bool_invalid_vs +KHR-GL41.shaders30.glsl_constructors.bvec3_from_bool_mat4_bool_invalid_fs +KHR-GL41.shaders30.glsl_constructors.bvec3_from_bool_mat4x2_vs +KHR-GL41.shaders30.glsl_constructors.bvec3_from_bool_mat4x2_fs +KHR-GL41.shaders30.glsl_constructors.bvec3_from_bool_mat4x2_bool_invalid_vs +KHR-GL41.shaders30.glsl_constructors.bvec3_from_bool_mat4x2_bool_invalid_fs +KHR-GL41.shaders30.glsl_constructors.bvec3_from_bool_mat4x3_vs +KHR-GL41.shaders30.glsl_constructors.bvec3_from_bool_mat4x3_fs +KHR-GL41.shaders30.glsl_constructors.bvec3_from_bool_mat4x3_bool_invalid_vs +KHR-GL41.shaders30.glsl_constructors.bvec3_from_bool_mat4x3_bool_invalid_fs +KHR-GL41.shaders30.glsl_constructors.bvec4_from_mat2_vs +KHR-GL41.shaders30.glsl_constructors.bvec4_from_mat2_fs +KHR-GL41.shaders30.glsl_constructors.bvec4_from_mat2_mat2_invalid_vs +KHR-GL41.shaders30.glsl_constructors.bvec4_from_mat2_mat2_invalid_fs +KHR-GL41.shaders30.glsl_constructors.bvec4_from_mat2x3_vs +KHR-GL41.shaders30.glsl_constructors.bvec4_from_mat2x3_fs +KHR-GL41.shaders30.glsl_constructors.bvec4_from_mat2x3_mat2x3_invalid_vs +KHR-GL41.shaders30.glsl_constructors.bvec4_from_mat2x3_mat2x3_invalid_fs +KHR-GL41.shaders30.glsl_constructors.bvec4_from_mat2x4_vs +KHR-GL41.shaders30.glsl_constructors.bvec4_from_mat2x4_fs +KHR-GL41.shaders30.glsl_constructors.bvec4_from_mat2x4_mat2x4_invalid_vs +KHR-GL41.shaders30.glsl_constructors.bvec4_from_mat2x4_mat2x4_invalid_fs +KHR-GL41.shaders30.glsl_constructors.bvec4_from_mat3_vs +KHR-GL41.shaders30.glsl_constructors.bvec4_from_mat3_fs +KHR-GL41.shaders30.glsl_constructors.bvec4_from_mat3_mat3_invalid_vs +KHR-GL41.shaders30.glsl_constructors.bvec4_from_mat3_mat3_invalid_fs +KHR-GL41.shaders30.glsl_constructors.bvec4_from_mat3x2_vs +KHR-GL41.shaders30.glsl_constructors.bvec4_from_mat3x2_fs +KHR-GL41.shaders30.glsl_constructors.bvec4_from_mat3x2_mat3x2_invalid_vs +KHR-GL41.shaders30.glsl_constructors.bvec4_from_mat3x2_mat3x2_invalid_fs +KHR-GL41.shaders30.glsl_constructors.bvec4_from_mat3x4_vs +KHR-GL41.shaders30.glsl_constructors.bvec4_from_mat3x4_fs +KHR-GL41.shaders30.glsl_constructors.bvec4_from_mat3x4_mat3x4_invalid_vs +KHR-GL41.shaders30.glsl_constructors.bvec4_from_mat3x4_mat3x4_invalid_fs +KHR-GL41.shaders30.glsl_constructors.bvec4_from_mat4_vs +KHR-GL41.shaders30.glsl_constructors.bvec4_from_mat4_fs +KHR-GL41.shaders30.glsl_constructors.bvec4_from_mat4_mat4_invalid_vs +KHR-GL41.shaders30.glsl_constructors.bvec4_from_mat4_mat4_invalid_fs +KHR-GL41.shaders30.glsl_constructors.bvec4_from_mat4x2_vs +KHR-GL41.shaders30.glsl_constructors.bvec4_from_mat4x2_fs +KHR-GL41.shaders30.glsl_constructors.bvec4_from_mat4x2_mat4x2_invalid_vs +KHR-GL41.shaders30.glsl_constructors.bvec4_from_mat4x2_mat4x2_invalid_fs +KHR-GL41.shaders30.glsl_constructors.bvec4_from_mat4x3_vs +KHR-GL41.shaders30.glsl_constructors.bvec4_from_mat4x3_fs +KHR-GL41.shaders30.glsl_constructors.bvec4_from_mat4x3_mat4x3_invalid_vs +KHR-GL41.shaders30.glsl_constructors.bvec4_from_mat4x3_mat4x3_invalid_fs +KHR-GL41.shaders30.glsl_constructors.bvec4_from_bool_mat2_vs +KHR-GL41.shaders30.glsl_constructors.bvec4_from_bool_mat2_fs +KHR-GL41.shaders30.glsl_constructors.bvec4_from_bool_mat2_bool_invalid_vs +KHR-GL41.shaders30.glsl_constructors.bvec4_from_bool_mat2_bool_invalid_fs +KHR-GL41.shaders30.glsl_constructors.bvec4_from_bool_mat2x3_vs +KHR-GL41.shaders30.glsl_constructors.bvec4_from_bool_mat2x3_fs +KHR-GL41.shaders30.glsl_constructors.bvec4_from_bool_mat2x3_bool_invalid_vs +KHR-GL41.shaders30.glsl_constructors.bvec4_from_bool_mat2x3_bool_invalid_fs +KHR-GL41.shaders30.glsl_constructors.bvec4_from_bool_mat2x4_vs +KHR-GL41.shaders30.glsl_constructors.bvec4_from_bool_mat2x4_fs +KHR-GL41.shaders30.glsl_constructors.bvec4_from_bool_mat2x4_bool_invalid_vs +KHR-GL41.shaders30.glsl_constructors.bvec4_from_bool_mat2x4_bool_invalid_fs +KHR-GL41.shaders30.glsl_constructors.bvec4_from_bool_mat3_vs +KHR-GL41.shaders30.glsl_constructors.bvec4_from_bool_mat3_fs +KHR-GL41.shaders30.glsl_constructors.bvec4_from_bool_mat3_bool_invalid_vs +KHR-GL41.shaders30.glsl_constructors.bvec4_from_bool_mat3_bool_invalid_fs +KHR-GL41.shaders30.glsl_constructors.bvec4_from_bool_mat3x2_vs +KHR-GL41.shaders30.glsl_constructors.bvec4_from_bool_mat3x2_fs +KHR-GL41.shaders30.glsl_constructors.bvec4_from_bool_mat3x2_bool_invalid_vs +KHR-GL41.shaders30.glsl_constructors.bvec4_from_bool_mat3x2_bool_invalid_fs +KHR-GL41.shaders30.glsl_constructors.bvec4_from_bool_mat3x4_vs +KHR-GL41.shaders30.glsl_constructors.bvec4_from_bool_mat3x4_fs +KHR-GL41.shaders30.glsl_constructors.bvec4_from_bool_mat3x4_bool_invalid_vs +KHR-GL41.shaders30.glsl_constructors.bvec4_from_bool_mat3x4_bool_invalid_fs +KHR-GL41.shaders30.glsl_constructors.bvec4_from_bool_mat4_vs +KHR-GL41.shaders30.glsl_constructors.bvec4_from_bool_mat4_fs +KHR-GL41.shaders30.glsl_constructors.bvec4_from_bool_mat4_bool_invalid_vs +KHR-GL41.shaders30.glsl_constructors.bvec4_from_bool_mat4_bool_invalid_fs +KHR-GL41.shaders30.glsl_constructors.bvec4_from_bool_mat4x2_vs +KHR-GL41.shaders30.glsl_constructors.bvec4_from_bool_mat4x2_fs +KHR-GL41.shaders30.glsl_constructors.bvec4_from_bool_mat4x2_bool_invalid_vs +KHR-GL41.shaders30.glsl_constructors.bvec4_from_bool_mat4x2_bool_invalid_fs +KHR-GL41.shaders30.glsl_constructors.bvec4_from_bool_mat4x3_vs +KHR-GL41.shaders30.glsl_constructors.bvec4_from_bool_mat4x3_fs +KHR-GL41.shaders30.glsl_constructors.bvec4_from_bool_mat4x3_bool_invalid_vs +KHR-GL41.shaders30.glsl_constructors.bvec4_from_bool_mat4x3_bool_invalid_fs KHR-GL41.ext_texture_shadow_lod.texture.sampler2darrayshadow_fragment KHR-GL41.ext_texture_shadow_lod.texture.sampler2darrayshadow_bias_fragment KHR-GL41.ext_texture_shadow_lod.texture.samplercubearrayshadow_vertex diff --git a/external/openglcts/data/mustpass/gl/khronos_mustpass/4.6.1.x/gl42-master.txt b/external/openglcts/data/mustpass/gl/khronos_mustpass/4.6.1.x/gl42-master.txt index 3c6a7e0..73d5dc5 100644 --- a/external/openglcts/data/mustpass/gl/khronos_mustpass/4.6.1.x/gl42-master.txt +++ b/external/openglcts/data/mustpass/gl/khronos_mustpass/4.6.1.x/gl42-master.txt @@ -192,6 +192,654 @@ KHR-GL42.texture_repeat_mode.depth24_stencil8_11x131_2_repeat KHR-GL42.texture_repeat_mode.depth24_stencil8_11x131_2_mirrored_repeat KHR-GL42.shaders30.declarations.declarations.redeclare_gl_FragColor KHR-GL42.shaders30.declarations.declarations.redeclare_gl_FragData +KHR-GL42.shaders30.glsl_constructors.vec2_from_mat2_vs +KHR-GL42.shaders30.glsl_constructors.vec2_from_mat2_fs +KHR-GL42.shaders30.glsl_constructors.vec2_from_mat2_mat2_invalid_vs +KHR-GL42.shaders30.glsl_constructors.vec2_from_mat2_mat2_invalid_fs +KHR-GL42.shaders30.glsl_constructors.vec2_from_mat2x3_vs +KHR-GL42.shaders30.glsl_constructors.vec2_from_mat2x3_fs +KHR-GL42.shaders30.glsl_constructors.vec2_from_mat2x3_mat2x3_invalid_vs +KHR-GL42.shaders30.glsl_constructors.vec2_from_mat2x3_mat2x3_invalid_fs +KHR-GL42.shaders30.glsl_constructors.vec2_from_mat2x4_vs +KHR-GL42.shaders30.glsl_constructors.vec2_from_mat2x4_fs +KHR-GL42.shaders30.glsl_constructors.vec2_from_mat2x4_mat2x4_invalid_vs +KHR-GL42.shaders30.glsl_constructors.vec2_from_mat2x4_mat2x4_invalid_fs +KHR-GL42.shaders30.glsl_constructors.vec2_from_mat3_vs +KHR-GL42.shaders30.glsl_constructors.vec2_from_mat3_fs +KHR-GL42.shaders30.glsl_constructors.vec2_from_mat3_mat3_invalid_vs +KHR-GL42.shaders30.glsl_constructors.vec2_from_mat3_mat3_invalid_fs +KHR-GL42.shaders30.glsl_constructors.vec2_from_mat3x2_vs +KHR-GL42.shaders30.glsl_constructors.vec2_from_mat3x2_fs +KHR-GL42.shaders30.glsl_constructors.vec2_from_mat3x2_mat3x2_invalid_vs +KHR-GL42.shaders30.glsl_constructors.vec2_from_mat3x2_mat3x2_invalid_fs +KHR-GL42.shaders30.glsl_constructors.vec2_from_mat3x4_vs +KHR-GL42.shaders30.glsl_constructors.vec2_from_mat3x4_fs +KHR-GL42.shaders30.glsl_constructors.vec2_from_mat3x4_mat3x4_invalid_vs +KHR-GL42.shaders30.glsl_constructors.vec2_from_mat3x4_mat3x4_invalid_fs +KHR-GL42.shaders30.glsl_constructors.vec2_from_mat4_vs +KHR-GL42.shaders30.glsl_constructors.vec2_from_mat4_fs +KHR-GL42.shaders30.glsl_constructors.vec2_from_mat4_mat4_invalid_vs +KHR-GL42.shaders30.glsl_constructors.vec2_from_mat4_mat4_invalid_fs +KHR-GL42.shaders30.glsl_constructors.vec2_from_mat4x2_vs +KHR-GL42.shaders30.glsl_constructors.vec2_from_mat4x2_fs +KHR-GL42.shaders30.glsl_constructors.vec2_from_mat4x2_mat4x2_invalid_vs +KHR-GL42.shaders30.glsl_constructors.vec2_from_mat4x2_mat4x2_invalid_fs +KHR-GL42.shaders30.glsl_constructors.vec2_from_mat4x3_vs +KHR-GL42.shaders30.glsl_constructors.vec2_from_mat4x3_fs +KHR-GL42.shaders30.glsl_constructors.vec2_from_mat4x3_mat4x3_invalid_vs +KHR-GL42.shaders30.glsl_constructors.vec2_from_mat4x3_mat4x3_invalid_fs +KHR-GL42.shaders30.glsl_constructors.vec2_from_float_mat2_vs +KHR-GL42.shaders30.glsl_constructors.vec2_from_float_mat2_fs +KHR-GL42.shaders30.glsl_constructors.vec2_from_float_mat2_float_invalid_vs +KHR-GL42.shaders30.glsl_constructors.vec2_from_float_mat2_float_invalid_fs +KHR-GL42.shaders30.glsl_constructors.vec2_from_float_mat2x3_vs +KHR-GL42.shaders30.glsl_constructors.vec2_from_float_mat2x3_fs +KHR-GL42.shaders30.glsl_constructors.vec2_from_float_mat2x3_float_invalid_vs +KHR-GL42.shaders30.glsl_constructors.vec2_from_float_mat2x3_float_invalid_fs +KHR-GL42.shaders30.glsl_constructors.vec2_from_float_mat2x4_vs +KHR-GL42.shaders30.glsl_constructors.vec2_from_float_mat2x4_fs +KHR-GL42.shaders30.glsl_constructors.vec2_from_float_mat2x4_float_invalid_vs +KHR-GL42.shaders30.glsl_constructors.vec2_from_float_mat2x4_float_invalid_fs +KHR-GL42.shaders30.glsl_constructors.vec2_from_float_mat3_vs +KHR-GL42.shaders30.glsl_constructors.vec2_from_float_mat3_fs +KHR-GL42.shaders30.glsl_constructors.vec2_from_float_mat3_float_invalid_vs +KHR-GL42.shaders30.glsl_constructors.vec2_from_float_mat3_float_invalid_fs +KHR-GL42.shaders30.glsl_constructors.vec2_from_float_mat3x2_vs +KHR-GL42.shaders30.glsl_constructors.vec2_from_float_mat3x2_fs +KHR-GL42.shaders30.glsl_constructors.vec2_from_float_mat3x2_float_invalid_vs +KHR-GL42.shaders30.glsl_constructors.vec2_from_float_mat3x2_float_invalid_fs +KHR-GL42.shaders30.glsl_constructors.vec2_from_float_mat3x4_vs +KHR-GL42.shaders30.glsl_constructors.vec2_from_float_mat3x4_fs +KHR-GL42.shaders30.glsl_constructors.vec2_from_float_mat3x4_float_invalid_vs +KHR-GL42.shaders30.glsl_constructors.vec2_from_float_mat3x4_float_invalid_fs +KHR-GL42.shaders30.glsl_constructors.vec2_from_float_mat4_vs +KHR-GL42.shaders30.glsl_constructors.vec2_from_float_mat4_fs +KHR-GL42.shaders30.glsl_constructors.vec2_from_float_mat4_float_invalid_vs +KHR-GL42.shaders30.glsl_constructors.vec2_from_float_mat4_float_invalid_fs +KHR-GL42.shaders30.glsl_constructors.vec2_from_float_mat4x2_vs +KHR-GL42.shaders30.glsl_constructors.vec2_from_float_mat4x2_fs +KHR-GL42.shaders30.glsl_constructors.vec2_from_float_mat4x2_float_invalid_vs +KHR-GL42.shaders30.glsl_constructors.vec2_from_float_mat4x2_float_invalid_fs +KHR-GL42.shaders30.glsl_constructors.vec2_from_float_mat4x3_vs +KHR-GL42.shaders30.glsl_constructors.vec2_from_float_mat4x3_fs +KHR-GL42.shaders30.glsl_constructors.vec2_from_float_mat4x3_float_invalid_vs +KHR-GL42.shaders30.glsl_constructors.vec2_from_float_mat4x3_float_invalid_fs +KHR-GL42.shaders30.glsl_constructors.vec3_from_mat2_vs +KHR-GL42.shaders30.glsl_constructors.vec3_from_mat2_fs +KHR-GL42.shaders30.glsl_constructors.vec3_from_mat2_mat2_invalid_vs +KHR-GL42.shaders30.glsl_constructors.vec3_from_mat2_mat2_invalid_fs +KHR-GL42.shaders30.glsl_constructors.vec3_from_mat2x3_vs +KHR-GL42.shaders30.glsl_constructors.vec3_from_mat2x3_fs +KHR-GL42.shaders30.glsl_constructors.vec3_from_mat2x3_mat2x3_invalid_vs +KHR-GL42.shaders30.glsl_constructors.vec3_from_mat2x3_mat2x3_invalid_fs +KHR-GL42.shaders30.glsl_constructors.vec3_from_mat2x4_vs +KHR-GL42.shaders30.glsl_constructors.vec3_from_mat2x4_fs +KHR-GL42.shaders30.glsl_constructors.vec3_from_mat2x4_mat2x4_invalid_vs +KHR-GL42.shaders30.glsl_constructors.vec3_from_mat2x4_mat2x4_invalid_fs +KHR-GL42.shaders30.glsl_constructors.vec3_from_mat3_vs +KHR-GL42.shaders30.glsl_constructors.vec3_from_mat3_fs +KHR-GL42.shaders30.glsl_constructors.vec3_from_mat3_mat3_invalid_vs +KHR-GL42.shaders30.glsl_constructors.vec3_from_mat3_mat3_invalid_fs +KHR-GL42.shaders30.glsl_constructors.vec3_from_mat3x2_vs +KHR-GL42.shaders30.glsl_constructors.vec3_from_mat3x2_fs +KHR-GL42.shaders30.glsl_constructors.vec3_from_mat3x2_mat3x2_invalid_vs +KHR-GL42.shaders30.glsl_constructors.vec3_from_mat3x2_mat3x2_invalid_fs +KHR-GL42.shaders30.glsl_constructors.vec3_from_mat3x4_vs +KHR-GL42.shaders30.glsl_constructors.vec3_from_mat3x4_fs +KHR-GL42.shaders30.glsl_constructors.vec3_from_mat3x4_mat3x4_invalid_vs +KHR-GL42.shaders30.glsl_constructors.vec3_from_mat3x4_mat3x4_invalid_fs +KHR-GL42.shaders30.glsl_constructors.vec3_from_mat4_vs +KHR-GL42.shaders30.glsl_constructors.vec3_from_mat4_fs +KHR-GL42.shaders30.glsl_constructors.vec3_from_mat4_mat4_invalid_vs +KHR-GL42.shaders30.glsl_constructors.vec3_from_mat4_mat4_invalid_fs +KHR-GL42.shaders30.glsl_constructors.vec3_from_mat4x2_vs +KHR-GL42.shaders30.glsl_constructors.vec3_from_mat4x2_fs +KHR-GL42.shaders30.glsl_constructors.vec3_from_mat4x2_mat4x2_invalid_vs +KHR-GL42.shaders30.glsl_constructors.vec3_from_mat4x2_mat4x2_invalid_fs +KHR-GL42.shaders30.glsl_constructors.vec3_from_mat4x3_vs +KHR-GL42.shaders30.glsl_constructors.vec3_from_mat4x3_fs +KHR-GL42.shaders30.glsl_constructors.vec3_from_mat4x3_mat4x3_invalid_vs +KHR-GL42.shaders30.glsl_constructors.vec3_from_mat4x3_mat4x3_invalid_fs +KHR-GL42.shaders30.glsl_constructors.vec3_from_float_mat2_vs +KHR-GL42.shaders30.glsl_constructors.vec3_from_float_mat2_fs +KHR-GL42.shaders30.glsl_constructors.vec3_from_float_mat2_float_invalid_vs +KHR-GL42.shaders30.glsl_constructors.vec3_from_float_mat2_float_invalid_fs +KHR-GL42.shaders30.glsl_constructors.vec3_from_float_mat2x3_vs +KHR-GL42.shaders30.glsl_constructors.vec3_from_float_mat2x3_fs +KHR-GL42.shaders30.glsl_constructors.vec3_from_float_mat2x3_float_invalid_vs +KHR-GL42.shaders30.glsl_constructors.vec3_from_float_mat2x3_float_invalid_fs +KHR-GL42.shaders30.glsl_constructors.vec3_from_float_mat2x4_vs +KHR-GL42.shaders30.glsl_constructors.vec3_from_float_mat2x4_fs +KHR-GL42.shaders30.glsl_constructors.vec3_from_float_mat2x4_float_invalid_vs +KHR-GL42.shaders30.glsl_constructors.vec3_from_float_mat2x4_float_invalid_fs +KHR-GL42.shaders30.glsl_constructors.vec3_from_float_mat3_vs +KHR-GL42.shaders30.glsl_constructors.vec3_from_float_mat3_fs +KHR-GL42.shaders30.glsl_constructors.vec3_from_float_mat3_float_invalid_vs +KHR-GL42.shaders30.glsl_constructors.vec3_from_float_mat3_float_invalid_fs +KHR-GL42.shaders30.glsl_constructors.vec3_from_float_mat3x2_vs +KHR-GL42.shaders30.glsl_constructors.vec3_from_float_mat3x2_fs +KHR-GL42.shaders30.glsl_constructors.vec3_from_float_mat3x2_float_invalid_vs +KHR-GL42.shaders30.glsl_constructors.vec3_from_float_mat3x2_float_invalid_fs +KHR-GL42.shaders30.glsl_constructors.vec3_from_float_mat3x4_vs +KHR-GL42.shaders30.glsl_constructors.vec3_from_float_mat3x4_fs +KHR-GL42.shaders30.glsl_constructors.vec3_from_float_mat3x4_float_invalid_vs +KHR-GL42.shaders30.glsl_constructors.vec3_from_float_mat3x4_float_invalid_fs +KHR-GL42.shaders30.glsl_constructors.vec3_from_float_mat4_vs +KHR-GL42.shaders30.glsl_constructors.vec3_from_float_mat4_fs +KHR-GL42.shaders30.glsl_constructors.vec3_from_float_mat4_float_invalid_vs +KHR-GL42.shaders30.glsl_constructors.vec3_from_float_mat4_float_invalid_fs +KHR-GL42.shaders30.glsl_constructors.vec3_from_float_mat4x2_vs +KHR-GL42.shaders30.glsl_constructors.vec3_from_float_mat4x2_fs +KHR-GL42.shaders30.glsl_constructors.vec3_from_float_mat4x2_float_invalid_vs +KHR-GL42.shaders30.glsl_constructors.vec3_from_float_mat4x2_float_invalid_fs +KHR-GL42.shaders30.glsl_constructors.vec3_from_float_mat4x3_vs +KHR-GL42.shaders30.glsl_constructors.vec3_from_float_mat4x3_fs +KHR-GL42.shaders30.glsl_constructors.vec3_from_float_mat4x3_float_invalid_vs +KHR-GL42.shaders30.glsl_constructors.vec3_from_float_mat4x3_float_invalid_fs +KHR-GL42.shaders30.glsl_constructors.vec4_from_mat2_vs +KHR-GL42.shaders30.glsl_constructors.vec4_from_mat2_fs +KHR-GL42.shaders30.glsl_constructors.vec4_from_mat2_mat2_invalid_vs +KHR-GL42.shaders30.glsl_constructors.vec4_from_mat2_mat2_invalid_fs +KHR-GL42.shaders30.glsl_constructors.vec4_from_mat2x3_vs +KHR-GL42.shaders30.glsl_constructors.vec4_from_mat2x3_fs +KHR-GL42.shaders30.glsl_constructors.vec4_from_mat2x3_mat2x3_invalid_vs +KHR-GL42.shaders30.glsl_constructors.vec4_from_mat2x3_mat2x3_invalid_fs +KHR-GL42.shaders30.glsl_constructors.vec4_from_mat2x4_vs +KHR-GL42.shaders30.glsl_constructors.vec4_from_mat2x4_fs +KHR-GL42.shaders30.glsl_constructors.vec4_from_mat2x4_mat2x4_invalid_vs +KHR-GL42.shaders30.glsl_constructors.vec4_from_mat2x4_mat2x4_invalid_fs +KHR-GL42.shaders30.glsl_constructors.vec4_from_mat3_vs +KHR-GL42.shaders30.glsl_constructors.vec4_from_mat3_fs +KHR-GL42.shaders30.glsl_constructors.vec4_from_mat3_mat3_invalid_vs +KHR-GL42.shaders30.glsl_constructors.vec4_from_mat3_mat3_invalid_fs +KHR-GL42.shaders30.glsl_constructors.vec4_from_mat3x2_vs +KHR-GL42.shaders30.glsl_constructors.vec4_from_mat3x2_fs +KHR-GL42.shaders30.glsl_constructors.vec4_from_mat3x2_mat3x2_invalid_vs +KHR-GL42.shaders30.glsl_constructors.vec4_from_mat3x2_mat3x2_invalid_fs +KHR-GL42.shaders30.glsl_constructors.vec4_from_mat3x4_vs +KHR-GL42.shaders30.glsl_constructors.vec4_from_mat3x4_fs +KHR-GL42.shaders30.glsl_constructors.vec4_from_mat3x4_mat3x4_invalid_vs +KHR-GL42.shaders30.glsl_constructors.vec4_from_mat3x4_mat3x4_invalid_fs +KHR-GL42.shaders30.glsl_constructors.vec4_from_mat4_vs +KHR-GL42.shaders30.glsl_constructors.vec4_from_mat4_fs +KHR-GL42.shaders30.glsl_constructors.vec4_from_mat4_mat4_invalid_vs +KHR-GL42.shaders30.glsl_constructors.vec4_from_mat4_mat4_invalid_fs +KHR-GL42.shaders30.glsl_constructors.vec4_from_mat4x2_vs +KHR-GL42.shaders30.glsl_constructors.vec4_from_mat4x2_fs +KHR-GL42.shaders30.glsl_constructors.vec4_from_mat4x2_mat4x2_invalid_vs +KHR-GL42.shaders30.glsl_constructors.vec4_from_mat4x2_mat4x2_invalid_fs +KHR-GL42.shaders30.glsl_constructors.vec4_from_mat4x3_vs +KHR-GL42.shaders30.glsl_constructors.vec4_from_mat4x3_fs +KHR-GL42.shaders30.glsl_constructors.vec4_from_mat4x3_mat4x3_invalid_vs +KHR-GL42.shaders30.glsl_constructors.vec4_from_mat4x3_mat4x3_invalid_fs +KHR-GL42.shaders30.glsl_constructors.vec4_from_float_mat2_vs +KHR-GL42.shaders30.glsl_constructors.vec4_from_float_mat2_fs +KHR-GL42.shaders30.glsl_constructors.vec4_from_float_mat2_float_invalid_vs +KHR-GL42.shaders30.glsl_constructors.vec4_from_float_mat2_float_invalid_fs +KHR-GL42.shaders30.glsl_constructors.vec4_from_float_mat2x3_vs +KHR-GL42.shaders30.glsl_constructors.vec4_from_float_mat2x3_fs +KHR-GL42.shaders30.glsl_constructors.vec4_from_float_mat2x3_float_invalid_vs +KHR-GL42.shaders30.glsl_constructors.vec4_from_float_mat2x3_float_invalid_fs +KHR-GL42.shaders30.glsl_constructors.vec4_from_float_mat2x4_vs +KHR-GL42.shaders30.glsl_constructors.vec4_from_float_mat2x4_fs +KHR-GL42.shaders30.glsl_constructors.vec4_from_float_mat2x4_float_invalid_vs +KHR-GL42.shaders30.glsl_constructors.vec4_from_float_mat2x4_float_invalid_fs +KHR-GL42.shaders30.glsl_constructors.vec4_from_float_mat3_vs +KHR-GL42.shaders30.glsl_constructors.vec4_from_float_mat3_fs +KHR-GL42.shaders30.glsl_constructors.vec4_from_float_mat3_float_invalid_vs +KHR-GL42.shaders30.glsl_constructors.vec4_from_float_mat3_float_invalid_fs +KHR-GL42.shaders30.glsl_constructors.vec4_from_float_mat3x2_vs +KHR-GL42.shaders30.glsl_constructors.vec4_from_float_mat3x2_fs +KHR-GL42.shaders30.glsl_constructors.vec4_from_float_mat3x2_float_invalid_vs +KHR-GL42.shaders30.glsl_constructors.vec4_from_float_mat3x2_float_invalid_fs +KHR-GL42.shaders30.glsl_constructors.vec4_from_float_mat3x4_vs +KHR-GL42.shaders30.glsl_constructors.vec4_from_float_mat3x4_fs +KHR-GL42.shaders30.glsl_constructors.vec4_from_float_mat3x4_float_invalid_vs +KHR-GL42.shaders30.glsl_constructors.vec4_from_float_mat3x4_float_invalid_fs +KHR-GL42.shaders30.glsl_constructors.vec4_from_float_mat4_vs +KHR-GL42.shaders30.glsl_constructors.vec4_from_float_mat4_fs +KHR-GL42.shaders30.glsl_constructors.vec4_from_float_mat4_float_invalid_vs +KHR-GL42.shaders30.glsl_constructors.vec4_from_float_mat4_float_invalid_fs +KHR-GL42.shaders30.glsl_constructors.vec4_from_float_mat4x2_vs +KHR-GL42.shaders30.glsl_constructors.vec4_from_float_mat4x2_fs +KHR-GL42.shaders30.glsl_constructors.vec4_from_float_mat4x2_float_invalid_vs +KHR-GL42.shaders30.glsl_constructors.vec4_from_float_mat4x2_float_invalid_fs +KHR-GL42.shaders30.glsl_constructors.vec4_from_float_mat4x3_vs +KHR-GL42.shaders30.glsl_constructors.vec4_from_float_mat4x3_fs +KHR-GL42.shaders30.glsl_constructors.vec4_from_float_mat4x3_float_invalid_vs +KHR-GL42.shaders30.glsl_constructors.vec4_from_float_mat4x3_float_invalid_fs +KHR-GL42.shaders30.glsl_constructors.ivec2_from_mat2_vs +KHR-GL42.shaders30.glsl_constructors.ivec2_from_mat2_fs +KHR-GL42.shaders30.glsl_constructors.ivec2_from_mat2_mat2_invalid_vs +KHR-GL42.shaders30.glsl_constructors.ivec2_from_mat2_mat2_invalid_fs +KHR-GL42.shaders30.glsl_constructors.ivec2_from_mat2x3_vs +KHR-GL42.shaders30.glsl_constructors.ivec2_from_mat2x3_fs +KHR-GL42.shaders30.glsl_constructors.ivec2_from_mat2x3_mat2x3_invalid_vs +KHR-GL42.shaders30.glsl_constructors.ivec2_from_mat2x3_mat2x3_invalid_fs +KHR-GL42.shaders30.glsl_constructors.ivec2_from_mat2x4_vs +KHR-GL42.shaders30.glsl_constructors.ivec2_from_mat2x4_fs +KHR-GL42.shaders30.glsl_constructors.ivec2_from_mat2x4_mat2x4_invalid_vs +KHR-GL42.shaders30.glsl_constructors.ivec2_from_mat2x4_mat2x4_invalid_fs +KHR-GL42.shaders30.glsl_constructors.ivec2_from_mat3_vs +KHR-GL42.shaders30.glsl_constructors.ivec2_from_mat3_fs +KHR-GL42.shaders30.glsl_constructors.ivec2_from_mat3_mat3_invalid_vs +KHR-GL42.shaders30.glsl_constructors.ivec2_from_mat3_mat3_invalid_fs +KHR-GL42.shaders30.glsl_constructors.ivec2_from_mat3x2_vs +KHR-GL42.shaders30.glsl_constructors.ivec2_from_mat3x2_fs +KHR-GL42.shaders30.glsl_constructors.ivec2_from_mat3x2_mat3x2_invalid_vs +KHR-GL42.shaders30.glsl_constructors.ivec2_from_mat3x2_mat3x2_invalid_fs +KHR-GL42.shaders30.glsl_constructors.ivec2_from_mat3x4_vs +KHR-GL42.shaders30.glsl_constructors.ivec2_from_mat3x4_fs +KHR-GL42.shaders30.glsl_constructors.ivec2_from_mat3x4_mat3x4_invalid_vs +KHR-GL42.shaders30.glsl_constructors.ivec2_from_mat3x4_mat3x4_invalid_fs +KHR-GL42.shaders30.glsl_constructors.ivec2_from_mat4_vs +KHR-GL42.shaders30.glsl_constructors.ivec2_from_mat4_fs +KHR-GL42.shaders30.glsl_constructors.ivec2_from_mat4_mat4_invalid_vs +KHR-GL42.shaders30.glsl_constructors.ivec2_from_mat4_mat4_invalid_fs +KHR-GL42.shaders30.glsl_constructors.ivec2_from_mat4x2_vs +KHR-GL42.shaders30.glsl_constructors.ivec2_from_mat4x2_fs +KHR-GL42.shaders30.glsl_constructors.ivec2_from_mat4x2_mat4x2_invalid_vs +KHR-GL42.shaders30.glsl_constructors.ivec2_from_mat4x2_mat4x2_invalid_fs +KHR-GL42.shaders30.glsl_constructors.ivec2_from_mat4x3_vs +KHR-GL42.shaders30.glsl_constructors.ivec2_from_mat4x3_fs +KHR-GL42.shaders30.glsl_constructors.ivec2_from_mat4x3_mat4x3_invalid_vs +KHR-GL42.shaders30.glsl_constructors.ivec2_from_mat4x3_mat4x3_invalid_fs +KHR-GL42.shaders30.glsl_constructors.ivec2_from_int_mat2_vs +KHR-GL42.shaders30.glsl_constructors.ivec2_from_int_mat2_fs +KHR-GL42.shaders30.glsl_constructors.ivec2_from_int_mat2_int_invalid_vs +KHR-GL42.shaders30.glsl_constructors.ivec2_from_int_mat2_int_invalid_fs +KHR-GL42.shaders30.glsl_constructors.ivec2_from_int_mat2x3_vs +KHR-GL42.shaders30.glsl_constructors.ivec2_from_int_mat2x3_fs +KHR-GL42.shaders30.glsl_constructors.ivec2_from_int_mat2x3_int_invalid_vs +KHR-GL42.shaders30.glsl_constructors.ivec2_from_int_mat2x3_int_invalid_fs +KHR-GL42.shaders30.glsl_constructors.ivec2_from_int_mat2x4_vs +KHR-GL42.shaders30.glsl_constructors.ivec2_from_int_mat2x4_fs +KHR-GL42.shaders30.glsl_constructors.ivec2_from_int_mat2x4_int_invalid_vs +KHR-GL42.shaders30.glsl_constructors.ivec2_from_int_mat2x4_int_invalid_fs +KHR-GL42.shaders30.glsl_constructors.ivec2_from_int_mat3_vs +KHR-GL42.shaders30.glsl_constructors.ivec2_from_int_mat3_fs +KHR-GL42.shaders30.glsl_constructors.ivec2_from_int_mat3_int_invalid_vs +KHR-GL42.shaders30.glsl_constructors.ivec2_from_int_mat3_int_invalid_fs +KHR-GL42.shaders30.glsl_constructors.ivec2_from_int_mat3x2_vs +KHR-GL42.shaders30.glsl_constructors.ivec2_from_int_mat3x2_fs +KHR-GL42.shaders30.glsl_constructors.ivec2_from_int_mat3x2_int_invalid_vs +KHR-GL42.shaders30.glsl_constructors.ivec2_from_int_mat3x2_int_invalid_fs +KHR-GL42.shaders30.glsl_constructors.ivec2_from_int_mat3x4_vs +KHR-GL42.shaders30.glsl_constructors.ivec2_from_int_mat3x4_fs +KHR-GL42.shaders30.glsl_constructors.ivec2_from_int_mat3x4_int_invalid_vs +KHR-GL42.shaders30.glsl_constructors.ivec2_from_int_mat3x4_int_invalid_fs +KHR-GL42.shaders30.glsl_constructors.ivec2_from_int_mat4_vs +KHR-GL42.shaders30.glsl_constructors.ivec2_from_int_mat4_fs +KHR-GL42.shaders30.glsl_constructors.ivec2_from_int_mat4_int_invalid_vs +KHR-GL42.shaders30.glsl_constructors.ivec2_from_int_mat4_int_invalid_fs +KHR-GL42.shaders30.glsl_constructors.ivec2_from_int_mat4x2_vs +KHR-GL42.shaders30.glsl_constructors.ivec2_from_int_mat4x2_fs +KHR-GL42.shaders30.glsl_constructors.ivec2_from_int_mat4x2_int_invalid_vs +KHR-GL42.shaders30.glsl_constructors.ivec2_from_int_mat4x2_int_invalid_fs +KHR-GL42.shaders30.glsl_constructors.ivec2_from_int_mat4x3_vs +KHR-GL42.shaders30.glsl_constructors.ivec2_from_int_mat4x3_fs +KHR-GL42.shaders30.glsl_constructors.ivec2_from_int_mat4x3_int_invalid_vs +KHR-GL42.shaders30.glsl_constructors.ivec2_from_int_mat4x3_int_invalid_fs +KHR-GL42.shaders30.glsl_constructors.ivec3_from_mat2_vs +KHR-GL42.shaders30.glsl_constructors.ivec3_from_mat2_fs +KHR-GL42.shaders30.glsl_constructors.ivec3_from_mat2_mat2_invalid_vs +KHR-GL42.shaders30.glsl_constructors.ivec3_from_mat2_mat2_invalid_fs +KHR-GL42.shaders30.glsl_constructors.ivec3_from_mat2x3_vs +KHR-GL42.shaders30.glsl_constructors.ivec3_from_mat2x3_fs +KHR-GL42.shaders30.glsl_constructors.ivec3_from_mat2x3_mat2x3_invalid_vs +KHR-GL42.shaders30.glsl_constructors.ivec3_from_mat2x3_mat2x3_invalid_fs +KHR-GL42.shaders30.glsl_constructors.ivec3_from_mat2x4_vs +KHR-GL42.shaders30.glsl_constructors.ivec3_from_mat2x4_fs +KHR-GL42.shaders30.glsl_constructors.ivec3_from_mat2x4_mat2x4_invalid_vs +KHR-GL42.shaders30.glsl_constructors.ivec3_from_mat2x4_mat2x4_invalid_fs +KHR-GL42.shaders30.glsl_constructors.ivec3_from_mat3_vs +KHR-GL42.shaders30.glsl_constructors.ivec3_from_mat3_fs +KHR-GL42.shaders30.glsl_constructors.ivec3_from_mat3_mat3_invalid_vs +KHR-GL42.shaders30.glsl_constructors.ivec3_from_mat3_mat3_invalid_fs +KHR-GL42.shaders30.glsl_constructors.ivec3_from_mat3x2_vs +KHR-GL42.shaders30.glsl_constructors.ivec3_from_mat3x2_fs +KHR-GL42.shaders30.glsl_constructors.ivec3_from_mat3x2_mat3x2_invalid_vs +KHR-GL42.shaders30.glsl_constructors.ivec3_from_mat3x2_mat3x2_invalid_fs +KHR-GL42.shaders30.glsl_constructors.ivec3_from_mat3x4_vs +KHR-GL42.shaders30.glsl_constructors.ivec3_from_mat3x4_fs +KHR-GL42.shaders30.glsl_constructors.ivec3_from_mat3x4_mat3x4_invalid_vs +KHR-GL42.shaders30.glsl_constructors.ivec3_from_mat3x4_mat3x4_invalid_fs +KHR-GL42.shaders30.glsl_constructors.ivec3_from_mat4_vs +KHR-GL42.shaders30.glsl_constructors.ivec3_from_mat4_fs +KHR-GL42.shaders30.glsl_constructors.ivec3_from_mat4_mat4_invalid_vs +KHR-GL42.shaders30.glsl_constructors.ivec3_from_mat4_mat4_invalid_fs +KHR-GL42.shaders30.glsl_constructors.ivec3_from_mat4x2_vs +KHR-GL42.shaders30.glsl_constructors.ivec3_from_mat4x2_fs +KHR-GL42.shaders30.glsl_constructors.ivec3_from_mat4x2_mat4x2_invalid_vs +KHR-GL42.shaders30.glsl_constructors.ivec3_from_mat4x2_mat4x2_invalid_fs +KHR-GL42.shaders30.glsl_constructors.ivec3_from_mat4x3_vs +KHR-GL42.shaders30.glsl_constructors.ivec3_from_mat4x3_fs +KHR-GL42.shaders30.glsl_constructors.ivec3_from_mat4x3_mat4x3_invalid_vs +KHR-GL42.shaders30.glsl_constructors.ivec3_from_mat4x3_mat4x3_invalid_fs +KHR-GL42.shaders30.glsl_constructors.ivec3_from_int_mat2_vs +KHR-GL42.shaders30.glsl_constructors.ivec3_from_int_mat2_fs +KHR-GL42.shaders30.glsl_constructors.ivec3_from_int_mat2_int_invalid_vs +KHR-GL42.shaders30.glsl_constructors.ivec3_from_int_mat2_int_invalid_fs +KHR-GL42.shaders30.glsl_constructors.ivec3_from_int_mat2x3_vs +KHR-GL42.shaders30.glsl_constructors.ivec3_from_int_mat2x3_fs +KHR-GL42.shaders30.glsl_constructors.ivec3_from_int_mat2x3_int_invalid_vs +KHR-GL42.shaders30.glsl_constructors.ivec3_from_int_mat2x3_int_invalid_fs +KHR-GL42.shaders30.glsl_constructors.ivec3_from_int_mat2x4_vs +KHR-GL42.shaders30.glsl_constructors.ivec3_from_int_mat2x4_fs +KHR-GL42.shaders30.glsl_constructors.ivec3_from_int_mat2x4_int_invalid_vs +KHR-GL42.shaders30.glsl_constructors.ivec3_from_int_mat2x4_int_invalid_fs +KHR-GL42.shaders30.glsl_constructors.ivec3_from_int_mat3_vs +KHR-GL42.shaders30.glsl_constructors.ivec3_from_int_mat3_fs +KHR-GL42.shaders30.glsl_constructors.ivec3_from_int_mat3_int_invalid_vs +KHR-GL42.shaders30.glsl_constructors.ivec3_from_int_mat3_int_invalid_fs +KHR-GL42.shaders30.glsl_constructors.ivec3_from_int_mat3x2_vs +KHR-GL42.shaders30.glsl_constructors.ivec3_from_int_mat3x2_fs +KHR-GL42.shaders30.glsl_constructors.ivec3_from_int_mat3x2_int_invalid_vs +KHR-GL42.shaders30.glsl_constructors.ivec3_from_int_mat3x2_int_invalid_fs +KHR-GL42.shaders30.glsl_constructors.ivec3_from_int_mat3x4_vs +KHR-GL42.shaders30.glsl_constructors.ivec3_from_int_mat3x4_fs +KHR-GL42.shaders30.glsl_constructors.ivec3_from_int_mat3x4_int_invalid_vs +KHR-GL42.shaders30.glsl_constructors.ivec3_from_int_mat3x4_int_invalid_fs +KHR-GL42.shaders30.glsl_constructors.ivec3_from_int_mat4_vs +KHR-GL42.shaders30.glsl_constructors.ivec3_from_int_mat4_fs +KHR-GL42.shaders30.glsl_constructors.ivec3_from_int_mat4_int_invalid_vs +KHR-GL42.shaders30.glsl_constructors.ivec3_from_int_mat4_int_invalid_fs +KHR-GL42.shaders30.glsl_constructors.ivec3_from_int_mat4x2_vs +KHR-GL42.shaders30.glsl_constructors.ivec3_from_int_mat4x2_fs +KHR-GL42.shaders30.glsl_constructors.ivec3_from_int_mat4x2_int_invalid_vs +KHR-GL42.shaders30.glsl_constructors.ivec3_from_int_mat4x2_int_invalid_fs +KHR-GL42.shaders30.glsl_constructors.ivec3_from_int_mat4x3_vs +KHR-GL42.shaders30.glsl_constructors.ivec3_from_int_mat4x3_fs +KHR-GL42.shaders30.glsl_constructors.ivec3_from_int_mat4x3_int_invalid_vs +KHR-GL42.shaders30.glsl_constructors.ivec3_from_int_mat4x3_int_invalid_fs +KHR-GL42.shaders30.glsl_constructors.ivec4_from_mat2_vs +KHR-GL42.shaders30.glsl_constructors.ivec4_from_mat2_fs +KHR-GL42.shaders30.glsl_constructors.ivec4_from_mat2_mat2_invalid_vs +KHR-GL42.shaders30.glsl_constructors.ivec4_from_mat2_mat2_invalid_fs +KHR-GL42.shaders30.glsl_constructors.ivec4_from_mat2x3_vs +KHR-GL42.shaders30.glsl_constructors.ivec4_from_mat2x3_fs +KHR-GL42.shaders30.glsl_constructors.ivec4_from_mat2x3_mat2x3_invalid_vs +KHR-GL42.shaders30.glsl_constructors.ivec4_from_mat2x3_mat2x3_invalid_fs +KHR-GL42.shaders30.glsl_constructors.ivec4_from_mat2x4_vs +KHR-GL42.shaders30.glsl_constructors.ivec4_from_mat2x4_fs +KHR-GL42.shaders30.glsl_constructors.ivec4_from_mat2x4_mat2x4_invalid_vs +KHR-GL42.shaders30.glsl_constructors.ivec4_from_mat2x4_mat2x4_invalid_fs +KHR-GL42.shaders30.glsl_constructors.ivec4_from_mat3_vs +KHR-GL42.shaders30.glsl_constructors.ivec4_from_mat3_fs +KHR-GL42.shaders30.glsl_constructors.ivec4_from_mat3_mat3_invalid_vs +KHR-GL42.shaders30.glsl_constructors.ivec4_from_mat3_mat3_invalid_fs +KHR-GL42.shaders30.glsl_constructors.ivec4_from_mat3x2_vs +KHR-GL42.shaders30.glsl_constructors.ivec4_from_mat3x2_fs +KHR-GL42.shaders30.glsl_constructors.ivec4_from_mat3x2_mat3x2_invalid_vs +KHR-GL42.shaders30.glsl_constructors.ivec4_from_mat3x2_mat3x2_invalid_fs +KHR-GL42.shaders30.glsl_constructors.ivec4_from_mat3x4_vs +KHR-GL42.shaders30.glsl_constructors.ivec4_from_mat3x4_fs +KHR-GL42.shaders30.glsl_constructors.ivec4_from_mat3x4_mat3x4_invalid_vs +KHR-GL42.shaders30.glsl_constructors.ivec4_from_mat3x4_mat3x4_invalid_fs +KHR-GL42.shaders30.glsl_constructors.ivec4_from_mat4_vs +KHR-GL42.shaders30.glsl_constructors.ivec4_from_mat4_fs +KHR-GL42.shaders30.glsl_constructors.ivec4_from_mat4_mat4_invalid_vs +KHR-GL42.shaders30.glsl_constructors.ivec4_from_mat4_mat4_invalid_fs +KHR-GL42.shaders30.glsl_constructors.ivec4_from_mat4x2_vs +KHR-GL42.shaders30.glsl_constructors.ivec4_from_mat4x2_fs +KHR-GL42.shaders30.glsl_constructors.ivec4_from_mat4x2_mat4x2_invalid_vs +KHR-GL42.shaders30.glsl_constructors.ivec4_from_mat4x2_mat4x2_invalid_fs +KHR-GL42.shaders30.glsl_constructors.ivec4_from_mat4x3_vs +KHR-GL42.shaders30.glsl_constructors.ivec4_from_mat4x3_fs +KHR-GL42.shaders30.glsl_constructors.ivec4_from_mat4x3_mat4x3_invalid_vs +KHR-GL42.shaders30.glsl_constructors.ivec4_from_mat4x3_mat4x3_invalid_fs +KHR-GL42.shaders30.glsl_constructors.ivec4_from_int_mat2_vs +KHR-GL42.shaders30.glsl_constructors.ivec4_from_int_mat2_fs +KHR-GL42.shaders30.glsl_constructors.ivec4_from_int_mat2_int_invalid_vs +KHR-GL42.shaders30.glsl_constructors.ivec4_from_int_mat2_int_invalid_fs +KHR-GL42.shaders30.glsl_constructors.ivec4_from_int_mat2x3_vs +KHR-GL42.shaders30.glsl_constructors.ivec4_from_int_mat2x3_fs +KHR-GL42.shaders30.glsl_constructors.ivec4_from_int_mat2x3_int_invalid_vs +KHR-GL42.shaders30.glsl_constructors.ivec4_from_int_mat2x3_int_invalid_fs +KHR-GL42.shaders30.glsl_constructors.ivec4_from_int_mat2x4_vs +KHR-GL42.shaders30.glsl_constructors.ivec4_from_int_mat2x4_fs +KHR-GL42.shaders30.glsl_constructors.ivec4_from_int_mat2x4_int_invalid_vs +KHR-GL42.shaders30.glsl_constructors.ivec4_from_int_mat2x4_int_invalid_fs +KHR-GL42.shaders30.glsl_constructors.ivec4_from_int_mat3_vs +KHR-GL42.shaders30.glsl_constructors.ivec4_from_int_mat3_fs +KHR-GL42.shaders30.glsl_constructors.ivec4_from_int_mat3_int_invalid_vs +KHR-GL42.shaders30.glsl_constructors.ivec4_from_int_mat3_int_invalid_fs +KHR-GL42.shaders30.glsl_constructors.ivec4_from_int_mat3x2_vs +KHR-GL42.shaders30.glsl_constructors.ivec4_from_int_mat3x2_fs +KHR-GL42.shaders30.glsl_constructors.ivec4_from_int_mat3x2_int_invalid_vs +KHR-GL42.shaders30.glsl_constructors.ivec4_from_int_mat3x2_int_invalid_fs +KHR-GL42.shaders30.glsl_constructors.ivec4_from_int_mat3x4_vs +KHR-GL42.shaders30.glsl_constructors.ivec4_from_int_mat3x4_fs +KHR-GL42.shaders30.glsl_constructors.ivec4_from_int_mat3x4_int_invalid_vs +KHR-GL42.shaders30.glsl_constructors.ivec4_from_int_mat3x4_int_invalid_fs +KHR-GL42.shaders30.glsl_constructors.ivec4_from_int_mat4_vs +KHR-GL42.shaders30.glsl_constructors.ivec4_from_int_mat4_fs +KHR-GL42.shaders30.glsl_constructors.ivec4_from_int_mat4_int_invalid_vs +KHR-GL42.shaders30.glsl_constructors.ivec4_from_int_mat4_int_invalid_fs +KHR-GL42.shaders30.glsl_constructors.ivec4_from_int_mat4x2_vs +KHR-GL42.shaders30.glsl_constructors.ivec4_from_int_mat4x2_fs +KHR-GL42.shaders30.glsl_constructors.ivec4_from_int_mat4x2_int_invalid_vs +KHR-GL42.shaders30.glsl_constructors.ivec4_from_int_mat4x2_int_invalid_fs +KHR-GL42.shaders30.glsl_constructors.ivec4_from_int_mat4x3_vs +KHR-GL42.shaders30.glsl_constructors.ivec4_from_int_mat4x3_fs +KHR-GL42.shaders30.glsl_constructors.ivec4_from_int_mat4x3_int_invalid_vs +KHR-GL42.shaders30.glsl_constructors.ivec4_from_int_mat4x3_int_invalid_fs +KHR-GL42.shaders30.glsl_constructors.bvec2_from_mat2_vs +KHR-GL42.shaders30.glsl_constructors.bvec2_from_mat2_fs +KHR-GL42.shaders30.glsl_constructors.bvec2_from_mat2_mat2_invalid_vs +KHR-GL42.shaders30.glsl_constructors.bvec2_from_mat2_mat2_invalid_fs +KHR-GL42.shaders30.glsl_constructors.bvec2_from_mat2x3_vs +KHR-GL42.shaders30.glsl_constructors.bvec2_from_mat2x3_fs +KHR-GL42.shaders30.glsl_constructors.bvec2_from_mat2x3_mat2x3_invalid_vs +KHR-GL42.shaders30.glsl_constructors.bvec2_from_mat2x3_mat2x3_invalid_fs +KHR-GL42.shaders30.glsl_constructors.bvec2_from_mat2x4_vs +KHR-GL42.shaders30.glsl_constructors.bvec2_from_mat2x4_fs +KHR-GL42.shaders30.glsl_constructors.bvec2_from_mat2x4_mat2x4_invalid_vs +KHR-GL42.shaders30.glsl_constructors.bvec2_from_mat2x4_mat2x4_invalid_fs +KHR-GL42.shaders30.glsl_constructors.bvec2_from_mat3_vs +KHR-GL42.shaders30.glsl_constructors.bvec2_from_mat3_fs +KHR-GL42.shaders30.glsl_constructors.bvec2_from_mat3_mat3_invalid_vs +KHR-GL42.shaders30.glsl_constructors.bvec2_from_mat3_mat3_invalid_fs +KHR-GL42.shaders30.glsl_constructors.bvec2_from_mat3x2_vs +KHR-GL42.shaders30.glsl_constructors.bvec2_from_mat3x2_fs +KHR-GL42.shaders30.glsl_constructors.bvec2_from_mat3x2_mat3x2_invalid_vs +KHR-GL42.shaders30.glsl_constructors.bvec2_from_mat3x2_mat3x2_invalid_fs +KHR-GL42.shaders30.glsl_constructors.bvec2_from_mat3x4_vs +KHR-GL42.shaders30.glsl_constructors.bvec2_from_mat3x4_fs +KHR-GL42.shaders30.glsl_constructors.bvec2_from_mat3x4_mat3x4_invalid_vs +KHR-GL42.shaders30.glsl_constructors.bvec2_from_mat3x4_mat3x4_invalid_fs +KHR-GL42.shaders30.glsl_constructors.bvec2_from_mat4_vs +KHR-GL42.shaders30.glsl_constructors.bvec2_from_mat4_fs +KHR-GL42.shaders30.glsl_constructors.bvec2_from_mat4_mat4_invalid_vs +KHR-GL42.shaders30.glsl_constructors.bvec2_from_mat4_mat4_invalid_fs +KHR-GL42.shaders30.glsl_constructors.bvec2_from_mat4x2_vs +KHR-GL42.shaders30.glsl_constructors.bvec2_from_mat4x2_fs +KHR-GL42.shaders30.glsl_constructors.bvec2_from_mat4x2_mat4x2_invalid_vs +KHR-GL42.shaders30.glsl_constructors.bvec2_from_mat4x2_mat4x2_invalid_fs +KHR-GL42.shaders30.glsl_constructors.bvec2_from_mat4x3_vs +KHR-GL42.shaders30.glsl_constructors.bvec2_from_mat4x3_fs +KHR-GL42.shaders30.glsl_constructors.bvec2_from_mat4x3_mat4x3_invalid_vs +KHR-GL42.shaders30.glsl_constructors.bvec2_from_mat4x3_mat4x3_invalid_fs +KHR-GL42.shaders30.glsl_constructors.bvec2_from_bool_mat2_vs +KHR-GL42.shaders30.glsl_constructors.bvec2_from_bool_mat2_fs +KHR-GL42.shaders30.glsl_constructors.bvec2_from_bool_mat2_bool_invalid_vs +KHR-GL42.shaders30.glsl_constructors.bvec2_from_bool_mat2_bool_invalid_fs +KHR-GL42.shaders30.glsl_constructors.bvec2_from_bool_mat2x3_vs +KHR-GL42.shaders30.glsl_constructors.bvec2_from_bool_mat2x3_fs +KHR-GL42.shaders30.glsl_constructors.bvec2_from_bool_mat2x3_bool_invalid_vs +KHR-GL42.shaders30.glsl_constructors.bvec2_from_bool_mat2x3_bool_invalid_fs +KHR-GL42.shaders30.glsl_constructors.bvec2_from_bool_mat2x4_vs +KHR-GL42.shaders30.glsl_constructors.bvec2_from_bool_mat2x4_fs +KHR-GL42.shaders30.glsl_constructors.bvec2_from_bool_mat2x4_bool_invalid_vs +KHR-GL42.shaders30.glsl_constructors.bvec2_from_bool_mat2x4_bool_invalid_fs +KHR-GL42.shaders30.glsl_constructors.bvec2_from_bool_mat3_vs +KHR-GL42.shaders30.glsl_constructors.bvec2_from_bool_mat3_fs +KHR-GL42.shaders30.glsl_constructors.bvec2_from_bool_mat3_bool_invalid_vs +KHR-GL42.shaders30.glsl_constructors.bvec2_from_bool_mat3_bool_invalid_fs +KHR-GL42.shaders30.glsl_constructors.bvec2_from_bool_mat3x2_vs +KHR-GL42.shaders30.glsl_constructors.bvec2_from_bool_mat3x2_fs +KHR-GL42.shaders30.glsl_constructors.bvec2_from_bool_mat3x2_bool_invalid_vs +KHR-GL42.shaders30.glsl_constructors.bvec2_from_bool_mat3x2_bool_invalid_fs +KHR-GL42.shaders30.glsl_constructors.bvec2_from_bool_mat3x4_vs +KHR-GL42.shaders30.glsl_constructors.bvec2_from_bool_mat3x4_fs +KHR-GL42.shaders30.glsl_constructors.bvec2_from_bool_mat3x4_bool_invalid_vs +KHR-GL42.shaders30.glsl_constructors.bvec2_from_bool_mat3x4_bool_invalid_fs +KHR-GL42.shaders30.glsl_constructors.bvec2_from_bool_mat4_vs +KHR-GL42.shaders30.glsl_constructors.bvec2_from_bool_mat4_fs +KHR-GL42.shaders30.glsl_constructors.bvec2_from_bool_mat4_bool_invalid_vs +KHR-GL42.shaders30.glsl_constructors.bvec2_from_bool_mat4_bool_invalid_fs +KHR-GL42.shaders30.glsl_constructors.bvec2_from_bool_mat4x2_vs +KHR-GL42.shaders30.glsl_constructors.bvec2_from_bool_mat4x2_fs +KHR-GL42.shaders30.glsl_constructors.bvec2_from_bool_mat4x2_bool_invalid_vs +KHR-GL42.shaders30.glsl_constructors.bvec2_from_bool_mat4x2_bool_invalid_fs +KHR-GL42.shaders30.glsl_constructors.bvec2_from_bool_mat4x3_vs +KHR-GL42.shaders30.glsl_constructors.bvec2_from_bool_mat4x3_fs +KHR-GL42.shaders30.glsl_constructors.bvec2_from_bool_mat4x3_bool_invalid_vs +KHR-GL42.shaders30.glsl_constructors.bvec2_from_bool_mat4x3_bool_invalid_fs +KHR-GL42.shaders30.glsl_constructors.bvec3_from_mat2_vs +KHR-GL42.shaders30.glsl_constructors.bvec3_from_mat2_fs +KHR-GL42.shaders30.glsl_constructors.bvec3_from_mat2_mat2_invalid_vs +KHR-GL42.shaders30.glsl_constructors.bvec3_from_mat2_mat2_invalid_fs +KHR-GL42.shaders30.glsl_constructors.bvec3_from_mat2x3_vs +KHR-GL42.shaders30.glsl_constructors.bvec3_from_mat2x3_fs +KHR-GL42.shaders30.glsl_constructors.bvec3_from_mat2x3_mat2x3_invalid_vs +KHR-GL42.shaders30.glsl_constructors.bvec3_from_mat2x3_mat2x3_invalid_fs +KHR-GL42.shaders30.glsl_constructors.bvec3_from_mat2x4_vs +KHR-GL42.shaders30.glsl_constructors.bvec3_from_mat2x4_fs +KHR-GL42.shaders30.glsl_constructors.bvec3_from_mat2x4_mat2x4_invalid_vs +KHR-GL42.shaders30.glsl_constructors.bvec3_from_mat2x4_mat2x4_invalid_fs +KHR-GL42.shaders30.glsl_constructors.bvec3_from_mat3_vs +KHR-GL42.shaders30.glsl_constructors.bvec3_from_mat3_fs +KHR-GL42.shaders30.glsl_constructors.bvec3_from_mat3_mat3_invalid_vs +KHR-GL42.shaders30.glsl_constructors.bvec3_from_mat3_mat3_invalid_fs +KHR-GL42.shaders30.glsl_constructors.bvec3_from_mat3x2_vs +KHR-GL42.shaders30.glsl_constructors.bvec3_from_mat3x2_fs +KHR-GL42.shaders30.glsl_constructors.bvec3_from_mat3x2_mat3x2_invalid_vs +KHR-GL42.shaders30.glsl_constructors.bvec3_from_mat3x2_mat3x2_invalid_fs +KHR-GL42.shaders30.glsl_constructors.bvec3_from_mat3x4_vs +KHR-GL42.shaders30.glsl_constructors.bvec3_from_mat3x4_fs +KHR-GL42.shaders30.glsl_constructors.bvec3_from_mat3x4_mat3x4_invalid_vs +KHR-GL42.shaders30.glsl_constructors.bvec3_from_mat3x4_mat3x4_invalid_fs +KHR-GL42.shaders30.glsl_constructors.bvec3_from_mat4_vs +KHR-GL42.shaders30.glsl_constructors.bvec3_from_mat4_fs +KHR-GL42.shaders30.glsl_constructors.bvec3_from_mat4_mat4_invalid_vs +KHR-GL42.shaders30.glsl_constructors.bvec3_from_mat4_mat4_invalid_fs +KHR-GL42.shaders30.glsl_constructors.bvec3_from_mat4x2_vs +KHR-GL42.shaders30.glsl_constructors.bvec3_from_mat4x2_fs +KHR-GL42.shaders30.glsl_constructors.bvec3_from_mat4x2_mat4x2_invalid_vs +KHR-GL42.shaders30.glsl_constructors.bvec3_from_mat4x2_mat4x2_invalid_fs +KHR-GL42.shaders30.glsl_constructors.bvec3_from_mat4x3_vs +KHR-GL42.shaders30.glsl_constructors.bvec3_from_mat4x3_fs +KHR-GL42.shaders30.glsl_constructors.bvec3_from_mat4x3_mat4x3_invalid_vs +KHR-GL42.shaders30.glsl_constructors.bvec3_from_mat4x3_mat4x3_invalid_fs +KHR-GL42.shaders30.glsl_constructors.bvec3_from_bool_mat2_vs +KHR-GL42.shaders30.glsl_constructors.bvec3_from_bool_mat2_fs +KHR-GL42.shaders30.glsl_constructors.bvec3_from_bool_mat2_bool_invalid_vs +KHR-GL42.shaders30.glsl_constructors.bvec3_from_bool_mat2_bool_invalid_fs +KHR-GL42.shaders30.glsl_constructors.bvec3_from_bool_mat2x3_vs +KHR-GL42.shaders30.glsl_constructors.bvec3_from_bool_mat2x3_fs +KHR-GL42.shaders30.glsl_constructors.bvec3_from_bool_mat2x3_bool_invalid_vs +KHR-GL42.shaders30.glsl_constructors.bvec3_from_bool_mat2x3_bool_invalid_fs +KHR-GL42.shaders30.glsl_constructors.bvec3_from_bool_mat2x4_vs +KHR-GL42.shaders30.glsl_constructors.bvec3_from_bool_mat2x4_fs +KHR-GL42.shaders30.glsl_constructors.bvec3_from_bool_mat2x4_bool_invalid_vs +KHR-GL42.shaders30.glsl_constructors.bvec3_from_bool_mat2x4_bool_invalid_fs +KHR-GL42.shaders30.glsl_constructors.bvec3_from_bool_mat3_vs +KHR-GL42.shaders30.glsl_constructors.bvec3_from_bool_mat3_fs +KHR-GL42.shaders30.glsl_constructors.bvec3_from_bool_mat3_bool_invalid_vs +KHR-GL42.shaders30.glsl_constructors.bvec3_from_bool_mat3_bool_invalid_fs +KHR-GL42.shaders30.glsl_constructors.bvec3_from_bool_mat3x2_vs +KHR-GL42.shaders30.glsl_constructors.bvec3_from_bool_mat3x2_fs +KHR-GL42.shaders30.glsl_constructors.bvec3_from_bool_mat3x2_bool_invalid_vs +KHR-GL42.shaders30.glsl_constructors.bvec3_from_bool_mat3x2_bool_invalid_fs +KHR-GL42.shaders30.glsl_constructors.bvec3_from_bool_mat3x4_vs +KHR-GL42.shaders30.glsl_constructors.bvec3_from_bool_mat3x4_fs +KHR-GL42.shaders30.glsl_constructors.bvec3_from_bool_mat3x4_bool_invalid_vs +KHR-GL42.shaders30.glsl_constructors.bvec3_from_bool_mat3x4_bool_invalid_fs +KHR-GL42.shaders30.glsl_constructors.bvec3_from_bool_mat4_vs +KHR-GL42.shaders30.glsl_constructors.bvec3_from_bool_mat4_fs +KHR-GL42.shaders30.glsl_constructors.bvec3_from_bool_mat4_bool_invalid_vs +KHR-GL42.shaders30.glsl_constructors.bvec3_from_bool_mat4_bool_invalid_fs +KHR-GL42.shaders30.glsl_constructors.bvec3_from_bool_mat4x2_vs +KHR-GL42.shaders30.glsl_constructors.bvec3_from_bool_mat4x2_fs +KHR-GL42.shaders30.glsl_constructors.bvec3_from_bool_mat4x2_bool_invalid_vs +KHR-GL42.shaders30.glsl_constructors.bvec3_from_bool_mat4x2_bool_invalid_fs +KHR-GL42.shaders30.glsl_constructors.bvec3_from_bool_mat4x3_vs +KHR-GL42.shaders30.glsl_constructors.bvec3_from_bool_mat4x3_fs +KHR-GL42.shaders30.glsl_constructors.bvec3_from_bool_mat4x3_bool_invalid_vs +KHR-GL42.shaders30.glsl_constructors.bvec3_from_bool_mat4x3_bool_invalid_fs +KHR-GL42.shaders30.glsl_constructors.bvec4_from_mat2_vs +KHR-GL42.shaders30.glsl_constructors.bvec4_from_mat2_fs +KHR-GL42.shaders30.glsl_constructors.bvec4_from_mat2_mat2_invalid_vs +KHR-GL42.shaders30.glsl_constructors.bvec4_from_mat2_mat2_invalid_fs +KHR-GL42.shaders30.glsl_constructors.bvec4_from_mat2x3_vs +KHR-GL42.shaders30.glsl_constructors.bvec4_from_mat2x3_fs +KHR-GL42.shaders30.glsl_constructors.bvec4_from_mat2x3_mat2x3_invalid_vs +KHR-GL42.shaders30.glsl_constructors.bvec4_from_mat2x3_mat2x3_invalid_fs +KHR-GL42.shaders30.glsl_constructors.bvec4_from_mat2x4_vs +KHR-GL42.shaders30.glsl_constructors.bvec4_from_mat2x4_fs +KHR-GL42.shaders30.glsl_constructors.bvec4_from_mat2x4_mat2x4_invalid_vs +KHR-GL42.shaders30.glsl_constructors.bvec4_from_mat2x4_mat2x4_invalid_fs +KHR-GL42.shaders30.glsl_constructors.bvec4_from_mat3_vs +KHR-GL42.shaders30.glsl_constructors.bvec4_from_mat3_fs +KHR-GL42.shaders30.glsl_constructors.bvec4_from_mat3_mat3_invalid_vs +KHR-GL42.shaders30.glsl_constructors.bvec4_from_mat3_mat3_invalid_fs +KHR-GL42.shaders30.glsl_constructors.bvec4_from_mat3x2_vs +KHR-GL42.shaders30.glsl_constructors.bvec4_from_mat3x2_fs +KHR-GL42.shaders30.glsl_constructors.bvec4_from_mat3x2_mat3x2_invalid_vs +KHR-GL42.shaders30.glsl_constructors.bvec4_from_mat3x2_mat3x2_invalid_fs +KHR-GL42.shaders30.glsl_constructors.bvec4_from_mat3x4_vs +KHR-GL42.shaders30.glsl_constructors.bvec4_from_mat3x4_fs +KHR-GL42.shaders30.glsl_constructors.bvec4_from_mat3x4_mat3x4_invalid_vs +KHR-GL42.shaders30.glsl_constructors.bvec4_from_mat3x4_mat3x4_invalid_fs +KHR-GL42.shaders30.glsl_constructors.bvec4_from_mat4_vs +KHR-GL42.shaders30.glsl_constructors.bvec4_from_mat4_fs +KHR-GL42.shaders30.glsl_constructors.bvec4_from_mat4_mat4_invalid_vs +KHR-GL42.shaders30.glsl_constructors.bvec4_from_mat4_mat4_invalid_fs +KHR-GL42.shaders30.glsl_constructors.bvec4_from_mat4x2_vs +KHR-GL42.shaders30.glsl_constructors.bvec4_from_mat4x2_fs +KHR-GL42.shaders30.glsl_constructors.bvec4_from_mat4x2_mat4x2_invalid_vs +KHR-GL42.shaders30.glsl_constructors.bvec4_from_mat4x2_mat4x2_invalid_fs +KHR-GL42.shaders30.glsl_constructors.bvec4_from_mat4x3_vs +KHR-GL42.shaders30.glsl_constructors.bvec4_from_mat4x3_fs +KHR-GL42.shaders30.glsl_constructors.bvec4_from_mat4x3_mat4x3_invalid_vs +KHR-GL42.shaders30.glsl_constructors.bvec4_from_mat4x3_mat4x3_invalid_fs +KHR-GL42.shaders30.glsl_constructors.bvec4_from_bool_mat2_vs +KHR-GL42.shaders30.glsl_constructors.bvec4_from_bool_mat2_fs +KHR-GL42.shaders30.glsl_constructors.bvec4_from_bool_mat2_bool_invalid_vs +KHR-GL42.shaders30.glsl_constructors.bvec4_from_bool_mat2_bool_invalid_fs +KHR-GL42.shaders30.glsl_constructors.bvec4_from_bool_mat2x3_vs +KHR-GL42.shaders30.glsl_constructors.bvec4_from_bool_mat2x3_fs +KHR-GL42.shaders30.glsl_constructors.bvec4_from_bool_mat2x3_bool_invalid_vs +KHR-GL42.shaders30.glsl_constructors.bvec4_from_bool_mat2x3_bool_invalid_fs +KHR-GL42.shaders30.glsl_constructors.bvec4_from_bool_mat2x4_vs +KHR-GL42.shaders30.glsl_constructors.bvec4_from_bool_mat2x4_fs +KHR-GL42.shaders30.glsl_constructors.bvec4_from_bool_mat2x4_bool_invalid_vs +KHR-GL42.shaders30.glsl_constructors.bvec4_from_bool_mat2x4_bool_invalid_fs +KHR-GL42.shaders30.glsl_constructors.bvec4_from_bool_mat3_vs +KHR-GL42.shaders30.glsl_constructors.bvec4_from_bool_mat3_fs +KHR-GL42.shaders30.glsl_constructors.bvec4_from_bool_mat3_bool_invalid_vs +KHR-GL42.shaders30.glsl_constructors.bvec4_from_bool_mat3_bool_invalid_fs +KHR-GL42.shaders30.glsl_constructors.bvec4_from_bool_mat3x2_vs +KHR-GL42.shaders30.glsl_constructors.bvec4_from_bool_mat3x2_fs +KHR-GL42.shaders30.glsl_constructors.bvec4_from_bool_mat3x2_bool_invalid_vs +KHR-GL42.shaders30.glsl_constructors.bvec4_from_bool_mat3x2_bool_invalid_fs +KHR-GL42.shaders30.glsl_constructors.bvec4_from_bool_mat3x4_vs +KHR-GL42.shaders30.glsl_constructors.bvec4_from_bool_mat3x4_fs +KHR-GL42.shaders30.glsl_constructors.bvec4_from_bool_mat3x4_bool_invalid_vs +KHR-GL42.shaders30.glsl_constructors.bvec4_from_bool_mat3x4_bool_invalid_fs +KHR-GL42.shaders30.glsl_constructors.bvec4_from_bool_mat4_vs +KHR-GL42.shaders30.glsl_constructors.bvec4_from_bool_mat4_fs +KHR-GL42.shaders30.glsl_constructors.bvec4_from_bool_mat4_bool_invalid_vs +KHR-GL42.shaders30.glsl_constructors.bvec4_from_bool_mat4_bool_invalid_fs +KHR-GL42.shaders30.glsl_constructors.bvec4_from_bool_mat4x2_vs +KHR-GL42.shaders30.glsl_constructors.bvec4_from_bool_mat4x2_fs +KHR-GL42.shaders30.glsl_constructors.bvec4_from_bool_mat4x2_bool_invalid_vs +KHR-GL42.shaders30.glsl_constructors.bvec4_from_bool_mat4x2_bool_invalid_fs +KHR-GL42.shaders30.glsl_constructors.bvec4_from_bool_mat4x3_vs +KHR-GL42.shaders30.glsl_constructors.bvec4_from_bool_mat4x3_fs +KHR-GL42.shaders30.glsl_constructors.bvec4_from_bool_mat4x3_bool_invalid_vs +KHR-GL42.shaders30.glsl_constructors.bvec4_from_bool_mat4x3_bool_invalid_fs KHR-GL42.ext_texture_shadow_lod.texture.sampler2darrayshadow_fragment KHR-GL42.ext_texture_shadow_lod.texture.sampler2darrayshadow_bias_fragment KHR-GL42.ext_texture_shadow_lod.texture.samplercubearrayshadow_vertex diff --git a/external/openglcts/data/mustpass/gl/khronos_mustpass/4.6.1.x/gl43-master.txt b/external/openglcts/data/mustpass/gl/khronos_mustpass/4.6.1.x/gl43-master.txt index 6dacc8c..8202342 100644 --- a/external/openglcts/data/mustpass/gl/khronos_mustpass/4.6.1.x/gl43-master.txt +++ b/external/openglcts/data/mustpass/gl/khronos_mustpass/4.6.1.x/gl43-master.txt @@ -192,6 +192,654 @@ KHR-GL43.texture_repeat_mode.depth24_stencil8_11x131_2_repeat KHR-GL43.texture_repeat_mode.depth24_stencil8_11x131_2_mirrored_repeat KHR-GL43.shaders30.declarations.declarations.redeclare_gl_FragColor KHR-GL43.shaders30.declarations.declarations.redeclare_gl_FragData +KHR-GL43.shaders30.glsl_constructors.vec2_from_mat2_vs +KHR-GL43.shaders30.glsl_constructors.vec2_from_mat2_fs +KHR-GL43.shaders30.glsl_constructors.vec2_from_mat2_mat2_invalid_vs +KHR-GL43.shaders30.glsl_constructors.vec2_from_mat2_mat2_invalid_fs +KHR-GL43.shaders30.glsl_constructors.vec2_from_mat2x3_vs +KHR-GL43.shaders30.glsl_constructors.vec2_from_mat2x3_fs +KHR-GL43.shaders30.glsl_constructors.vec2_from_mat2x3_mat2x3_invalid_vs +KHR-GL43.shaders30.glsl_constructors.vec2_from_mat2x3_mat2x3_invalid_fs +KHR-GL43.shaders30.glsl_constructors.vec2_from_mat2x4_vs +KHR-GL43.shaders30.glsl_constructors.vec2_from_mat2x4_fs +KHR-GL43.shaders30.glsl_constructors.vec2_from_mat2x4_mat2x4_invalid_vs +KHR-GL43.shaders30.glsl_constructors.vec2_from_mat2x4_mat2x4_invalid_fs +KHR-GL43.shaders30.glsl_constructors.vec2_from_mat3_vs +KHR-GL43.shaders30.glsl_constructors.vec2_from_mat3_fs +KHR-GL43.shaders30.glsl_constructors.vec2_from_mat3_mat3_invalid_vs +KHR-GL43.shaders30.glsl_constructors.vec2_from_mat3_mat3_invalid_fs +KHR-GL43.shaders30.glsl_constructors.vec2_from_mat3x2_vs +KHR-GL43.shaders30.glsl_constructors.vec2_from_mat3x2_fs +KHR-GL43.shaders30.glsl_constructors.vec2_from_mat3x2_mat3x2_invalid_vs +KHR-GL43.shaders30.glsl_constructors.vec2_from_mat3x2_mat3x2_invalid_fs +KHR-GL43.shaders30.glsl_constructors.vec2_from_mat3x4_vs +KHR-GL43.shaders30.glsl_constructors.vec2_from_mat3x4_fs +KHR-GL43.shaders30.glsl_constructors.vec2_from_mat3x4_mat3x4_invalid_vs +KHR-GL43.shaders30.glsl_constructors.vec2_from_mat3x4_mat3x4_invalid_fs +KHR-GL43.shaders30.glsl_constructors.vec2_from_mat4_vs +KHR-GL43.shaders30.glsl_constructors.vec2_from_mat4_fs +KHR-GL43.shaders30.glsl_constructors.vec2_from_mat4_mat4_invalid_vs +KHR-GL43.shaders30.glsl_constructors.vec2_from_mat4_mat4_invalid_fs +KHR-GL43.shaders30.glsl_constructors.vec2_from_mat4x2_vs +KHR-GL43.shaders30.glsl_constructors.vec2_from_mat4x2_fs +KHR-GL43.shaders30.glsl_constructors.vec2_from_mat4x2_mat4x2_invalid_vs +KHR-GL43.shaders30.glsl_constructors.vec2_from_mat4x2_mat4x2_invalid_fs +KHR-GL43.shaders30.glsl_constructors.vec2_from_mat4x3_vs +KHR-GL43.shaders30.glsl_constructors.vec2_from_mat4x3_fs +KHR-GL43.shaders30.glsl_constructors.vec2_from_mat4x3_mat4x3_invalid_vs +KHR-GL43.shaders30.glsl_constructors.vec2_from_mat4x3_mat4x3_invalid_fs +KHR-GL43.shaders30.glsl_constructors.vec2_from_float_mat2_vs +KHR-GL43.shaders30.glsl_constructors.vec2_from_float_mat2_fs +KHR-GL43.shaders30.glsl_constructors.vec2_from_float_mat2_float_invalid_vs +KHR-GL43.shaders30.glsl_constructors.vec2_from_float_mat2_float_invalid_fs +KHR-GL43.shaders30.glsl_constructors.vec2_from_float_mat2x3_vs +KHR-GL43.shaders30.glsl_constructors.vec2_from_float_mat2x3_fs +KHR-GL43.shaders30.glsl_constructors.vec2_from_float_mat2x3_float_invalid_vs +KHR-GL43.shaders30.glsl_constructors.vec2_from_float_mat2x3_float_invalid_fs +KHR-GL43.shaders30.glsl_constructors.vec2_from_float_mat2x4_vs +KHR-GL43.shaders30.glsl_constructors.vec2_from_float_mat2x4_fs +KHR-GL43.shaders30.glsl_constructors.vec2_from_float_mat2x4_float_invalid_vs +KHR-GL43.shaders30.glsl_constructors.vec2_from_float_mat2x4_float_invalid_fs +KHR-GL43.shaders30.glsl_constructors.vec2_from_float_mat3_vs +KHR-GL43.shaders30.glsl_constructors.vec2_from_float_mat3_fs +KHR-GL43.shaders30.glsl_constructors.vec2_from_float_mat3_float_invalid_vs +KHR-GL43.shaders30.glsl_constructors.vec2_from_float_mat3_float_invalid_fs +KHR-GL43.shaders30.glsl_constructors.vec2_from_float_mat3x2_vs +KHR-GL43.shaders30.glsl_constructors.vec2_from_float_mat3x2_fs +KHR-GL43.shaders30.glsl_constructors.vec2_from_float_mat3x2_float_invalid_vs +KHR-GL43.shaders30.glsl_constructors.vec2_from_float_mat3x2_float_invalid_fs +KHR-GL43.shaders30.glsl_constructors.vec2_from_float_mat3x4_vs +KHR-GL43.shaders30.glsl_constructors.vec2_from_float_mat3x4_fs +KHR-GL43.shaders30.glsl_constructors.vec2_from_float_mat3x4_float_invalid_vs +KHR-GL43.shaders30.glsl_constructors.vec2_from_float_mat3x4_float_invalid_fs +KHR-GL43.shaders30.glsl_constructors.vec2_from_float_mat4_vs +KHR-GL43.shaders30.glsl_constructors.vec2_from_float_mat4_fs +KHR-GL43.shaders30.glsl_constructors.vec2_from_float_mat4_float_invalid_vs +KHR-GL43.shaders30.glsl_constructors.vec2_from_float_mat4_float_invalid_fs +KHR-GL43.shaders30.glsl_constructors.vec2_from_float_mat4x2_vs +KHR-GL43.shaders30.glsl_constructors.vec2_from_float_mat4x2_fs +KHR-GL43.shaders30.glsl_constructors.vec2_from_float_mat4x2_float_invalid_vs +KHR-GL43.shaders30.glsl_constructors.vec2_from_float_mat4x2_float_invalid_fs +KHR-GL43.shaders30.glsl_constructors.vec2_from_float_mat4x3_vs +KHR-GL43.shaders30.glsl_constructors.vec2_from_float_mat4x3_fs +KHR-GL43.shaders30.glsl_constructors.vec2_from_float_mat4x3_float_invalid_vs +KHR-GL43.shaders30.glsl_constructors.vec2_from_float_mat4x3_float_invalid_fs +KHR-GL43.shaders30.glsl_constructors.vec3_from_mat2_vs +KHR-GL43.shaders30.glsl_constructors.vec3_from_mat2_fs +KHR-GL43.shaders30.glsl_constructors.vec3_from_mat2_mat2_invalid_vs +KHR-GL43.shaders30.glsl_constructors.vec3_from_mat2_mat2_invalid_fs +KHR-GL43.shaders30.glsl_constructors.vec3_from_mat2x3_vs +KHR-GL43.shaders30.glsl_constructors.vec3_from_mat2x3_fs +KHR-GL43.shaders30.glsl_constructors.vec3_from_mat2x3_mat2x3_invalid_vs +KHR-GL43.shaders30.glsl_constructors.vec3_from_mat2x3_mat2x3_invalid_fs +KHR-GL43.shaders30.glsl_constructors.vec3_from_mat2x4_vs +KHR-GL43.shaders30.glsl_constructors.vec3_from_mat2x4_fs +KHR-GL43.shaders30.glsl_constructors.vec3_from_mat2x4_mat2x4_invalid_vs +KHR-GL43.shaders30.glsl_constructors.vec3_from_mat2x4_mat2x4_invalid_fs +KHR-GL43.shaders30.glsl_constructors.vec3_from_mat3_vs +KHR-GL43.shaders30.glsl_constructors.vec3_from_mat3_fs +KHR-GL43.shaders30.glsl_constructors.vec3_from_mat3_mat3_invalid_vs +KHR-GL43.shaders30.glsl_constructors.vec3_from_mat3_mat3_invalid_fs +KHR-GL43.shaders30.glsl_constructors.vec3_from_mat3x2_vs +KHR-GL43.shaders30.glsl_constructors.vec3_from_mat3x2_fs +KHR-GL43.shaders30.glsl_constructors.vec3_from_mat3x2_mat3x2_invalid_vs +KHR-GL43.shaders30.glsl_constructors.vec3_from_mat3x2_mat3x2_invalid_fs +KHR-GL43.shaders30.glsl_constructors.vec3_from_mat3x4_vs +KHR-GL43.shaders30.glsl_constructors.vec3_from_mat3x4_fs +KHR-GL43.shaders30.glsl_constructors.vec3_from_mat3x4_mat3x4_invalid_vs +KHR-GL43.shaders30.glsl_constructors.vec3_from_mat3x4_mat3x4_invalid_fs +KHR-GL43.shaders30.glsl_constructors.vec3_from_mat4_vs +KHR-GL43.shaders30.glsl_constructors.vec3_from_mat4_fs +KHR-GL43.shaders30.glsl_constructors.vec3_from_mat4_mat4_invalid_vs +KHR-GL43.shaders30.glsl_constructors.vec3_from_mat4_mat4_invalid_fs +KHR-GL43.shaders30.glsl_constructors.vec3_from_mat4x2_vs +KHR-GL43.shaders30.glsl_constructors.vec3_from_mat4x2_fs +KHR-GL43.shaders30.glsl_constructors.vec3_from_mat4x2_mat4x2_invalid_vs +KHR-GL43.shaders30.glsl_constructors.vec3_from_mat4x2_mat4x2_invalid_fs +KHR-GL43.shaders30.glsl_constructors.vec3_from_mat4x3_vs +KHR-GL43.shaders30.glsl_constructors.vec3_from_mat4x3_fs +KHR-GL43.shaders30.glsl_constructors.vec3_from_mat4x3_mat4x3_invalid_vs +KHR-GL43.shaders30.glsl_constructors.vec3_from_mat4x3_mat4x3_invalid_fs +KHR-GL43.shaders30.glsl_constructors.vec3_from_float_mat2_vs +KHR-GL43.shaders30.glsl_constructors.vec3_from_float_mat2_fs +KHR-GL43.shaders30.glsl_constructors.vec3_from_float_mat2_float_invalid_vs +KHR-GL43.shaders30.glsl_constructors.vec3_from_float_mat2_float_invalid_fs +KHR-GL43.shaders30.glsl_constructors.vec3_from_float_mat2x3_vs +KHR-GL43.shaders30.glsl_constructors.vec3_from_float_mat2x3_fs +KHR-GL43.shaders30.glsl_constructors.vec3_from_float_mat2x3_float_invalid_vs +KHR-GL43.shaders30.glsl_constructors.vec3_from_float_mat2x3_float_invalid_fs +KHR-GL43.shaders30.glsl_constructors.vec3_from_float_mat2x4_vs +KHR-GL43.shaders30.glsl_constructors.vec3_from_float_mat2x4_fs +KHR-GL43.shaders30.glsl_constructors.vec3_from_float_mat2x4_float_invalid_vs +KHR-GL43.shaders30.glsl_constructors.vec3_from_float_mat2x4_float_invalid_fs +KHR-GL43.shaders30.glsl_constructors.vec3_from_float_mat3_vs +KHR-GL43.shaders30.glsl_constructors.vec3_from_float_mat3_fs +KHR-GL43.shaders30.glsl_constructors.vec3_from_float_mat3_float_invalid_vs +KHR-GL43.shaders30.glsl_constructors.vec3_from_float_mat3_float_invalid_fs +KHR-GL43.shaders30.glsl_constructors.vec3_from_float_mat3x2_vs +KHR-GL43.shaders30.glsl_constructors.vec3_from_float_mat3x2_fs +KHR-GL43.shaders30.glsl_constructors.vec3_from_float_mat3x2_float_invalid_vs +KHR-GL43.shaders30.glsl_constructors.vec3_from_float_mat3x2_float_invalid_fs +KHR-GL43.shaders30.glsl_constructors.vec3_from_float_mat3x4_vs +KHR-GL43.shaders30.glsl_constructors.vec3_from_float_mat3x4_fs +KHR-GL43.shaders30.glsl_constructors.vec3_from_float_mat3x4_float_invalid_vs +KHR-GL43.shaders30.glsl_constructors.vec3_from_float_mat3x4_float_invalid_fs +KHR-GL43.shaders30.glsl_constructors.vec3_from_float_mat4_vs +KHR-GL43.shaders30.glsl_constructors.vec3_from_float_mat4_fs +KHR-GL43.shaders30.glsl_constructors.vec3_from_float_mat4_float_invalid_vs +KHR-GL43.shaders30.glsl_constructors.vec3_from_float_mat4_float_invalid_fs +KHR-GL43.shaders30.glsl_constructors.vec3_from_float_mat4x2_vs +KHR-GL43.shaders30.glsl_constructors.vec3_from_float_mat4x2_fs +KHR-GL43.shaders30.glsl_constructors.vec3_from_float_mat4x2_float_invalid_vs +KHR-GL43.shaders30.glsl_constructors.vec3_from_float_mat4x2_float_invalid_fs +KHR-GL43.shaders30.glsl_constructors.vec3_from_float_mat4x3_vs +KHR-GL43.shaders30.glsl_constructors.vec3_from_float_mat4x3_fs +KHR-GL43.shaders30.glsl_constructors.vec3_from_float_mat4x3_float_invalid_vs +KHR-GL43.shaders30.glsl_constructors.vec3_from_float_mat4x3_float_invalid_fs +KHR-GL43.shaders30.glsl_constructors.vec4_from_mat2_vs +KHR-GL43.shaders30.glsl_constructors.vec4_from_mat2_fs +KHR-GL43.shaders30.glsl_constructors.vec4_from_mat2_mat2_invalid_vs +KHR-GL43.shaders30.glsl_constructors.vec4_from_mat2_mat2_invalid_fs +KHR-GL43.shaders30.glsl_constructors.vec4_from_mat2x3_vs +KHR-GL43.shaders30.glsl_constructors.vec4_from_mat2x3_fs +KHR-GL43.shaders30.glsl_constructors.vec4_from_mat2x3_mat2x3_invalid_vs +KHR-GL43.shaders30.glsl_constructors.vec4_from_mat2x3_mat2x3_invalid_fs +KHR-GL43.shaders30.glsl_constructors.vec4_from_mat2x4_vs +KHR-GL43.shaders30.glsl_constructors.vec4_from_mat2x4_fs +KHR-GL43.shaders30.glsl_constructors.vec4_from_mat2x4_mat2x4_invalid_vs +KHR-GL43.shaders30.glsl_constructors.vec4_from_mat2x4_mat2x4_invalid_fs +KHR-GL43.shaders30.glsl_constructors.vec4_from_mat3_vs +KHR-GL43.shaders30.glsl_constructors.vec4_from_mat3_fs +KHR-GL43.shaders30.glsl_constructors.vec4_from_mat3_mat3_invalid_vs +KHR-GL43.shaders30.glsl_constructors.vec4_from_mat3_mat3_invalid_fs +KHR-GL43.shaders30.glsl_constructors.vec4_from_mat3x2_vs +KHR-GL43.shaders30.glsl_constructors.vec4_from_mat3x2_fs +KHR-GL43.shaders30.glsl_constructors.vec4_from_mat3x2_mat3x2_invalid_vs +KHR-GL43.shaders30.glsl_constructors.vec4_from_mat3x2_mat3x2_invalid_fs +KHR-GL43.shaders30.glsl_constructors.vec4_from_mat3x4_vs +KHR-GL43.shaders30.glsl_constructors.vec4_from_mat3x4_fs +KHR-GL43.shaders30.glsl_constructors.vec4_from_mat3x4_mat3x4_invalid_vs +KHR-GL43.shaders30.glsl_constructors.vec4_from_mat3x4_mat3x4_invalid_fs +KHR-GL43.shaders30.glsl_constructors.vec4_from_mat4_vs +KHR-GL43.shaders30.glsl_constructors.vec4_from_mat4_fs +KHR-GL43.shaders30.glsl_constructors.vec4_from_mat4_mat4_invalid_vs +KHR-GL43.shaders30.glsl_constructors.vec4_from_mat4_mat4_invalid_fs +KHR-GL43.shaders30.glsl_constructors.vec4_from_mat4x2_vs +KHR-GL43.shaders30.glsl_constructors.vec4_from_mat4x2_fs +KHR-GL43.shaders30.glsl_constructors.vec4_from_mat4x2_mat4x2_invalid_vs +KHR-GL43.shaders30.glsl_constructors.vec4_from_mat4x2_mat4x2_invalid_fs +KHR-GL43.shaders30.glsl_constructors.vec4_from_mat4x3_vs +KHR-GL43.shaders30.glsl_constructors.vec4_from_mat4x3_fs +KHR-GL43.shaders30.glsl_constructors.vec4_from_mat4x3_mat4x3_invalid_vs +KHR-GL43.shaders30.glsl_constructors.vec4_from_mat4x3_mat4x3_invalid_fs +KHR-GL43.shaders30.glsl_constructors.vec4_from_float_mat2_vs +KHR-GL43.shaders30.glsl_constructors.vec4_from_float_mat2_fs +KHR-GL43.shaders30.glsl_constructors.vec4_from_float_mat2_float_invalid_vs +KHR-GL43.shaders30.glsl_constructors.vec4_from_float_mat2_float_invalid_fs +KHR-GL43.shaders30.glsl_constructors.vec4_from_float_mat2x3_vs +KHR-GL43.shaders30.glsl_constructors.vec4_from_float_mat2x3_fs +KHR-GL43.shaders30.glsl_constructors.vec4_from_float_mat2x3_float_invalid_vs +KHR-GL43.shaders30.glsl_constructors.vec4_from_float_mat2x3_float_invalid_fs +KHR-GL43.shaders30.glsl_constructors.vec4_from_float_mat2x4_vs +KHR-GL43.shaders30.glsl_constructors.vec4_from_float_mat2x4_fs +KHR-GL43.shaders30.glsl_constructors.vec4_from_float_mat2x4_float_invalid_vs +KHR-GL43.shaders30.glsl_constructors.vec4_from_float_mat2x4_float_invalid_fs +KHR-GL43.shaders30.glsl_constructors.vec4_from_float_mat3_vs +KHR-GL43.shaders30.glsl_constructors.vec4_from_float_mat3_fs +KHR-GL43.shaders30.glsl_constructors.vec4_from_float_mat3_float_invalid_vs +KHR-GL43.shaders30.glsl_constructors.vec4_from_float_mat3_float_invalid_fs +KHR-GL43.shaders30.glsl_constructors.vec4_from_float_mat3x2_vs +KHR-GL43.shaders30.glsl_constructors.vec4_from_float_mat3x2_fs +KHR-GL43.shaders30.glsl_constructors.vec4_from_float_mat3x2_float_invalid_vs +KHR-GL43.shaders30.glsl_constructors.vec4_from_float_mat3x2_float_invalid_fs +KHR-GL43.shaders30.glsl_constructors.vec4_from_float_mat3x4_vs +KHR-GL43.shaders30.glsl_constructors.vec4_from_float_mat3x4_fs +KHR-GL43.shaders30.glsl_constructors.vec4_from_float_mat3x4_float_invalid_vs +KHR-GL43.shaders30.glsl_constructors.vec4_from_float_mat3x4_float_invalid_fs +KHR-GL43.shaders30.glsl_constructors.vec4_from_float_mat4_vs +KHR-GL43.shaders30.glsl_constructors.vec4_from_float_mat4_fs +KHR-GL43.shaders30.glsl_constructors.vec4_from_float_mat4_float_invalid_vs +KHR-GL43.shaders30.glsl_constructors.vec4_from_float_mat4_float_invalid_fs +KHR-GL43.shaders30.glsl_constructors.vec4_from_float_mat4x2_vs +KHR-GL43.shaders30.glsl_constructors.vec4_from_float_mat4x2_fs +KHR-GL43.shaders30.glsl_constructors.vec4_from_float_mat4x2_float_invalid_vs +KHR-GL43.shaders30.glsl_constructors.vec4_from_float_mat4x2_float_invalid_fs +KHR-GL43.shaders30.glsl_constructors.vec4_from_float_mat4x3_vs +KHR-GL43.shaders30.glsl_constructors.vec4_from_float_mat4x3_fs +KHR-GL43.shaders30.glsl_constructors.vec4_from_float_mat4x3_float_invalid_vs +KHR-GL43.shaders30.glsl_constructors.vec4_from_float_mat4x3_float_invalid_fs +KHR-GL43.shaders30.glsl_constructors.ivec2_from_mat2_vs +KHR-GL43.shaders30.glsl_constructors.ivec2_from_mat2_fs +KHR-GL43.shaders30.glsl_constructors.ivec2_from_mat2_mat2_invalid_vs +KHR-GL43.shaders30.glsl_constructors.ivec2_from_mat2_mat2_invalid_fs +KHR-GL43.shaders30.glsl_constructors.ivec2_from_mat2x3_vs +KHR-GL43.shaders30.glsl_constructors.ivec2_from_mat2x3_fs +KHR-GL43.shaders30.glsl_constructors.ivec2_from_mat2x3_mat2x3_invalid_vs +KHR-GL43.shaders30.glsl_constructors.ivec2_from_mat2x3_mat2x3_invalid_fs +KHR-GL43.shaders30.glsl_constructors.ivec2_from_mat2x4_vs +KHR-GL43.shaders30.glsl_constructors.ivec2_from_mat2x4_fs +KHR-GL43.shaders30.glsl_constructors.ivec2_from_mat2x4_mat2x4_invalid_vs +KHR-GL43.shaders30.glsl_constructors.ivec2_from_mat2x4_mat2x4_invalid_fs +KHR-GL43.shaders30.glsl_constructors.ivec2_from_mat3_vs +KHR-GL43.shaders30.glsl_constructors.ivec2_from_mat3_fs +KHR-GL43.shaders30.glsl_constructors.ivec2_from_mat3_mat3_invalid_vs +KHR-GL43.shaders30.glsl_constructors.ivec2_from_mat3_mat3_invalid_fs +KHR-GL43.shaders30.glsl_constructors.ivec2_from_mat3x2_vs +KHR-GL43.shaders30.glsl_constructors.ivec2_from_mat3x2_fs +KHR-GL43.shaders30.glsl_constructors.ivec2_from_mat3x2_mat3x2_invalid_vs +KHR-GL43.shaders30.glsl_constructors.ivec2_from_mat3x2_mat3x2_invalid_fs +KHR-GL43.shaders30.glsl_constructors.ivec2_from_mat3x4_vs +KHR-GL43.shaders30.glsl_constructors.ivec2_from_mat3x4_fs +KHR-GL43.shaders30.glsl_constructors.ivec2_from_mat3x4_mat3x4_invalid_vs +KHR-GL43.shaders30.glsl_constructors.ivec2_from_mat3x4_mat3x4_invalid_fs +KHR-GL43.shaders30.glsl_constructors.ivec2_from_mat4_vs +KHR-GL43.shaders30.glsl_constructors.ivec2_from_mat4_fs +KHR-GL43.shaders30.glsl_constructors.ivec2_from_mat4_mat4_invalid_vs +KHR-GL43.shaders30.glsl_constructors.ivec2_from_mat4_mat4_invalid_fs +KHR-GL43.shaders30.glsl_constructors.ivec2_from_mat4x2_vs +KHR-GL43.shaders30.glsl_constructors.ivec2_from_mat4x2_fs +KHR-GL43.shaders30.glsl_constructors.ivec2_from_mat4x2_mat4x2_invalid_vs +KHR-GL43.shaders30.glsl_constructors.ivec2_from_mat4x2_mat4x2_invalid_fs +KHR-GL43.shaders30.glsl_constructors.ivec2_from_mat4x3_vs +KHR-GL43.shaders30.glsl_constructors.ivec2_from_mat4x3_fs +KHR-GL43.shaders30.glsl_constructors.ivec2_from_mat4x3_mat4x3_invalid_vs +KHR-GL43.shaders30.glsl_constructors.ivec2_from_mat4x3_mat4x3_invalid_fs +KHR-GL43.shaders30.glsl_constructors.ivec2_from_int_mat2_vs +KHR-GL43.shaders30.glsl_constructors.ivec2_from_int_mat2_fs +KHR-GL43.shaders30.glsl_constructors.ivec2_from_int_mat2_int_invalid_vs +KHR-GL43.shaders30.glsl_constructors.ivec2_from_int_mat2_int_invalid_fs +KHR-GL43.shaders30.glsl_constructors.ivec2_from_int_mat2x3_vs +KHR-GL43.shaders30.glsl_constructors.ivec2_from_int_mat2x3_fs +KHR-GL43.shaders30.glsl_constructors.ivec2_from_int_mat2x3_int_invalid_vs +KHR-GL43.shaders30.glsl_constructors.ivec2_from_int_mat2x3_int_invalid_fs +KHR-GL43.shaders30.glsl_constructors.ivec2_from_int_mat2x4_vs +KHR-GL43.shaders30.glsl_constructors.ivec2_from_int_mat2x4_fs +KHR-GL43.shaders30.glsl_constructors.ivec2_from_int_mat2x4_int_invalid_vs +KHR-GL43.shaders30.glsl_constructors.ivec2_from_int_mat2x4_int_invalid_fs +KHR-GL43.shaders30.glsl_constructors.ivec2_from_int_mat3_vs +KHR-GL43.shaders30.glsl_constructors.ivec2_from_int_mat3_fs +KHR-GL43.shaders30.glsl_constructors.ivec2_from_int_mat3_int_invalid_vs +KHR-GL43.shaders30.glsl_constructors.ivec2_from_int_mat3_int_invalid_fs +KHR-GL43.shaders30.glsl_constructors.ivec2_from_int_mat3x2_vs +KHR-GL43.shaders30.glsl_constructors.ivec2_from_int_mat3x2_fs +KHR-GL43.shaders30.glsl_constructors.ivec2_from_int_mat3x2_int_invalid_vs +KHR-GL43.shaders30.glsl_constructors.ivec2_from_int_mat3x2_int_invalid_fs +KHR-GL43.shaders30.glsl_constructors.ivec2_from_int_mat3x4_vs +KHR-GL43.shaders30.glsl_constructors.ivec2_from_int_mat3x4_fs +KHR-GL43.shaders30.glsl_constructors.ivec2_from_int_mat3x4_int_invalid_vs +KHR-GL43.shaders30.glsl_constructors.ivec2_from_int_mat3x4_int_invalid_fs +KHR-GL43.shaders30.glsl_constructors.ivec2_from_int_mat4_vs +KHR-GL43.shaders30.glsl_constructors.ivec2_from_int_mat4_fs +KHR-GL43.shaders30.glsl_constructors.ivec2_from_int_mat4_int_invalid_vs +KHR-GL43.shaders30.glsl_constructors.ivec2_from_int_mat4_int_invalid_fs +KHR-GL43.shaders30.glsl_constructors.ivec2_from_int_mat4x2_vs +KHR-GL43.shaders30.glsl_constructors.ivec2_from_int_mat4x2_fs +KHR-GL43.shaders30.glsl_constructors.ivec2_from_int_mat4x2_int_invalid_vs +KHR-GL43.shaders30.glsl_constructors.ivec2_from_int_mat4x2_int_invalid_fs +KHR-GL43.shaders30.glsl_constructors.ivec2_from_int_mat4x3_vs +KHR-GL43.shaders30.glsl_constructors.ivec2_from_int_mat4x3_fs +KHR-GL43.shaders30.glsl_constructors.ivec2_from_int_mat4x3_int_invalid_vs +KHR-GL43.shaders30.glsl_constructors.ivec2_from_int_mat4x3_int_invalid_fs +KHR-GL43.shaders30.glsl_constructors.ivec3_from_mat2_vs +KHR-GL43.shaders30.glsl_constructors.ivec3_from_mat2_fs +KHR-GL43.shaders30.glsl_constructors.ivec3_from_mat2_mat2_invalid_vs +KHR-GL43.shaders30.glsl_constructors.ivec3_from_mat2_mat2_invalid_fs +KHR-GL43.shaders30.glsl_constructors.ivec3_from_mat2x3_vs +KHR-GL43.shaders30.glsl_constructors.ivec3_from_mat2x3_fs +KHR-GL43.shaders30.glsl_constructors.ivec3_from_mat2x3_mat2x3_invalid_vs +KHR-GL43.shaders30.glsl_constructors.ivec3_from_mat2x3_mat2x3_invalid_fs +KHR-GL43.shaders30.glsl_constructors.ivec3_from_mat2x4_vs +KHR-GL43.shaders30.glsl_constructors.ivec3_from_mat2x4_fs +KHR-GL43.shaders30.glsl_constructors.ivec3_from_mat2x4_mat2x4_invalid_vs +KHR-GL43.shaders30.glsl_constructors.ivec3_from_mat2x4_mat2x4_invalid_fs +KHR-GL43.shaders30.glsl_constructors.ivec3_from_mat3_vs +KHR-GL43.shaders30.glsl_constructors.ivec3_from_mat3_fs +KHR-GL43.shaders30.glsl_constructors.ivec3_from_mat3_mat3_invalid_vs +KHR-GL43.shaders30.glsl_constructors.ivec3_from_mat3_mat3_invalid_fs +KHR-GL43.shaders30.glsl_constructors.ivec3_from_mat3x2_vs +KHR-GL43.shaders30.glsl_constructors.ivec3_from_mat3x2_fs +KHR-GL43.shaders30.glsl_constructors.ivec3_from_mat3x2_mat3x2_invalid_vs +KHR-GL43.shaders30.glsl_constructors.ivec3_from_mat3x2_mat3x2_invalid_fs +KHR-GL43.shaders30.glsl_constructors.ivec3_from_mat3x4_vs +KHR-GL43.shaders30.glsl_constructors.ivec3_from_mat3x4_fs +KHR-GL43.shaders30.glsl_constructors.ivec3_from_mat3x4_mat3x4_invalid_vs +KHR-GL43.shaders30.glsl_constructors.ivec3_from_mat3x4_mat3x4_invalid_fs +KHR-GL43.shaders30.glsl_constructors.ivec3_from_mat4_vs +KHR-GL43.shaders30.glsl_constructors.ivec3_from_mat4_fs +KHR-GL43.shaders30.glsl_constructors.ivec3_from_mat4_mat4_invalid_vs +KHR-GL43.shaders30.glsl_constructors.ivec3_from_mat4_mat4_invalid_fs +KHR-GL43.shaders30.glsl_constructors.ivec3_from_mat4x2_vs +KHR-GL43.shaders30.glsl_constructors.ivec3_from_mat4x2_fs +KHR-GL43.shaders30.glsl_constructors.ivec3_from_mat4x2_mat4x2_invalid_vs +KHR-GL43.shaders30.glsl_constructors.ivec3_from_mat4x2_mat4x2_invalid_fs +KHR-GL43.shaders30.glsl_constructors.ivec3_from_mat4x3_vs +KHR-GL43.shaders30.glsl_constructors.ivec3_from_mat4x3_fs +KHR-GL43.shaders30.glsl_constructors.ivec3_from_mat4x3_mat4x3_invalid_vs +KHR-GL43.shaders30.glsl_constructors.ivec3_from_mat4x3_mat4x3_invalid_fs +KHR-GL43.shaders30.glsl_constructors.ivec3_from_int_mat2_vs +KHR-GL43.shaders30.glsl_constructors.ivec3_from_int_mat2_fs +KHR-GL43.shaders30.glsl_constructors.ivec3_from_int_mat2_int_invalid_vs +KHR-GL43.shaders30.glsl_constructors.ivec3_from_int_mat2_int_invalid_fs +KHR-GL43.shaders30.glsl_constructors.ivec3_from_int_mat2x3_vs +KHR-GL43.shaders30.glsl_constructors.ivec3_from_int_mat2x3_fs +KHR-GL43.shaders30.glsl_constructors.ivec3_from_int_mat2x3_int_invalid_vs +KHR-GL43.shaders30.glsl_constructors.ivec3_from_int_mat2x3_int_invalid_fs +KHR-GL43.shaders30.glsl_constructors.ivec3_from_int_mat2x4_vs +KHR-GL43.shaders30.glsl_constructors.ivec3_from_int_mat2x4_fs +KHR-GL43.shaders30.glsl_constructors.ivec3_from_int_mat2x4_int_invalid_vs +KHR-GL43.shaders30.glsl_constructors.ivec3_from_int_mat2x4_int_invalid_fs +KHR-GL43.shaders30.glsl_constructors.ivec3_from_int_mat3_vs +KHR-GL43.shaders30.glsl_constructors.ivec3_from_int_mat3_fs +KHR-GL43.shaders30.glsl_constructors.ivec3_from_int_mat3_int_invalid_vs +KHR-GL43.shaders30.glsl_constructors.ivec3_from_int_mat3_int_invalid_fs +KHR-GL43.shaders30.glsl_constructors.ivec3_from_int_mat3x2_vs +KHR-GL43.shaders30.glsl_constructors.ivec3_from_int_mat3x2_fs +KHR-GL43.shaders30.glsl_constructors.ivec3_from_int_mat3x2_int_invalid_vs +KHR-GL43.shaders30.glsl_constructors.ivec3_from_int_mat3x2_int_invalid_fs +KHR-GL43.shaders30.glsl_constructors.ivec3_from_int_mat3x4_vs +KHR-GL43.shaders30.glsl_constructors.ivec3_from_int_mat3x4_fs +KHR-GL43.shaders30.glsl_constructors.ivec3_from_int_mat3x4_int_invalid_vs +KHR-GL43.shaders30.glsl_constructors.ivec3_from_int_mat3x4_int_invalid_fs +KHR-GL43.shaders30.glsl_constructors.ivec3_from_int_mat4_vs +KHR-GL43.shaders30.glsl_constructors.ivec3_from_int_mat4_fs +KHR-GL43.shaders30.glsl_constructors.ivec3_from_int_mat4_int_invalid_vs +KHR-GL43.shaders30.glsl_constructors.ivec3_from_int_mat4_int_invalid_fs +KHR-GL43.shaders30.glsl_constructors.ivec3_from_int_mat4x2_vs +KHR-GL43.shaders30.glsl_constructors.ivec3_from_int_mat4x2_fs +KHR-GL43.shaders30.glsl_constructors.ivec3_from_int_mat4x2_int_invalid_vs +KHR-GL43.shaders30.glsl_constructors.ivec3_from_int_mat4x2_int_invalid_fs +KHR-GL43.shaders30.glsl_constructors.ivec3_from_int_mat4x3_vs +KHR-GL43.shaders30.glsl_constructors.ivec3_from_int_mat4x3_fs +KHR-GL43.shaders30.glsl_constructors.ivec3_from_int_mat4x3_int_invalid_vs +KHR-GL43.shaders30.glsl_constructors.ivec3_from_int_mat4x3_int_invalid_fs +KHR-GL43.shaders30.glsl_constructors.ivec4_from_mat2_vs +KHR-GL43.shaders30.glsl_constructors.ivec4_from_mat2_fs +KHR-GL43.shaders30.glsl_constructors.ivec4_from_mat2_mat2_invalid_vs +KHR-GL43.shaders30.glsl_constructors.ivec4_from_mat2_mat2_invalid_fs +KHR-GL43.shaders30.glsl_constructors.ivec4_from_mat2x3_vs +KHR-GL43.shaders30.glsl_constructors.ivec4_from_mat2x3_fs +KHR-GL43.shaders30.glsl_constructors.ivec4_from_mat2x3_mat2x3_invalid_vs +KHR-GL43.shaders30.glsl_constructors.ivec4_from_mat2x3_mat2x3_invalid_fs +KHR-GL43.shaders30.glsl_constructors.ivec4_from_mat2x4_vs +KHR-GL43.shaders30.glsl_constructors.ivec4_from_mat2x4_fs +KHR-GL43.shaders30.glsl_constructors.ivec4_from_mat2x4_mat2x4_invalid_vs +KHR-GL43.shaders30.glsl_constructors.ivec4_from_mat2x4_mat2x4_invalid_fs +KHR-GL43.shaders30.glsl_constructors.ivec4_from_mat3_vs +KHR-GL43.shaders30.glsl_constructors.ivec4_from_mat3_fs +KHR-GL43.shaders30.glsl_constructors.ivec4_from_mat3_mat3_invalid_vs +KHR-GL43.shaders30.glsl_constructors.ivec4_from_mat3_mat3_invalid_fs +KHR-GL43.shaders30.glsl_constructors.ivec4_from_mat3x2_vs +KHR-GL43.shaders30.glsl_constructors.ivec4_from_mat3x2_fs +KHR-GL43.shaders30.glsl_constructors.ivec4_from_mat3x2_mat3x2_invalid_vs +KHR-GL43.shaders30.glsl_constructors.ivec4_from_mat3x2_mat3x2_invalid_fs +KHR-GL43.shaders30.glsl_constructors.ivec4_from_mat3x4_vs +KHR-GL43.shaders30.glsl_constructors.ivec4_from_mat3x4_fs +KHR-GL43.shaders30.glsl_constructors.ivec4_from_mat3x4_mat3x4_invalid_vs +KHR-GL43.shaders30.glsl_constructors.ivec4_from_mat3x4_mat3x4_invalid_fs +KHR-GL43.shaders30.glsl_constructors.ivec4_from_mat4_vs +KHR-GL43.shaders30.glsl_constructors.ivec4_from_mat4_fs +KHR-GL43.shaders30.glsl_constructors.ivec4_from_mat4_mat4_invalid_vs +KHR-GL43.shaders30.glsl_constructors.ivec4_from_mat4_mat4_invalid_fs +KHR-GL43.shaders30.glsl_constructors.ivec4_from_mat4x2_vs +KHR-GL43.shaders30.glsl_constructors.ivec4_from_mat4x2_fs +KHR-GL43.shaders30.glsl_constructors.ivec4_from_mat4x2_mat4x2_invalid_vs +KHR-GL43.shaders30.glsl_constructors.ivec4_from_mat4x2_mat4x2_invalid_fs +KHR-GL43.shaders30.glsl_constructors.ivec4_from_mat4x3_vs +KHR-GL43.shaders30.glsl_constructors.ivec4_from_mat4x3_fs +KHR-GL43.shaders30.glsl_constructors.ivec4_from_mat4x3_mat4x3_invalid_vs +KHR-GL43.shaders30.glsl_constructors.ivec4_from_mat4x3_mat4x3_invalid_fs +KHR-GL43.shaders30.glsl_constructors.ivec4_from_int_mat2_vs +KHR-GL43.shaders30.glsl_constructors.ivec4_from_int_mat2_fs +KHR-GL43.shaders30.glsl_constructors.ivec4_from_int_mat2_int_invalid_vs +KHR-GL43.shaders30.glsl_constructors.ivec4_from_int_mat2_int_invalid_fs +KHR-GL43.shaders30.glsl_constructors.ivec4_from_int_mat2x3_vs +KHR-GL43.shaders30.glsl_constructors.ivec4_from_int_mat2x3_fs +KHR-GL43.shaders30.glsl_constructors.ivec4_from_int_mat2x3_int_invalid_vs +KHR-GL43.shaders30.glsl_constructors.ivec4_from_int_mat2x3_int_invalid_fs +KHR-GL43.shaders30.glsl_constructors.ivec4_from_int_mat2x4_vs +KHR-GL43.shaders30.glsl_constructors.ivec4_from_int_mat2x4_fs +KHR-GL43.shaders30.glsl_constructors.ivec4_from_int_mat2x4_int_invalid_vs +KHR-GL43.shaders30.glsl_constructors.ivec4_from_int_mat2x4_int_invalid_fs +KHR-GL43.shaders30.glsl_constructors.ivec4_from_int_mat3_vs +KHR-GL43.shaders30.glsl_constructors.ivec4_from_int_mat3_fs +KHR-GL43.shaders30.glsl_constructors.ivec4_from_int_mat3_int_invalid_vs +KHR-GL43.shaders30.glsl_constructors.ivec4_from_int_mat3_int_invalid_fs +KHR-GL43.shaders30.glsl_constructors.ivec4_from_int_mat3x2_vs +KHR-GL43.shaders30.glsl_constructors.ivec4_from_int_mat3x2_fs +KHR-GL43.shaders30.glsl_constructors.ivec4_from_int_mat3x2_int_invalid_vs +KHR-GL43.shaders30.glsl_constructors.ivec4_from_int_mat3x2_int_invalid_fs +KHR-GL43.shaders30.glsl_constructors.ivec4_from_int_mat3x4_vs +KHR-GL43.shaders30.glsl_constructors.ivec4_from_int_mat3x4_fs +KHR-GL43.shaders30.glsl_constructors.ivec4_from_int_mat3x4_int_invalid_vs +KHR-GL43.shaders30.glsl_constructors.ivec4_from_int_mat3x4_int_invalid_fs +KHR-GL43.shaders30.glsl_constructors.ivec4_from_int_mat4_vs +KHR-GL43.shaders30.glsl_constructors.ivec4_from_int_mat4_fs +KHR-GL43.shaders30.glsl_constructors.ivec4_from_int_mat4_int_invalid_vs +KHR-GL43.shaders30.glsl_constructors.ivec4_from_int_mat4_int_invalid_fs +KHR-GL43.shaders30.glsl_constructors.ivec4_from_int_mat4x2_vs +KHR-GL43.shaders30.glsl_constructors.ivec4_from_int_mat4x2_fs +KHR-GL43.shaders30.glsl_constructors.ivec4_from_int_mat4x2_int_invalid_vs +KHR-GL43.shaders30.glsl_constructors.ivec4_from_int_mat4x2_int_invalid_fs +KHR-GL43.shaders30.glsl_constructors.ivec4_from_int_mat4x3_vs +KHR-GL43.shaders30.glsl_constructors.ivec4_from_int_mat4x3_fs +KHR-GL43.shaders30.glsl_constructors.ivec4_from_int_mat4x3_int_invalid_vs +KHR-GL43.shaders30.glsl_constructors.ivec4_from_int_mat4x3_int_invalid_fs +KHR-GL43.shaders30.glsl_constructors.bvec2_from_mat2_vs +KHR-GL43.shaders30.glsl_constructors.bvec2_from_mat2_fs +KHR-GL43.shaders30.glsl_constructors.bvec2_from_mat2_mat2_invalid_vs +KHR-GL43.shaders30.glsl_constructors.bvec2_from_mat2_mat2_invalid_fs +KHR-GL43.shaders30.glsl_constructors.bvec2_from_mat2x3_vs +KHR-GL43.shaders30.glsl_constructors.bvec2_from_mat2x3_fs +KHR-GL43.shaders30.glsl_constructors.bvec2_from_mat2x3_mat2x3_invalid_vs +KHR-GL43.shaders30.glsl_constructors.bvec2_from_mat2x3_mat2x3_invalid_fs +KHR-GL43.shaders30.glsl_constructors.bvec2_from_mat2x4_vs +KHR-GL43.shaders30.glsl_constructors.bvec2_from_mat2x4_fs +KHR-GL43.shaders30.glsl_constructors.bvec2_from_mat2x4_mat2x4_invalid_vs +KHR-GL43.shaders30.glsl_constructors.bvec2_from_mat2x4_mat2x4_invalid_fs +KHR-GL43.shaders30.glsl_constructors.bvec2_from_mat3_vs +KHR-GL43.shaders30.glsl_constructors.bvec2_from_mat3_fs +KHR-GL43.shaders30.glsl_constructors.bvec2_from_mat3_mat3_invalid_vs +KHR-GL43.shaders30.glsl_constructors.bvec2_from_mat3_mat3_invalid_fs +KHR-GL43.shaders30.glsl_constructors.bvec2_from_mat3x2_vs +KHR-GL43.shaders30.glsl_constructors.bvec2_from_mat3x2_fs +KHR-GL43.shaders30.glsl_constructors.bvec2_from_mat3x2_mat3x2_invalid_vs +KHR-GL43.shaders30.glsl_constructors.bvec2_from_mat3x2_mat3x2_invalid_fs +KHR-GL43.shaders30.glsl_constructors.bvec2_from_mat3x4_vs +KHR-GL43.shaders30.glsl_constructors.bvec2_from_mat3x4_fs +KHR-GL43.shaders30.glsl_constructors.bvec2_from_mat3x4_mat3x4_invalid_vs +KHR-GL43.shaders30.glsl_constructors.bvec2_from_mat3x4_mat3x4_invalid_fs +KHR-GL43.shaders30.glsl_constructors.bvec2_from_mat4_vs +KHR-GL43.shaders30.glsl_constructors.bvec2_from_mat4_fs +KHR-GL43.shaders30.glsl_constructors.bvec2_from_mat4_mat4_invalid_vs +KHR-GL43.shaders30.glsl_constructors.bvec2_from_mat4_mat4_invalid_fs +KHR-GL43.shaders30.glsl_constructors.bvec2_from_mat4x2_vs +KHR-GL43.shaders30.glsl_constructors.bvec2_from_mat4x2_fs +KHR-GL43.shaders30.glsl_constructors.bvec2_from_mat4x2_mat4x2_invalid_vs +KHR-GL43.shaders30.glsl_constructors.bvec2_from_mat4x2_mat4x2_invalid_fs +KHR-GL43.shaders30.glsl_constructors.bvec2_from_mat4x3_vs +KHR-GL43.shaders30.glsl_constructors.bvec2_from_mat4x3_fs +KHR-GL43.shaders30.glsl_constructors.bvec2_from_mat4x3_mat4x3_invalid_vs +KHR-GL43.shaders30.glsl_constructors.bvec2_from_mat4x3_mat4x3_invalid_fs +KHR-GL43.shaders30.glsl_constructors.bvec2_from_bool_mat2_vs +KHR-GL43.shaders30.glsl_constructors.bvec2_from_bool_mat2_fs +KHR-GL43.shaders30.glsl_constructors.bvec2_from_bool_mat2_bool_invalid_vs +KHR-GL43.shaders30.glsl_constructors.bvec2_from_bool_mat2_bool_invalid_fs +KHR-GL43.shaders30.glsl_constructors.bvec2_from_bool_mat2x3_vs +KHR-GL43.shaders30.glsl_constructors.bvec2_from_bool_mat2x3_fs +KHR-GL43.shaders30.glsl_constructors.bvec2_from_bool_mat2x3_bool_invalid_vs +KHR-GL43.shaders30.glsl_constructors.bvec2_from_bool_mat2x3_bool_invalid_fs +KHR-GL43.shaders30.glsl_constructors.bvec2_from_bool_mat2x4_vs +KHR-GL43.shaders30.glsl_constructors.bvec2_from_bool_mat2x4_fs +KHR-GL43.shaders30.glsl_constructors.bvec2_from_bool_mat2x4_bool_invalid_vs +KHR-GL43.shaders30.glsl_constructors.bvec2_from_bool_mat2x4_bool_invalid_fs +KHR-GL43.shaders30.glsl_constructors.bvec2_from_bool_mat3_vs +KHR-GL43.shaders30.glsl_constructors.bvec2_from_bool_mat3_fs +KHR-GL43.shaders30.glsl_constructors.bvec2_from_bool_mat3_bool_invalid_vs +KHR-GL43.shaders30.glsl_constructors.bvec2_from_bool_mat3_bool_invalid_fs +KHR-GL43.shaders30.glsl_constructors.bvec2_from_bool_mat3x2_vs +KHR-GL43.shaders30.glsl_constructors.bvec2_from_bool_mat3x2_fs +KHR-GL43.shaders30.glsl_constructors.bvec2_from_bool_mat3x2_bool_invalid_vs +KHR-GL43.shaders30.glsl_constructors.bvec2_from_bool_mat3x2_bool_invalid_fs +KHR-GL43.shaders30.glsl_constructors.bvec2_from_bool_mat3x4_vs +KHR-GL43.shaders30.glsl_constructors.bvec2_from_bool_mat3x4_fs +KHR-GL43.shaders30.glsl_constructors.bvec2_from_bool_mat3x4_bool_invalid_vs +KHR-GL43.shaders30.glsl_constructors.bvec2_from_bool_mat3x4_bool_invalid_fs +KHR-GL43.shaders30.glsl_constructors.bvec2_from_bool_mat4_vs +KHR-GL43.shaders30.glsl_constructors.bvec2_from_bool_mat4_fs +KHR-GL43.shaders30.glsl_constructors.bvec2_from_bool_mat4_bool_invalid_vs +KHR-GL43.shaders30.glsl_constructors.bvec2_from_bool_mat4_bool_invalid_fs +KHR-GL43.shaders30.glsl_constructors.bvec2_from_bool_mat4x2_vs +KHR-GL43.shaders30.glsl_constructors.bvec2_from_bool_mat4x2_fs +KHR-GL43.shaders30.glsl_constructors.bvec2_from_bool_mat4x2_bool_invalid_vs +KHR-GL43.shaders30.glsl_constructors.bvec2_from_bool_mat4x2_bool_invalid_fs +KHR-GL43.shaders30.glsl_constructors.bvec2_from_bool_mat4x3_vs +KHR-GL43.shaders30.glsl_constructors.bvec2_from_bool_mat4x3_fs +KHR-GL43.shaders30.glsl_constructors.bvec2_from_bool_mat4x3_bool_invalid_vs +KHR-GL43.shaders30.glsl_constructors.bvec2_from_bool_mat4x3_bool_invalid_fs +KHR-GL43.shaders30.glsl_constructors.bvec3_from_mat2_vs +KHR-GL43.shaders30.glsl_constructors.bvec3_from_mat2_fs +KHR-GL43.shaders30.glsl_constructors.bvec3_from_mat2_mat2_invalid_vs +KHR-GL43.shaders30.glsl_constructors.bvec3_from_mat2_mat2_invalid_fs +KHR-GL43.shaders30.glsl_constructors.bvec3_from_mat2x3_vs +KHR-GL43.shaders30.glsl_constructors.bvec3_from_mat2x3_fs +KHR-GL43.shaders30.glsl_constructors.bvec3_from_mat2x3_mat2x3_invalid_vs +KHR-GL43.shaders30.glsl_constructors.bvec3_from_mat2x3_mat2x3_invalid_fs +KHR-GL43.shaders30.glsl_constructors.bvec3_from_mat2x4_vs +KHR-GL43.shaders30.glsl_constructors.bvec3_from_mat2x4_fs +KHR-GL43.shaders30.glsl_constructors.bvec3_from_mat2x4_mat2x4_invalid_vs +KHR-GL43.shaders30.glsl_constructors.bvec3_from_mat2x4_mat2x4_invalid_fs +KHR-GL43.shaders30.glsl_constructors.bvec3_from_mat3_vs +KHR-GL43.shaders30.glsl_constructors.bvec3_from_mat3_fs +KHR-GL43.shaders30.glsl_constructors.bvec3_from_mat3_mat3_invalid_vs +KHR-GL43.shaders30.glsl_constructors.bvec3_from_mat3_mat3_invalid_fs +KHR-GL43.shaders30.glsl_constructors.bvec3_from_mat3x2_vs +KHR-GL43.shaders30.glsl_constructors.bvec3_from_mat3x2_fs +KHR-GL43.shaders30.glsl_constructors.bvec3_from_mat3x2_mat3x2_invalid_vs +KHR-GL43.shaders30.glsl_constructors.bvec3_from_mat3x2_mat3x2_invalid_fs +KHR-GL43.shaders30.glsl_constructors.bvec3_from_mat3x4_vs +KHR-GL43.shaders30.glsl_constructors.bvec3_from_mat3x4_fs +KHR-GL43.shaders30.glsl_constructors.bvec3_from_mat3x4_mat3x4_invalid_vs +KHR-GL43.shaders30.glsl_constructors.bvec3_from_mat3x4_mat3x4_invalid_fs +KHR-GL43.shaders30.glsl_constructors.bvec3_from_mat4_vs +KHR-GL43.shaders30.glsl_constructors.bvec3_from_mat4_fs +KHR-GL43.shaders30.glsl_constructors.bvec3_from_mat4_mat4_invalid_vs +KHR-GL43.shaders30.glsl_constructors.bvec3_from_mat4_mat4_invalid_fs +KHR-GL43.shaders30.glsl_constructors.bvec3_from_mat4x2_vs +KHR-GL43.shaders30.glsl_constructors.bvec3_from_mat4x2_fs +KHR-GL43.shaders30.glsl_constructors.bvec3_from_mat4x2_mat4x2_invalid_vs +KHR-GL43.shaders30.glsl_constructors.bvec3_from_mat4x2_mat4x2_invalid_fs +KHR-GL43.shaders30.glsl_constructors.bvec3_from_mat4x3_vs +KHR-GL43.shaders30.glsl_constructors.bvec3_from_mat4x3_fs +KHR-GL43.shaders30.glsl_constructors.bvec3_from_mat4x3_mat4x3_invalid_vs +KHR-GL43.shaders30.glsl_constructors.bvec3_from_mat4x3_mat4x3_invalid_fs +KHR-GL43.shaders30.glsl_constructors.bvec3_from_bool_mat2_vs +KHR-GL43.shaders30.glsl_constructors.bvec3_from_bool_mat2_fs +KHR-GL43.shaders30.glsl_constructors.bvec3_from_bool_mat2_bool_invalid_vs +KHR-GL43.shaders30.glsl_constructors.bvec3_from_bool_mat2_bool_invalid_fs +KHR-GL43.shaders30.glsl_constructors.bvec3_from_bool_mat2x3_vs +KHR-GL43.shaders30.glsl_constructors.bvec3_from_bool_mat2x3_fs +KHR-GL43.shaders30.glsl_constructors.bvec3_from_bool_mat2x3_bool_invalid_vs +KHR-GL43.shaders30.glsl_constructors.bvec3_from_bool_mat2x3_bool_invalid_fs +KHR-GL43.shaders30.glsl_constructors.bvec3_from_bool_mat2x4_vs +KHR-GL43.shaders30.glsl_constructors.bvec3_from_bool_mat2x4_fs +KHR-GL43.shaders30.glsl_constructors.bvec3_from_bool_mat2x4_bool_invalid_vs +KHR-GL43.shaders30.glsl_constructors.bvec3_from_bool_mat2x4_bool_invalid_fs +KHR-GL43.shaders30.glsl_constructors.bvec3_from_bool_mat3_vs +KHR-GL43.shaders30.glsl_constructors.bvec3_from_bool_mat3_fs +KHR-GL43.shaders30.glsl_constructors.bvec3_from_bool_mat3_bool_invalid_vs +KHR-GL43.shaders30.glsl_constructors.bvec3_from_bool_mat3_bool_invalid_fs +KHR-GL43.shaders30.glsl_constructors.bvec3_from_bool_mat3x2_vs +KHR-GL43.shaders30.glsl_constructors.bvec3_from_bool_mat3x2_fs +KHR-GL43.shaders30.glsl_constructors.bvec3_from_bool_mat3x2_bool_invalid_vs +KHR-GL43.shaders30.glsl_constructors.bvec3_from_bool_mat3x2_bool_invalid_fs +KHR-GL43.shaders30.glsl_constructors.bvec3_from_bool_mat3x4_vs +KHR-GL43.shaders30.glsl_constructors.bvec3_from_bool_mat3x4_fs +KHR-GL43.shaders30.glsl_constructors.bvec3_from_bool_mat3x4_bool_invalid_vs +KHR-GL43.shaders30.glsl_constructors.bvec3_from_bool_mat3x4_bool_invalid_fs +KHR-GL43.shaders30.glsl_constructors.bvec3_from_bool_mat4_vs +KHR-GL43.shaders30.glsl_constructors.bvec3_from_bool_mat4_fs +KHR-GL43.shaders30.glsl_constructors.bvec3_from_bool_mat4_bool_invalid_vs +KHR-GL43.shaders30.glsl_constructors.bvec3_from_bool_mat4_bool_invalid_fs +KHR-GL43.shaders30.glsl_constructors.bvec3_from_bool_mat4x2_vs +KHR-GL43.shaders30.glsl_constructors.bvec3_from_bool_mat4x2_fs +KHR-GL43.shaders30.glsl_constructors.bvec3_from_bool_mat4x2_bool_invalid_vs +KHR-GL43.shaders30.glsl_constructors.bvec3_from_bool_mat4x2_bool_invalid_fs +KHR-GL43.shaders30.glsl_constructors.bvec3_from_bool_mat4x3_vs +KHR-GL43.shaders30.glsl_constructors.bvec3_from_bool_mat4x3_fs +KHR-GL43.shaders30.glsl_constructors.bvec3_from_bool_mat4x3_bool_invalid_vs +KHR-GL43.shaders30.glsl_constructors.bvec3_from_bool_mat4x3_bool_invalid_fs +KHR-GL43.shaders30.glsl_constructors.bvec4_from_mat2_vs +KHR-GL43.shaders30.glsl_constructors.bvec4_from_mat2_fs +KHR-GL43.shaders30.glsl_constructors.bvec4_from_mat2_mat2_invalid_vs +KHR-GL43.shaders30.glsl_constructors.bvec4_from_mat2_mat2_invalid_fs +KHR-GL43.shaders30.glsl_constructors.bvec4_from_mat2x3_vs +KHR-GL43.shaders30.glsl_constructors.bvec4_from_mat2x3_fs +KHR-GL43.shaders30.glsl_constructors.bvec4_from_mat2x3_mat2x3_invalid_vs +KHR-GL43.shaders30.glsl_constructors.bvec4_from_mat2x3_mat2x3_invalid_fs +KHR-GL43.shaders30.glsl_constructors.bvec4_from_mat2x4_vs +KHR-GL43.shaders30.glsl_constructors.bvec4_from_mat2x4_fs +KHR-GL43.shaders30.glsl_constructors.bvec4_from_mat2x4_mat2x4_invalid_vs +KHR-GL43.shaders30.glsl_constructors.bvec4_from_mat2x4_mat2x4_invalid_fs +KHR-GL43.shaders30.glsl_constructors.bvec4_from_mat3_vs +KHR-GL43.shaders30.glsl_constructors.bvec4_from_mat3_fs +KHR-GL43.shaders30.glsl_constructors.bvec4_from_mat3_mat3_invalid_vs +KHR-GL43.shaders30.glsl_constructors.bvec4_from_mat3_mat3_invalid_fs +KHR-GL43.shaders30.glsl_constructors.bvec4_from_mat3x2_vs +KHR-GL43.shaders30.glsl_constructors.bvec4_from_mat3x2_fs +KHR-GL43.shaders30.glsl_constructors.bvec4_from_mat3x2_mat3x2_invalid_vs +KHR-GL43.shaders30.glsl_constructors.bvec4_from_mat3x2_mat3x2_invalid_fs +KHR-GL43.shaders30.glsl_constructors.bvec4_from_mat3x4_vs +KHR-GL43.shaders30.glsl_constructors.bvec4_from_mat3x4_fs +KHR-GL43.shaders30.glsl_constructors.bvec4_from_mat3x4_mat3x4_invalid_vs +KHR-GL43.shaders30.glsl_constructors.bvec4_from_mat3x4_mat3x4_invalid_fs +KHR-GL43.shaders30.glsl_constructors.bvec4_from_mat4_vs +KHR-GL43.shaders30.glsl_constructors.bvec4_from_mat4_fs +KHR-GL43.shaders30.glsl_constructors.bvec4_from_mat4_mat4_invalid_vs +KHR-GL43.shaders30.glsl_constructors.bvec4_from_mat4_mat4_invalid_fs +KHR-GL43.shaders30.glsl_constructors.bvec4_from_mat4x2_vs +KHR-GL43.shaders30.glsl_constructors.bvec4_from_mat4x2_fs +KHR-GL43.shaders30.glsl_constructors.bvec4_from_mat4x2_mat4x2_invalid_vs +KHR-GL43.shaders30.glsl_constructors.bvec4_from_mat4x2_mat4x2_invalid_fs +KHR-GL43.shaders30.glsl_constructors.bvec4_from_mat4x3_vs +KHR-GL43.shaders30.glsl_constructors.bvec4_from_mat4x3_fs +KHR-GL43.shaders30.glsl_constructors.bvec4_from_mat4x3_mat4x3_invalid_vs +KHR-GL43.shaders30.glsl_constructors.bvec4_from_mat4x3_mat4x3_invalid_fs +KHR-GL43.shaders30.glsl_constructors.bvec4_from_bool_mat2_vs +KHR-GL43.shaders30.glsl_constructors.bvec4_from_bool_mat2_fs +KHR-GL43.shaders30.glsl_constructors.bvec4_from_bool_mat2_bool_invalid_vs +KHR-GL43.shaders30.glsl_constructors.bvec4_from_bool_mat2_bool_invalid_fs +KHR-GL43.shaders30.glsl_constructors.bvec4_from_bool_mat2x3_vs +KHR-GL43.shaders30.glsl_constructors.bvec4_from_bool_mat2x3_fs +KHR-GL43.shaders30.glsl_constructors.bvec4_from_bool_mat2x3_bool_invalid_vs +KHR-GL43.shaders30.glsl_constructors.bvec4_from_bool_mat2x3_bool_invalid_fs +KHR-GL43.shaders30.glsl_constructors.bvec4_from_bool_mat2x4_vs +KHR-GL43.shaders30.glsl_constructors.bvec4_from_bool_mat2x4_fs +KHR-GL43.shaders30.glsl_constructors.bvec4_from_bool_mat2x4_bool_invalid_vs +KHR-GL43.shaders30.glsl_constructors.bvec4_from_bool_mat2x4_bool_invalid_fs +KHR-GL43.shaders30.glsl_constructors.bvec4_from_bool_mat3_vs +KHR-GL43.shaders30.glsl_constructors.bvec4_from_bool_mat3_fs +KHR-GL43.shaders30.glsl_constructors.bvec4_from_bool_mat3_bool_invalid_vs +KHR-GL43.shaders30.glsl_constructors.bvec4_from_bool_mat3_bool_invalid_fs +KHR-GL43.shaders30.glsl_constructors.bvec4_from_bool_mat3x2_vs +KHR-GL43.shaders30.glsl_constructors.bvec4_from_bool_mat3x2_fs +KHR-GL43.shaders30.glsl_constructors.bvec4_from_bool_mat3x2_bool_invalid_vs +KHR-GL43.shaders30.glsl_constructors.bvec4_from_bool_mat3x2_bool_invalid_fs +KHR-GL43.shaders30.glsl_constructors.bvec4_from_bool_mat3x4_vs +KHR-GL43.shaders30.glsl_constructors.bvec4_from_bool_mat3x4_fs +KHR-GL43.shaders30.glsl_constructors.bvec4_from_bool_mat3x4_bool_invalid_vs +KHR-GL43.shaders30.glsl_constructors.bvec4_from_bool_mat3x4_bool_invalid_fs +KHR-GL43.shaders30.glsl_constructors.bvec4_from_bool_mat4_vs +KHR-GL43.shaders30.glsl_constructors.bvec4_from_bool_mat4_fs +KHR-GL43.shaders30.glsl_constructors.bvec4_from_bool_mat4_bool_invalid_vs +KHR-GL43.shaders30.glsl_constructors.bvec4_from_bool_mat4_bool_invalid_fs +KHR-GL43.shaders30.glsl_constructors.bvec4_from_bool_mat4x2_vs +KHR-GL43.shaders30.glsl_constructors.bvec4_from_bool_mat4x2_fs +KHR-GL43.shaders30.glsl_constructors.bvec4_from_bool_mat4x2_bool_invalid_vs +KHR-GL43.shaders30.glsl_constructors.bvec4_from_bool_mat4x2_bool_invalid_fs +KHR-GL43.shaders30.glsl_constructors.bvec4_from_bool_mat4x3_vs +KHR-GL43.shaders30.glsl_constructors.bvec4_from_bool_mat4x3_fs +KHR-GL43.shaders30.glsl_constructors.bvec4_from_bool_mat4x3_bool_invalid_vs +KHR-GL43.shaders30.glsl_constructors.bvec4_from_bool_mat4x3_bool_invalid_fs KHR-GL43.ext_texture_shadow_lod.texture.sampler2darrayshadow_fragment KHR-GL43.ext_texture_shadow_lod.texture.sampler2darrayshadow_bias_fragment KHR-GL43.ext_texture_shadow_lod.texture.samplercubearrayshadow_vertex diff --git a/external/openglcts/data/mustpass/gl/khronos_mustpass/4.6.1.x/gl44-master.txt b/external/openglcts/data/mustpass/gl/khronos_mustpass/4.6.1.x/gl44-master.txt index 1c65c05..b570572 100644 --- a/external/openglcts/data/mustpass/gl/khronos_mustpass/4.6.1.x/gl44-master.txt +++ b/external/openglcts/data/mustpass/gl/khronos_mustpass/4.6.1.x/gl44-master.txt @@ -192,6 +192,654 @@ KHR-GL44.texture_repeat_mode.depth24_stencil8_11x131_2_repeat KHR-GL44.texture_repeat_mode.depth24_stencil8_11x131_2_mirrored_repeat KHR-GL44.shaders30.declarations.declarations.redeclare_gl_FragColor KHR-GL44.shaders30.declarations.declarations.redeclare_gl_FragData +KHR-GL44.shaders30.glsl_constructors.vec2_from_mat2_vs +KHR-GL44.shaders30.glsl_constructors.vec2_from_mat2_fs +KHR-GL44.shaders30.glsl_constructors.vec2_from_mat2_mat2_invalid_vs +KHR-GL44.shaders30.glsl_constructors.vec2_from_mat2_mat2_invalid_fs +KHR-GL44.shaders30.glsl_constructors.vec2_from_mat2x3_vs +KHR-GL44.shaders30.glsl_constructors.vec2_from_mat2x3_fs +KHR-GL44.shaders30.glsl_constructors.vec2_from_mat2x3_mat2x3_invalid_vs +KHR-GL44.shaders30.glsl_constructors.vec2_from_mat2x3_mat2x3_invalid_fs +KHR-GL44.shaders30.glsl_constructors.vec2_from_mat2x4_vs +KHR-GL44.shaders30.glsl_constructors.vec2_from_mat2x4_fs +KHR-GL44.shaders30.glsl_constructors.vec2_from_mat2x4_mat2x4_invalid_vs +KHR-GL44.shaders30.glsl_constructors.vec2_from_mat2x4_mat2x4_invalid_fs +KHR-GL44.shaders30.glsl_constructors.vec2_from_mat3_vs +KHR-GL44.shaders30.glsl_constructors.vec2_from_mat3_fs +KHR-GL44.shaders30.glsl_constructors.vec2_from_mat3_mat3_invalid_vs +KHR-GL44.shaders30.glsl_constructors.vec2_from_mat3_mat3_invalid_fs +KHR-GL44.shaders30.glsl_constructors.vec2_from_mat3x2_vs +KHR-GL44.shaders30.glsl_constructors.vec2_from_mat3x2_fs +KHR-GL44.shaders30.glsl_constructors.vec2_from_mat3x2_mat3x2_invalid_vs +KHR-GL44.shaders30.glsl_constructors.vec2_from_mat3x2_mat3x2_invalid_fs +KHR-GL44.shaders30.glsl_constructors.vec2_from_mat3x4_vs +KHR-GL44.shaders30.glsl_constructors.vec2_from_mat3x4_fs +KHR-GL44.shaders30.glsl_constructors.vec2_from_mat3x4_mat3x4_invalid_vs +KHR-GL44.shaders30.glsl_constructors.vec2_from_mat3x4_mat3x4_invalid_fs +KHR-GL44.shaders30.glsl_constructors.vec2_from_mat4_vs +KHR-GL44.shaders30.glsl_constructors.vec2_from_mat4_fs +KHR-GL44.shaders30.glsl_constructors.vec2_from_mat4_mat4_invalid_vs +KHR-GL44.shaders30.glsl_constructors.vec2_from_mat4_mat4_invalid_fs +KHR-GL44.shaders30.glsl_constructors.vec2_from_mat4x2_vs +KHR-GL44.shaders30.glsl_constructors.vec2_from_mat4x2_fs +KHR-GL44.shaders30.glsl_constructors.vec2_from_mat4x2_mat4x2_invalid_vs +KHR-GL44.shaders30.glsl_constructors.vec2_from_mat4x2_mat4x2_invalid_fs +KHR-GL44.shaders30.glsl_constructors.vec2_from_mat4x3_vs +KHR-GL44.shaders30.glsl_constructors.vec2_from_mat4x3_fs +KHR-GL44.shaders30.glsl_constructors.vec2_from_mat4x3_mat4x3_invalid_vs +KHR-GL44.shaders30.glsl_constructors.vec2_from_mat4x3_mat4x3_invalid_fs +KHR-GL44.shaders30.glsl_constructors.vec2_from_float_mat2_vs +KHR-GL44.shaders30.glsl_constructors.vec2_from_float_mat2_fs +KHR-GL44.shaders30.glsl_constructors.vec2_from_float_mat2_float_invalid_vs +KHR-GL44.shaders30.glsl_constructors.vec2_from_float_mat2_float_invalid_fs +KHR-GL44.shaders30.glsl_constructors.vec2_from_float_mat2x3_vs +KHR-GL44.shaders30.glsl_constructors.vec2_from_float_mat2x3_fs +KHR-GL44.shaders30.glsl_constructors.vec2_from_float_mat2x3_float_invalid_vs +KHR-GL44.shaders30.glsl_constructors.vec2_from_float_mat2x3_float_invalid_fs +KHR-GL44.shaders30.glsl_constructors.vec2_from_float_mat2x4_vs +KHR-GL44.shaders30.glsl_constructors.vec2_from_float_mat2x4_fs +KHR-GL44.shaders30.glsl_constructors.vec2_from_float_mat2x4_float_invalid_vs +KHR-GL44.shaders30.glsl_constructors.vec2_from_float_mat2x4_float_invalid_fs +KHR-GL44.shaders30.glsl_constructors.vec2_from_float_mat3_vs +KHR-GL44.shaders30.glsl_constructors.vec2_from_float_mat3_fs +KHR-GL44.shaders30.glsl_constructors.vec2_from_float_mat3_float_invalid_vs +KHR-GL44.shaders30.glsl_constructors.vec2_from_float_mat3_float_invalid_fs +KHR-GL44.shaders30.glsl_constructors.vec2_from_float_mat3x2_vs +KHR-GL44.shaders30.glsl_constructors.vec2_from_float_mat3x2_fs +KHR-GL44.shaders30.glsl_constructors.vec2_from_float_mat3x2_float_invalid_vs +KHR-GL44.shaders30.glsl_constructors.vec2_from_float_mat3x2_float_invalid_fs +KHR-GL44.shaders30.glsl_constructors.vec2_from_float_mat3x4_vs +KHR-GL44.shaders30.glsl_constructors.vec2_from_float_mat3x4_fs +KHR-GL44.shaders30.glsl_constructors.vec2_from_float_mat3x4_float_invalid_vs +KHR-GL44.shaders30.glsl_constructors.vec2_from_float_mat3x4_float_invalid_fs +KHR-GL44.shaders30.glsl_constructors.vec2_from_float_mat4_vs +KHR-GL44.shaders30.glsl_constructors.vec2_from_float_mat4_fs +KHR-GL44.shaders30.glsl_constructors.vec2_from_float_mat4_float_invalid_vs +KHR-GL44.shaders30.glsl_constructors.vec2_from_float_mat4_float_invalid_fs +KHR-GL44.shaders30.glsl_constructors.vec2_from_float_mat4x2_vs +KHR-GL44.shaders30.glsl_constructors.vec2_from_float_mat4x2_fs +KHR-GL44.shaders30.glsl_constructors.vec2_from_float_mat4x2_float_invalid_vs +KHR-GL44.shaders30.glsl_constructors.vec2_from_float_mat4x2_float_invalid_fs +KHR-GL44.shaders30.glsl_constructors.vec2_from_float_mat4x3_vs +KHR-GL44.shaders30.glsl_constructors.vec2_from_float_mat4x3_fs +KHR-GL44.shaders30.glsl_constructors.vec2_from_float_mat4x3_float_invalid_vs +KHR-GL44.shaders30.glsl_constructors.vec2_from_float_mat4x3_float_invalid_fs +KHR-GL44.shaders30.glsl_constructors.vec3_from_mat2_vs +KHR-GL44.shaders30.glsl_constructors.vec3_from_mat2_fs +KHR-GL44.shaders30.glsl_constructors.vec3_from_mat2_mat2_invalid_vs +KHR-GL44.shaders30.glsl_constructors.vec3_from_mat2_mat2_invalid_fs +KHR-GL44.shaders30.glsl_constructors.vec3_from_mat2x3_vs +KHR-GL44.shaders30.glsl_constructors.vec3_from_mat2x3_fs +KHR-GL44.shaders30.glsl_constructors.vec3_from_mat2x3_mat2x3_invalid_vs +KHR-GL44.shaders30.glsl_constructors.vec3_from_mat2x3_mat2x3_invalid_fs +KHR-GL44.shaders30.glsl_constructors.vec3_from_mat2x4_vs +KHR-GL44.shaders30.glsl_constructors.vec3_from_mat2x4_fs +KHR-GL44.shaders30.glsl_constructors.vec3_from_mat2x4_mat2x4_invalid_vs +KHR-GL44.shaders30.glsl_constructors.vec3_from_mat2x4_mat2x4_invalid_fs +KHR-GL44.shaders30.glsl_constructors.vec3_from_mat3_vs +KHR-GL44.shaders30.glsl_constructors.vec3_from_mat3_fs +KHR-GL44.shaders30.glsl_constructors.vec3_from_mat3_mat3_invalid_vs +KHR-GL44.shaders30.glsl_constructors.vec3_from_mat3_mat3_invalid_fs +KHR-GL44.shaders30.glsl_constructors.vec3_from_mat3x2_vs +KHR-GL44.shaders30.glsl_constructors.vec3_from_mat3x2_fs +KHR-GL44.shaders30.glsl_constructors.vec3_from_mat3x2_mat3x2_invalid_vs +KHR-GL44.shaders30.glsl_constructors.vec3_from_mat3x2_mat3x2_invalid_fs +KHR-GL44.shaders30.glsl_constructors.vec3_from_mat3x4_vs +KHR-GL44.shaders30.glsl_constructors.vec3_from_mat3x4_fs +KHR-GL44.shaders30.glsl_constructors.vec3_from_mat3x4_mat3x4_invalid_vs +KHR-GL44.shaders30.glsl_constructors.vec3_from_mat3x4_mat3x4_invalid_fs +KHR-GL44.shaders30.glsl_constructors.vec3_from_mat4_vs +KHR-GL44.shaders30.glsl_constructors.vec3_from_mat4_fs +KHR-GL44.shaders30.glsl_constructors.vec3_from_mat4_mat4_invalid_vs +KHR-GL44.shaders30.glsl_constructors.vec3_from_mat4_mat4_invalid_fs +KHR-GL44.shaders30.glsl_constructors.vec3_from_mat4x2_vs +KHR-GL44.shaders30.glsl_constructors.vec3_from_mat4x2_fs +KHR-GL44.shaders30.glsl_constructors.vec3_from_mat4x2_mat4x2_invalid_vs +KHR-GL44.shaders30.glsl_constructors.vec3_from_mat4x2_mat4x2_invalid_fs +KHR-GL44.shaders30.glsl_constructors.vec3_from_mat4x3_vs +KHR-GL44.shaders30.glsl_constructors.vec3_from_mat4x3_fs +KHR-GL44.shaders30.glsl_constructors.vec3_from_mat4x3_mat4x3_invalid_vs +KHR-GL44.shaders30.glsl_constructors.vec3_from_mat4x3_mat4x3_invalid_fs +KHR-GL44.shaders30.glsl_constructors.vec3_from_float_mat2_vs +KHR-GL44.shaders30.glsl_constructors.vec3_from_float_mat2_fs +KHR-GL44.shaders30.glsl_constructors.vec3_from_float_mat2_float_invalid_vs +KHR-GL44.shaders30.glsl_constructors.vec3_from_float_mat2_float_invalid_fs +KHR-GL44.shaders30.glsl_constructors.vec3_from_float_mat2x3_vs +KHR-GL44.shaders30.glsl_constructors.vec3_from_float_mat2x3_fs +KHR-GL44.shaders30.glsl_constructors.vec3_from_float_mat2x3_float_invalid_vs +KHR-GL44.shaders30.glsl_constructors.vec3_from_float_mat2x3_float_invalid_fs +KHR-GL44.shaders30.glsl_constructors.vec3_from_float_mat2x4_vs +KHR-GL44.shaders30.glsl_constructors.vec3_from_float_mat2x4_fs +KHR-GL44.shaders30.glsl_constructors.vec3_from_float_mat2x4_float_invalid_vs +KHR-GL44.shaders30.glsl_constructors.vec3_from_float_mat2x4_float_invalid_fs +KHR-GL44.shaders30.glsl_constructors.vec3_from_float_mat3_vs +KHR-GL44.shaders30.glsl_constructors.vec3_from_float_mat3_fs +KHR-GL44.shaders30.glsl_constructors.vec3_from_float_mat3_float_invalid_vs +KHR-GL44.shaders30.glsl_constructors.vec3_from_float_mat3_float_invalid_fs +KHR-GL44.shaders30.glsl_constructors.vec3_from_float_mat3x2_vs +KHR-GL44.shaders30.glsl_constructors.vec3_from_float_mat3x2_fs +KHR-GL44.shaders30.glsl_constructors.vec3_from_float_mat3x2_float_invalid_vs +KHR-GL44.shaders30.glsl_constructors.vec3_from_float_mat3x2_float_invalid_fs +KHR-GL44.shaders30.glsl_constructors.vec3_from_float_mat3x4_vs +KHR-GL44.shaders30.glsl_constructors.vec3_from_float_mat3x4_fs +KHR-GL44.shaders30.glsl_constructors.vec3_from_float_mat3x4_float_invalid_vs +KHR-GL44.shaders30.glsl_constructors.vec3_from_float_mat3x4_float_invalid_fs +KHR-GL44.shaders30.glsl_constructors.vec3_from_float_mat4_vs +KHR-GL44.shaders30.glsl_constructors.vec3_from_float_mat4_fs +KHR-GL44.shaders30.glsl_constructors.vec3_from_float_mat4_float_invalid_vs +KHR-GL44.shaders30.glsl_constructors.vec3_from_float_mat4_float_invalid_fs +KHR-GL44.shaders30.glsl_constructors.vec3_from_float_mat4x2_vs +KHR-GL44.shaders30.glsl_constructors.vec3_from_float_mat4x2_fs +KHR-GL44.shaders30.glsl_constructors.vec3_from_float_mat4x2_float_invalid_vs +KHR-GL44.shaders30.glsl_constructors.vec3_from_float_mat4x2_float_invalid_fs +KHR-GL44.shaders30.glsl_constructors.vec3_from_float_mat4x3_vs +KHR-GL44.shaders30.glsl_constructors.vec3_from_float_mat4x3_fs +KHR-GL44.shaders30.glsl_constructors.vec3_from_float_mat4x3_float_invalid_vs +KHR-GL44.shaders30.glsl_constructors.vec3_from_float_mat4x3_float_invalid_fs +KHR-GL44.shaders30.glsl_constructors.vec4_from_mat2_vs +KHR-GL44.shaders30.glsl_constructors.vec4_from_mat2_fs +KHR-GL44.shaders30.glsl_constructors.vec4_from_mat2_mat2_invalid_vs +KHR-GL44.shaders30.glsl_constructors.vec4_from_mat2_mat2_invalid_fs +KHR-GL44.shaders30.glsl_constructors.vec4_from_mat2x3_vs +KHR-GL44.shaders30.glsl_constructors.vec4_from_mat2x3_fs +KHR-GL44.shaders30.glsl_constructors.vec4_from_mat2x3_mat2x3_invalid_vs +KHR-GL44.shaders30.glsl_constructors.vec4_from_mat2x3_mat2x3_invalid_fs +KHR-GL44.shaders30.glsl_constructors.vec4_from_mat2x4_vs +KHR-GL44.shaders30.glsl_constructors.vec4_from_mat2x4_fs +KHR-GL44.shaders30.glsl_constructors.vec4_from_mat2x4_mat2x4_invalid_vs +KHR-GL44.shaders30.glsl_constructors.vec4_from_mat2x4_mat2x4_invalid_fs +KHR-GL44.shaders30.glsl_constructors.vec4_from_mat3_vs +KHR-GL44.shaders30.glsl_constructors.vec4_from_mat3_fs +KHR-GL44.shaders30.glsl_constructors.vec4_from_mat3_mat3_invalid_vs +KHR-GL44.shaders30.glsl_constructors.vec4_from_mat3_mat3_invalid_fs +KHR-GL44.shaders30.glsl_constructors.vec4_from_mat3x2_vs +KHR-GL44.shaders30.glsl_constructors.vec4_from_mat3x2_fs +KHR-GL44.shaders30.glsl_constructors.vec4_from_mat3x2_mat3x2_invalid_vs +KHR-GL44.shaders30.glsl_constructors.vec4_from_mat3x2_mat3x2_invalid_fs +KHR-GL44.shaders30.glsl_constructors.vec4_from_mat3x4_vs +KHR-GL44.shaders30.glsl_constructors.vec4_from_mat3x4_fs +KHR-GL44.shaders30.glsl_constructors.vec4_from_mat3x4_mat3x4_invalid_vs +KHR-GL44.shaders30.glsl_constructors.vec4_from_mat3x4_mat3x4_invalid_fs +KHR-GL44.shaders30.glsl_constructors.vec4_from_mat4_vs +KHR-GL44.shaders30.glsl_constructors.vec4_from_mat4_fs +KHR-GL44.shaders30.glsl_constructors.vec4_from_mat4_mat4_invalid_vs +KHR-GL44.shaders30.glsl_constructors.vec4_from_mat4_mat4_invalid_fs +KHR-GL44.shaders30.glsl_constructors.vec4_from_mat4x2_vs +KHR-GL44.shaders30.glsl_constructors.vec4_from_mat4x2_fs +KHR-GL44.shaders30.glsl_constructors.vec4_from_mat4x2_mat4x2_invalid_vs +KHR-GL44.shaders30.glsl_constructors.vec4_from_mat4x2_mat4x2_invalid_fs +KHR-GL44.shaders30.glsl_constructors.vec4_from_mat4x3_vs +KHR-GL44.shaders30.glsl_constructors.vec4_from_mat4x3_fs +KHR-GL44.shaders30.glsl_constructors.vec4_from_mat4x3_mat4x3_invalid_vs +KHR-GL44.shaders30.glsl_constructors.vec4_from_mat4x3_mat4x3_invalid_fs +KHR-GL44.shaders30.glsl_constructors.vec4_from_float_mat2_vs +KHR-GL44.shaders30.glsl_constructors.vec4_from_float_mat2_fs +KHR-GL44.shaders30.glsl_constructors.vec4_from_float_mat2_float_invalid_vs +KHR-GL44.shaders30.glsl_constructors.vec4_from_float_mat2_float_invalid_fs +KHR-GL44.shaders30.glsl_constructors.vec4_from_float_mat2x3_vs +KHR-GL44.shaders30.glsl_constructors.vec4_from_float_mat2x3_fs +KHR-GL44.shaders30.glsl_constructors.vec4_from_float_mat2x3_float_invalid_vs +KHR-GL44.shaders30.glsl_constructors.vec4_from_float_mat2x3_float_invalid_fs +KHR-GL44.shaders30.glsl_constructors.vec4_from_float_mat2x4_vs +KHR-GL44.shaders30.glsl_constructors.vec4_from_float_mat2x4_fs +KHR-GL44.shaders30.glsl_constructors.vec4_from_float_mat2x4_float_invalid_vs +KHR-GL44.shaders30.glsl_constructors.vec4_from_float_mat2x4_float_invalid_fs +KHR-GL44.shaders30.glsl_constructors.vec4_from_float_mat3_vs +KHR-GL44.shaders30.glsl_constructors.vec4_from_float_mat3_fs +KHR-GL44.shaders30.glsl_constructors.vec4_from_float_mat3_float_invalid_vs +KHR-GL44.shaders30.glsl_constructors.vec4_from_float_mat3_float_invalid_fs +KHR-GL44.shaders30.glsl_constructors.vec4_from_float_mat3x2_vs +KHR-GL44.shaders30.glsl_constructors.vec4_from_float_mat3x2_fs +KHR-GL44.shaders30.glsl_constructors.vec4_from_float_mat3x2_float_invalid_vs +KHR-GL44.shaders30.glsl_constructors.vec4_from_float_mat3x2_float_invalid_fs +KHR-GL44.shaders30.glsl_constructors.vec4_from_float_mat3x4_vs +KHR-GL44.shaders30.glsl_constructors.vec4_from_float_mat3x4_fs +KHR-GL44.shaders30.glsl_constructors.vec4_from_float_mat3x4_float_invalid_vs +KHR-GL44.shaders30.glsl_constructors.vec4_from_float_mat3x4_float_invalid_fs +KHR-GL44.shaders30.glsl_constructors.vec4_from_float_mat4_vs +KHR-GL44.shaders30.glsl_constructors.vec4_from_float_mat4_fs +KHR-GL44.shaders30.glsl_constructors.vec4_from_float_mat4_float_invalid_vs +KHR-GL44.shaders30.glsl_constructors.vec4_from_float_mat4_float_invalid_fs +KHR-GL44.shaders30.glsl_constructors.vec4_from_float_mat4x2_vs +KHR-GL44.shaders30.glsl_constructors.vec4_from_float_mat4x2_fs +KHR-GL44.shaders30.glsl_constructors.vec4_from_float_mat4x2_float_invalid_vs +KHR-GL44.shaders30.glsl_constructors.vec4_from_float_mat4x2_float_invalid_fs +KHR-GL44.shaders30.glsl_constructors.vec4_from_float_mat4x3_vs +KHR-GL44.shaders30.glsl_constructors.vec4_from_float_mat4x3_fs +KHR-GL44.shaders30.glsl_constructors.vec4_from_float_mat4x3_float_invalid_vs +KHR-GL44.shaders30.glsl_constructors.vec4_from_float_mat4x3_float_invalid_fs +KHR-GL44.shaders30.glsl_constructors.ivec2_from_mat2_vs +KHR-GL44.shaders30.glsl_constructors.ivec2_from_mat2_fs +KHR-GL44.shaders30.glsl_constructors.ivec2_from_mat2_mat2_invalid_vs +KHR-GL44.shaders30.glsl_constructors.ivec2_from_mat2_mat2_invalid_fs +KHR-GL44.shaders30.glsl_constructors.ivec2_from_mat2x3_vs +KHR-GL44.shaders30.glsl_constructors.ivec2_from_mat2x3_fs +KHR-GL44.shaders30.glsl_constructors.ivec2_from_mat2x3_mat2x3_invalid_vs +KHR-GL44.shaders30.glsl_constructors.ivec2_from_mat2x3_mat2x3_invalid_fs +KHR-GL44.shaders30.glsl_constructors.ivec2_from_mat2x4_vs +KHR-GL44.shaders30.glsl_constructors.ivec2_from_mat2x4_fs +KHR-GL44.shaders30.glsl_constructors.ivec2_from_mat2x4_mat2x4_invalid_vs +KHR-GL44.shaders30.glsl_constructors.ivec2_from_mat2x4_mat2x4_invalid_fs +KHR-GL44.shaders30.glsl_constructors.ivec2_from_mat3_vs +KHR-GL44.shaders30.glsl_constructors.ivec2_from_mat3_fs +KHR-GL44.shaders30.glsl_constructors.ivec2_from_mat3_mat3_invalid_vs +KHR-GL44.shaders30.glsl_constructors.ivec2_from_mat3_mat3_invalid_fs +KHR-GL44.shaders30.glsl_constructors.ivec2_from_mat3x2_vs +KHR-GL44.shaders30.glsl_constructors.ivec2_from_mat3x2_fs +KHR-GL44.shaders30.glsl_constructors.ivec2_from_mat3x2_mat3x2_invalid_vs +KHR-GL44.shaders30.glsl_constructors.ivec2_from_mat3x2_mat3x2_invalid_fs +KHR-GL44.shaders30.glsl_constructors.ivec2_from_mat3x4_vs +KHR-GL44.shaders30.glsl_constructors.ivec2_from_mat3x4_fs +KHR-GL44.shaders30.glsl_constructors.ivec2_from_mat3x4_mat3x4_invalid_vs +KHR-GL44.shaders30.glsl_constructors.ivec2_from_mat3x4_mat3x4_invalid_fs +KHR-GL44.shaders30.glsl_constructors.ivec2_from_mat4_vs +KHR-GL44.shaders30.glsl_constructors.ivec2_from_mat4_fs +KHR-GL44.shaders30.glsl_constructors.ivec2_from_mat4_mat4_invalid_vs +KHR-GL44.shaders30.glsl_constructors.ivec2_from_mat4_mat4_invalid_fs +KHR-GL44.shaders30.glsl_constructors.ivec2_from_mat4x2_vs +KHR-GL44.shaders30.glsl_constructors.ivec2_from_mat4x2_fs +KHR-GL44.shaders30.glsl_constructors.ivec2_from_mat4x2_mat4x2_invalid_vs +KHR-GL44.shaders30.glsl_constructors.ivec2_from_mat4x2_mat4x2_invalid_fs +KHR-GL44.shaders30.glsl_constructors.ivec2_from_mat4x3_vs +KHR-GL44.shaders30.glsl_constructors.ivec2_from_mat4x3_fs +KHR-GL44.shaders30.glsl_constructors.ivec2_from_mat4x3_mat4x3_invalid_vs +KHR-GL44.shaders30.glsl_constructors.ivec2_from_mat4x3_mat4x3_invalid_fs +KHR-GL44.shaders30.glsl_constructors.ivec2_from_int_mat2_vs +KHR-GL44.shaders30.glsl_constructors.ivec2_from_int_mat2_fs +KHR-GL44.shaders30.glsl_constructors.ivec2_from_int_mat2_int_invalid_vs +KHR-GL44.shaders30.glsl_constructors.ivec2_from_int_mat2_int_invalid_fs +KHR-GL44.shaders30.glsl_constructors.ivec2_from_int_mat2x3_vs +KHR-GL44.shaders30.glsl_constructors.ivec2_from_int_mat2x3_fs +KHR-GL44.shaders30.glsl_constructors.ivec2_from_int_mat2x3_int_invalid_vs +KHR-GL44.shaders30.glsl_constructors.ivec2_from_int_mat2x3_int_invalid_fs +KHR-GL44.shaders30.glsl_constructors.ivec2_from_int_mat2x4_vs +KHR-GL44.shaders30.glsl_constructors.ivec2_from_int_mat2x4_fs +KHR-GL44.shaders30.glsl_constructors.ivec2_from_int_mat2x4_int_invalid_vs +KHR-GL44.shaders30.glsl_constructors.ivec2_from_int_mat2x4_int_invalid_fs +KHR-GL44.shaders30.glsl_constructors.ivec2_from_int_mat3_vs +KHR-GL44.shaders30.glsl_constructors.ivec2_from_int_mat3_fs +KHR-GL44.shaders30.glsl_constructors.ivec2_from_int_mat3_int_invalid_vs +KHR-GL44.shaders30.glsl_constructors.ivec2_from_int_mat3_int_invalid_fs +KHR-GL44.shaders30.glsl_constructors.ivec2_from_int_mat3x2_vs +KHR-GL44.shaders30.glsl_constructors.ivec2_from_int_mat3x2_fs +KHR-GL44.shaders30.glsl_constructors.ivec2_from_int_mat3x2_int_invalid_vs +KHR-GL44.shaders30.glsl_constructors.ivec2_from_int_mat3x2_int_invalid_fs +KHR-GL44.shaders30.glsl_constructors.ivec2_from_int_mat3x4_vs +KHR-GL44.shaders30.glsl_constructors.ivec2_from_int_mat3x4_fs +KHR-GL44.shaders30.glsl_constructors.ivec2_from_int_mat3x4_int_invalid_vs +KHR-GL44.shaders30.glsl_constructors.ivec2_from_int_mat3x4_int_invalid_fs +KHR-GL44.shaders30.glsl_constructors.ivec2_from_int_mat4_vs +KHR-GL44.shaders30.glsl_constructors.ivec2_from_int_mat4_fs +KHR-GL44.shaders30.glsl_constructors.ivec2_from_int_mat4_int_invalid_vs +KHR-GL44.shaders30.glsl_constructors.ivec2_from_int_mat4_int_invalid_fs +KHR-GL44.shaders30.glsl_constructors.ivec2_from_int_mat4x2_vs +KHR-GL44.shaders30.glsl_constructors.ivec2_from_int_mat4x2_fs +KHR-GL44.shaders30.glsl_constructors.ivec2_from_int_mat4x2_int_invalid_vs +KHR-GL44.shaders30.glsl_constructors.ivec2_from_int_mat4x2_int_invalid_fs +KHR-GL44.shaders30.glsl_constructors.ivec2_from_int_mat4x3_vs +KHR-GL44.shaders30.glsl_constructors.ivec2_from_int_mat4x3_fs +KHR-GL44.shaders30.glsl_constructors.ivec2_from_int_mat4x3_int_invalid_vs +KHR-GL44.shaders30.glsl_constructors.ivec2_from_int_mat4x3_int_invalid_fs +KHR-GL44.shaders30.glsl_constructors.ivec3_from_mat2_vs +KHR-GL44.shaders30.glsl_constructors.ivec3_from_mat2_fs +KHR-GL44.shaders30.glsl_constructors.ivec3_from_mat2_mat2_invalid_vs +KHR-GL44.shaders30.glsl_constructors.ivec3_from_mat2_mat2_invalid_fs +KHR-GL44.shaders30.glsl_constructors.ivec3_from_mat2x3_vs +KHR-GL44.shaders30.glsl_constructors.ivec3_from_mat2x3_fs +KHR-GL44.shaders30.glsl_constructors.ivec3_from_mat2x3_mat2x3_invalid_vs +KHR-GL44.shaders30.glsl_constructors.ivec3_from_mat2x3_mat2x3_invalid_fs +KHR-GL44.shaders30.glsl_constructors.ivec3_from_mat2x4_vs +KHR-GL44.shaders30.glsl_constructors.ivec3_from_mat2x4_fs +KHR-GL44.shaders30.glsl_constructors.ivec3_from_mat2x4_mat2x4_invalid_vs +KHR-GL44.shaders30.glsl_constructors.ivec3_from_mat2x4_mat2x4_invalid_fs +KHR-GL44.shaders30.glsl_constructors.ivec3_from_mat3_vs +KHR-GL44.shaders30.glsl_constructors.ivec3_from_mat3_fs +KHR-GL44.shaders30.glsl_constructors.ivec3_from_mat3_mat3_invalid_vs +KHR-GL44.shaders30.glsl_constructors.ivec3_from_mat3_mat3_invalid_fs +KHR-GL44.shaders30.glsl_constructors.ivec3_from_mat3x2_vs +KHR-GL44.shaders30.glsl_constructors.ivec3_from_mat3x2_fs +KHR-GL44.shaders30.glsl_constructors.ivec3_from_mat3x2_mat3x2_invalid_vs +KHR-GL44.shaders30.glsl_constructors.ivec3_from_mat3x2_mat3x2_invalid_fs +KHR-GL44.shaders30.glsl_constructors.ivec3_from_mat3x4_vs +KHR-GL44.shaders30.glsl_constructors.ivec3_from_mat3x4_fs +KHR-GL44.shaders30.glsl_constructors.ivec3_from_mat3x4_mat3x4_invalid_vs +KHR-GL44.shaders30.glsl_constructors.ivec3_from_mat3x4_mat3x4_invalid_fs +KHR-GL44.shaders30.glsl_constructors.ivec3_from_mat4_vs +KHR-GL44.shaders30.glsl_constructors.ivec3_from_mat4_fs +KHR-GL44.shaders30.glsl_constructors.ivec3_from_mat4_mat4_invalid_vs +KHR-GL44.shaders30.glsl_constructors.ivec3_from_mat4_mat4_invalid_fs +KHR-GL44.shaders30.glsl_constructors.ivec3_from_mat4x2_vs +KHR-GL44.shaders30.glsl_constructors.ivec3_from_mat4x2_fs +KHR-GL44.shaders30.glsl_constructors.ivec3_from_mat4x2_mat4x2_invalid_vs +KHR-GL44.shaders30.glsl_constructors.ivec3_from_mat4x2_mat4x2_invalid_fs +KHR-GL44.shaders30.glsl_constructors.ivec3_from_mat4x3_vs +KHR-GL44.shaders30.glsl_constructors.ivec3_from_mat4x3_fs +KHR-GL44.shaders30.glsl_constructors.ivec3_from_mat4x3_mat4x3_invalid_vs +KHR-GL44.shaders30.glsl_constructors.ivec3_from_mat4x3_mat4x3_invalid_fs +KHR-GL44.shaders30.glsl_constructors.ivec3_from_int_mat2_vs +KHR-GL44.shaders30.glsl_constructors.ivec3_from_int_mat2_fs +KHR-GL44.shaders30.glsl_constructors.ivec3_from_int_mat2_int_invalid_vs +KHR-GL44.shaders30.glsl_constructors.ivec3_from_int_mat2_int_invalid_fs +KHR-GL44.shaders30.glsl_constructors.ivec3_from_int_mat2x3_vs +KHR-GL44.shaders30.glsl_constructors.ivec3_from_int_mat2x3_fs +KHR-GL44.shaders30.glsl_constructors.ivec3_from_int_mat2x3_int_invalid_vs +KHR-GL44.shaders30.glsl_constructors.ivec3_from_int_mat2x3_int_invalid_fs +KHR-GL44.shaders30.glsl_constructors.ivec3_from_int_mat2x4_vs +KHR-GL44.shaders30.glsl_constructors.ivec3_from_int_mat2x4_fs +KHR-GL44.shaders30.glsl_constructors.ivec3_from_int_mat2x4_int_invalid_vs +KHR-GL44.shaders30.glsl_constructors.ivec3_from_int_mat2x4_int_invalid_fs +KHR-GL44.shaders30.glsl_constructors.ivec3_from_int_mat3_vs +KHR-GL44.shaders30.glsl_constructors.ivec3_from_int_mat3_fs +KHR-GL44.shaders30.glsl_constructors.ivec3_from_int_mat3_int_invalid_vs +KHR-GL44.shaders30.glsl_constructors.ivec3_from_int_mat3_int_invalid_fs +KHR-GL44.shaders30.glsl_constructors.ivec3_from_int_mat3x2_vs +KHR-GL44.shaders30.glsl_constructors.ivec3_from_int_mat3x2_fs +KHR-GL44.shaders30.glsl_constructors.ivec3_from_int_mat3x2_int_invalid_vs +KHR-GL44.shaders30.glsl_constructors.ivec3_from_int_mat3x2_int_invalid_fs +KHR-GL44.shaders30.glsl_constructors.ivec3_from_int_mat3x4_vs +KHR-GL44.shaders30.glsl_constructors.ivec3_from_int_mat3x4_fs +KHR-GL44.shaders30.glsl_constructors.ivec3_from_int_mat3x4_int_invalid_vs +KHR-GL44.shaders30.glsl_constructors.ivec3_from_int_mat3x4_int_invalid_fs +KHR-GL44.shaders30.glsl_constructors.ivec3_from_int_mat4_vs +KHR-GL44.shaders30.glsl_constructors.ivec3_from_int_mat4_fs +KHR-GL44.shaders30.glsl_constructors.ivec3_from_int_mat4_int_invalid_vs +KHR-GL44.shaders30.glsl_constructors.ivec3_from_int_mat4_int_invalid_fs +KHR-GL44.shaders30.glsl_constructors.ivec3_from_int_mat4x2_vs +KHR-GL44.shaders30.glsl_constructors.ivec3_from_int_mat4x2_fs +KHR-GL44.shaders30.glsl_constructors.ivec3_from_int_mat4x2_int_invalid_vs +KHR-GL44.shaders30.glsl_constructors.ivec3_from_int_mat4x2_int_invalid_fs +KHR-GL44.shaders30.glsl_constructors.ivec3_from_int_mat4x3_vs +KHR-GL44.shaders30.glsl_constructors.ivec3_from_int_mat4x3_fs +KHR-GL44.shaders30.glsl_constructors.ivec3_from_int_mat4x3_int_invalid_vs +KHR-GL44.shaders30.glsl_constructors.ivec3_from_int_mat4x3_int_invalid_fs +KHR-GL44.shaders30.glsl_constructors.ivec4_from_mat2_vs +KHR-GL44.shaders30.glsl_constructors.ivec4_from_mat2_fs +KHR-GL44.shaders30.glsl_constructors.ivec4_from_mat2_mat2_invalid_vs +KHR-GL44.shaders30.glsl_constructors.ivec4_from_mat2_mat2_invalid_fs +KHR-GL44.shaders30.glsl_constructors.ivec4_from_mat2x3_vs +KHR-GL44.shaders30.glsl_constructors.ivec4_from_mat2x3_fs +KHR-GL44.shaders30.glsl_constructors.ivec4_from_mat2x3_mat2x3_invalid_vs +KHR-GL44.shaders30.glsl_constructors.ivec4_from_mat2x3_mat2x3_invalid_fs +KHR-GL44.shaders30.glsl_constructors.ivec4_from_mat2x4_vs +KHR-GL44.shaders30.glsl_constructors.ivec4_from_mat2x4_fs +KHR-GL44.shaders30.glsl_constructors.ivec4_from_mat2x4_mat2x4_invalid_vs +KHR-GL44.shaders30.glsl_constructors.ivec4_from_mat2x4_mat2x4_invalid_fs +KHR-GL44.shaders30.glsl_constructors.ivec4_from_mat3_vs +KHR-GL44.shaders30.glsl_constructors.ivec4_from_mat3_fs +KHR-GL44.shaders30.glsl_constructors.ivec4_from_mat3_mat3_invalid_vs +KHR-GL44.shaders30.glsl_constructors.ivec4_from_mat3_mat3_invalid_fs +KHR-GL44.shaders30.glsl_constructors.ivec4_from_mat3x2_vs +KHR-GL44.shaders30.glsl_constructors.ivec4_from_mat3x2_fs +KHR-GL44.shaders30.glsl_constructors.ivec4_from_mat3x2_mat3x2_invalid_vs +KHR-GL44.shaders30.glsl_constructors.ivec4_from_mat3x2_mat3x2_invalid_fs +KHR-GL44.shaders30.glsl_constructors.ivec4_from_mat3x4_vs +KHR-GL44.shaders30.glsl_constructors.ivec4_from_mat3x4_fs +KHR-GL44.shaders30.glsl_constructors.ivec4_from_mat3x4_mat3x4_invalid_vs +KHR-GL44.shaders30.glsl_constructors.ivec4_from_mat3x4_mat3x4_invalid_fs +KHR-GL44.shaders30.glsl_constructors.ivec4_from_mat4_vs +KHR-GL44.shaders30.glsl_constructors.ivec4_from_mat4_fs +KHR-GL44.shaders30.glsl_constructors.ivec4_from_mat4_mat4_invalid_vs +KHR-GL44.shaders30.glsl_constructors.ivec4_from_mat4_mat4_invalid_fs +KHR-GL44.shaders30.glsl_constructors.ivec4_from_mat4x2_vs +KHR-GL44.shaders30.glsl_constructors.ivec4_from_mat4x2_fs +KHR-GL44.shaders30.glsl_constructors.ivec4_from_mat4x2_mat4x2_invalid_vs +KHR-GL44.shaders30.glsl_constructors.ivec4_from_mat4x2_mat4x2_invalid_fs +KHR-GL44.shaders30.glsl_constructors.ivec4_from_mat4x3_vs +KHR-GL44.shaders30.glsl_constructors.ivec4_from_mat4x3_fs +KHR-GL44.shaders30.glsl_constructors.ivec4_from_mat4x3_mat4x3_invalid_vs +KHR-GL44.shaders30.glsl_constructors.ivec4_from_mat4x3_mat4x3_invalid_fs +KHR-GL44.shaders30.glsl_constructors.ivec4_from_int_mat2_vs +KHR-GL44.shaders30.glsl_constructors.ivec4_from_int_mat2_fs +KHR-GL44.shaders30.glsl_constructors.ivec4_from_int_mat2_int_invalid_vs +KHR-GL44.shaders30.glsl_constructors.ivec4_from_int_mat2_int_invalid_fs +KHR-GL44.shaders30.glsl_constructors.ivec4_from_int_mat2x3_vs +KHR-GL44.shaders30.glsl_constructors.ivec4_from_int_mat2x3_fs +KHR-GL44.shaders30.glsl_constructors.ivec4_from_int_mat2x3_int_invalid_vs +KHR-GL44.shaders30.glsl_constructors.ivec4_from_int_mat2x3_int_invalid_fs +KHR-GL44.shaders30.glsl_constructors.ivec4_from_int_mat2x4_vs +KHR-GL44.shaders30.glsl_constructors.ivec4_from_int_mat2x4_fs +KHR-GL44.shaders30.glsl_constructors.ivec4_from_int_mat2x4_int_invalid_vs +KHR-GL44.shaders30.glsl_constructors.ivec4_from_int_mat2x4_int_invalid_fs +KHR-GL44.shaders30.glsl_constructors.ivec4_from_int_mat3_vs +KHR-GL44.shaders30.glsl_constructors.ivec4_from_int_mat3_fs +KHR-GL44.shaders30.glsl_constructors.ivec4_from_int_mat3_int_invalid_vs +KHR-GL44.shaders30.glsl_constructors.ivec4_from_int_mat3_int_invalid_fs +KHR-GL44.shaders30.glsl_constructors.ivec4_from_int_mat3x2_vs +KHR-GL44.shaders30.glsl_constructors.ivec4_from_int_mat3x2_fs +KHR-GL44.shaders30.glsl_constructors.ivec4_from_int_mat3x2_int_invalid_vs +KHR-GL44.shaders30.glsl_constructors.ivec4_from_int_mat3x2_int_invalid_fs +KHR-GL44.shaders30.glsl_constructors.ivec4_from_int_mat3x4_vs +KHR-GL44.shaders30.glsl_constructors.ivec4_from_int_mat3x4_fs +KHR-GL44.shaders30.glsl_constructors.ivec4_from_int_mat3x4_int_invalid_vs +KHR-GL44.shaders30.glsl_constructors.ivec4_from_int_mat3x4_int_invalid_fs +KHR-GL44.shaders30.glsl_constructors.ivec4_from_int_mat4_vs +KHR-GL44.shaders30.glsl_constructors.ivec4_from_int_mat4_fs +KHR-GL44.shaders30.glsl_constructors.ivec4_from_int_mat4_int_invalid_vs +KHR-GL44.shaders30.glsl_constructors.ivec4_from_int_mat4_int_invalid_fs +KHR-GL44.shaders30.glsl_constructors.ivec4_from_int_mat4x2_vs +KHR-GL44.shaders30.glsl_constructors.ivec4_from_int_mat4x2_fs +KHR-GL44.shaders30.glsl_constructors.ivec4_from_int_mat4x2_int_invalid_vs +KHR-GL44.shaders30.glsl_constructors.ivec4_from_int_mat4x2_int_invalid_fs +KHR-GL44.shaders30.glsl_constructors.ivec4_from_int_mat4x3_vs +KHR-GL44.shaders30.glsl_constructors.ivec4_from_int_mat4x3_fs +KHR-GL44.shaders30.glsl_constructors.ivec4_from_int_mat4x3_int_invalid_vs +KHR-GL44.shaders30.glsl_constructors.ivec4_from_int_mat4x3_int_invalid_fs +KHR-GL44.shaders30.glsl_constructors.bvec2_from_mat2_vs +KHR-GL44.shaders30.glsl_constructors.bvec2_from_mat2_fs +KHR-GL44.shaders30.glsl_constructors.bvec2_from_mat2_mat2_invalid_vs +KHR-GL44.shaders30.glsl_constructors.bvec2_from_mat2_mat2_invalid_fs +KHR-GL44.shaders30.glsl_constructors.bvec2_from_mat2x3_vs +KHR-GL44.shaders30.glsl_constructors.bvec2_from_mat2x3_fs +KHR-GL44.shaders30.glsl_constructors.bvec2_from_mat2x3_mat2x3_invalid_vs +KHR-GL44.shaders30.glsl_constructors.bvec2_from_mat2x3_mat2x3_invalid_fs +KHR-GL44.shaders30.glsl_constructors.bvec2_from_mat2x4_vs +KHR-GL44.shaders30.glsl_constructors.bvec2_from_mat2x4_fs +KHR-GL44.shaders30.glsl_constructors.bvec2_from_mat2x4_mat2x4_invalid_vs +KHR-GL44.shaders30.glsl_constructors.bvec2_from_mat2x4_mat2x4_invalid_fs +KHR-GL44.shaders30.glsl_constructors.bvec2_from_mat3_vs +KHR-GL44.shaders30.glsl_constructors.bvec2_from_mat3_fs +KHR-GL44.shaders30.glsl_constructors.bvec2_from_mat3_mat3_invalid_vs +KHR-GL44.shaders30.glsl_constructors.bvec2_from_mat3_mat3_invalid_fs +KHR-GL44.shaders30.glsl_constructors.bvec2_from_mat3x2_vs +KHR-GL44.shaders30.glsl_constructors.bvec2_from_mat3x2_fs +KHR-GL44.shaders30.glsl_constructors.bvec2_from_mat3x2_mat3x2_invalid_vs +KHR-GL44.shaders30.glsl_constructors.bvec2_from_mat3x2_mat3x2_invalid_fs +KHR-GL44.shaders30.glsl_constructors.bvec2_from_mat3x4_vs +KHR-GL44.shaders30.glsl_constructors.bvec2_from_mat3x4_fs +KHR-GL44.shaders30.glsl_constructors.bvec2_from_mat3x4_mat3x4_invalid_vs +KHR-GL44.shaders30.glsl_constructors.bvec2_from_mat3x4_mat3x4_invalid_fs +KHR-GL44.shaders30.glsl_constructors.bvec2_from_mat4_vs +KHR-GL44.shaders30.glsl_constructors.bvec2_from_mat4_fs +KHR-GL44.shaders30.glsl_constructors.bvec2_from_mat4_mat4_invalid_vs +KHR-GL44.shaders30.glsl_constructors.bvec2_from_mat4_mat4_invalid_fs +KHR-GL44.shaders30.glsl_constructors.bvec2_from_mat4x2_vs +KHR-GL44.shaders30.glsl_constructors.bvec2_from_mat4x2_fs +KHR-GL44.shaders30.glsl_constructors.bvec2_from_mat4x2_mat4x2_invalid_vs +KHR-GL44.shaders30.glsl_constructors.bvec2_from_mat4x2_mat4x2_invalid_fs +KHR-GL44.shaders30.glsl_constructors.bvec2_from_mat4x3_vs +KHR-GL44.shaders30.glsl_constructors.bvec2_from_mat4x3_fs +KHR-GL44.shaders30.glsl_constructors.bvec2_from_mat4x3_mat4x3_invalid_vs +KHR-GL44.shaders30.glsl_constructors.bvec2_from_mat4x3_mat4x3_invalid_fs +KHR-GL44.shaders30.glsl_constructors.bvec2_from_bool_mat2_vs +KHR-GL44.shaders30.glsl_constructors.bvec2_from_bool_mat2_fs +KHR-GL44.shaders30.glsl_constructors.bvec2_from_bool_mat2_bool_invalid_vs +KHR-GL44.shaders30.glsl_constructors.bvec2_from_bool_mat2_bool_invalid_fs +KHR-GL44.shaders30.glsl_constructors.bvec2_from_bool_mat2x3_vs +KHR-GL44.shaders30.glsl_constructors.bvec2_from_bool_mat2x3_fs +KHR-GL44.shaders30.glsl_constructors.bvec2_from_bool_mat2x3_bool_invalid_vs +KHR-GL44.shaders30.glsl_constructors.bvec2_from_bool_mat2x3_bool_invalid_fs +KHR-GL44.shaders30.glsl_constructors.bvec2_from_bool_mat2x4_vs +KHR-GL44.shaders30.glsl_constructors.bvec2_from_bool_mat2x4_fs +KHR-GL44.shaders30.glsl_constructors.bvec2_from_bool_mat2x4_bool_invalid_vs +KHR-GL44.shaders30.glsl_constructors.bvec2_from_bool_mat2x4_bool_invalid_fs +KHR-GL44.shaders30.glsl_constructors.bvec2_from_bool_mat3_vs +KHR-GL44.shaders30.glsl_constructors.bvec2_from_bool_mat3_fs +KHR-GL44.shaders30.glsl_constructors.bvec2_from_bool_mat3_bool_invalid_vs +KHR-GL44.shaders30.glsl_constructors.bvec2_from_bool_mat3_bool_invalid_fs +KHR-GL44.shaders30.glsl_constructors.bvec2_from_bool_mat3x2_vs +KHR-GL44.shaders30.glsl_constructors.bvec2_from_bool_mat3x2_fs +KHR-GL44.shaders30.glsl_constructors.bvec2_from_bool_mat3x2_bool_invalid_vs +KHR-GL44.shaders30.glsl_constructors.bvec2_from_bool_mat3x2_bool_invalid_fs +KHR-GL44.shaders30.glsl_constructors.bvec2_from_bool_mat3x4_vs +KHR-GL44.shaders30.glsl_constructors.bvec2_from_bool_mat3x4_fs +KHR-GL44.shaders30.glsl_constructors.bvec2_from_bool_mat3x4_bool_invalid_vs +KHR-GL44.shaders30.glsl_constructors.bvec2_from_bool_mat3x4_bool_invalid_fs +KHR-GL44.shaders30.glsl_constructors.bvec2_from_bool_mat4_vs +KHR-GL44.shaders30.glsl_constructors.bvec2_from_bool_mat4_fs +KHR-GL44.shaders30.glsl_constructors.bvec2_from_bool_mat4_bool_invalid_vs +KHR-GL44.shaders30.glsl_constructors.bvec2_from_bool_mat4_bool_invalid_fs +KHR-GL44.shaders30.glsl_constructors.bvec2_from_bool_mat4x2_vs +KHR-GL44.shaders30.glsl_constructors.bvec2_from_bool_mat4x2_fs +KHR-GL44.shaders30.glsl_constructors.bvec2_from_bool_mat4x2_bool_invalid_vs +KHR-GL44.shaders30.glsl_constructors.bvec2_from_bool_mat4x2_bool_invalid_fs +KHR-GL44.shaders30.glsl_constructors.bvec2_from_bool_mat4x3_vs +KHR-GL44.shaders30.glsl_constructors.bvec2_from_bool_mat4x3_fs +KHR-GL44.shaders30.glsl_constructors.bvec2_from_bool_mat4x3_bool_invalid_vs +KHR-GL44.shaders30.glsl_constructors.bvec2_from_bool_mat4x3_bool_invalid_fs +KHR-GL44.shaders30.glsl_constructors.bvec3_from_mat2_vs +KHR-GL44.shaders30.glsl_constructors.bvec3_from_mat2_fs +KHR-GL44.shaders30.glsl_constructors.bvec3_from_mat2_mat2_invalid_vs +KHR-GL44.shaders30.glsl_constructors.bvec3_from_mat2_mat2_invalid_fs +KHR-GL44.shaders30.glsl_constructors.bvec3_from_mat2x3_vs +KHR-GL44.shaders30.glsl_constructors.bvec3_from_mat2x3_fs +KHR-GL44.shaders30.glsl_constructors.bvec3_from_mat2x3_mat2x3_invalid_vs +KHR-GL44.shaders30.glsl_constructors.bvec3_from_mat2x3_mat2x3_invalid_fs +KHR-GL44.shaders30.glsl_constructors.bvec3_from_mat2x4_vs +KHR-GL44.shaders30.glsl_constructors.bvec3_from_mat2x4_fs +KHR-GL44.shaders30.glsl_constructors.bvec3_from_mat2x4_mat2x4_invalid_vs +KHR-GL44.shaders30.glsl_constructors.bvec3_from_mat2x4_mat2x4_invalid_fs +KHR-GL44.shaders30.glsl_constructors.bvec3_from_mat3_vs +KHR-GL44.shaders30.glsl_constructors.bvec3_from_mat3_fs +KHR-GL44.shaders30.glsl_constructors.bvec3_from_mat3_mat3_invalid_vs +KHR-GL44.shaders30.glsl_constructors.bvec3_from_mat3_mat3_invalid_fs +KHR-GL44.shaders30.glsl_constructors.bvec3_from_mat3x2_vs +KHR-GL44.shaders30.glsl_constructors.bvec3_from_mat3x2_fs +KHR-GL44.shaders30.glsl_constructors.bvec3_from_mat3x2_mat3x2_invalid_vs +KHR-GL44.shaders30.glsl_constructors.bvec3_from_mat3x2_mat3x2_invalid_fs +KHR-GL44.shaders30.glsl_constructors.bvec3_from_mat3x4_vs +KHR-GL44.shaders30.glsl_constructors.bvec3_from_mat3x4_fs +KHR-GL44.shaders30.glsl_constructors.bvec3_from_mat3x4_mat3x4_invalid_vs +KHR-GL44.shaders30.glsl_constructors.bvec3_from_mat3x4_mat3x4_invalid_fs +KHR-GL44.shaders30.glsl_constructors.bvec3_from_mat4_vs +KHR-GL44.shaders30.glsl_constructors.bvec3_from_mat4_fs +KHR-GL44.shaders30.glsl_constructors.bvec3_from_mat4_mat4_invalid_vs +KHR-GL44.shaders30.glsl_constructors.bvec3_from_mat4_mat4_invalid_fs +KHR-GL44.shaders30.glsl_constructors.bvec3_from_mat4x2_vs +KHR-GL44.shaders30.glsl_constructors.bvec3_from_mat4x2_fs +KHR-GL44.shaders30.glsl_constructors.bvec3_from_mat4x2_mat4x2_invalid_vs +KHR-GL44.shaders30.glsl_constructors.bvec3_from_mat4x2_mat4x2_invalid_fs +KHR-GL44.shaders30.glsl_constructors.bvec3_from_mat4x3_vs +KHR-GL44.shaders30.glsl_constructors.bvec3_from_mat4x3_fs +KHR-GL44.shaders30.glsl_constructors.bvec3_from_mat4x3_mat4x3_invalid_vs +KHR-GL44.shaders30.glsl_constructors.bvec3_from_mat4x3_mat4x3_invalid_fs +KHR-GL44.shaders30.glsl_constructors.bvec3_from_bool_mat2_vs +KHR-GL44.shaders30.glsl_constructors.bvec3_from_bool_mat2_fs +KHR-GL44.shaders30.glsl_constructors.bvec3_from_bool_mat2_bool_invalid_vs +KHR-GL44.shaders30.glsl_constructors.bvec3_from_bool_mat2_bool_invalid_fs +KHR-GL44.shaders30.glsl_constructors.bvec3_from_bool_mat2x3_vs +KHR-GL44.shaders30.glsl_constructors.bvec3_from_bool_mat2x3_fs +KHR-GL44.shaders30.glsl_constructors.bvec3_from_bool_mat2x3_bool_invalid_vs +KHR-GL44.shaders30.glsl_constructors.bvec3_from_bool_mat2x3_bool_invalid_fs +KHR-GL44.shaders30.glsl_constructors.bvec3_from_bool_mat2x4_vs +KHR-GL44.shaders30.glsl_constructors.bvec3_from_bool_mat2x4_fs +KHR-GL44.shaders30.glsl_constructors.bvec3_from_bool_mat2x4_bool_invalid_vs +KHR-GL44.shaders30.glsl_constructors.bvec3_from_bool_mat2x4_bool_invalid_fs +KHR-GL44.shaders30.glsl_constructors.bvec3_from_bool_mat3_vs +KHR-GL44.shaders30.glsl_constructors.bvec3_from_bool_mat3_fs +KHR-GL44.shaders30.glsl_constructors.bvec3_from_bool_mat3_bool_invalid_vs +KHR-GL44.shaders30.glsl_constructors.bvec3_from_bool_mat3_bool_invalid_fs +KHR-GL44.shaders30.glsl_constructors.bvec3_from_bool_mat3x2_vs +KHR-GL44.shaders30.glsl_constructors.bvec3_from_bool_mat3x2_fs +KHR-GL44.shaders30.glsl_constructors.bvec3_from_bool_mat3x2_bool_invalid_vs +KHR-GL44.shaders30.glsl_constructors.bvec3_from_bool_mat3x2_bool_invalid_fs +KHR-GL44.shaders30.glsl_constructors.bvec3_from_bool_mat3x4_vs +KHR-GL44.shaders30.glsl_constructors.bvec3_from_bool_mat3x4_fs +KHR-GL44.shaders30.glsl_constructors.bvec3_from_bool_mat3x4_bool_invalid_vs +KHR-GL44.shaders30.glsl_constructors.bvec3_from_bool_mat3x4_bool_invalid_fs +KHR-GL44.shaders30.glsl_constructors.bvec3_from_bool_mat4_vs +KHR-GL44.shaders30.glsl_constructors.bvec3_from_bool_mat4_fs +KHR-GL44.shaders30.glsl_constructors.bvec3_from_bool_mat4_bool_invalid_vs +KHR-GL44.shaders30.glsl_constructors.bvec3_from_bool_mat4_bool_invalid_fs +KHR-GL44.shaders30.glsl_constructors.bvec3_from_bool_mat4x2_vs +KHR-GL44.shaders30.glsl_constructors.bvec3_from_bool_mat4x2_fs +KHR-GL44.shaders30.glsl_constructors.bvec3_from_bool_mat4x2_bool_invalid_vs +KHR-GL44.shaders30.glsl_constructors.bvec3_from_bool_mat4x2_bool_invalid_fs +KHR-GL44.shaders30.glsl_constructors.bvec3_from_bool_mat4x3_vs +KHR-GL44.shaders30.glsl_constructors.bvec3_from_bool_mat4x3_fs +KHR-GL44.shaders30.glsl_constructors.bvec3_from_bool_mat4x3_bool_invalid_vs +KHR-GL44.shaders30.glsl_constructors.bvec3_from_bool_mat4x3_bool_invalid_fs +KHR-GL44.shaders30.glsl_constructors.bvec4_from_mat2_vs +KHR-GL44.shaders30.glsl_constructors.bvec4_from_mat2_fs +KHR-GL44.shaders30.glsl_constructors.bvec4_from_mat2_mat2_invalid_vs +KHR-GL44.shaders30.glsl_constructors.bvec4_from_mat2_mat2_invalid_fs +KHR-GL44.shaders30.glsl_constructors.bvec4_from_mat2x3_vs +KHR-GL44.shaders30.glsl_constructors.bvec4_from_mat2x3_fs +KHR-GL44.shaders30.glsl_constructors.bvec4_from_mat2x3_mat2x3_invalid_vs +KHR-GL44.shaders30.glsl_constructors.bvec4_from_mat2x3_mat2x3_invalid_fs +KHR-GL44.shaders30.glsl_constructors.bvec4_from_mat2x4_vs +KHR-GL44.shaders30.glsl_constructors.bvec4_from_mat2x4_fs +KHR-GL44.shaders30.glsl_constructors.bvec4_from_mat2x4_mat2x4_invalid_vs +KHR-GL44.shaders30.glsl_constructors.bvec4_from_mat2x4_mat2x4_invalid_fs +KHR-GL44.shaders30.glsl_constructors.bvec4_from_mat3_vs +KHR-GL44.shaders30.glsl_constructors.bvec4_from_mat3_fs +KHR-GL44.shaders30.glsl_constructors.bvec4_from_mat3_mat3_invalid_vs +KHR-GL44.shaders30.glsl_constructors.bvec4_from_mat3_mat3_invalid_fs +KHR-GL44.shaders30.glsl_constructors.bvec4_from_mat3x2_vs +KHR-GL44.shaders30.glsl_constructors.bvec4_from_mat3x2_fs +KHR-GL44.shaders30.glsl_constructors.bvec4_from_mat3x2_mat3x2_invalid_vs +KHR-GL44.shaders30.glsl_constructors.bvec4_from_mat3x2_mat3x2_invalid_fs +KHR-GL44.shaders30.glsl_constructors.bvec4_from_mat3x4_vs +KHR-GL44.shaders30.glsl_constructors.bvec4_from_mat3x4_fs +KHR-GL44.shaders30.glsl_constructors.bvec4_from_mat3x4_mat3x4_invalid_vs +KHR-GL44.shaders30.glsl_constructors.bvec4_from_mat3x4_mat3x4_invalid_fs +KHR-GL44.shaders30.glsl_constructors.bvec4_from_mat4_vs +KHR-GL44.shaders30.glsl_constructors.bvec4_from_mat4_fs +KHR-GL44.shaders30.glsl_constructors.bvec4_from_mat4_mat4_invalid_vs +KHR-GL44.shaders30.glsl_constructors.bvec4_from_mat4_mat4_invalid_fs +KHR-GL44.shaders30.glsl_constructors.bvec4_from_mat4x2_vs +KHR-GL44.shaders30.glsl_constructors.bvec4_from_mat4x2_fs +KHR-GL44.shaders30.glsl_constructors.bvec4_from_mat4x2_mat4x2_invalid_vs +KHR-GL44.shaders30.glsl_constructors.bvec4_from_mat4x2_mat4x2_invalid_fs +KHR-GL44.shaders30.glsl_constructors.bvec4_from_mat4x3_vs +KHR-GL44.shaders30.glsl_constructors.bvec4_from_mat4x3_fs +KHR-GL44.shaders30.glsl_constructors.bvec4_from_mat4x3_mat4x3_invalid_vs +KHR-GL44.shaders30.glsl_constructors.bvec4_from_mat4x3_mat4x3_invalid_fs +KHR-GL44.shaders30.glsl_constructors.bvec4_from_bool_mat2_vs +KHR-GL44.shaders30.glsl_constructors.bvec4_from_bool_mat2_fs +KHR-GL44.shaders30.glsl_constructors.bvec4_from_bool_mat2_bool_invalid_vs +KHR-GL44.shaders30.glsl_constructors.bvec4_from_bool_mat2_bool_invalid_fs +KHR-GL44.shaders30.glsl_constructors.bvec4_from_bool_mat2x3_vs +KHR-GL44.shaders30.glsl_constructors.bvec4_from_bool_mat2x3_fs +KHR-GL44.shaders30.glsl_constructors.bvec4_from_bool_mat2x3_bool_invalid_vs +KHR-GL44.shaders30.glsl_constructors.bvec4_from_bool_mat2x3_bool_invalid_fs +KHR-GL44.shaders30.glsl_constructors.bvec4_from_bool_mat2x4_vs +KHR-GL44.shaders30.glsl_constructors.bvec4_from_bool_mat2x4_fs +KHR-GL44.shaders30.glsl_constructors.bvec4_from_bool_mat2x4_bool_invalid_vs +KHR-GL44.shaders30.glsl_constructors.bvec4_from_bool_mat2x4_bool_invalid_fs +KHR-GL44.shaders30.glsl_constructors.bvec4_from_bool_mat3_vs +KHR-GL44.shaders30.glsl_constructors.bvec4_from_bool_mat3_fs +KHR-GL44.shaders30.glsl_constructors.bvec4_from_bool_mat3_bool_invalid_vs +KHR-GL44.shaders30.glsl_constructors.bvec4_from_bool_mat3_bool_invalid_fs +KHR-GL44.shaders30.glsl_constructors.bvec4_from_bool_mat3x2_vs +KHR-GL44.shaders30.glsl_constructors.bvec4_from_bool_mat3x2_fs +KHR-GL44.shaders30.glsl_constructors.bvec4_from_bool_mat3x2_bool_invalid_vs +KHR-GL44.shaders30.glsl_constructors.bvec4_from_bool_mat3x2_bool_invalid_fs +KHR-GL44.shaders30.glsl_constructors.bvec4_from_bool_mat3x4_vs +KHR-GL44.shaders30.glsl_constructors.bvec4_from_bool_mat3x4_fs +KHR-GL44.shaders30.glsl_constructors.bvec4_from_bool_mat3x4_bool_invalid_vs +KHR-GL44.shaders30.glsl_constructors.bvec4_from_bool_mat3x4_bool_invalid_fs +KHR-GL44.shaders30.glsl_constructors.bvec4_from_bool_mat4_vs +KHR-GL44.shaders30.glsl_constructors.bvec4_from_bool_mat4_fs +KHR-GL44.shaders30.glsl_constructors.bvec4_from_bool_mat4_bool_invalid_vs +KHR-GL44.shaders30.glsl_constructors.bvec4_from_bool_mat4_bool_invalid_fs +KHR-GL44.shaders30.glsl_constructors.bvec4_from_bool_mat4x2_vs +KHR-GL44.shaders30.glsl_constructors.bvec4_from_bool_mat4x2_fs +KHR-GL44.shaders30.glsl_constructors.bvec4_from_bool_mat4x2_bool_invalid_vs +KHR-GL44.shaders30.glsl_constructors.bvec4_from_bool_mat4x2_bool_invalid_fs +KHR-GL44.shaders30.glsl_constructors.bvec4_from_bool_mat4x3_vs +KHR-GL44.shaders30.glsl_constructors.bvec4_from_bool_mat4x3_fs +KHR-GL44.shaders30.glsl_constructors.bvec4_from_bool_mat4x3_bool_invalid_vs +KHR-GL44.shaders30.glsl_constructors.bvec4_from_bool_mat4x3_bool_invalid_fs KHR-GL44.ext_texture_shadow_lod.texture.sampler2darrayshadow_fragment KHR-GL44.ext_texture_shadow_lod.texture.sampler2darrayshadow_bias_fragment KHR-GL44.ext_texture_shadow_lod.texture.samplercubearrayshadow_vertex diff --git a/external/openglcts/data/mustpass/gl/khronos_mustpass/4.6.1.x/gl45-master.txt b/external/openglcts/data/mustpass/gl/khronos_mustpass/4.6.1.x/gl45-master.txt index da3ade4..e2d5d15 100644 --- a/external/openglcts/data/mustpass/gl/khronos_mustpass/4.6.1.x/gl45-master.txt +++ b/external/openglcts/data/mustpass/gl/khronos_mustpass/4.6.1.x/gl45-master.txt @@ -192,6 +192,654 @@ KHR-GL45.texture_repeat_mode.depth24_stencil8_11x131_2_repeat KHR-GL45.texture_repeat_mode.depth24_stencil8_11x131_2_mirrored_repeat KHR-GL45.shaders30.declarations.declarations.redeclare_gl_FragColor KHR-GL45.shaders30.declarations.declarations.redeclare_gl_FragData +KHR-GL45.shaders30.glsl_constructors.vec2_from_mat2_vs +KHR-GL45.shaders30.glsl_constructors.vec2_from_mat2_fs +KHR-GL45.shaders30.glsl_constructors.vec2_from_mat2_mat2_invalid_vs +KHR-GL45.shaders30.glsl_constructors.vec2_from_mat2_mat2_invalid_fs +KHR-GL45.shaders30.glsl_constructors.vec2_from_mat2x3_vs +KHR-GL45.shaders30.glsl_constructors.vec2_from_mat2x3_fs +KHR-GL45.shaders30.glsl_constructors.vec2_from_mat2x3_mat2x3_invalid_vs +KHR-GL45.shaders30.glsl_constructors.vec2_from_mat2x3_mat2x3_invalid_fs +KHR-GL45.shaders30.glsl_constructors.vec2_from_mat2x4_vs +KHR-GL45.shaders30.glsl_constructors.vec2_from_mat2x4_fs +KHR-GL45.shaders30.glsl_constructors.vec2_from_mat2x4_mat2x4_invalid_vs +KHR-GL45.shaders30.glsl_constructors.vec2_from_mat2x4_mat2x4_invalid_fs +KHR-GL45.shaders30.glsl_constructors.vec2_from_mat3_vs +KHR-GL45.shaders30.glsl_constructors.vec2_from_mat3_fs +KHR-GL45.shaders30.glsl_constructors.vec2_from_mat3_mat3_invalid_vs +KHR-GL45.shaders30.glsl_constructors.vec2_from_mat3_mat3_invalid_fs +KHR-GL45.shaders30.glsl_constructors.vec2_from_mat3x2_vs +KHR-GL45.shaders30.glsl_constructors.vec2_from_mat3x2_fs +KHR-GL45.shaders30.glsl_constructors.vec2_from_mat3x2_mat3x2_invalid_vs +KHR-GL45.shaders30.glsl_constructors.vec2_from_mat3x2_mat3x2_invalid_fs +KHR-GL45.shaders30.glsl_constructors.vec2_from_mat3x4_vs +KHR-GL45.shaders30.glsl_constructors.vec2_from_mat3x4_fs +KHR-GL45.shaders30.glsl_constructors.vec2_from_mat3x4_mat3x4_invalid_vs +KHR-GL45.shaders30.glsl_constructors.vec2_from_mat3x4_mat3x4_invalid_fs +KHR-GL45.shaders30.glsl_constructors.vec2_from_mat4_vs +KHR-GL45.shaders30.glsl_constructors.vec2_from_mat4_fs +KHR-GL45.shaders30.glsl_constructors.vec2_from_mat4_mat4_invalid_vs +KHR-GL45.shaders30.glsl_constructors.vec2_from_mat4_mat4_invalid_fs +KHR-GL45.shaders30.glsl_constructors.vec2_from_mat4x2_vs +KHR-GL45.shaders30.glsl_constructors.vec2_from_mat4x2_fs +KHR-GL45.shaders30.glsl_constructors.vec2_from_mat4x2_mat4x2_invalid_vs +KHR-GL45.shaders30.glsl_constructors.vec2_from_mat4x2_mat4x2_invalid_fs +KHR-GL45.shaders30.glsl_constructors.vec2_from_mat4x3_vs +KHR-GL45.shaders30.glsl_constructors.vec2_from_mat4x3_fs +KHR-GL45.shaders30.glsl_constructors.vec2_from_mat4x3_mat4x3_invalid_vs +KHR-GL45.shaders30.glsl_constructors.vec2_from_mat4x3_mat4x3_invalid_fs +KHR-GL45.shaders30.glsl_constructors.vec2_from_float_mat2_vs +KHR-GL45.shaders30.glsl_constructors.vec2_from_float_mat2_fs +KHR-GL45.shaders30.glsl_constructors.vec2_from_float_mat2_float_invalid_vs +KHR-GL45.shaders30.glsl_constructors.vec2_from_float_mat2_float_invalid_fs +KHR-GL45.shaders30.glsl_constructors.vec2_from_float_mat2x3_vs +KHR-GL45.shaders30.glsl_constructors.vec2_from_float_mat2x3_fs +KHR-GL45.shaders30.glsl_constructors.vec2_from_float_mat2x3_float_invalid_vs +KHR-GL45.shaders30.glsl_constructors.vec2_from_float_mat2x3_float_invalid_fs +KHR-GL45.shaders30.glsl_constructors.vec2_from_float_mat2x4_vs +KHR-GL45.shaders30.glsl_constructors.vec2_from_float_mat2x4_fs +KHR-GL45.shaders30.glsl_constructors.vec2_from_float_mat2x4_float_invalid_vs +KHR-GL45.shaders30.glsl_constructors.vec2_from_float_mat2x4_float_invalid_fs +KHR-GL45.shaders30.glsl_constructors.vec2_from_float_mat3_vs +KHR-GL45.shaders30.glsl_constructors.vec2_from_float_mat3_fs +KHR-GL45.shaders30.glsl_constructors.vec2_from_float_mat3_float_invalid_vs +KHR-GL45.shaders30.glsl_constructors.vec2_from_float_mat3_float_invalid_fs +KHR-GL45.shaders30.glsl_constructors.vec2_from_float_mat3x2_vs +KHR-GL45.shaders30.glsl_constructors.vec2_from_float_mat3x2_fs +KHR-GL45.shaders30.glsl_constructors.vec2_from_float_mat3x2_float_invalid_vs +KHR-GL45.shaders30.glsl_constructors.vec2_from_float_mat3x2_float_invalid_fs +KHR-GL45.shaders30.glsl_constructors.vec2_from_float_mat3x4_vs +KHR-GL45.shaders30.glsl_constructors.vec2_from_float_mat3x4_fs +KHR-GL45.shaders30.glsl_constructors.vec2_from_float_mat3x4_float_invalid_vs +KHR-GL45.shaders30.glsl_constructors.vec2_from_float_mat3x4_float_invalid_fs +KHR-GL45.shaders30.glsl_constructors.vec2_from_float_mat4_vs +KHR-GL45.shaders30.glsl_constructors.vec2_from_float_mat4_fs +KHR-GL45.shaders30.glsl_constructors.vec2_from_float_mat4_float_invalid_vs +KHR-GL45.shaders30.glsl_constructors.vec2_from_float_mat4_float_invalid_fs +KHR-GL45.shaders30.glsl_constructors.vec2_from_float_mat4x2_vs +KHR-GL45.shaders30.glsl_constructors.vec2_from_float_mat4x2_fs +KHR-GL45.shaders30.glsl_constructors.vec2_from_float_mat4x2_float_invalid_vs +KHR-GL45.shaders30.glsl_constructors.vec2_from_float_mat4x2_float_invalid_fs +KHR-GL45.shaders30.glsl_constructors.vec2_from_float_mat4x3_vs +KHR-GL45.shaders30.glsl_constructors.vec2_from_float_mat4x3_fs +KHR-GL45.shaders30.glsl_constructors.vec2_from_float_mat4x3_float_invalid_vs +KHR-GL45.shaders30.glsl_constructors.vec2_from_float_mat4x3_float_invalid_fs +KHR-GL45.shaders30.glsl_constructors.vec3_from_mat2_vs +KHR-GL45.shaders30.glsl_constructors.vec3_from_mat2_fs +KHR-GL45.shaders30.glsl_constructors.vec3_from_mat2_mat2_invalid_vs +KHR-GL45.shaders30.glsl_constructors.vec3_from_mat2_mat2_invalid_fs +KHR-GL45.shaders30.glsl_constructors.vec3_from_mat2x3_vs +KHR-GL45.shaders30.glsl_constructors.vec3_from_mat2x3_fs +KHR-GL45.shaders30.glsl_constructors.vec3_from_mat2x3_mat2x3_invalid_vs +KHR-GL45.shaders30.glsl_constructors.vec3_from_mat2x3_mat2x3_invalid_fs +KHR-GL45.shaders30.glsl_constructors.vec3_from_mat2x4_vs +KHR-GL45.shaders30.glsl_constructors.vec3_from_mat2x4_fs +KHR-GL45.shaders30.glsl_constructors.vec3_from_mat2x4_mat2x4_invalid_vs +KHR-GL45.shaders30.glsl_constructors.vec3_from_mat2x4_mat2x4_invalid_fs +KHR-GL45.shaders30.glsl_constructors.vec3_from_mat3_vs +KHR-GL45.shaders30.glsl_constructors.vec3_from_mat3_fs +KHR-GL45.shaders30.glsl_constructors.vec3_from_mat3_mat3_invalid_vs +KHR-GL45.shaders30.glsl_constructors.vec3_from_mat3_mat3_invalid_fs +KHR-GL45.shaders30.glsl_constructors.vec3_from_mat3x2_vs +KHR-GL45.shaders30.glsl_constructors.vec3_from_mat3x2_fs +KHR-GL45.shaders30.glsl_constructors.vec3_from_mat3x2_mat3x2_invalid_vs +KHR-GL45.shaders30.glsl_constructors.vec3_from_mat3x2_mat3x2_invalid_fs +KHR-GL45.shaders30.glsl_constructors.vec3_from_mat3x4_vs +KHR-GL45.shaders30.glsl_constructors.vec3_from_mat3x4_fs +KHR-GL45.shaders30.glsl_constructors.vec3_from_mat3x4_mat3x4_invalid_vs +KHR-GL45.shaders30.glsl_constructors.vec3_from_mat3x4_mat3x4_invalid_fs +KHR-GL45.shaders30.glsl_constructors.vec3_from_mat4_vs +KHR-GL45.shaders30.glsl_constructors.vec3_from_mat4_fs +KHR-GL45.shaders30.glsl_constructors.vec3_from_mat4_mat4_invalid_vs +KHR-GL45.shaders30.glsl_constructors.vec3_from_mat4_mat4_invalid_fs +KHR-GL45.shaders30.glsl_constructors.vec3_from_mat4x2_vs +KHR-GL45.shaders30.glsl_constructors.vec3_from_mat4x2_fs +KHR-GL45.shaders30.glsl_constructors.vec3_from_mat4x2_mat4x2_invalid_vs +KHR-GL45.shaders30.glsl_constructors.vec3_from_mat4x2_mat4x2_invalid_fs +KHR-GL45.shaders30.glsl_constructors.vec3_from_mat4x3_vs +KHR-GL45.shaders30.glsl_constructors.vec3_from_mat4x3_fs +KHR-GL45.shaders30.glsl_constructors.vec3_from_mat4x3_mat4x3_invalid_vs +KHR-GL45.shaders30.glsl_constructors.vec3_from_mat4x3_mat4x3_invalid_fs +KHR-GL45.shaders30.glsl_constructors.vec3_from_float_mat2_vs +KHR-GL45.shaders30.glsl_constructors.vec3_from_float_mat2_fs +KHR-GL45.shaders30.glsl_constructors.vec3_from_float_mat2_float_invalid_vs +KHR-GL45.shaders30.glsl_constructors.vec3_from_float_mat2_float_invalid_fs +KHR-GL45.shaders30.glsl_constructors.vec3_from_float_mat2x3_vs +KHR-GL45.shaders30.glsl_constructors.vec3_from_float_mat2x3_fs +KHR-GL45.shaders30.glsl_constructors.vec3_from_float_mat2x3_float_invalid_vs +KHR-GL45.shaders30.glsl_constructors.vec3_from_float_mat2x3_float_invalid_fs +KHR-GL45.shaders30.glsl_constructors.vec3_from_float_mat2x4_vs +KHR-GL45.shaders30.glsl_constructors.vec3_from_float_mat2x4_fs +KHR-GL45.shaders30.glsl_constructors.vec3_from_float_mat2x4_float_invalid_vs +KHR-GL45.shaders30.glsl_constructors.vec3_from_float_mat2x4_float_invalid_fs +KHR-GL45.shaders30.glsl_constructors.vec3_from_float_mat3_vs +KHR-GL45.shaders30.glsl_constructors.vec3_from_float_mat3_fs +KHR-GL45.shaders30.glsl_constructors.vec3_from_float_mat3_float_invalid_vs +KHR-GL45.shaders30.glsl_constructors.vec3_from_float_mat3_float_invalid_fs +KHR-GL45.shaders30.glsl_constructors.vec3_from_float_mat3x2_vs +KHR-GL45.shaders30.glsl_constructors.vec3_from_float_mat3x2_fs +KHR-GL45.shaders30.glsl_constructors.vec3_from_float_mat3x2_float_invalid_vs +KHR-GL45.shaders30.glsl_constructors.vec3_from_float_mat3x2_float_invalid_fs +KHR-GL45.shaders30.glsl_constructors.vec3_from_float_mat3x4_vs +KHR-GL45.shaders30.glsl_constructors.vec3_from_float_mat3x4_fs +KHR-GL45.shaders30.glsl_constructors.vec3_from_float_mat3x4_float_invalid_vs +KHR-GL45.shaders30.glsl_constructors.vec3_from_float_mat3x4_float_invalid_fs +KHR-GL45.shaders30.glsl_constructors.vec3_from_float_mat4_vs +KHR-GL45.shaders30.glsl_constructors.vec3_from_float_mat4_fs +KHR-GL45.shaders30.glsl_constructors.vec3_from_float_mat4_float_invalid_vs +KHR-GL45.shaders30.glsl_constructors.vec3_from_float_mat4_float_invalid_fs +KHR-GL45.shaders30.glsl_constructors.vec3_from_float_mat4x2_vs +KHR-GL45.shaders30.glsl_constructors.vec3_from_float_mat4x2_fs +KHR-GL45.shaders30.glsl_constructors.vec3_from_float_mat4x2_float_invalid_vs +KHR-GL45.shaders30.glsl_constructors.vec3_from_float_mat4x2_float_invalid_fs +KHR-GL45.shaders30.glsl_constructors.vec3_from_float_mat4x3_vs +KHR-GL45.shaders30.glsl_constructors.vec3_from_float_mat4x3_fs +KHR-GL45.shaders30.glsl_constructors.vec3_from_float_mat4x3_float_invalid_vs +KHR-GL45.shaders30.glsl_constructors.vec3_from_float_mat4x3_float_invalid_fs +KHR-GL45.shaders30.glsl_constructors.vec4_from_mat2_vs +KHR-GL45.shaders30.glsl_constructors.vec4_from_mat2_fs +KHR-GL45.shaders30.glsl_constructors.vec4_from_mat2_mat2_invalid_vs +KHR-GL45.shaders30.glsl_constructors.vec4_from_mat2_mat2_invalid_fs +KHR-GL45.shaders30.glsl_constructors.vec4_from_mat2x3_vs +KHR-GL45.shaders30.glsl_constructors.vec4_from_mat2x3_fs +KHR-GL45.shaders30.glsl_constructors.vec4_from_mat2x3_mat2x3_invalid_vs +KHR-GL45.shaders30.glsl_constructors.vec4_from_mat2x3_mat2x3_invalid_fs +KHR-GL45.shaders30.glsl_constructors.vec4_from_mat2x4_vs +KHR-GL45.shaders30.glsl_constructors.vec4_from_mat2x4_fs +KHR-GL45.shaders30.glsl_constructors.vec4_from_mat2x4_mat2x4_invalid_vs +KHR-GL45.shaders30.glsl_constructors.vec4_from_mat2x4_mat2x4_invalid_fs +KHR-GL45.shaders30.glsl_constructors.vec4_from_mat3_vs +KHR-GL45.shaders30.glsl_constructors.vec4_from_mat3_fs +KHR-GL45.shaders30.glsl_constructors.vec4_from_mat3_mat3_invalid_vs +KHR-GL45.shaders30.glsl_constructors.vec4_from_mat3_mat3_invalid_fs +KHR-GL45.shaders30.glsl_constructors.vec4_from_mat3x2_vs +KHR-GL45.shaders30.glsl_constructors.vec4_from_mat3x2_fs +KHR-GL45.shaders30.glsl_constructors.vec4_from_mat3x2_mat3x2_invalid_vs +KHR-GL45.shaders30.glsl_constructors.vec4_from_mat3x2_mat3x2_invalid_fs +KHR-GL45.shaders30.glsl_constructors.vec4_from_mat3x4_vs +KHR-GL45.shaders30.glsl_constructors.vec4_from_mat3x4_fs +KHR-GL45.shaders30.glsl_constructors.vec4_from_mat3x4_mat3x4_invalid_vs +KHR-GL45.shaders30.glsl_constructors.vec4_from_mat3x4_mat3x4_invalid_fs +KHR-GL45.shaders30.glsl_constructors.vec4_from_mat4_vs +KHR-GL45.shaders30.glsl_constructors.vec4_from_mat4_fs +KHR-GL45.shaders30.glsl_constructors.vec4_from_mat4_mat4_invalid_vs +KHR-GL45.shaders30.glsl_constructors.vec4_from_mat4_mat4_invalid_fs +KHR-GL45.shaders30.glsl_constructors.vec4_from_mat4x2_vs +KHR-GL45.shaders30.glsl_constructors.vec4_from_mat4x2_fs +KHR-GL45.shaders30.glsl_constructors.vec4_from_mat4x2_mat4x2_invalid_vs +KHR-GL45.shaders30.glsl_constructors.vec4_from_mat4x2_mat4x2_invalid_fs +KHR-GL45.shaders30.glsl_constructors.vec4_from_mat4x3_vs +KHR-GL45.shaders30.glsl_constructors.vec4_from_mat4x3_fs +KHR-GL45.shaders30.glsl_constructors.vec4_from_mat4x3_mat4x3_invalid_vs +KHR-GL45.shaders30.glsl_constructors.vec4_from_mat4x3_mat4x3_invalid_fs +KHR-GL45.shaders30.glsl_constructors.vec4_from_float_mat2_vs +KHR-GL45.shaders30.glsl_constructors.vec4_from_float_mat2_fs +KHR-GL45.shaders30.glsl_constructors.vec4_from_float_mat2_float_invalid_vs +KHR-GL45.shaders30.glsl_constructors.vec4_from_float_mat2_float_invalid_fs +KHR-GL45.shaders30.glsl_constructors.vec4_from_float_mat2x3_vs +KHR-GL45.shaders30.glsl_constructors.vec4_from_float_mat2x3_fs +KHR-GL45.shaders30.glsl_constructors.vec4_from_float_mat2x3_float_invalid_vs +KHR-GL45.shaders30.glsl_constructors.vec4_from_float_mat2x3_float_invalid_fs +KHR-GL45.shaders30.glsl_constructors.vec4_from_float_mat2x4_vs +KHR-GL45.shaders30.glsl_constructors.vec4_from_float_mat2x4_fs +KHR-GL45.shaders30.glsl_constructors.vec4_from_float_mat2x4_float_invalid_vs +KHR-GL45.shaders30.glsl_constructors.vec4_from_float_mat2x4_float_invalid_fs +KHR-GL45.shaders30.glsl_constructors.vec4_from_float_mat3_vs +KHR-GL45.shaders30.glsl_constructors.vec4_from_float_mat3_fs +KHR-GL45.shaders30.glsl_constructors.vec4_from_float_mat3_float_invalid_vs +KHR-GL45.shaders30.glsl_constructors.vec4_from_float_mat3_float_invalid_fs +KHR-GL45.shaders30.glsl_constructors.vec4_from_float_mat3x2_vs +KHR-GL45.shaders30.glsl_constructors.vec4_from_float_mat3x2_fs +KHR-GL45.shaders30.glsl_constructors.vec4_from_float_mat3x2_float_invalid_vs +KHR-GL45.shaders30.glsl_constructors.vec4_from_float_mat3x2_float_invalid_fs +KHR-GL45.shaders30.glsl_constructors.vec4_from_float_mat3x4_vs +KHR-GL45.shaders30.glsl_constructors.vec4_from_float_mat3x4_fs +KHR-GL45.shaders30.glsl_constructors.vec4_from_float_mat3x4_float_invalid_vs +KHR-GL45.shaders30.glsl_constructors.vec4_from_float_mat3x4_float_invalid_fs +KHR-GL45.shaders30.glsl_constructors.vec4_from_float_mat4_vs +KHR-GL45.shaders30.glsl_constructors.vec4_from_float_mat4_fs +KHR-GL45.shaders30.glsl_constructors.vec4_from_float_mat4_float_invalid_vs +KHR-GL45.shaders30.glsl_constructors.vec4_from_float_mat4_float_invalid_fs +KHR-GL45.shaders30.glsl_constructors.vec4_from_float_mat4x2_vs +KHR-GL45.shaders30.glsl_constructors.vec4_from_float_mat4x2_fs +KHR-GL45.shaders30.glsl_constructors.vec4_from_float_mat4x2_float_invalid_vs +KHR-GL45.shaders30.glsl_constructors.vec4_from_float_mat4x2_float_invalid_fs +KHR-GL45.shaders30.glsl_constructors.vec4_from_float_mat4x3_vs +KHR-GL45.shaders30.glsl_constructors.vec4_from_float_mat4x3_fs +KHR-GL45.shaders30.glsl_constructors.vec4_from_float_mat4x3_float_invalid_vs +KHR-GL45.shaders30.glsl_constructors.vec4_from_float_mat4x3_float_invalid_fs +KHR-GL45.shaders30.glsl_constructors.ivec2_from_mat2_vs +KHR-GL45.shaders30.glsl_constructors.ivec2_from_mat2_fs +KHR-GL45.shaders30.glsl_constructors.ivec2_from_mat2_mat2_invalid_vs +KHR-GL45.shaders30.glsl_constructors.ivec2_from_mat2_mat2_invalid_fs +KHR-GL45.shaders30.glsl_constructors.ivec2_from_mat2x3_vs +KHR-GL45.shaders30.glsl_constructors.ivec2_from_mat2x3_fs +KHR-GL45.shaders30.glsl_constructors.ivec2_from_mat2x3_mat2x3_invalid_vs +KHR-GL45.shaders30.glsl_constructors.ivec2_from_mat2x3_mat2x3_invalid_fs +KHR-GL45.shaders30.glsl_constructors.ivec2_from_mat2x4_vs +KHR-GL45.shaders30.glsl_constructors.ivec2_from_mat2x4_fs +KHR-GL45.shaders30.glsl_constructors.ivec2_from_mat2x4_mat2x4_invalid_vs +KHR-GL45.shaders30.glsl_constructors.ivec2_from_mat2x4_mat2x4_invalid_fs +KHR-GL45.shaders30.glsl_constructors.ivec2_from_mat3_vs +KHR-GL45.shaders30.glsl_constructors.ivec2_from_mat3_fs +KHR-GL45.shaders30.glsl_constructors.ivec2_from_mat3_mat3_invalid_vs +KHR-GL45.shaders30.glsl_constructors.ivec2_from_mat3_mat3_invalid_fs +KHR-GL45.shaders30.glsl_constructors.ivec2_from_mat3x2_vs +KHR-GL45.shaders30.glsl_constructors.ivec2_from_mat3x2_fs +KHR-GL45.shaders30.glsl_constructors.ivec2_from_mat3x2_mat3x2_invalid_vs +KHR-GL45.shaders30.glsl_constructors.ivec2_from_mat3x2_mat3x2_invalid_fs +KHR-GL45.shaders30.glsl_constructors.ivec2_from_mat3x4_vs +KHR-GL45.shaders30.glsl_constructors.ivec2_from_mat3x4_fs +KHR-GL45.shaders30.glsl_constructors.ivec2_from_mat3x4_mat3x4_invalid_vs +KHR-GL45.shaders30.glsl_constructors.ivec2_from_mat3x4_mat3x4_invalid_fs +KHR-GL45.shaders30.glsl_constructors.ivec2_from_mat4_vs +KHR-GL45.shaders30.glsl_constructors.ivec2_from_mat4_fs +KHR-GL45.shaders30.glsl_constructors.ivec2_from_mat4_mat4_invalid_vs +KHR-GL45.shaders30.glsl_constructors.ivec2_from_mat4_mat4_invalid_fs +KHR-GL45.shaders30.glsl_constructors.ivec2_from_mat4x2_vs +KHR-GL45.shaders30.glsl_constructors.ivec2_from_mat4x2_fs +KHR-GL45.shaders30.glsl_constructors.ivec2_from_mat4x2_mat4x2_invalid_vs +KHR-GL45.shaders30.glsl_constructors.ivec2_from_mat4x2_mat4x2_invalid_fs +KHR-GL45.shaders30.glsl_constructors.ivec2_from_mat4x3_vs +KHR-GL45.shaders30.glsl_constructors.ivec2_from_mat4x3_fs +KHR-GL45.shaders30.glsl_constructors.ivec2_from_mat4x3_mat4x3_invalid_vs +KHR-GL45.shaders30.glsl_constructors.ivec2_from_mat4x3_mat4x3_invalid_fs +KHR-GL45.shaders30.glsl_constructors.ivec2_from_int_mat2_vs +KHR-GL45.shaders30.glsl_constructors.ivec2_from_int_mat2_fs +KHR-GL45.shaders30.glsl_constructors.ivec2_from_int_mat2_int_invalid_vs +KHR-GL45.shaders30.glsl_constructors.ivec2_from_int_mat2_int_invalid_fs +KHR-GL45.shaders30.glsl_constructors.ivec2_from_int_mat2x3_vs +KHR-GL45.shaders30.glsl_constructors.ivec2_from_int_mat2x3_fs +KHR-GL45.shaders30.glsl_constructors.ivec2_from_int_mat2x3_int_invalid_vs +KHR-GL45.shaders30.glsl_constructors.ivec2_from_int_mat2x3_int_invalid_fs +KHR-GL45.shaders30.glsl_constructors.ivec2_from_int_mat2x4_vs +KHR-GL45.shaders30.glsl_constructors.ivec2_from_int_mat2x4_fs +KHR-GL45.shaders30.glsl_constructors.ivec2_from_int_mat2x4_int_invalid_vs +KHR-GL45.shaders30.glsl_constructors.ivec2_from_int_mat2x4_int_invalid_fs +KHR-GL45.shaders30.glsl_constructors.ivec2_from_int_mat3_vs +KHR-GL45.shaders30.glsl_constructors.ivec2_from_int_mat3_fs +KHR-GL45.shaders30.glsl_constructors.ivec2_from_int_mat3_int_invalid_vs +KHR-GL45.shaders30.glsl_constructors.ivec2_from_int_mat3_int_invalid_fs +KHR-GL45.shaders30.glsl_constructors.ivec2_from_int_mat3x2_vs +KHR-GL45.shaders30.glsl_constructors.ivec2_from_int_mat3x2_fs +KHR-GL45.shaders30.glsl_constructors.ivec2_from_int_mat3x2_int_invalid_vs +KHR-GL45.shaders30.glsl_constructors.ivec2_from_int_mat3x2_int_invalid_fs +KHR-GL45.shaders30.glsl_constructors.ivec2_from_int_mat3x4_vs +KHR-GL45.shaders30.glsl_constructors.ivec2_from_int_mat3x4_fs +KHR-GL45.shaders30.glsl_constructors.ivec2_from_int_mat3x4_int_invalid_vs +KHR-GL45.shaders30.glsl_constructors.ivec2_from_int_mat3x4_int_invalid_fs +KHR-GL45.shaders30.glsl_constructors.ivec2_from_int_mat4_vs +KHR-GL45.shaders30.glsl_constructors.ivec2_from_int_mat4_fs +KHR-GL45.shaders30.glsl_constructors.ivec2_from_int_mat4_int_invalid_vs +KHR-GL45.shaders30.glsl_constructors.ivec2_from_int_mat4_int_invalid_fs +KHR-GL45.shaders30.glsl_constructors.ivec2_from_int_mat4x2_vs +KHR-GL45.shaders30.glsl_constructors.ivec2_from_int_mat4x2_fs +KHR-GL45.shaders30.glsl_constructors.ivec2_from_int_mat4x2_int_invalid_vs +KHR-GL45.shaders30.glsl_constructors.ivec2_from_int_mat4x2_int_invalid_fs +KHR-GL45.shaders30.glsl_constructors.ivec2_from_int_mat4x3_vs +KHR-GL45.shaders30.glsl_constructors.ivec2_from_int_mat4x3_fs +KHR-GL45.shaders30.glsl_constructors.ivec2_from_int_mat4x3_int_invalid_vs +KHR-GL45.shaders30.glsl_constructors.ivec2_from_int_mat4x3_int_invalid_fs +KHR-GL45.shaders30.glsl_constructors.ivec3_from_mat2_vs +KHR-GL45.shaders30.glsl_constructors.ivec3_from_mat2_fs +KHR-GL45.shaders30.glsl_constructors.ivec3_from_mat2_mat2_invalid_vs +KHR-GL45.shaders30.glsl_constructors.ivec3_from_mat2_mat2_invalid_fs +KHR-GL45.shaders30.glsl_constructors.ivec3_from_mat2x3_vs +KHR-GL45.shaders30.glsl_constructors.ivec3_from_mat2x3_fs +KHR-GL45.shaders30.glsl_constructors.ivec3_from_mat2x3_mat2x3_invalid_vs +KHR-GL45.shaders30.glsl_constructors.ivec3_from_mat2x3_mat2x3_invalid_fs +KHR-GL45.shaders30.glsl_constructors.ivec3_from_mat2x4_vs +KHR-GL45.shaders30.glsl_constructors.ivec3_from_mat2x4_fs +KHR-GL45.shaders30.glsl_constructors.ivec3_from_mat2x4_mat2x4_invalid_vs +KHR-GL45.shaders30.glsl_constructors.ivec3_from_mat2x4_mat2x4_invalid_fs +KHR-GL45.shaders30.glsl_constructors.ivec3_from_mat3_vs +KHR-GL45.shaders30.glsl_constructors.ivec3_from_mat3_fs +KHR-GL45.shaders30.glsl_constructors.ivec3_from_mat3_mat3_invalid_vs +KHR-GL45.shaders30.glsl_constructors.ivec3_from_mat3_mat3_invalid_fs +KHR-GL45.shaders30.glsl_constructors.ivec3_from_mat3x2_vs +KHR-GL45.shaders30.glsl_constructors.ivec3_from_mat3x2_fs +KHR-GL45.shaders30.glsl_constructors.ivec3_from_mat3x2_mat3x2_invalid_vs +KHR-GL45.shaders30.glsl_constructors.ivec3_from_mat3x2_mat3x2_invalid_fs +KHR-GL45.shaders30.glsl_constructors.ivec3_from_mat3x4_vs +KHR-GL45.shaders30.glsl_constructors.ivec3_from_mat3x4_fs +KHR-GL45.shaders30.glsl_constructors.ivec3_from_mat3x4_mat3x4_invalid_vs +KHR-GL45.shaders30.glsl_constructors.ivec3_from_mat3x4_mat3x4_invalid_fs +KHR-GL45.shaders30.glsl_constructors.ivec3_from_mat4_vs +KHR-GL45.shaders30.glsl_constructors.ivec3_from_mat4_fs +KHR-GL45.shaders30.glsl_constructors.ivec3_from_mat4_mat4_invalid_vs +KHR-GL45.shaders30.glsl_constructors.ivec3_from_mat4_mat4_invalid_fs +KHR-GL45.shaders30.glsl_constructors.ivec3_from_mat4x2_vs +KHR-GL45.shaders30.glsl_constructors.ivec3_from_mat4x2_fs +KHR-GL45.shaders30.glsl_constructors.ivec3_from_mat4x2_mat4x2_invalid_vs +KHR-GL45.shaders30.glsl_constructors.ivec3_from_mat4x2_mat4x2_invalid_fs +KHR-GL45.shaders30.glsl_constructors.ivec3_from_mat4x3_vs +KHR-GL45.shaders30.glsl_constructors.ivec3_from_mat4x3_fs +KHR-GL45.shaders30.glsl_constructors.ivec3_from_mat4x3_mat4x3_invalid_vs +KHR-GL45.shaders30.glsl_constructors.ivec3_from_mat4x3_mat4x3_invalid_fs +KHR-GL45.shaders30.glsl_constructors.ivec3_from_int_mat2_vs +KHR-GL45.shaders30.glsl_constructors.ivec3_from_int_mat2_fs +KHR-GL45.shaders30.glsl_constructors.ivec3_from_int_mat2_int_invalid_vs +KHR-GL45.shaders30.glsl_constructors.ivec3_from_int_mat2_int_invalid_fs +KHR-GL45.shaders30.glsl_constructors.ivec3_from_int_mat2x3_vs +KHR-GL45.shaders30.glsl_constructors.ivec3_from_int_mat2x3_fs +KHR-GL45.shaders30.glsl_constructors.ivec3_from_int_mat2x3_int_invalid_vs +KHR-GL45.shaders30.glsl_constructors.ivec3_from_int_mat2x3_int_invalid_fs +KHR-GL45.shaders30.glsl_constructors.ivec3_from_int_mat2x4_vs +KHR-GL45.shaders30.glsl_constructors.ivec3_from_int_mat2x4_fs +KHR-GL45.shaders30.glsl_constructors.ivec3_from_int_mat2x4_int_invalid_vs +KHR-GL45.shaders30.glsl_constructors.ivec3_from_int_mat2x4_int_invalid_fs +KHR-GL45.shaders30.glsl_constructors.ivec3_from_int_mat3_vs +KHR-GL45.shaders30.glsl_constructors.ivec3_from_int_mat3_fs +KHR-GL45.shaders30.glsl_constructors.ivec3_from_int_mat3_int_invalid_vs +KHR-GL45.shaders30.glsl_constructors.ivec3_from_int_mat3_int_invalid_fs +KHR-GL45.shaders30.glsl_constructors.ivec3_from_int_mat3x2_vs +KHR-GL45.shaders30.glsl_constructors.ivec3_from_int_mat3x2_fs +KHR-GL45.shaders30.glsl_constructors.ivec3_from_int_mat3x2_int_invalid_vs +KHR-GL45.shaders30.glsl_constructors.ivec3_from_int_mat3x2_int_invalid_fs +KHR-GL45.shaders30.glsl_constructors.ivec3_from_int_mat3x4_vs +KHR-GL45.shaders30.glsl_constructors.ivec3_from_int_mat3x4_fs +KHR-GL45.shaders30.glsl_constructors.ivec3_from_int_mat3x4_int_invalid_vs +KHR-GL45.shaders30.glsl_constructors.ivec3_from_int_mat3x4_int_invalid_fs +KHR-GL45.shaders30.glsl_constructors.ivec3_from_int_mat4_vs +KHR-GL45.shaders30.glsl_constructors.ivec3_from_int_mat4_fs +KHR-GL45.shaders30.glsl_constructors.ivec3_from_int_mat4_int_invalid_vs +KHR-GL45.shaders30.glsl_constructors.ivec3_from_int_mat4_int_invalid_fs +KHR-GL45.shaders30.glsl_constructors.ivec3_from_int_mat4x2_vs +KHR-GL45.shaders30.glsl_constructors.ivec3_from_int_mat4x2_fs +KHR-GL45.shaders30.glsl_constructors.ivec3_from_int_mat4x2_int_invalid_vs +KHR-GL45.shaders30.glsl_constructors.ivec3_from_int_mat4x2_int_invalid_fs +KHR-GL45.shaders30.glsl_constructors.ivec3_from_int_mat4x3_vs +KHR-GL45.shaders30.glsl_constructors.ivec3_from_int_mat4x3_fs +KHR-GL45.shaders30.glsl_constructors.ivec3_from_int_mat4x3_int_invalid_vs +KHR-GL45.shaders30.glsl_constructors.ivec3_from_int_mat4x3_int_invalid_fs +KHR-GL45.shaders30.glsl_constructors.ivec4_from_mat2_vs +KHR-GL45.shaders30.glsl_constructors.ivec4_from_mat2_fs +KHR-GL45.shaders30.glsl_constructors.ivec4_from_mat2_mat2_invalid_vs +KHR-GL45.shaders30.glsl_constructors.ivec4_from_mat2_mat2_invalid_fs +KHR-GL45.shaders30.glsl_constructors.ivec4_from_mat2x3_vs +KHR-GL45.shaders30.glsl_constructors.ivec4_from_mat2x3_fs +KHR-GL45.shaders30.glsl_constructors.ivec4_from_mat2x3_mat2x3_invalid_vs +KHR-GL45.shaders30.glsl_constructors.ivec4_from_mat2x3_mat2x3_invalid_fs +KHR-GL45.shaders30.glsl_constructors.ivec4_from_mat2x4_vs +KHR-GL45.shaders30.glsl_constructors.ivec4_from_mat2x4_fs +KHR-GL45.shaders30.glsl_constructors.ivec4_from_mat2x4_mat2x4_invalid_vs +KHR-GL45.shaders30.glsl_constructors.ivec4_from_mat2x4_mat2x4_invalid_fs +KHR-GL45.shaders30.glsl_constructors.ivec4_from_mat3_vs +KHR-GL45.shaders30.glsl_constructors.ivec4_from_mat3_fs +KHR-GL45.shaders30.glsl_constructors.ivec4_from_mat3_mat3_invalid_vs +KHR-GL45.shaders30.glsl_constructors.ivec4_from_mat3_mat3_invalid_fs +KHR-GL45.shaders30.glsl_constructors.ivec4_from_mat3x2_vs +KHR-GL45.shaders30.glsl_constructors.ivec4_from_mat3x2_fs +KHR-GL45.shaders30.glsl_constructors.ivec4_from_mat3x2_mat3x2_invalid_vs +KHR-GL45.shaders30.glsl_constructors.ivec4_from_mat3x2_mat3x2_invalid_fs +KHR-GL45.shaders30.glsl_constructors.ivec4_from_mat3x4_vs +KHR-GL45.shaders30.glsl_constructors.ivec4_from_mat3x4_fs +KHR-GL45.shaders30.glsl_constructors.ivec4_from_mat3x4_mat3x4_invalid_vs +KHR-GL45.shaders30.glsl_constructors.ivec4_from_mat3x4_mat3x4_invalid_fs +KHR-GL45.shaders30.glsl_constructors.ivec4_from_mat4_vs +KHR-GL45.shaders30.glsl_constructors.ivec4_from_mat4_fs +KHR-GL45.shaders30.glsl_constructors.ivec4_from_mat4_mat4_invalid_vs +KHR-GL45.shaders30.glsl_constructors.ivec4_from_mat4_mat4_invalid_fs +KHR-GL45.shaders30.glsl_constructors.ivec4_from_mat4x2_vs +KHR-GL45.shaders30.glsl_constructors.ivec4_from_mat4x2_fs +KHR-GL45.shaders30.glsl_constructors.ivec4_from_mat4x2_mat4x2_invalid_vs +KHR-GL45.shaders30.glsl_constructors.ivec4_from_mat4x2_mat4x2_invalid_fs +KHR-GL45.shaders30.glsl_constructors.ivec4_from_mat4x3_vs +KHR-GL45.shaders30.glsl_constructors.ivec4_from_mat4x3_fs +KHR-GL45.shaders30.glsl_constructors.ivec4_from_mat4x3_mat4x3_invalid_vs +KHR-GL45.shaders30.glsl_constructors.ivec4_from_mat4x3_mat4x3_invalid_fs +KHR-GL45.shaders30.glsl_constructors.ivec4_from_int_mat2_vs +KHR-GL45.shaders30.glsl_constructors.ivec4_from_int_mat2_fs +KHR-GL45.shaders30.glsl_constructors.ivec4_from_int_mat2_int_invalid_vs +KHR-GL45.shaders30.glsl_constructors.ivec4_from_int_mat2_int_invalid_fs +KHR-GL45.shaders30.glsl_constructors.ivec4_from_int_mat2x3_vs +KHR-GL45.shaders30.glsl_constructors.ivec4_from_int_mat2x3_fs +KHR-GL45.shaders30.glsl_constructors.ivec4_from_int_mat2x3_int_invalid_vs +KHR-GL45.shaders30.glsl_constructors.ivec4_from_int_mat2x3_int_invalid_fs +KHR-GL45.shaders30.glsl_constructors.ivec4_from_int_mat2x4_vs +KHR-GL45.shaders30.glsl_constructors.ivec4_from_int_mat2x4_fs +KHR-GL45.shaders30.glsl_constructors.ivec4_from_int_mat2x4_int_invalid_vs +KHR-GL45.shaders30.glsl_constructors.ivec4_from_int_mat2x4_int_invalid_fs +KHR-GL45.shaders30.glsl_constructors.ivec4_from_int_mat3_vs +KHR-GL45.shaders30.glsl_constructors.ivec4_from_int_mat3_fs +KHR-GL45.shaders30.glsl_constructors.ivec4_from_int_mat3_int_invalid_vs +KHR-GL45.shaders30.glsl_constructors.ivec4_from_int_mat3_int_invalid_fs +KHR-GL45.shaders30.glsl_constructors.ivec4_from_int_mat3x2_vs +KHR-GL45.shaders30.glsl_constructors.ivec4_from_int_mat3x2_fs +KHR-GL45.shaders30.glsl_constructors.ivec4_from_int_mat3x2_int_invalid_vs +KHR-GL45.shaders30.glsl_constructors.ivec4_from_int_mat3x2_int_invalid_fs +KHR-GL45.shaders30.glsl_constructors.ivec4_from_int_mat3x4_vs +KHR-GL45.shaders30.glsl_constructors.ivec4_from_int_mat3x4_fs +KHR-GL45.shaders30.glsl_constructors.ivec4_from_int_mat3x4_int_invalid_vs +KHR-GL45.shaders30.glsl_constructors.ivec4_from_int_mat3x4_int_invalid_fs +KHR-GL45.shaders30.glsl_constructors.ivec4_from_int_mat4_vs +KHR-GL45.shaders30.glsl_constructors.ivec4_from_int_mat4_fs +KHR-GL45.shaders30.glsl_constructors.ivec4_from_int_mat4_int_invalid_vs +KHR-GL45.shaders30.glsl_constructors.ivec4_from_int_mat4_int_invalid_fs +KHR-GL45.shaders30.glsl_constructors.ivec4_from_int_mat4x2_vs +KHR-GL45.shaders30.glsl_constructors.ivec4_from_int_mat4x2_fs +KHR-GL45.shaders30.glsl_constructors.ivec4_from_int_mat4x2_int_invalid_vs +KHR-GL45.shaders30.glsl_constructors.ivec4_from_int_mat4x2_int_invalid_fs +KHR-GL45.shaders30.glsl_constructors.ivec4_from_int_mat4x3_vs +KHR-GL45.shaders30.glsl_constructors.ivec4_from_int_mat4x3_fs +KHR-GL45.shaders30.glsl_constructors.ivec4_from_int_mat4x3_int_invalid_vs +KHR-GL45.shaders30.glsl_constructors.ivec4_from_int_mat4x3_int_invalid_fs +KHR-GL45.shaders30.glsl_constructors.bvec2_from_mat2_vs +KHR-GL45.shaders30.glsl_constructors.bvec2_from_mat2_fs +KHR-GL45.shaders30.glsl_constructors.bvec2_from_mat2_mat2_invalid_vs +KHR-GL45.shaders30.glsl_constructors.bvec2_from_mat2_mat2_invalid_fs +KHR-GL45.shaders30.glsl_constructors.bvec2_from_mat2x3_vs +KHR-GL45.shaders30.glsl_constructors.bvec2_from_mat2x3_fs +KHR-GL45.shaders30.glsl_constructors.bvec2_from_mat2x3_mat2x3_invalid_vs +KHR-GL45.shaders30.glsl_constructors.bvec2_from_mat2x3_mat2x3_invalid_fs +KHR-GL45.shaders30.glsl_constructors.bvec2_from_mat2x4_vs +KHR-GL45.shaders30.glsl_constructors.bvec2_from_mat2x4_fs +KHR-GL45.shaders30.glsl_constructors.bvec2_from_mat2x4_mat2x4_invalid_vs +KHR-GL45.shaders30.glsl_constructors.bvec2_from_mat2x4_mat2x4_invalid_fs +KHR-GL45.shaders30.glsl_constructors.bvec2_from_mat3_vs +KHR-GL45.shaders30.glsl_constructors.bvec2_from_mat3_fs +KHR-GL45.shaders30.glsl_constructors.bvec2_from_mat3_mat3_invalid_vs +KHR-GL45.shaders30.glsl_constructors.bvec2_from_mat3_mat3_invalid_fs +KHR-GL45.shaders30.glsl_constructors.bvec2_from_mat3x2_vs +KHR-GL45.shaders30.glsl_constructors.bvec2_from_mat3x2_fs +KHR-GL45.shaders30.glsl_constructors.bvec2_from_mat3x2_mat3x2_invalid_vs +KHR-GL45.shaders30.glsl_constructors.bvec2_from_mat3x2_mat3x2_invalid_fs +KHR-GL45.shaders30.glsl_constructors.bvec2_from_mat3x4_vs +KHR-GL45.shaders30.glsl_constructors.bvec2_from_mat3x4_fs +KHR-GL45.shaders30.glsl_constructors.bvec2_from_mat3x4_mat3x4_invalid_vs +KHR-GL45.shaders30.glsl_constructors.bvec2_from_mat3x4_mat3x4_invalid_fs +KHR-GL45.shaders30.glsl_constructors.bvec2_from_mat4_vs +KHR-GL45.shaders30.glsl_constructors.bvec2_from_mat4_fs +KHR-GL45.shaders30.glsl_constructors.bvec2_from_mat4_mat4_invalid_vs +KHR-GL45.shaders30.glsl_constructors.bvec2_from_mat4_mat4_invalid_fs +KHR-GL45.shaders30.glsl_constructors.bvec2_from_mat4x2_vs +KHR-GL45.shaders30.glsl_constructors.bvec2_from_mat4x2_fs +KHR-GL45.shaders30.glsl_constructors.bvec2_from_mat4x2_mat4x2_invalid_vs +KHR-GL45.shaders30.glsl_constructors.bvec2_from_mat4x2_mat4x2_invalid_fs +KHR-GL45.shaders30.glsl_constructors.bvec2_from_mat4x3_vs +KHR-GL45.shaders30.glsl_constructors.bvec2_from_mat4x3_fs +KHR-GL45.shaders30.glsl_constructors.bvec2_from_mat4x3_mat4x3_invalid_vs +KHR-GL45.shaders30.glsl_constructors.bvec2_from_mat4x3_mat4x3_invalid_fs +KHR-GL45.shaders30.glsl_constructors.bvec2_from_bool_mat2_vs +KHR-GL45.shaders30.glsl_constructors.bvec2_from_bool_mat2_fs +KHR-GL45.shaders30.glsl_constructors.bvec2_from_bool_mat2_bool_invalid_vs +KHR-GL45.shaders30.glsl_constructors.bvec2_from_bool_mat2_bool_invalid_fs +KHR-GL45.shaders30.glsl_constructors.bvec2_from_bool_mat2x3_vs +KHR-GL45.shaders30.glsl_constructors.bvec2_from_bool_mat2x3_fs +KHR-GL45.shaders30.glsl_constructors.bvec2_from_bool_mat2x3_bool_invalid_vs +KHR-GL45.shaders30.glsl_constructors.bvec2_from_bool_mat2x3_bool_invalid_fs +KHR-GL45.shaders30.glsl_constructors.bvec2_from_bool_mat2x4_vs +KHR-GL45.shaders30.glsl_constructors.bvec2_from_bool_mat2x4_fs +KHR-GL45.shaders30.glsl_constructors.bvec2_from_bool_mat2x4_bool_invalid_vs +KHR-GL45.shaders30.glsl_constructors.bvec2_from_bool_mat2x4_bool_invalid_fs +KHR-GL45.shaders30.glsl_constructors.bvec2_from_bool_mat3_vs +KHR-GL45.shaders30.glsl_constructors.bvec2_from_bool_mat3_fs +KHR-GL45.shaders30.glsl_constructors.bvec2_from_bool_mat3_bool_invalid_vs +KHR-GL45.shaders30.glsl_constructors.bvec2_from_bool_mat3_bool_invalid_fs +KHR-GL45.shaders30.glsl_constructors.bvec2_from_bool_mat3x2_vs +KHR-GL45.shaders30.glsl_constructors.bvec2_from_bool_mat3x2_fs +KHR-GL45.shaders30.glsl_constructors.bvec2_from_bool_mat3x2_bool_invalid_vs +KHR-GL45.shaders30.glsl_constructors.bvec2_from_bool_mat3x2_bool_invalid_fs +KHR-GL45.shaders30.glsl_constructors.bvec2_from_bool_mat3x4_vs +KHR-GL45.shaders30.glsl_constructors.bvec2_from_bool_mat3x4_fs +KHR-GL45.shaders30.glsl_constructors.bvec2_from_bool_mat3x4_bool_invalid_vs +KHR-GL45.shaders30.glsl_constructors.bvec2_from_bool_mat3x4_bool_invalid_fs +KHR-GL45.shaders30.glsl_constructors.bvec2_from_bool_mat4_vs +KHR-GL45.shaders30.glsl_constructors.bvec2_from_bool_mat4_fs +KHR-GL45.shaders30.glsl_constructors.bvec2_from_bool_mat4_bool_invalid_vs +KHR-GL45.shaders30.glsl_constructors.bvec2_from_bool_mat4_bool_invalid_fs +KHR-GL45.shaders30.glsl_constructors.bvec2_from_bool_mat4x2_vs +KHR-GL45.shaders30.glsl_constructors.bvec2_from_bool_mat4x2_fs +KHR-GL45.shaders30.glsl_constructors.bvec2_from_bool_mat4x2_bool_invalid_vs +KHR-GL45.shaders30.glsl_constructors.bvec2_from_bool_mat4x2_bool_invalid_fs +KHR-GL45.shaders30.glsl_constructors.bvec2_from_bool_mat4x3_vs +KHR-GL45.shaders30.glsl_constructors.bvec2_from_bool_mat4x3_fs +KHR-GL45.shaders30.glsl_constructors.bvec2_from_bool_mat4x3_bool_invalid_vs +KHR-GL45.shaders30.glsl_constructors.bvec2_from_bool_mat4x3_bool_invalid_fs +KHR-GL45.shaders30.glsl_constructors.bvec3_from_mat2_vs +KHR-GL45.shaders30.glsl_constructors.bvec3_from_mat2_fs +KHR-GL45.shaders30.glsl_constructors.bvec3_from_mat2_mat2_invalid_vs +KHR-GL45.shaders30.glsl_constructors.bvec3_from_mat2_mat2_invalid_fs +KHR-GL45.shaders30.glsl_constructors.bvec3_from_mat2x3_vs +KHR-GL45.shaders30.glsl_constructors.bvec3_from_mat2x3_fs +KHR-GL45.shaders30.glsl_constructors.bvec3_from_mat2x3_mat2x3_invalid_vs +KHR-GL45.shaders30.glsl_constructors.bvec3_from_mat2x3_mat2x3_invalid_fs +KHR-GL45.shaders30.glsl_constructors.bvec3_from_mat2x4_vs +KHR-GL45.shaders30.glsl_constructors.bvec3_from_mat2x4_fs +KHR-GL45.shaders30.glsl_constructors.bvec3_from_mat2x4_mat2x4_invalid_vs +KHR-GL45.shaders30.glsl_constructors.bvec3_from_mat2x4_mat2x4_invalid_fs +KHR-GL45.shaders30.glsl_constructors.bvec3_from_mat3_vs +KHR-GL45.shaders30.glsl_constructors.bvec3_from_mat3_fs +KHR-GL45.shaders30.glsl_constructors.bvec3_from_mat3_mat3_invalid_vs +KHR-GL45.shaders30.glsl_constructors.bvec3_from_mat3_mat3_invalid_fs +KHR-GL45.shaders30.glsl_constructors.bvec3_from_mat3x2_vs +KHR-GL45.shaders30.glsl_constructors.bvec3_from_mat3x2_fs +KHR-GL45.shaders30.glsl_constructors.bvec3_from_mat3x2_mat3x2_invalid_vs +KHR-GL45.shaders30.glsl_constructors.bvec3_from_mat3x2_mat3x2_invalid_fs +KHR-GL45.shaders30.glsl_constructors.bvec3_from_mat3x4_vs +KHR-GL45.shaders30.glsl_constructors.bvec3_from_mat3x4_fs +KHR-GL45.shaders30.glsl_constructors.bvec3_from_mat3x4_mat3x4_invalid_vs +KHR-GL45.shaders30.glsl_constructors.bvec3_from_mat3x4_mat3x4_invalid_fs +KHR-GL45.shaders30.glsl_constructors.bvec3_from_mat4_vs +KHR-GL45.shaders30.glsl_constructors.bvec3_from_mat4_fs +KHR-GL45.shaders30.glsl_constructors.bvec3_from_mat4_mat4_invalid_vs +KHR-GL45.shaders30.glsl_constructors.bvec3_from_mat4_mat4_invalid_fs +KHR-GL45.shaders30.glsl_constructors.bvec3_from_mat4x2_vs +KHR-GL45.shaders30.glsl_constructors.bvec3_from_mat4x2_fs +KHR-GL45.shaders30.glsl_constructors.bvec3_from_mat4x2_mat4x2_invalid_vs +KHR-GL45.shaders30.glsl_constructors.bvec3_from_mat4x2_mat4x2_invalid_fs +KHR-GL45.shaders30.glsl_constructors.bvec3_from_mat4x3_vs +KHR-GL45.shaders30.glsl_constructors.bvec3_from_mat4x3_fs +KHR-GL45.shaders30.glsl_constructors.bvec3_from_mat4x3_mat4x3_invalid_vs +KHR-GL45.shaders30.glsl_constructors.bvec3_from_mat4x3_mat4x3_invalid_fs +KHR-GL45.shaders30.glsl_constructors.bvec3_from_bool_mat2_vs +KHR-GL45.shaders30.glsl_constructors.bvec3_from_bool_mat2_fs +KHR-GL45.shaders30.glsl_constructors.bvec3_from_bool_mat2_bool_invalid_vs +KHR-GL45.shaders30.glsl_constructors.bvec3_from_bool_mat2_bool_invalid_fs +KHR-GL45.shaders30.glsl_constructors.bvec3_from_bool_mat2x3_vs +KHR-GL45.shaders30.glsl_constructors.bvec3_from_bool_mat2x3_fs +KHR-GL45.shaders30.glsl_constructors.bvec3_from_bool_mat2x3_bool_invalid_vs +KHR-GL45.shaders30.glsl_constructors.bvec3_from_bool_mat2x3_bool_invalid_fs +KHR-GL45.shaders30.glsl_constructors.bvec3_from_bool_mat2x4_vs +KHR-GL45.shaders30.glsl_constructors.bvec3_from_bool_mat2x4_fs +KHR-GL45.shaders30.glsl_constructors.bvec3_from_bool_mat2x4_bool_invalid_vs +KHR-GL45.shaders30.glsl_constructors.bvec3_from_bool_mat2x4_bool_invalid_fs +KHR-GL45.shaders30.glsl_constructors.bvec3_from_bool_mat3_vs +KHR-GL45.shaders30.glsl_constructors.bvec3_from_bool_mat3_fs +KHR-GL45.shaders30.glsl_constructors.bvec3_from_bool_mat3_bool_invalid_vs +KHR-GL45.shaders30.glsl_constructors.bvec3_from_bool_mat3_bool_invalid_fs +KHR-GL45.shaders30.glsl_constructors.bvec3_from_bool_mat3x2_vs +KHR-GL45.shaders30.glsl_constructors.bvec3_from_bool_mat3x2_fs +KHR-GL45.shaders30.glsl_constructors.bvec3_from_bool_mat3x2_bool_invalid_vs +KHR-GL45.shaders30.glsl_constructors.bvec3_from_bool_mat3x2_bool_invalid_fs +KHR-GL45.shaders30.glsl_constructors.bvec3_from_bool_mat3x4_vs +KHR-GL45.shaders30.glsl_constructors.bvec3_from_bool_mat3x4_fs +KHR-GL45.shaders30.glsl_constructors.bvec3_from_bool_mat3x4_bool_invalid_vs +KHR-GL45.shaders30.glsl_constructors.bvec3_from_bool_mat3x4_bool_invalid_fs +KHR-GL45.shaders30.glsl_constructors.bvec3_from_bool_mat4_vs +KHR-GL45.shaders30.glsl_constructors.bvec3_from_bool_mat4_fs +KHR-GL45.shaders30.glsl_constructors.bvec3_from_bool_mat4_bool_invalid_vs +KHR-GL45.shaders30.glsl_constructors.bvec3_from_bool_mat4_bool_invalid_fs +KHR-GL45.shaders30.glsl_constructors.bvec3_from_bool_mat4x2_vs +KHR-GL45.shaders30.glsl_constructors.bvec3_from_bool_mat4x2_fs +KHR-GL45.shaders30.glsl_constructors.bvec3_from_bool_mat4x2_bool_invalid_vs +KHR-GL45.shaders30.glsl_constructors.bvec3_from_bool_mat4x2_bool_invalid_fs +KHR-GL45.shaders30.glsl_constructors.bvec3_from_bool_mat4x3_vs +KHR-GL45.shaders30.glsl_constructors.bvec3_from_bool_mat4x3_fs +KHR-GL45.shaders30.glsl_constructors.bvec3_from_bool_mat4x3_bool_invalid_vs +KHR-GL45.shaders30.glsl_constructors.bvec3_from_bool_mat4x3_bool_invalid_fs +KHR-GL45.shaders30.glsl_constructors.bvec4_from_mat2_vs +KHR-GL45.shaders30.glsl_constructors.bvec4_from_mat2_fs +KHR-GL45.shaders30.glsl_constructors.bvec4_from_mat2_mat2_invalid_vs +KHR-GL45.shaders30.glsl_constructors.bvec4_from_mat2_mat2_invalid_fs +KHR-GL45.shaders30.glsl_constructors.bvec4_from_mat2x3_vs +KHR-GL45.shaders30.glsl_constructors.bvec4_from_mat2x3_fs +KHR-GL45.shaders30.glsl_constructors.bvec4_from_mat2x3_mat2x3_invalid_vs +KHR-GL45.shaders30.glsl_constructors.bvec4_from_mat2x3_mat2x3_invalid_fs +KHR-GL45.shaders30.glsl_constructors.bvec4_from_mat2x4_vs +KHR-GL45.shaders30.glsl_constructors.bvec4_from_mat2x4_fs +KHR-GL45.shaders30.glsl_constructors.bvec4_from_mat2x4_mat2x4_invalid_vs +KHR-GL45.shaders30.glsl_constructors.bvec4_from_mat2x4_mat2x4_invalid_fs +KHR-GL45.shaders30.glsl_constructors.bvec4_from_mat3_vs +KHR-GL45.shaders30.glsl_constructors.bvec4_from_mat3_fs +KHR-GL45.shaders30.glsl_constructors.bvec4_from_mat3_mat3_invalid_vs +KHR-GL45.shaders30.glsl_constructors.bvec4_from_mat3_mat3_invalid_fs +KHR-GL45.shaders30.glsl_constructors.bvec4_from_mat3x2_vs +KHR-GL45.shaders30.glsl_constructors.bvec4_from_mat3x2_fs +KHR-GL45.shaders30.glsl_constructors.bvec4_from_mat3x2_mat3x2_invalid_vs +KHR-GL45.shaders30.glsl_constructors.bvec4_from_mat3x2_mat3x2_invalid_fs +KHR-GL45.shaders30.glsl_constructors.bvec4_from_mat3x4_vs +KHR-GL45.shaders30.glsl_constructors.bvec4_from_mat3x4_fs +KHR-GL45.shaders30.glsl_constructors.bvec4_from_mat3x4_mat3x4_invalid_vs +KHR-GL45.shaders30.glsl_constructors.bvec4_from_mat3x4_mat3x4_invalid_fs +KHR-GL45.shaders30.glsl_constructors.bvec4_from_mat4_vs +KHR-GL45.shaders30.glsl_constructors.bvec4_from_mat4_fs +KHR-GL45.shaders30.glsl_constructors.bvec4_from_mat4_mat4_invalid_vs +KHR-GL45.shaders30.glsl_constructors.bvec4_from_mat4_mat4_invalid_fs +KHR-GL45.shaders30.glsl_constructors.bvec4_from_mat4x2_vs +KHR-GL45.shaders30.glsl_constructors.bvec4_from_mat4x2_fs +KHR-GL45.shaders30.glsl_constructors.bvec4_from_mat4x2_mat4x2_invalid_vs +KHR-GL45.shaders30.glsl_constructors.bvec4_from_mat4x2_mat4x2_invalid_fs +KHR-GL45.shaders30.glsl_constructors.bvec4_from_mat4x3_vs +KHR-GL45.shaders30.glsl_constructors.bvec4_from_mat4x3_fs +KHR-GL45.shaders30.glsl_constructors.bvec4_from_mat4x3_mat4x3_invalid_vs +KHR-GL45.shaders30.glsl_constructors.bvec4_from_mat4x3_mat4x3_invalid_fs +KHR-GL45.shaders30.glsl_constructors.bvec4_from_bool_mat2_vs +KHR-GL45.shaders30.glsl_constructors.bvec4_from_bool_mat2_fs +KHR-GL45.shaders30.glsl_constructors.bvec4_from_bool_mat2_bool_invalid_vs +KHR-GL45.shaders30.glsl_constructors.bvec4_from_bool_mat2_bool_invalid_fs +KHR-GL45.shaders30.glsl_constructors.bvec4_from_bool_mat2x3_vs +KHR-GL45.shaders30.glsl_constructors.bvec4_from_bool_mat2x3_fs +KHR-GL45.shaders30.glsl_constructors.bvec4_from_bool_mat2x3_bool_invalid_vs +KHR-GL45.shaders30.glsl_constructors.bvec4_from_bool_mat2x3_bool_invalid_fs +KHR-GL45.shaders30.glsl_constructors.bvec4_from_bool_mat2x4_vs +KHR-GL45.shaders30.glsl_constructors.bvec4_from_bool_mat2x4_fs +KHR-GL45.shaders30.glsl_constructors.bvec4_from_bool_mat2x4_bool_invalid_vs +KHR-GL45.shaders30.glsl_constructors.bvec4_from_bool_mat2x4_bool_invalid_fs +KHR-GL45.shaders30.glsl_constructors.bvec4_from_bool_mat3_vs +KHR-GL45.shaders30.glsl_constructors.bvec4_from_bool_mat3_fs +KHR-GL45.shaders30.glsl_constructors.bvec4_from_bool_mat3_bool_invalid_vs +KHR-GL45.shaders30.glsl_constructors.bvec4_from_bool_mat3_bool_invalid_fs +KHR-GL45.shaders30.glsl_constructors.bvec4_from_bool_mat3x2_vs +KHR-GL45.shaders30.glsl_constructors.bvec4_from_bool_mat3x2_fs +KHR-GL45.shaders30.glsl_constructors.bvec4_from_bool_mat3x2_bool_invalid_vs +KHR-GL45.shaders30.glsl_constructors.bvec4_from_bool_mat3x2_bool_invalid_fs +KHR-GL45.shaders30.glsl_constructors.bvec4_from_bool_mat3x4_vs +KHR-GL45.shaders30.glsl_constructors.bvec4_from_bool_mat3x4_fs +KHR-GL45.shaders30.glsl_constructors.bvec4_from_bool_mat3x4_bool_invalid_vs +KHR-GL45.shaders30.glsl_constructors.bvec4_from_bool_mat3x4_bool_invalid_fs +KHR-GL45.shaders30.glsl_constructors.bvec4_from_bool_mat4_vs +KHR-GL45.shaders30.glsl_constructors.bvec4_from_bool_mat4_fs +KHR-GL45.shaders30.glsl_constructors.bvec4_from_bool_mat4_bool_invalid_vs +KHR-GL45.shaders30.glsl_constructors.bvec4_from_bool_mat4_bool_invalid_fs +KHR-GL45.shaders30.glsl_constructors.bvec4_from_bool_mat4x2_vs +KHR-GL45.shaders30.glsl_constructors.bvec4_from_bool_mat4x2_fs +KHR-GL45.shaders30.glsl_constructors.bvec4_from_bool_mat4x2_bool_invalid_vs +KHR-GL45.shaders30.glsl_constructors.bvec4_from_bool_mat4x2_bool_invalid_fs +KHR-GL45.shaders30.glsl_constructors.bvec4_from_bool_mat4x3_vs +KHR-GL45.shaders30.glsl_constructors.bvec4_from_bool_mat4x3_fs +KHR-GL45.shaders30.glsl_constructors.bvec4_from_bool_mat4x3_bool_invalid_vs +KHR-GL45.shaders30.glsl_constructors.bvec4_from_bool_mat4x3_bool_invalid_fs KHR-GL45.ext_texture_shadow_lod.texture.sampler2darrayshadow_fragment KHR-GL45.ext_texture_shadow_lod.texture.sampler2darrayshadow_bias_fragment KHR-GL45.ext_texture_shadow_lod.texture.samplercubearrayshadow_vertex diff --git a/external/openglcts/data/mustpass/gl/khronos_mustpass/4.6.1.x/gl46-master.txt b/external/openglcts/data/mustpass/gl/khronos_mustpass/4.6.1.x/gl46-master.txt index d543bb5..3cb57bd 100644 --- a/external/openglcts/data/mustpass/gl/khronos_mustpass/4.6.1.x/gl46-master.txt +++ b/external/openglcts/data/mustpass/gl/khronos_mustpass/4.6.1.x/gl46-master.txt @@ -192,6 +192,654 @@ KHR-GL46.texture_repeat_mode.depth24_stencil8_11x131_2_repeat KHR-GL46.texture_repeat_mode.depth24_stencil8_11x131_2_mirrored_repeat KHR-GL46.shaders30.declarations.declarations.redeclare_gl_FragColor KHR-GL46.shaders30.declarations.declarations.redeclare_gl_FragData +KHR-GL46.shaders30.glsl_constructors.vec2_from_mat2_vs +KHR-GL46.shaders30.glsl_constructors.vec2_from_mat2_fs +KHR-GL46.shaders30.glsl_constructors.vec2_from_mat2_mat2_invalid_vs +KHR-GL46.shaders30.glsl_constructors.vec2_from_mat2_mat2_invalid_fs +KHR-GL46.shaders30.glsl_constructors.vec2_from_mat2x3_vs +KHR-GL46.shaders30.glsl_constructors.vec2_from_mat2x3_fs +KHR-GL46.shaders30.glsl_constructors.vec2_from_mat2x3_mat2x3_invalid_vs +KHR-GL46.shaders30.glsl_constructors.vec2_from_mat2x3_mat2x3_invalid_fs +KHR-GL46.shaders30.glsl_constructors.vec2_from_mat2x4_vs +KHR-GL46.shaders30.glsl_constructors.vec2_from_mat2x4_fs +KHR-GL46.shaders30.glsl_constructors.vec2_from_mat2x4_mat2x4_invalid_vs +KHR-GL46.shaders30.glsl_constructors.vec2_from_mat2x4_mat2x4_invalid_fs +KHR-GL46.shaders30.glsl_constructors.vec2_from_mat3_vs +KHR-GL46.shaders30.glsl_constructors.vec2_from_mat3_fs +KHR-GL46.shaders30.glsl_constructors.vec2_from_mat3_mat3_invalid_vs +KHR-GL46.shaders30.glsl_constructors.vec2_from_mat3_mat3_invalid_fs +KHR-GL46.shaders30.glsl_constructors.vec2_from_mat3x2_vs +KHR-GL46.shaders30.glsl_constructors.vec2_from_mat3x2_fs +KHR-GL46.shaders30.glsl_constructors.vec2_from_mat3x2_mat3x2_invalid_vs +KHR-GL46.shaders30.glsl_constructors.vec2_from_mat3x2_mat3x2_invalid_fs +KHR-GL46.shaders30.glsl_constructors.vec2_from_mat3x4_vs +KHR-GL46.shaders30.glsl_constructors.vec2_from_mat3x4_fs +KHR-GL46.shaders30.glsl_constructors.vec2_from_mat3x4_mat3x4_invalid_vs +KHR-GL46.shaders30.glsl_constructors.vec2_from_mat3x4_mat3x4_invalid_fs +KHR-GL46.shaders30.glsl_constructors.vec2_from_mat4_vs +KHR-GL46.shaders30.glsl_constructors.vec2_from_mat4_fs +KHR-GL46.shaders30.glsl_constructors.vec2_from_mat4_mat4_invalid_vs +KHR-GL46.shaders30.glsl_constructors.vec2_from_mat4_mat4_invalid_fs +KHR-GL46.shaders30.glsl_constructors.vec2_from_mat4x2_vs +KHR-GL46.shaders30.glsl_constructors.vec2_from_mat4x2_fs +KHR-GL46.shaders30.glsl_constructors.vec2_from_mat4x2_mat4x2_invalid_vs +KHR-GL46.shaders30.glsl_constructors.vec2_from_mat4x2_mat4x2_invalid_fs +KHR-GL46.shaders30.glsl_constructors.vec2_from_mat4x3_vs +KHR-GL46.shaders30.glsl_constructors.vec2_from_mat4x3_fs +KHR-GL46.shaders30.glsl_constructors.vec2_from_mat4x3_mat4x3_invalid_vs +KHR-GL46.shaders30.glsl_constructors.vec2_from_mat4x3_mat4x3_invalid_fs +KHR-GL46.shaders30.glsl_constructors.vec2_from_float_mat2_vs +KHR-GL46.shaders30.glsl_constructors.vec2_from_float_mat2_fs +KHR-GL46.shaders30.glsl_constructors.vec2_from_float_mat2_float_invalid_vs +KHR-GL46.shaders30.glsl_constructors.vec2_from_float_mat2_float_invalid_fs +KHR-GL46.shaders30.glsl_constructors.vec2_from_float_mat2x3_vs +KHR-GL46.shaders30.glsl_constructors.vec2_from_float_mat2x3_fs +KHR-GL46.shaders30.glsl_constructors.vec2_from_float_mat2x3_float_invalid_vs +KHR-GL46.shaders30.glsl_constructors.vec2_from_float_mat2x3_float_invalid_fs +KHR-GL46.shaders30.glsl_constructors.vec2_from_float_mat2x4_vs +KHR-GL46.shaders30.glsl_constructors.vec2_from_float_mat2x4_fs +KHR-GL46.shaders30.glsl_constructors.vec2_from_float_mat2x4_float_invalid_vs +KHR-GL46.shaders30.glsl_constructors.vec2_from_float_mat2x4_float_invalid_fs +KHR-GL46.shaders30.glsl_constructors.vec2_from_float_mat3_vs +KHR-GL46.shaders30.glsl_constructors.vec2_from_float_mat3_fs +KHR-GL46.shaders30.glsl_constructors.vec2_from_float_mat3_float_invalid_vs +KHR-GL46.shaders30.glsl_constructors.vec2_from_float_mat3_float_invalid_fs +KHR-GL46.shaders30.glsl_constructors.vec2_from_float_mat3x2_vs +KHR-GL46.shaders30.glsl_constructors.vec2_from_float_mat3x2_fs +KHR-GL46.shaders30.glsl_constructors.vec2_from_float_mat3x2_float_invalid_vs +KHR-GL46.shaders30.glsl_constructors.vec2_from_float_mat3x2_float_invalid_fs +KHR-GL46.shaders30.glsl_constructors.vec2_from_float_mat3x4_vs +KHR-GL46.shaders30.glsl_constructors.vec2_from_float_mat3x4_fs +KHR-GL46.shaders30.glsl_constructors.vec2_from_float_mat3x4_float_invalid_vs +KHR-GL46.shaders30.glsl_constructors.vec2_from_float_mat3x4_float_invalid_fs +KHR-GL46.shaders30.glsl_constructors.vec2_from_float_mat4_vs +KHR-GL46.shaders30.glsl_constructors.vec2_from_float_mat4_fs +KHR-GL46.shaders30.glsl_constructors.vec2_from_float_mat4_float_invalid_vs +KHR-GL46.shaders30.glsl_constructors.vec2_from_float_mat4_float_invalid_fs +KHR-GL46.shaders30.glsl_constructors.vec2_from_float_mat4x2_vs +KHR-GL46.shaders30.glsl_constructors.vec2_from_float_mat4x2_fs +KHR-GL46.shaders30.glsl_constructors.vec2_from_float_mat4x2_float_invalid_vs +KHR-GL46.shaders30.glsl_constructors.vec2_from_float_mat4x2_float_invalid_fs +KHR-GL46.shaders30.glsl_constructors.vec2_from_float_mat4x3_vs +KHR-GL46.shaders30.glsl_constructors.vec2_from_float_mat4x3_fs +KHR-GL46.shaders30.glsl_constructors.vec2_from_float_mat4x3_float_invalid_vs +KHR-GL46.shaders30.glsl_constructors.vec2_from_float_mat4x3_float_invalid_fs +KHR-GL46.shaders30.glsl_constructors.vec3_from_mat2_vs +KHR-GL46.shaders30.glsl_constructors.vec3_from_mat2_fs +KHR-GL46.shaders30.glsl_constructors.vec3_from_mat2_mat2_invalid_vs +KHR-GL46.shaders30.glsl_constructors.vec3_from_mat2_mat2_invalid_fs +KHR-GL46.shaders30.glsl_constructors.vec3_from_mat2x3_vs +KHR-GL46.shaders30.glsl_constructors.vec3_from_mat2x3_fs +KHR-GL46.shaders30.glsl_constructors.vec3_from_mat2x3_mat2x3_invalid_vs +KHR-GL46.shaders30.glsl_constructors.vec3_from_mat2x3_mat2x3_invalid_fs +KHR-GL46.shaders30.glsl_constructors.vec3_from_mat2x4_vs +KHR-GL46.shaders30.glsl_constructors.vec3_from_mat2x4_fs +KHR-GL46.shaders30.glsl_constructors.vec3_from_mat2x4_mat2x4_invalid_vs +KHR-GL46.shaders30.glsl_constructors.vec3_from_mat2x4_mat2x4_invalid_fs +KHR-GL46.shaders30.glsl_constructors.vec3_from_mat3_vs +KHR-GL46.shaders30.glsl_constructors.vec3_from_mat3_fs +KHR-GL46.shaders30.glsl_constructors.vec3_from_mat3_mat3_invalid_vs +KHR-GL46.shaders30.glsl_constructors.vec3_from_mat3_mat3_invalid_fs +KHR-GL46.shaders30.glsl_constructors.vec3_from_mat3x2_vs +KHR-GL46.shaders30.glsl_constructors.vec3_from_mat3x2_fs +KHR-GL46.shaders30.glsl_constructors.vec3_from_mat3x2_mat3x2_invalid_vs +KHR-GL46.shaders30.glsl_constructors.vec3_from_mat3x2_mat3x2_invalid_fs +KHR-GL46.shaders30.glsl_constructors.vec3_from_mat3x4_vs +KHR-GL46.shaders30.glsl_constructors.vec3_from_mat3x4_fs +KHR-GL46.shaders30.glsl_constructors.vec3_from_mat3x4_mat3x4_invalid_vs +KHR-GL46.shaders30.glsl_constructors.vec3_from_mat3x4_mat3x4_invalid_fs +KHR-GL46.shaders30.glsl_constructors.vec3_from_mat4_vs +KHR-GL46.shaders30.glsl_constructors.vec3_from_mat4_fs +KHR-GL46.shaders30.glsl_constructors.vec3_from_mat4_mat4_invalid_vs +KHR-GL46.shaders30.glsl_constructors.vec3_from_mat4_mat4_invalid_fs +KHR-GL46.shaders30.glsl_constructors.vec3_from_mat4x2_vs +KHR-GL46.shaders30.glsl_constructors.vec3_from_mat4x2_fs +KHR-GL46.shaders30.glsl_constructors.vec3_from_mat4x2_mat4x2_invalid_vs +KHR-GL46.shaders30.glsl_constructors.vec3_from_mat4x2_mat4x2_invalid_fs +KHR-GL46.shaders30.glsl_constructors.vec3_from_mat4x3_vs +KHR-GL46.shaders30.glsl_constructors.vec3_from_mat4x3_fs +KHR-GL46.shaders30.glsl_constructors.vec3_from_mat4x3_mat4x3_invalid_vs +KHR-GL46.shaders30.glsl_constructors.vec3_from_mat4x3_mat4x3_invalid_fs +KHR-GL46.shaders30.glsl_constructors.vec3_from_float_mat2_vs +KHR-GL46.shaders30.glsl_constructors.vec3_from_float_mat2_fs +KHR-GL46.shaders30.glsl_constructors.vec3_from_float_mat2_float_invalid_vs +KHR-GL46.shaders30.glsl_constructors.vec3_from_float_mat2_float_invalid_fs +KHR-GL46.shaders30.glsl_constructors.vec3_from_float_mat2x3_vs +KHR-GL46.shaders30.glsl_constructors.vec3_from_float_mat2x3_fs +KHR-GL46.shaders30.glsl_constructors.vec3_from_float_mat2x3_float_invalid_vs +KHR-GL46.shaders30.glsl_constructors.vec3_from_float_mat2x3_float_invalid_fs +KHR-GL46.shaders30.glsl_constructors.vec3_from_float_mat2x4_vs +KHR-GL46.shaders30.glsl_constructors.vec3_from_float_mat2x4_fs +KHR-GL46.shaders30.glsl_constructors.vec3_from_float_mat2x4_float_invalid_vs +KHR-GL46.shaders30.glsl_constructors.vec3_from_float_mat2x4_float_invalid_fs +KHR-GL46.shaders30.glsl_constructors.vec3_from_float_mat3_vs +KHR-GL46.shaders30.glsl_constructors.vec3_from_float_mat3_fs +KHR-GL46.shaders30.glsl_constructors.vec3_from_float_mat3_float_invalid_vs +KHR-GL46.shaders30.glsl_constructors.vec3_from_float_mat3_float_invalid_fs +KHR-GL46.shaders30.glsl_constructors.vec3_from_float_mat3x2_vs +KHR-GL46.shaders30.glsl_constructors.vec3_from_float_mat3x2_fs +KHR-GL46.shaders30.glsl_constructors.vec3_from_float_mat3x2_float_invalid_vs +KHR-GL46.shaders30.glsl_constructors.vec3_from_float_mat3x2_float_invalid_fs +KHR-GL46.shaders30.glsl_constructors.vec3_from_float_mat3x4_vs +KHR-GL46.shaders30.glsl_constructors.vec3_from_float_mat3x4_fs +KHR-GL46.shaders30.glsl_constructors.vec3_from_float_mat3x4_float_invalid_vs +KHR-GL46.shaders30.glsl_constructors.vec3_from_float_mat3x4_float_invalid_fs +KHR-GL46.shaders30.glsl_constructors.vec3_from_float_mat4_vs +KHR-GL46.shaders30.glsl_constructors.vec3_from_float_mat4_fs +KHR-GL46.shaders30.glsl_constructors.vec3_from_float_mat4_float_invalid_vs +KHR-GL46.shaders30.glsl_constructors.vec3_from_float_mat4_float_invalid_fs +KHR-GL46.shaders30.glsl_constructors.vec3_from_float_mat4x2_vs +KHR-GL46.shaders30.glsl_constructors.vec3_from_float_mat4x2_fs +KHR-GL46.shaders30.glsl_constructors.vec3_from_float_mat4x2_float_invalid_vs +KHR-GL46.shaders30.glsl_constructors.vec3_from_float_mat4x2_float_invalid_fs +KHR-GL46.shaders30.glsl_constructors.vec3_from_float_mat4x3_vs +KHR-GL46.shaders30.glsl_constructors.vec3_from_float_mat4x3_fs +KHR-GL46.shaders30.glsl_constructors.vec3_from_float_mat4x3_float_invalid_vs +KHR-GL46.shaders30.glsl_constructors.vec3_from_float_mat4x3_float_invalid_fs +KHR-GL46.shaders30.glsl_constructors.vec4_from_mat2_vs +KHR-GL46.shaders30.glsl_constructors.vec4_from_mat2_fs +KHR-GL46.shaders30.glsl_constructors.vec4_from_mat2_mat2_invalid_vs +KHR-GL46.shaders30.glsl_constructors.vec4_from_mat2_mat2_invalid_fs +KHR-GL46.shaders30.glsl_constructors.vec4_from_mat2x3_vs +KHR-GL46.shaders30.glsl_constructors.vec4_from_mat2x3_fs +KHR-GL46.shaders30.glsl_constructors.vec4_from_mat2x3_mat2x3_invalid_vs +KHR-GL46.shaders30.glsl_constructors.vec4_from_mat2x3_mat2x3_invalid_fs +KHR-GL46.shaders30.glsl_constructors.vec4_from_mat2x4_vs +KHR-GL46.shaders30.glsl_constructors.vec4_from_mat2x4_fs +KHR-GL46.shaders30.glsl_constructors.vec4_from_mat2x4_mat2x4_invalid_vs +KHR-GL46.shaders30.glsl_constructors.vec4_from_mat2x4_mat2x4_invalid_fs +KHR-GL46.shaders30.glsl_constructors.vec4_from_mat3_vs +KHR-GL46.shaders30.glsl_constructors.vec4_from_mat3_fs +KHR-GL46.shaders30.glsl_constructors.vec4_from_mat3_mat3_invalid_vs +KHR-GL46.shaders30.glsl_constructors.vec4_from_mat3_mat3_invalid_fs +KHR-GL46.shaders30.glsl_constructors.vec4_from_mat3x2_vs +KHR-GL46.shaders30.glsl_constructors.vec4_from_mat3x2_fs +KHR-GL46.shaders30.glsl_constructors.vec4_from_mat3x2_mat3x2_invalid_vs +KHR-GL46.shaders30.glsl_constructors.vec4_from_mat3x2_mat3x2_invalid_fs +KHR-GL46.shaders30.glsl_constructors.vec4_from_mat3x4_vs +KHR-GL46.shaders30.glsl_constructors.vec4_from_mat3x4_fs +KHR-GL46.shaders30.glsl_constructors.vec4_from_mat3x4_mat3x4_invalid_vs +KHR-GL46.shaders30.glsl_constructors.vec4_from_mat3x4_mat3x4_invalid_fs +KHR-GL46.shaders30.glsl_constructors.vec4_from_mat4_vs +KHR-GL46.shaders30.glsl_constructors.vec4_from_mat4_fs +KHR-GL46.shaders30.glsl_constructors.vec4_from_mat4_mat4_invalid_vs +KHR-GL46.shaders30.glsl_constructors.vec4_from_mat4_mat4_invalid_fs +KHR-GL46.shaders30.glsl_constructors.vec4_from_mat4x2_vs +KHR-GL46.shaders30.glsl_constructors.vec4_from_mat4x2_fs +KHR-GL46.shaders30.glsl_constructors.vec4_from_mat4x2_mat4x2_invalid_vs +KHR-GL46.shaders30.glsl_constructors.vec4_from_mat4x2_mat4x2_invalid_fs +KHR-GL46.shaders30.glsl_constructors.vec4_from_mat4x3_vs +KHR-GL46.shaders30.glsl_constructors.vec4_from_mat4x3_fs +KHR-GL46.shaders30.glsl_constructors.vec4_from_mat4x3_mat4x3_invalid_vs +KHR-GL46.shaders30.glsl_constructors.vec4_from_mat4x3_mat4x3_invalid_fs +KHR-GL46.shaders30.glsl_constructors.vec4_from_float_mat2_vs +KHR-GL46.shaders30.glsl_constructors.vec4_from_float_mat2_fs +KHR-GL46.shaders30.glsl_constructors.vec4_from_float_mat2_float_invalid_vs +KHR-GL46.shaders30.glsl_constructors.vec4_from_float_mat2_float_invalid_fs +KHR-GL46.shaders30.glsl_constructors.vec4_from_float_mat2x3_vs +KHR-GL46.shaders30.glsl_constructors.vec4_from_float_mat2x3_fs +KHR-GL46.shaders30.glsl_constructors.vec4_from_float_mat2x3_float_invalid_vs +KHR-GL46.shaders30.glsl_constructors.vec4_from_float_mat2x3_float_invalid_fs +KHR-GL46.shaders30.glsl_constructors.vec4_from_float_mat2x4_vs +KHR-GL46.shaders30.glsl_constructors.vec4_from_float_mat2x4_fs +KHR-GL46.shaders30.glsl_constructors.vec4_from_float_mat2x4_float_invalid_vs +KHR-GL46.shaders30.glsl_constructors.vec4_from_float_mat2x4_float_invalid_fs +KHR-GL46.shaders30.glsl_constructors.vec4_from_float_mat3_vs +KHR-GL46.shaders30.glsl_constructors.vec4_from_float_mat3_fs +KHR-GL46.shaders30.glsl_constructors.vec4_from_float_mat3_float_invalid_vs +KHR-GL46.shaders30.glsl_constructors.vec4_from_float_mat3_float_invalid_fs +KHR-GL46.shaders30.glsl_constructors.vec4_from_float_mat3x2_vs +KHR-GL46.shaders30.glsl_constructors.vec4_from_float_mat3x2_fs +KHR-GL46.shaders30.glsl_constructors.vec4_from_float_mat3x2_float_invalid_vs +KHR-GL46.shaders30.glsl_constructors.vec4_from_float_mat3x2_float_invalid_fs +KHR-GL46.shaders30.glsl_constructors.vec4_from_float_mat3x4_vs +KHR-GL46.shaders30.glsl_constructors.vec4_from_float_mat3x4_fs +KHR-GL46.shaders30.glsl_constructors.vec4_from_float_mat3x4_float_invalid_vs +KHR-GL46.shaders30.glsl_constructors.vec4_from_float_mat3x4_float_invalid_fs +KHR-GL46.shaders30.glsl_constructors.vec4_from_float_mat4_vs +KHR-GL46.shaders30.glsl_constructors.vec4_from_float_mat4_fs +KHR-GL46.shaders30.glsl_constructors.vec4_from_float_mat4_float_invalid_vs +KHR-GL46.shaders30.glsl_constructors.vec4_from_float_mat4_float_invalid_fs +KHR-GL46.shaders30.glsl_constructors.vec4_from_float_mat4x2_vs +KHR-GL46.shaders30.glsl_constructors.vec4_from_float_mat4x2_fs +KHR-GL46.shaders30.glsl_constructors.vec4_from_float_mat4x2_float_invalid_vs +KHR-GL46.shaders30.glsl_constructors.vec4_from_float_mat4x2_float_invalid_fs +KHR-GL46.shaders30.glsl_constructors.vec4_from_float_mat4x3_vs +KHR-GL46.shaders30.glsl_constructors.vec4_from_float_mat4x3_fs +KHR-GL46.shaders30.glsl_constructors.vec4_from_float_mat4x3_float_invalid_vs +KHR-GL46.shaders30.glsl_constructors.vec4_from_float_mat4x3_float_invalid_fs +KHR-GL46.shaders30.glsl_constructors.ivec2_from_mat2_vs +KHR-GL46.shaders30.glsl_constructors.ivec2_from_mat2_fs +KHR-GL46.shaders30.glsl_constructors.ivec2_from_mat2_mat2_invalid_vs +KHR-GL46.shaders30.glsl_constructors.ivec2_from_mat2_mat2_invalid_fs +KHR-GL46.shaders30.glsl_constructors.ivec2_from_mat2x3_vs +KHR-GL46.shaders30.glsl_constructors.ivec2_from_mat2x3_fs +KHR-GL46.shaders30.glsl_constructors.ivec2_from_mat2x3_mat2x3_invalid_vs +KHR-GL46.shaders30.glsl_constructors.ivec2_from_mat2x3_mat2x3_invalid_fs +KHR-GL46.shaders30.glsl_constructors.ivec2_from_mat2x4_vs +KHR-GL46.shaders30.glsl_constructors.ivec2_from_mat2x4_fs +KHR-GL46.shaders30.glsl_constructors.ivec2_from_mat2x4_mat2x4_invalid_vs +KHR-GL46.shaders30.glsl_constructors.ivec2_from_mat2x4_mat2x4_invalid_fs +KHR-GL46.shaders30.glsl_constructors.ivec2_from_mat3_vs +KHR-GL46.shaders30.glsl_constructors.ivec2_from_mat3_fs +KHR-GL46.shaders30.glsl_constructors.ivec2_from_mat3_mat3_invalid_vs +KHR-GL46.shaders30.glsl_constructors.ivec2_from_mat3_mat3_invalid_fs +KHR-GL46.shaders30.glsl_constructors.ivec2_from_mat3x2_vs +KHR-GL46.shaders30.glsl_constructors.ivec2_from_mat3x2_fs +KHR-GL46.shaders30.glsl_constructors.ivec2_from_mat3x2_mat3x2_invalid_vs +KHR-GL46.shaders30.glsl_constructors.ivec2_from_mat3x2_mat3x2_invalid_fs +KHR-GL46.shaders30.glsl_constructors.ivec2_from_mat3x4_vs +KHR-GL46.shaders30.glsl_constructors.ivec2_from_mat3x4_fs +KHR-GL46.shaders30.glsl_constructors.ivec2_from_mat3x4_mat3x4_invalid_vs +KHR-GL46.shaders30.glsl_constructors.ivec2_from_mat3x4_mat3x4_invalid_fs +KHR-GL46.shaders30.glsl_constructors.ivec2_from_mat4_vs +KHR-GL46.shaders30.glsl_constructors.ivec2_from_mat4_fs +KHR-GL46.shaders30.glsl_constructors.ivec2_from_mat4_mat4_invalid_vs +KHR-GL46.shaders30.glsl_constructors.ivec2_from_mat4_mat4_invalid_fs +KHR-GL46.shaders30.glsl_constructors.ivec2_from_mat4x2_vs +KHR-GL46.shaders30.glsl_constructors.ivec2_from_mat4x2_fs +KHR-GL46.shaders30.glsl_constructors.ivec2_from_mat4x2_mat4x2_invalid_vs +KHR-GL46.shaders30.glsl_constructors.ivec2_from_mat4x2_mat4x2_invalid_fs +KHR-GL46.shaders30.glsl_constructors.ivec2_from_mat4x3_vs +KHR-GL46.shaders30.glsl_constructors.ivec2_from_mat4x3_fs +KHR-GL46.shaders30.glsl_constructors.ivec2_from_mat4x3_mat4x3_invalid_vs +KHR-GL46.shaders30.glsl_constructors.ivec2_from_mat4x3_mat4x3_invalid_fs +KHR-GL46.shaders30.glsl_constructors.ivec2_from_int_mat2_vs +KHR-GL46.shaders30.glsl_constructors.ivec2_from_int_mat2_fs +KHR-GL46.shaders30.glsl_constructors.ivec2_from_int_mat2_int_invalid_vs +KHR-GL46.shaders30.glsl_constructors.ivec2_from_int_mat2_int_invalid_fs +KHR-GL46.shaders30.glsl_constructors.ivec2_from_int_mat2x3_vs +KHR-GL46.shaders30.glsl_constructors.ivec2_from_int_mat2x3_fs +KHR-GL46.shaders30.glsl_constructors.ivec2_from_int_mat2x3_int_invalid_vs +KHR-GL46.shaders30.glsl_constructors.ivec2_from_int_mat2x3_int_invalid_fs +KHR-GL46.shaders30.glsl_constructors.ivec2_from_int_mat2x4_vs +KHR-GL46.shaders30.glsl_constructors.ivec2_from_int_mat2x4_fs +KHR-GL46.shaders30.glsl_constructors.ivec2_from_int_mat2x4_int_invalid_vs +KHR-GL46.shaders30.glsl_constructors.ivec2_from_int_mat2x4_int_invalid_fs +KHR-GL46.shaders30.glsl_constructors.ivec2_from_int_mat3_vs +KHR-GL46.shaders30.glsl_constructors.ivec2_from_int_mat3_fs +KHR-GL46.shaders30.glsl_constructors.ivec2_from_int_mat3_int_invalid_vs +KHR-GL46.shaders30.glsl_constructors.ivec2_from_int_mat3_int_invalid_fs +KHR-GL46.shaders30.glsl_constructors.ivec2_from_int_mat3x2_vs +KHR-GL46.shaders30.glsl_constructors.ivec2_from_int_mat3x2_fs +KHR-GL46.shaders30.glsl_constructors.ivec2_from_int_mat3x2_int_invalid_vs +KHR-GL46.shaders30.glsl_constructors.ivec2_from_int_mat3x2_int_invalid_fs +KHR-GL46.shaders30.glsl_constructors.ivec2_from_int_mat3x4_vs +KHR-GL46.shaders30.glsl_constructors.ivec2_from_int_mat3x4_fs +KHR-GL46.shaders30.glsl_constructors.ivec2_from_int_mat3x4_int_invalid_vs +KHR-GL46.shaders30.glsl_constructors.ivec2_from_int_mat3x4_int_invalid_fs +KHR-GL46.shaders30.glsl_constructors.ivec2_from_int_mat4_vs +KHR-GL46.shaders30.glsl_constructors.ivec2_from_int_mat4_fs +KHR-GL46.shaders30.glsl_constructors.ivec2_from_int_mat4_int_invalid_vs +KHR-GL46.shaders30.glsl_constructors.ivec2_from_int_mat4_int_invalid_fs +KHR-GL46.shaders30.glsl_constructors.ivec2_from_int_mat4x2_vs +KHR-GL46.shaders30.glsl_constructors.ivec2_from_int_mat4x2_fs +KHR-GL46.shaders30.glsl_constructors.ivec2_from_int_mat4x2_int_invalid_vs +KHR-GL46.shaders30.glsl_constructors.ivec2_from_int_mat4x2_int_invalid_fs +KHR-GL46.shaders30.glsl_constructors.ivec2_from_int_mat4x3_vs +KHR-GL46.shaders30.glsl_constructors.ivec2_from_int_mat4x3_fs +KHR-GL46.shaders30.glsl_constructors.ivec2_from_int_mat4x3_int_invalid_vs +KHR-GL46.shaders30.glsl_constructors.ivec2_from_int_mat4x3_int_invalid_fs +KHR-GL46.shaders30.glsl_constructors.ivec3_from_mat2_vs +KHR-GL46.shaders30.glsl_constructors.ivec3_from_mat2_fs +KHR-GL46.shaders30.glsl_constructors.ivec3_from_mat2_mat2_invalid_vs +KHR-GL46.shaders30.glsl_constructors.ivec3_from_mat2_mat2_invalid_fs +KHR-GL46.shaders30.glsl_constructors.ivec3_from_mat2x3_vs +KHR-GL46.shaders30.glsl_constructors.ivec3_from_mat2x3_fs +KHR-GL46.shaders30.glsl_constructors.ivec3_from_mat2x3_mat2x3_invalid_vs +KHR-GL46.shaders30.glsl_constructors.ivec3_from_mat2x3_mat2x3_invalid_fs +KHR-GL46.shaders30.glsl_constructors.ivec3_from_mat2x4_vs +KHR-GL46.shaders30.glsl_constructors.ivec3_from_mat2x4_fs +KHR-GL46.shaders30.glsl_constructors.ivec3_from_mat2x4_mat2x4_invalid_vs +KHR-GL46.shaders30.glsl_constructors.ivec3_from_mat2x4_mat2x4_invalid_fs +KHR-GL46.shaders30.glsl_constructors.ivec3_from_mat3_vs +KHR-GL46.shaders30.glsl_constructors.ivec3_from_mat3_fs +KHR-GL46.shaders30.glsl_constructors.ivec3_from_mat3_mat3_invalid_vs +KHR-GL46.shaders30.glsl_constructors.ivec3_from_mat3_mat3_invalid_fs +KHR-GL46.shaders30.glsl_constructors.ivec3_from_mat3x2_vs +KHR-GL46.shaders30.glsl_constructors.ivec3_from_mat3x2_fs +KHR-GL46.shaders30.glsl_constructors.ivec3_from_mat3x2_mat3x2_invalid_vs +KHR-GL46.shaders30.glsl_constructors.ivec3_from_mat3x2_mat3x2_invalid_fs +KHR-GL46.shaders30.glsl_constructors.ivec3_from_mat3x4_vs +KHR-GL46.shaders30.glsl_constructors.ivec3_from_mat3x4_fs +KHR-GL46.shaders30.glsl_constructors.ivec3_from_mat3x4_mat3x4_invalid_vs +KHR-GL46.shaders30.glsl_constructors.ivec3_from_mat3x4_mat3x4_invalid_fs +KHR-GL46.shaders30.glsl_constructors.ivec3_from_mat4_vs +KHR-GL46.shaders30.glsl_constructors.ivec3_from_mat4_fs +KHR-GL46.shaders30.glsl_constructors.ivec3_from_mat4_mat4_invalid_vs +KHR-GL46.shaders30.glsl_constructors.ivec3_from_mat4_mat4_invalid_fs +KHR-GL46.shaders30.glsl_constructors.ivec3_from_mat4x2_vs +KHR-GL46.shaders30.glsl_constructors.ivec3_from_mat4x2_fs +KHR-GL46.shaders30.glsl_constructors.ivec3_from_mat4x2_mat4x2_invalid_vs +KHR-GL46.shaders30.glsl_constructors.ivec3_from_mat4x2_mat4x2_invalid_fs +KHR-GL46.shaders30.glsl_constructors.ivec3_from_mat4x3_vs +KHR-GL46.shaders30.glsl_constructors.ivec3_from_mat4x3_fs +KHR-GL46.shaders30.glsl_constructors.ivec3_from_mat4x3_mat4x3_invalid_vs +KHR-GL46.shaders30.glsl_constructors.ivec3_from_mat4x3_mat4x3_invalid_fs +KHR-GL46.shaders30.glsl_constructors.ivec3_from_int_mat2_vs +KHR-GL46.shaders30.glsl_constructors.ivec3_from_int_mat2_fs +KHR-GL46.shaders30.glsl_constructors.ivec3_from_int_mat2_int_invalid_vs +KHR-GL46.shaders30.glsl_constructors.ivec3_from_int_mat2_int_invalid_fs +KHR-GL46.shaders30.glsl_constructors.ivec3_from_int_mat2x3_vs +KHR-GL46.shaders30.glsl_constructors.ivec3_from_int_mat2x3_fs +KHR-GL46.shaders30.glsl_constructors.ivec3_from_int_mat2x3_int_invalid_vs +KHR-GL46.shaders30.glsl_constructors.ivec3_from_int_mat2x3_int_invalid_fs +KHR-GL46.shaders30.glsl_constructors.ivec3_from_int_mat2x4_vs +KHR-GL46.shaders30.glsl_constructors.ivec3_from_int_mat2x4_fs +KHR-GL46.shaders30.glsl_constructors.ivec3_from_int_mat2x4_int_invalid_vs +KHR-GL46.shaders30.glsl_constructors.ivec3_from_int_mat2x4_int_invalid_fs +KHR-GL46.shaders30.glsl_constructors.ivec3_from_int_mat3_vs +KHR-GL46.shaders30.glsl_constructors.ivec3_from_int_mat3_fs +KHR-GL46.shaders30.glsl_constructors.ivec3_from_int_mat3_int_invalid_vs +KHR-GL46.shaders30.glsl_constructors.ivec3_from_int_mat3_int_invalid_fs +KHR-GL46.shaders30.glsl_constructors.ivec3_from_int_mat3x2_vs +KHR-GL46.shaders30.glsl_constructors.ivec3_from_int_mat3x2_fs +KHR-GL46.shaders30.glsl_constructors.ivec3_from_int_mat3x2_int_invalid_vs +KHR-GL46.shaders30.glsl_constructors.ivec3_from_int_mat3x2_int_invalid_fs +KHR-GL46.shaders30.glsl_constructors.ivec3_from_int_mat3x4_vs +KHR-GL46.shaders30.glsl_constructors.ivec3_from_int_mat3x4_fs +KHR-GL46.shaders30.glsl_constructors.ivec3_from_int_mat3x4_int_invalid_vs +KHR-GL46.shaders30.glsl_constructors.ivec3_from_int_mat3x4_int_invalid_fs +KHR-GL46.shaders30.glsl_constructors.ivec3_from_int_mat4_vs +KHR-GL46.shaders30.glsl_constructors.ivec3_from_int_mat4_fs +KHR-GL46.shaders30.glsl_constructors.ivec3_from_int_mat4_int_invalid_vs +KHR-GL46.shaders30.glsl_constructors.ivec3_from_int_mat4_int_invalid_fs +KHR-GL46.shaders30.glsl_constructors.ivec3_from_int_mat4x2_vs +KHR-GL46.shaders30.glsl_constructors.ivec3_from_int_mat4x2_fs +KHR-GL46.shaders30.glsl_constructors.ivec3_from_int_mat4x2_int_invalid_vs +KHR-GL46.shaders30.glsl_constructors.ivec3_from_int_mat4x2_int_invalid_fs +KHR-GL46.shaders30.glsl_constructors.ivec3_from_int_mat4x3_vs +KHR-GL46.shaders30.glsl_constructors.ivec3_from_int_mat4x3_fs +KHR-GL46.shaders30.glsl_constructors.ivec3_from_int_mat4x3_int_invalid_vs +KHR-GL46.shaders30.glsl_constructors.ivec3_from_int_mat4x3_int_invalid_fs +KHR-GL46.shaders30.glsl_constructors.ivec4_from_mat2_vs +KHR-GL46.shaders30.glsl_constructors.ivec4_from_mat2_fs +KHR-GL46.shaders30.glsl_constructors.ivec4_from_mat2_mat2_invalid_vs +KHR-GL46.shaders30.glsl_constructors.ivec4_from_mat2_mat2_invalid_fs +KHR-GL46.shaders30.glsl_constructors.ivec4_from_mat2x3_vs +KHR-GL46.shaders30.glsl_constructors.ivec4_from_mat2x3_fs +KHR-GL46.shaders30.glsl_constructors.ivec4_from_mat2x3_mat2x3_invalid_vs +KHR-GL46.shaders30.glsl_constructors.ivec4_from_mat2x3_mat2x3_invalid_fs +KHR-GL46.shaders30.glsl_constructors.ivec4_from_mat2x4_vs +KHR-GL46.shaders30.glsl_constructors.ivec4_from_mat2x4_fs +KHR-GL46.shaders30.glsl_constructors.ivec4_from_mat2x4_mat2x4_invalid_vs +KHR-GL46.shaders30.glsl_constructors.ivec4_from_mat2x4_mat2x4_invalid_fs +KHR-GL46.shaders30.glsl_constructors.ivec4_from_mat3_vs +KHR-GL46.shaders30.glsl_constructors.ivec4_from_mat3_fs +KHR-GL46.shaders30.glsl_constructors.ivec4_from_mat3_mat3_invalid_vs +KHR-GL46.shaders30.glsl_constructors.ivec4_from_mat3_mat3_invalid_fs +KHR-GL46.shaders30.glsl_constructors.ivec4_from_mat3x2_vs +KHR-GL46.shaders30.glsl_constructors.ivec4_from_mat3x2_fs +KHR-GL46.shaders30.glsl_constructors.ivec4_from_mat3x2_mat3x2_invalid_vs +KHR-GL46.shaders30.glsl_constructors.ivec4_from_mat3x2_mat3x2_invalid_fs +KHR-GL46.shaders30.glsl_constructors.ivec4_from_mat3x4_vs +KHR-GL46.shaders30.glsl_constructors.ivec4_from_mat3x4_fs +KHR-GL46.shaders30.glsl_constructors.ivec4_from_mat3x4_mat3x4_invalid_vs +KHR-GL46.shaders30.glsl_constructors.ivec4_from_mat3x4_mat3x4_invalid_fs +KHR-GL46.shaders30.glsl_constructors.ivec4_from_mat4_vs +KHR-GL46.shaders30.glsl_constructors.ivec4_from_mat4_fs +KHR-GL46.shaders30.glsl_constructors.ivec4_from_mat4_mat4_invalid_vs +KHR-GL46.shaders30.glsl_constructors.ivec4_from_mat4_mat4_invalid_fs +KHR-GL46.shaders30.glsl_constructors.ivec4_from_mat4x2_vs +KHR-GL46.shaders30.glsl_constructors.ivec4_from_mat4x2_fs +KHR-GL46.shaders30.glsl_constructors.ivec4_from_mat4x2_mat4x2_invalid_vs +KHR-GL46.shaders30.glsl_constructors.ivec4_from_mat4x2_mat4x2_invalid_fs +KHR-GL46.shaders30.glsl_constructors.ivec4_from_mat4x3_vs +KHR-GL46.shaders30.glsl_constructors.ivec4_from_mat4x3_fs +KHR-GL46.shaders30.glsl_constructors.ivec4_from_mat4x3_mat4x3_invalid_vs +KHR-GL46.shaders30.glsl_constructors.ivec4_from_mat4x3_mat4x3_invalid_fs +KHR-GL46.shaders30.glsl_constructors.ivec4_from_int_mat2_vs +KHR-GL46.shaders30.glsl_constructors.ivec4_from_int_mat2_fs +KHR-GL46.shaders30.glsl_constructors.ivec4_from_int_mat2_int_invalid_vs +KHR-GL46.shaders30.glsl_constructors.ivec4_from_int_mat2_int_invalid_fs +KHR-GL46.shaders30.glsl_constructors.ivec4_from_int_mat2x3_vs +KHR-GL46.shaders30.glsl_constructors.ivec4_from_int_mat2x3_fs +KHR-GL46.shaders30.glsl_constructors.ivec4_from_int_mat2x3_int_invalid_vs +KHR-GL46.shaders30.glsl_constructors.ivec4_from_int_mat2x3_int_invalid_fs +KHR-GL46.shaders30.glsl_constructors.ivec4_from_int_mat2x4_vs +KHR-GL46.shaders30.glsl_constructors.ivec4_from_int_mat2x4_fs +KHR-GL46.shaders30.glsl_constructors.ivec4_from_int_mat2x4_int_invalid_vs +KHR-GL46.shaders30.glsl_constructors.ivec4_from_int_mat2x4_int_invalid_fs +KHR-GL46.shaders30.glsl_constructors.ivec4_from_int_mat3_vs +KHR-GL46.shaders30.glsl_constructors.ivec4_from_int_mat3_fs +KHR-GL46.shaders30.glsl_constructors.ivec4_from_int_mat3_int_invalid_vs +KHR-GL46.shaders30.glsl_constructors.ivec4_from_int_mat3_int_invalid_fs +KHR-GL46.shaders30.glsl_constructors.ivec4_from_int_mat3x2_vs +KHR-GL46.shaders30.glsl_constructors.ivec4_from_int_mat3x2_fs +KHR-GL46.shaders30.glsl_constructors.ivec4_from_int_mat3x2_int_invalid_vs +KHR-GL46.shaders30.glsl_constructors.ivec4_from_int_mat3x2_int_invalid_fs +KHR-GL46.shaders30.glsl_constructors.ivec4_from_int_mat3x4_vs +KHR-GL46.shaders30.glsl_constructors.ivec4_from_int_mat3x4_fs +KHR-GL46.shaders30.glsl_constructors.ivec4_from_int_mat3x4_int_invalid_vs +KHR-GL46.shaders30.glsl_constructors.ivec4_from_int_mat3x4_int_invalid_fs +KHR-GL46.shaders30.glsl_constructors.ivec4_from_int_mat4_vs +KHR-GL46.shaders30.glsl_constructors.ivec4_from_int_mat4_fs +KHR-GL46.shaders30.glsl_constructors.ivec4_from_int_mat4_int_invalid_vs +KHR-GL46.shaders30.glsl_constructors.ivec4_from_int_mat4_int_invalid_fs +KHR-GL46.shaders30.glsl_constructors.ivec4_from_int_mat4x2_vs +KHR-GL46.shaders30.glsl_constructors.ivec4_from_int_mat4x2_fs +KHR-GL46.shaders30.glsl_constructors.ivec4_from_int_mat4x2_int_invalid_vs +KHR-GL46.shaders30.glsl_constructors.ivec4_from_int_mat4x2_int_invalid_fs +KHR-GL46.shaders30.glsl_constructors.ivec4_from_int_mat4x3_vs +KHR-GL46.shaders30.glsl_constructors.ivec4_from_int_mat4x3_fs +KHR-GL46.shaders30.glsl_constructors.ivec4_from_int_mat4x3_int_invalid_vs +KHR-GL46.shaders30.glsl_constructors.ivec4_from_int_mat4x3_int_invalid_fs +KHR-GL46.shaders30.glsl_constructors.bvec2_from_mat2_vs +KHR-GL46.shaders30.glsl_constructors.bvec2_from_mat2_fs +KHR-GL46.shaders30.glsl_constructors.bvec2_from_mat2_mat2_invalid_vs +KHR-GL46.shaders30.glsl_constructors.bvec2_from_mat2_mat2_invalid_fs +KHR-GL46.shaders30.glsl_constructors.bvec2_from_mat2x3_vs +KHR-GL46.shaders30.glsl_constructors.bvec2_from_mat2x3_fs +KHR-GL46.shaders30.glsl_constructors.bvec2_from_mat2x3_mat2x3_invalid_vs +KHR-GL46.shaders30.glsl_constructors.bvec2_from_mat2x3_mat2x3_invalid_fs +KHR-GL46.shaders30.glsl_constructors.bvec2_from_mat2x4_vs +KHR-GL46.shaders30.glsl_constructors.bvec2_from_mat2x4_fs +KHR-GL46.shaders30.glsl_constructors.bvec2_from_mat2x4_mat2x4_invalid_vs +KHR-GL46.shaders30.glsl_constructors.bvec2_from_mat2x4_mat2x4_invalid_fs +KHR-GL46.shaders30.glsl_constructors.bvec2_from_mat3_vs +KHR-GL46.shaders30.glsl_constructors.bvec2_from_mat3_fs +KHR-GL46.shaders30.glsl_constructors.bvec2_from_mat3_mat3_invalid_vs +KHR-GL46.shaders30.glsl_constructors.bvec2_from_mat3_mat3_invalid_fs +KHR-GL46.shaders30.glsl_constructors.bvec2_from_mat3x2_vs +KHR-GL46.shaders30.glsl_constructors.bvec2_from_mat3x2_fs +KHR-GL46.shaders30.glsl_constructors.bvec2_from_mat3x2_mat3x2_invalid_vs +KHR-GL46.shaders30.glsl_constructors.bvec2_from_mat3x2_mat3x2_invalid_fs +KHR-GL46.shaders30.glsl_constructors.bvec2_from_mat3x4_vs +KHR-GL46.shaders30.glsl_constructors.bvec2_from_mat3x4_fs +KHR-GL46.shaders30.glsl_constructors.bvec2_from_mat3x4_mat3x4_invalid_vs +KHR-GL46.shaders30.glsl_constructors.bvec2_from_mat3x4_mat3x4_invalid_fs +KHR-GL46.shaders30.glsl_constructors.bvec2_from_mat4_vs +KHR-GL46.shaders30.glsl_constructors.bvec2_from_mat4_fs +KHR-GL46.shaders30.glsl_constructors.bvec2_from_mat4_mat4_invalid_vs +KHR-GL46.shaders30.glsl_constructors.bvec2_from_mat4_mat4_invalid_fs +KHR-GL46.shaders30.glsl_constructors.bvec2_from_mat4x2_vs +KHR-GL46.shaders30.glsl_constructors.bvec2_from_mat4x2_fs +KHR-GL46.shaders30.glsl_constructors.bvec2_from_mat4x2_mat4x2_invalid_vs +KHR-GL46.shaders30.glsl_constructors.bvec2_from_mat4x2_mat4x2_invalid_fs +KHR-GL46.shaders30.glsl_constructors.bvec2_from_mat4x3_vs +KHR-GL46.shaders30.glsl_constructors.bvec2_from_mat4x3_fs +KHR-GL46.shaders30.glsl_constructors.bvec2_from_mat4x3_mat4x3_invalid_vs +KHR-GL46.shaders30.glsl_constructors.bvec2_from_mat4x3_mat4x3_invalid_fs +KHR-GL46.shaders30.glsl_constructors.bvec2_from_bool_mat2_vs +KHR-GL46.shaders30.glsl_constructors.bvec2_from_bool_mat2_fs +KHR-GL46.shaders30.glsl_constructors.bvec2_from_bool_mat2_bool_invalid_vs +KHR-GL46.shaders30.glsl_constructors.bvec2_from_bool_mat2_bool_invalid_fs +KHR-GL46.shaders30.glsl_constructors.bvec2_from_bool_mat2x3_vs +KHR-GL46.shaders30.glsl_constructors.bvec2_from_bool_mat2x3_fs +KHR-GL46.shaders30.glsl_constructors.bvec2_from_bool_mat2x3_bool_invalid_vs +KHR-GL46.shaders30.glsl_constructors.bvec2_from_bool_mat2x3_bool_invalid_fs +KHR-GL46.shaders30.glsl_constructors.bvec2_from_bool_mat2x4_vs +KHR-GL46.shaders30.glsl_constructors.bvec2_from_bool_mat2x4_fs +KHR-GL46.shaders30.glsl_constructors.bvec2_from_bool_mat2x4_bool_invalid_vs +KHR-GL46.shaders30.glsl_constructors.bvec2_from_bool_mat2x4_bool_invalid_fs +KHR-GL46.shaders30.glsl_constructors.bvec2_from_bool_mat3_vs +KHR-GL46.shaders30.glsl_constructors.bvec2_from_bool_mat3_fs +KHR-GL46.shaders30.glsl_constructors.bvec2_from_bool_mat3_bool_invalid_vs +KHR-GL46.shaders30.glsl_constructors.bvec2_from_bool_mat3_bool_invalid_fs +KHR-GL46.shaders30.glsl_constructors.bvec2_from_bool_mat3x2_vs +KHR-GL46.shaders30.glsl_constructors.bvec2_from_bool_mat3x2_fs +KHR-GL46.shaders30.glsl_constructors.bvec2_from_bool_mat3x2_bool_invalid_vs +KHR-GL46.shaders30.glsl_constructors.bvec2_from_bool_mat3x2_bool_invalid_fs +KHR-GL46.shaders30.glsl_constructors.bvec2_from_bool_mat3x4_vs +KHR-GL46.shaders30.glsl_constructors.bvec2_from_bool_mat3x4_fs +KHR-GL46.shaders30.glsl_constructors.bvec2_from_bool_mat3x4_bool_invalid_vs +KHR-GL46.shaders30.glsl_constructors.bvec2_from_bool_mat3x4_bool_invalid_fs +KHR-GL46.shaders30.glsl_constructors.bvec2_from_bool_mat4_vs +KHR-GL46.shaders30.glsl_constructors.bvec2_from_bool_mat4_fs +KHR-GL46.shaders30.glsl_constructors.bvec2_from_bool_mat4_bool_invalid_vs +KHR-GL46.shaders30.glsl_constructors.bvec2_from_bool_mat4_bool_invalid_fs +KHR-GL46.shaders30.glsl_constructors.bvec2_from_bool_mat4x2_vs +KHR-GL46.shaders30.glsl_constructors.bvec2_from_bool_mat4x2_fs +KHR-GL46.shaders30.glsl_constructors.bvec2_from_bool_mat4x2_bool_invalid_vs +KHR-GL46.shaders30.glsl_constructors.bvec2_from_bool_mat4x2_bool_invalid_fs +KHR-GL46.shaders30.glsl_constructors.bvec2_from_bool_mat4x3_vs +KHR-GL46.shaders30.glsl_constructors.bvec2_from_bool_mat4x3_fs +KHR-GL46.shaders30.glsl_constructors.bvec2_from_bool_mat4x3_bool_invalid_vs +KHR-GL46.shaders30.glsl_constructors.bvec2_from_bool_mat4x3_bool_invalid_fs +KHR-GL46.shaders30.glsl_constructors.bvec3_from_mat2_vs +KHR-GL46.shaders30.glsl_constructors.bvec3_from_mat2_fs +KHR-GL46.shaders30.glsl_constructors.bvec3_from_mat2_mat2_invalid_vs +KHR-GL46.shaders30.glsl_constructors.bvec3_from_mat2_mat2_invalid_fs +KHR-GL46.shaders30.glsl_constructors.bvec3_from_mat2x3_vs +KHR-GL46.shaders30.glsl_constructors.bvec3_from_mat2x3_fs +KHR-GL46.shaders30.glsl_constructors.bvec3_from_mat2x3_mat2x3_invalid_vs +KHR-GL46.shaders30.glsl_constructors.bvec3_from_mat2x3_mat2x3_invalid_fs +KHR-GL46.shaders30.glsl_constructors.bvec3_from_mat2x4_vs +KHR-GL46.shaders30.glsl_constructors.bvec3_from_mat2x4_fs +KHR-GL46.shaders30.glsl_constructors.bvec3_from_mat2x4_mat2x4_invalid_vs +KHR-GL46.shaders30.glsl_constructors.bvec3_from_mat2x4_mat2x4_invalid_fs +KHR-GL46.shaders30.glsl_constructors.bvec3_from_mat3_vs +KHR-GL46.shaders30.glsl_constructors.bvec3_from_mat3_fs +KHR-GL46.shaders30.glsl_constructors.bvec3_from_mat3_mat3_invalid_vs +KHR-GL46.shaders30.glsl_constructors.bvec3_from_mat3_mat3_invalid_fs +KHR-GL46.shaders30.glsl_constructors.bvec3_from_mat3x2_vs +KHR-GL46.shaders30.glsl_constructors.bvec3_from_mat3x2_fs +KHR-GL46.shaders30.glsl_constructors.bvec3_from_mat3x2_mat3x2_invalid_vs +KHR-GL46.shaders30.glsl_constructors.bvec3_from_mat3x2_mat3x2_invalid_fs +KHR-GL46.shaders30.glsl_constructors.bvec3_from_mat3x4_vs +KHR-GL46.shaders30.glsl_constructors.bvec3_from_mat3x4_fs +KHR-GL46.shaders30.glsl_constructors.bvec3_from_mat3x4_mat3x4_invalid_vs +KHR-GL46.shaders30.glsl_constructors.bvec3_from_mat3x4_mat3x4_invalid_fs +KHR-GL46.shaders30.glsl_constructors.bvec3_from_mat4_vs +KHR-GL46.shaders30.glsl_constructors.bvec3_from_mat4_fs +KHR-GL46.shaders30.glsl_constructors.bvec3_from_mat4_mat4_invalid_vs +KHR-GL46.shaders30.glsl_constructors.bvec3_from_mat4_mat4_invalid_fs +KHR-GL46.shaders30.glsl_constructors.bvec3_from_mat4x2_vs +KHR-GL46.shaders30.glsl_constructors.bvec3_from_mat4x2_fs +KHR-GL46.shaders30.glsl_constructors.bvec3_from_mat4x2_mat4x2_invalid_vs +KHR-GL46.shaders30.glsl_constructors.bvec3_from_mat4x2_mat4x2_invalid_fs +KHR-GL46.shaders30.glsl_constructors.bvec3_from_mat4x3_vs +KHR-GL46.shaders30.glsl_constructors.bvec3_from_mat4x3_fs +KHR-GL46.shaders30.glsl_constructors.bvec3_from_mat4x3_mat4x3_invalid_vs +KHR-GL46.shaders30.glsl_constructors.bvec3_from_mat4x3_mat4x3_invalid_fs +KHR-GL46.shaders30.glsl_constructors.bvec3_from_bool_mat2_vs +KHR-GL46.shaders30.glsl_constructors.bvec3_from_bool_mat2_fs +KHR-GL46.shaders30.glsl_constructors.bvec3_from_bool_mat2_bool_invalid_vs +KHR-GL46.shaders30.glsl_constructors.bvec3_from_bool_mat2_bool_invalid_fs +KHR-GL46.shaders30.glsl_constructors.bvec3_from_bool_mat2x3_vs +KHR-GL46.shaders30.glsl_constructors.bvec3_from_bool_mat2x3_fs +KHR-GL46.shaders30.glsl_constructors.bvec3_from_bool_mat2x3_bool_invalid_vs +KHR-GL46.shaders30.glsl_constructors.bvec3_from_bool_mat2x3_bool_invalid_fs +KHR-GL46.shaders30.glsl_constructors.bvec3_from_bool_mat2x4_vs +KHR-GL46.shaders30.glsl_constructors.bvec3_from_bool_mat2x4_fs +KHR-GL46.shaders30.glsl_constructors.bvec3_from_bool_mat2x4_bool_invalid_vs +KHR-GL46.shaders30.glsl_constructors.bvec3_from_bool_mat2x4_bool_invalid_fs +KHR-GL46.shaders30.glsl_constructors.bvec3_from_bool_mat3_vs +KHR-GL46.shaders30.glsl_constructors.bvec3_from_bool_mat3_fs +KHR-GL46.shaders30.glsl_constructors.bvec3_from_bool_mat3_bool_invalid_vs +KHR-GL46.shaders30.glsl_constructors.bvec3_from_bool_mat3_bool_invalid_fs +KHR-GL46.shaders30.glsl_constructors.bvec3_from_bool_mat3x2_vs +KHR-GL46.shaders30.glsl_constructors.bvec3_from_bool_mat3x2_fs +KHR-GL46.shaders30.glsl_constructors.bvec3_from_bool_mat3x2_bool_invalid_vs +KHR-GL46.shaders30.glsl_constructors.bvec3_from_bool_mat3x2_bool_invalid_fs +KHR-GL46.shaders30.glsl_constructors.bvec3_from_bool_mat3x4_vs +KHR-GL46.shaders30.glsl_constructors.bvec3_from_bool_mat3x4_fs +KHR-GL46.shaders30.glsl_constructors.bvec3_from_bool_mat3x4_bool_invalid_vs +KHR-GL46.shaders30.glsl_constructors.bvec3_from_bool_mat3x4_bool_invalid_fs +KHR-GL46.shaders30.glsl_constructors.bvec3_from_bool_mat4_vs +KHR-GL46.shaders30.glsl_constructors.bvec3_from_bool_mat4_fs +KHR-GL46.shaders30.glsl_constructors.bvec3_from_bool_mat4_bool_invalid_vs +KHR-GL46.shaders30.glsl_constructors.bvec3_from_bool_mat4_bool_invalid_fs +KHR-GL46.shaders30.glsl_constructors.bvec3_from_bool_mat4x2_vs +KHR-GL46.shaders30.glsl_constructors.bvec3_from_bool_mat4x2_fs +KHR-GL46.shaders30.glsl_constructors.bvec3_from_bool_mat4x2_bool_invalid_vs +KHR-GL46.shaders30.glsl_constructors.bvec3_from_bool_mat4x2_bool_invalid_fs +KHR-GL46.shaders30.glsl_constructors.bvec3_from_bool_mat4x3_vs +KHR-GL46.shaders30.glsl_constructors.bvec3_from_bool_mat4x3_fs +KHR-GL46.shaders30.glsl_constructors.bvec3_from_bool_mat4x3_bool_invalid_vs +KHR-GL46.shaders30.glsl_constructors.bvec3_from_bool_mat4x3_bool_invalid_fs +KHR-GL46.shaders30.glsl_constructors.bvec4_from_mat2_vs +KHR-GL46.shaders30.glsl_constructors.bvec4_from_mat2_fs +KHR-GL46.shaders30.glsl_constructors.bvec4_from_mat2_mat2_invalid_vs +KHR-GL46.shaders30.glsl_constructors.bvec4_from_mat2_mat2_invalid_fs +KHR-GL46.shaders30.glsl_constructors.bvec4_from_mat2x3_vs +KHR-GL46.shaders30.glsl_constructors.bvec4_from_mat2x3_fs +KHR-GL46.shaders30.glsl_constructors.bvec4_from_mat2x3_mat2x3_invalid_vs +KHR-GL46.shaders30.glsl_constructors.bvec4_from_mat2x3_mat2x3_invalid_fs +KHR-GL46.shaders30.glsl_constructors.bvec4_from_mat2x4_vs +KHR-GL46.shaders30.glsl_constructors.bvec4_from_mat2x4_fs +KHR-GL46.shaders30.glsl_constructors.bvec4_from_mat2x4_mat2x4_invalid_vs +KHR-GL46.shaders30.glsl_constructors.bvec4_from_mat2x4_mat2x4_invalid_fs +KHR-GL46.shaders30.glsl_constructors.bvec4_from_mat3_vs +KHR-GL46.shaders30.glsl_constructors.bvec4_from_mat3_fs +KHR-GL46.shaders30.glsl_constructors.bvec4_from_mat3_mat3_invalid_vs +KHR-GL46.shaders30.glsl_constructors.bvec4_from_mat3_mat3_invalid_fs +KHR-GL46.shaders30.glsl_constructors.bvec4_from_mat3x2_vs +KHR-GL46.shaders30.glsl_constructors.bvec4_from_mat3x2_fs +KHR-GL46.shaders30.glsl_constructors.bvec4_from_mat3x2_mat3x2_invalid_vs +KHR-GL46.shaders30.glsl_constructors.bvec4_from_mat3x2_mat3x2_invalid_fs +KHR-GL46.shaders30.glsl_constructors.bvec4_from_mat3x4_vs +KHR-GL46.shaders30.glsl_constructors.bvec4_from_mat3x4_fs +KHR-GL46.shaders30.glsl_constructors.bvec4_from_mat3x4_mat3x4_invalid_vs +KHR-GL46.shaders30.glsl_constructors.bvec4_from_mat3x4_mat3x4_invalid_fs +KHR-GL46.shaders30.glsl_constructors.bvec4_from_mat4_vs +KHR-GL46.shaders30.glsl_constructors.bvec4_from_mat4_fs +KHR-GL46.shaders30.glsl_constructors.bvec4_from_mat4_mat4_invalid_vs +KHR-GL46.shaders30.glsl_constructors.bvec4_from_mat4_mat4_invalid_fs +KHR-GL46.shaders30.glsl_constructors.bvec4_from_mat4x2_vs +KHR-GL46.shaders30.glsl_constructors.bvec4_from_mat4x2_fs +KHR-GL46.shaders30.glsl_constructors.bvec4_from_mat4x2_mat4x2_invalid_vs +KHR-GL46.shaders30.glsl_constructors.bvec4_from_mat4x2_mat4x2_invalid_fs +KHR-GL46.shaders30.glsl_constructors.bvec4_from_mat4x3_vs +KHR-GL46.shaders30.glsl_constructors.bvec4_from_mat4x3_fs +KHR-GL46.shaders30.glsl_constructors.bvec4_from_mat4x3_mat4x3_invalid_vs +KHR-GL46.shaders30.glsl_constructors.bvec4_from_mat4x3_mat4x3_invalid_fs +KHR-GL46.shaders30.glsl_constructors.bvec4_from_bool_mat2_vs +KHR-GL46.shaders30.glsl_constructors.bvec4_from_bool_mat2_fs +KHR-GL46.shaders30.glsl_constructors.bvec4_from_bool_mat2_bool_invalid_vs +KHR-GL46.shaders30.glsl_constructors.bvec4_from_bool_mat2_bool_invalid_fs +KHR-GL46.shaders30.glsl_constructors.bvec4_from_bool_mat2x3_vs +KHR-GL46.shaders30.glsl_constructors.bvec4_from_bool_mat2x3_fs +KHR-GL46.shaders30.glsl_constructors.bvec4_from_bool_mat2x3_bool_invalid_vs +KHR-GL46.shaders30.glsl_constructors.bvec4_from_bool_mat2x3_bool_invalid_fs +KHR-GL46.shaders30.glsl_constructors.bvec4_from_bool_mat2x4_vs +KHR-GL46.shaders30.glsl_constructors.bvec4_from_bool_mat2x4_fs +KHR-GL46.shaders30.glsl_constructors.bvec4_from_bool_mat2x4_bool_invalid_vs +KHR-GL46.shaders30.glsl_constructors.bvec4_from_bool_mat2x4_bool_invalid_fs +KHR-GL46.shaders30.glsl_constructors.bvec4_from_bool_mat3_vs +KHR-GL46.shaders30.glsl_constructors.bvec4_from_bool_mat3_fs +KHR-GL46.shaders30.glsl_constructors.bvec4_from_bool_mat3_bool_invalid_vs +KHR-GL46.shaders30.glsl_constructors.bvec4_from_bool_mat3_bool_invalid_fs +KHR-GL46.shaders30.glsl_constructors.bvec4_from_bool_mat3x2_vs +KHR-GL46.shaders30.glsl_constructors.bvec4_from_bool_mat3x2_fs +KHR-GL46.shaders30.glsl_constructors.bvec4_from_bool_mat3x2_bool_invalid_vs +KHR-GL46.shaders30.glsl_constructors.bvec4_from_bool_mat3x2_bool_invalid_fs +KHR-GL46.shaders30.glsl_constructors.bvec4_from_bool_mat3x4_vs +KHR-GL46.shaders30.glsl_constructors.bvec4_from_bool_mat3x4_fs +KHR-GL46.shaders30.glsl_constructors.bvec4_from_bool_mat3x4_bool_invalid_vs +KHR-GL46.shaders30.glsl_constructors.bvec4_from_bool_mat3x4_bool_invalid_fs +KHR-GL46.shaders30.glsl_constructors.bvec4_from_bool_mat4_vs +KHR-GL46.shaders30.glsl_constructors.bvec4_from_bool_mat4_fs +KHR-GL46.shaders30.glsl_constructors.bvec4_from_bool_mat4_bool_invalid_vs +KHR-GL46.shaders30.glsl_constructors.bvec4_from_bool_mat4_bool_invalid_fs +KHR-GL46.shaders30.glsl_constructors.bvec4_from_bool_mat4x2_vs +KHR-GL46.shaders30.glsl_constructors.bvec4_from_bool_mat4x2_fs +KHR-GL46.shaders30.glsl_constructors.bvec4_from_bool_mat4x2_bool_invalid_vs +KHR-GL46.shaders30.glsl_constructors.bvec4_from_bool_mat4x2_bool_invalid_fs +KHR-GL46.shaders30.glsl_constructors.bvec4_from_bool_mat4x3_vs +KHR-GL46.shaders30.glsl_constructors.bvec4_from_bool_mat4x3_fs +KHR-GL46.shaders30.glsl_constructors.bvec4_from_bool_mat4x3_bool_invalid_vs +KHR-GL46.shaders30.glsl_constructors.bvec4_from_bool_mat4x3_bool_invalid_fs KHR-GL46.ext_texture_shadow_lod.texture.sampler2darrayshadow_fragment KHR-GL46.ext_texture_shadow_lod.texture.sampler2darrayshadow_bias_fragment KHR-GL46.ext_texture_shadow_lod.texture.samplercubearrayshadow_vertex diff --git a/external/openglcts/data/mustpass/gles/khronos_mustpass/3.2.5.x/gles3-khr-master.txt b/external/openglcts/data/mustpass/gles/khronos_mustpass/3.2.5.x/gles3-khr-master.txt index abf2826..836915a 100644 --- a/external/openglcts/data/mustpass/gles/khronos_mustpass/3.2.5.x/gles3-khr-master.txt +++ b/external/openglcts/data/mustpass/gles/khronos_mustpass/3.2.5.x/gles3-khr-master.txt @@ -2579,6 +2579,654 @@ KHR-GLES3.shaders.uniform_block.random.all_shared_buffer.18 KHR-GLES3.shaders.uniform_block.random.all_shared_buffer.19 KHR-GLES3.shaders.uniform_block.common.precision_matching KHR-GLES3.shaders.uniform_block.common.name_matching +KHR-GLES3.shaders.glsl_constructors.vec2_from_mat2_vs +KHR-GLES3.shaders.glsl_constructors.vec2_from_mat2_fs +KHR-GLES3.shaders.glsl_constructors.vec2_from_mat2_mat2_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec2_from_mat2_mat2_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec2_from_mat2x3_vs +KHR-GLES3.shaders.glsl_constructors.vec2_from_mat2x3_fs +KHR-GLES3.shaders.glsl_constructors.vec2_from_mat2x3_mat2x3_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec2_from_mat2x3_mat2x3_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec2_from_mat2x4_vs +KHR-GLES3.shaders.glsl_constructors.vec2_from_mat2x4_fs +KHR-GLES3.shaders.glsl_constructors.vec2_from_mat2x4_mat2x4_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec2_from_mat2x4_mat2x4_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec2_from_mat3_vs +KHR-GLES3.shaders.glsl_constructors.vec2_from_mat3_fs +KHR-GLES3.shaders.glsl_constructors.vec2_from_mat3_mat3_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec2_from_mat3_mat3_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec2_from_mat3x2_vs +KHR-GLES3.shaders.glsl_constructors.vec2_from_mat3x2_fs +KHR-GLES3.shaders.glsl_constructors.vec2_from_mat3x2_mat3x2_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec2_from_mat3x2_mat3x2_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec2_from_mat3x4_vs +KHR-GLES3.shaders.glsl_constructors.vec2_from_mat3x4_fs +KHR-GLES3.shaders.glsl_constructors.vec2_from_mat3x4_mat3x4_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec2_from_mat3x4_mat3x4_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec2_from_mat4_vs +KHR-GLES3.shaders.glsl_constructors.vec2_from_mat4_fs +KHR-GLES3.shaders.glsl_constructors.vec2_from_mat4_mat4_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec2_from_mat4_mat4_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec2_from_mat4x2_vs +KHR-GLES3.shaders.glsl_constructors.vec2_from_mat4x2_fs +KHR-GLES3.shaders.glsl_constructors.vec2_from_mat4x2_mat4x2_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec2_from_mat4x2_mat4x2_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec2_from_mat4x3_vs +KHR-GLES3.shaders.glsl_constructors.vec2_from_mat4x3_fs +KHR-GLES3.shaders.glsl_constructors.vec2_from_mat4x3_mat4x3_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec2_from_mat4x3_mat4x3_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec2_from_float_mat2_vs +KHR-GLES3.shaders.glsl_constructors.vec2_from_float_mat2_fs +KHR-GLES3.shaders.glsl_constructors.vec2_from_float_mat2_float_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec2_from_float_mat2_float_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec2_from_float_mat2x3_vs +KHR-GLES3.shaders.glsl_constructors.vec2_from_float_mat2x3_fs +KHR-GLES3.shaders.glsl_constructors.vec2_from_float_mat2x3_float_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec2_from_float_mat2x3_float_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec2_from_float_mat2x4_vs +KHR-GLES3.shaders.glsl_constructors.vec2_from_float_mat2x4_fs +KHR-GLES3.shaders.glsl_constructors.vec2_from_float_mat2x4_float_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec2_from_float_mat2x4_float_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec2_from_float_mat3_vs +KHR-GLES3.shaders.glsl_constructors.vec2_from_float_mat3_fs +KHR-GLES3.shaders.glsl_constructors.vec2_from_float_mat3_float_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec2_from_float_mat3_float_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec2_from_float_mat3x2_vs +KHR-GLES3.shaders.glsl_constructors.vec2_from_float_mat3x2_fs +KHR-GLES3.shaders.glsl_constructors.vec2_from_float_mat3x2_float_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec2_from_float_mat3x2_float_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec2_from_float_mat3x4_vs +KHR-GLES3.shaders.glsl_constructors.vec2_from_float_mat3x4_fs +KHR-GLES3.shaders.glsl_constructors.vec2_from_float_mat3x4_float_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec2_from_float_mat3x4_float_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec2_from_float_mat4_vs +KHR-GLES3.shaders.glsl_constructors.vec2_from_float_mat4_fs +KHR-GLES3.shaders.glsl_constructors.vec2_from_float_mat4_float_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec2_from_float_mat4_float_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec2_from_float_mat4x2_vs +KHR-GLES3.shaders.glsl_constructors.vec2_from_float_mat4x2_fs +KHR-GLES3.shaders.glsl_constructors.vec2_from_float_mat4x2_float_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec2_from_float_mat4x2_float_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec2_from_float_mat4x3_vs +KHR-GLES3.shaders.glsl_constructors.vec2_from_float_mat4x3_fs +KHR-GLES3.shaders.glsl_constructors.vec2_from_float_mat4x3_float_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec2_from_float_mat4x3_float_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec3_from_mat2_vs +KHR-GLES3.shaders.glsl_constructors.vec3_from_mat2_fs +KHR-GLES3.shaders.glsl_constructors.vec3_from_mat2_mat2_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec3_from_mat2_mat2_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec3_from_mat2x3_vs +KHR-GLES3.shaders.glsl_constructors.vec3_from_mat2x3_fs +KHR-GLES3.shaders.glsl_constructors.vec3_from_mat2x3_mat2x3_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec3_from_mat2x3_mat2x3_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec3_from_mat2x4_vs +KHR-GLES3.shaders.glsl_constructors.vec3_from_mat2x4_fs +KHR-GLES3.shaders.glsl_constructors.vec3_from_mat2x4_mat2x4_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec3_from_mat2x4_mat2x4_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec3_from_mat3_vs +KHR-GLES3.shaders.glsl_constructors.vec3_from_mat3_fs +KHR-GLES3.shaders.glsl_constructors.vec3_from_mat3_mat3_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec3_from_mat3_mat3_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec3_from_mat3x2_vs +KHR-GLES3.shaders.glsl_constructors.vec3_from_mat3x2_fs +KHR-GLES3.shaders.glsl_constructors.vec3_from_mat3x2_mat3x2_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec3_from_mat3x2_mat3x2_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec3_from_mat3x4_vs +KHR-GLES3.shaders.glsl_constructors.vec3_from_mat3x4_fs +KHR-GLES3.shaders.glsl_constructors.vec3_from_mat3x4_mat3x4_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec3_from_mat3x4_mat3x4_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec3_from_mat4_vs +KHR-GLES3.shaders.glsl_constructors.vec3_from_mat4_fs +KHR-GLES3.shaders.glsl_constructors.vec3_from_mat4_mat4_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec3_from_mat4_mat4_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec3_from_mat4x2_vs +KHR-GLES3.shaders.glsl_constructors.vec3_from_mat4x2_fs +KHR-GLES3.shaders.glsl_constructors.vec3_from_mat4x2_mat4x2_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec3_from_mat4x2_mat4x2_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec3_from_mat4x3_vs +KHR-GLES3.shaders.glsl_constructors.vec3_from_mat4x3_fs +KHR-GLES3.shaders.glsl_constructors.vec3_from_mat4x3_mat4x3_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec3_from_mat4x3_mat4x3_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec3_from_float_mat2_vs +KHR-GLES3.shaders.glsl_constructors.vec3_from_float_mat2_fs +KHR-GLES3.shaders.glsl_constructors.vec3_from_float_mat2_float_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec3_from_float_mat2_float_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec3_from_float_mat2x3_vs +KHR-GLES3.shaders.glsl_constructors.vec3_from_float_mat2x3_fs +KHR-GLES3.shaders.glsl_constructors.vec3_from_float_mat2x3_float_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec3_from_float_mat2x3_float_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec3_from_float_mat2x4_vs +KHR-GLES3.shaders.glsl_constructors.vec3_from_float_mat2x4_fs +KHR-GLES3.shaders.glsl_constructors.vec3_from_float_mat2x4_float_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec3_from_float_mat2x4_float_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec3_from_float_mat3_vs +KHR-GLES3.shaders.glsl_constructors.vec3_from_float_mat3_fs +KHR-GLES3.shaders.glsl_constructors.vec3_from_float_mat3_float_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec3_from_float_mat3_float_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec3_from_float_mat3x2_vs +KHR-GLES3.shaders.glsl_constructors.vec3_from_float_mat3x2_fs +KHR-GLES3.shaders.glsl_constructors.vec3_from_float_mat3x2_float_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec3_from_float_mat3x2_float_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec3_from_float_mat3x4_vs +KHR-GLES3.shaders.glsl_constructors.vec3_from_float_mat3x4_fs +KHR-GLES3.shaders.glsl_constructors.vec3_from_float_mat3x4_float_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec3_from_float_mat3x4_float_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec3_from_float_mat4_vs +KHR-GLES3.shaders.glsl_constructors.vec3_from_float_mat4_fs +KHR-GLES3.shaders.glsl_constructors.vec3_from_float_mat4_float_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec3_from_float_mat4_float_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec3_from_float_mat4x2_vs +KHR-GLES3.shaders.glsl_constructors.vec3_from_float_mat4x2_fs +KHR-GLES3.shaders.glsl_constructors.vec3_from_float_mat4x2_float_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec3_from_float_mat4x2_float_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec3_from_float_mat4x3_vs +KHR-GLES3.shaders.glsl_constructors.vec3_from_float_mat4x3_fs +KHR-GLES3.shaders.glsl_constructors.vec3_from_float_mat4x3_float_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec3_from_float_mat4x3_float_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec4_from_mat2_vs +KHR-GLES3.shaders.glsl_constructors.vec4_from_mat2_fs +KHR-GLES3.shaders.glsl_constructors.vec4_from_mat2_mat2_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec4_from_mat2_mat2_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec4_from_mat2x3_vs +KHR-GLES3.shaders.glsl_constructors.vec4_from_mat2x3_fs +KHR-GLES3.shaders.glsl_constructors.vec4_from_mat2x3_mat2x3_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec4_from_mat2x3_mat2x3_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec4_from_mat2x4_vs +KHR-GLES3.shaders.glsl_constructors.vec4_from_mat2x4_fs +KHR-GLES3.shaders.glsl_constructors.vec4_from_mat2x4_mat2x4_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec4_from_mat2x4_mat2x4_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec4_from_mat3_vs +KHR-GLES3.shaders.glsl_constructors.vec4_from_mat3_fs +KHR-GLES3.shaders.glsl_constructors.vec4_from_mat3_mat3_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec4_from_mat3_mat3_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec4_from_mat3x2_vs +KHR-GLES3.shaders.glsl_constructors.vec4_from_mat3x2_fs +KHR-GLES3.shaders.glsl_constructors.vec4_from_mat3x2_mat3x2_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec4_from_mat3x2_mat3x2_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec4_from_mat3x4_vs +KHR-GLES3.shaders.glsl_constructors.vec4_from_mat3x4_fs +KHR-GLES3.shaders.glsl_constructors.vec4_from_mat3x4_mat3x4_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec4_from_mat3x4_mat3x4_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec4_from_mat4_vs +KHR-GLES3.shaders.glsl_constructors.vec4_from_mat4_fs +KHR-GLES3.shaders.glsl_constructors.vec4_from_mat4_mat4_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec4_from_mat4_mat4_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec4_from_mat4x2_vs +KHR-GLES3.shaders.glsl_constructors.vec4_from_mat4x2_fs +KHR-GLES3.shaders.glsl_constructors.vec4_from_mat4x2_mat4x2_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec4_from_mat4x2_mat4x2_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec4_from_mat4x3_vs +KHR-GLES3.shaders.glsl_constructors.vec4_from_mat4x3_fs +KHR-GLES3.shaders.glsl_constructors.vec4_from_mat4x3_mat4x3_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec4_from_mat4x3_mat4x3_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec4_from_float_mat2_vs +KHR-GLES3.shaders.glsl_constructors.vec4_from_float_mat2_fs +KHR-GLES3.shaders.glsl_constructors.vec4_from_float_mat2_float_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec4_from_float_mat2_float_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec4_from_float_mat2x3_vs +KHR-GLES3.shaders.glsl_constructors.vec4_from_float_mat2x3_fs +KHR-GLES3.shaders.glsl_constructors.vec4_from_float_mat2x3_float_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec4_from_float_mat2x3_float_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec4_from_float_mat2x4_vs +KHR-GLES3.shaders.glsl_constructors.vec4_from_float_mat2x4_fs +KHR-GLES3.shaders.glsl_constructors.vec4_from_float_mat2x4_float_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec4_from_float_mat2x4_float_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec4_from_float_mat3_vs +KHR-GLES3.shaders.glsl_constructors.vec4_from_float_mat3_fs +KHR-GLES3.shaders.glsl_constructors.vec4_from_float_mat3_float_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec4_from_float_mat3_float_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec4_from_float_mat3x2_vs +KHR-GLES3.shaders.glsl_constructors.vec4_from_float_mat3x2_fs +KHR-GLES3.shaders.glsl_constructors.vec4_from_float_mat3x2_float_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec4_from_float_mat3x2_float_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec4_from_float_mat3x4_vs +KHR-GLES3.shaders.glsl_constructors.vec4_from_float_mat3x4_fs +KHR-GLES3.shaders.glsl_constructors.vec4_from_float_mat3x4_float_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec4_from_float_mat3x4_float_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec4_from_float_mat4_vs +KHR-GLES3.shaders.glsl_constructors.vec4_from_float_mat4_fs +KHR-GLES3.shaders.glsl_constructors.vec4_from_float_mat4_float_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec4_from_float_mat4_float_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec4_from_float_mat4x2_vs +KHR-GLES3.shaders.glsl_constructors.vec4_from_float_mat4x2_fs +KHR-GLES3.shaders.glsl_constructors.vec4_from_float_mat4x2_float_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec4_from_float_mat4x2_float_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec4_from_float_mat4x3_vs +KHR-GLES3.shaders.glsl_constructors.vec4_from_float_mat4x3_fs +KHR-GLES3.shaders.glsl_constructors.vec4_from_float_mat4x3_float_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec4_from_float_mat4x3_float_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_mat2_vs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_mat2_fs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_mat2_mat2_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_mat2_mat2_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_mat2x3_vs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_mat2x3_fs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_mat2x3_mat2x3_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_mat2x3_mat2x3_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_mat2x4_vs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_mat2x4_fs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_mat2x4_mat2x4_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_mat2x4_mat2x4_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_mat3_vs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_mat3_fs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_mat3_mat3_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_mat3_mat3_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_mat3x2_vs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_mat3x2_fs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_mat3x2_mat3x2_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_mat3x2_mat3x2_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_mat3x4_vs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_mat3x4_fs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_mat3x4_mat3x4_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_mat3x4_mat3x4_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_mat4_vs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_mat4_fs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_mat4_mat4_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_mat4_mat4_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_mat4x2_vs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_mat4x2_fs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_mat4x2_mat4x2_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_mat4x2_mat4x2_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_mat4x3_vs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_mat4x3_fs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_mat4x3_mat4x3_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_mat4x3_mat4x3_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_int_mat2_vs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_int_mat2_fs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_int_mat2_int_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_int_mat2_int_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_int_mat2x3_vs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_int_mat2x3_fs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_int_mat2x3_int_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_int_mat2x3_int_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_int_mat2x4_vs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_int_mat2x4_fs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_int_mat2x4_int_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_int_mat2x4_int_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_int_mat3_vs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_int_mat3_fs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_int_mat3_int_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_int_mat3_int_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_int_mat3x2_vs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_int_mat3x2_fs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_int_mat3x2_int_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_int_mat3x2_int_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_int_mat3x4_vs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_int_mat3x4_fs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_int_mat3x4_int_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_int_mat3x4_int_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_int_mat4_vs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_int_mat4_fs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_int_mat4_int_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_int_mat4_int_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_int_mat4x2_vs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_int_mat4x2_fs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_int_mat4x2_int_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_int_mat4x2_int_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_int_mat4x3_vs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_int_mat4x3_fs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_int_mat4x3_int_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_int_mat4x3_int_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_mat2_vs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_mat2_fs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_mat2_mat2_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_mat2_mat2_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_mat2x3_vs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_mat2x3_fs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_mat2x3_mat2x3_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_mat2x3_mat2x3_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_mat2x4_vs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_mat2x4_fs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_mat2x4_mat2x4_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_mat2x4_mat2x4_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_mat3_vs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_mat3_fs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_mat3_mat3_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_mat3_mat3_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_mat3x2_vs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_mat3x2_fs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_mat3x2_mat3x2_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_mat3x2_mat3x2_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_mat3x4_vs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_mat3x4_fs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_mat3x4_mat3x4_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_mat3x4_mat3x4_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_mat4_vs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_mat4_fs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_mat4_mat4_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_mat4_mat4_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_mat4x2_vs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_mat4x2_fs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_mat4x2_mat4x2_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_mat4x2_mat4x2_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_mat4x3_vs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_mat4x3_fs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_mat4x3_mat4x3_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_mat4x3_mat4x3_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_int_mat2_vs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_int_mat2_fs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_int_mat2_int_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_int_mat2_int_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_int_mat2x3_vs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_int_mat2x3_fs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_int_mat2x3_int_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_int_mat2x3_int_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_int_mat2x4_vs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_int_mat2x4_fs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_int_mat2x4_int_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_int_mat2x4_int_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_int_mat3_vs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_int_mat3_fs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_int_mat3_int_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_int_mat3_int_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_int_mat3x2_vs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_int_mat3x2_fs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_int_mat3x2_int_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_int_mat3x2_int_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_int_mat3x4_vs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_int_mat3x4_fs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_int_mat3x4_int_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_int_mat3x4_int_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_int_mat4_vs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_int_mat4_fs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_int_mat4_int_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_int_mat4_int_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_int_mat4x2_vs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_int_mat4x2_fs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_int_mat4x2_int_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_int_mat4x2_int_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_int_mat4x3_vs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_int_mat4x3_fs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_int_mat4x3_int_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_int_mat4x3_int_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_mat2_vs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_mat2_fs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_mat2_mat2_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_mat2_mat2_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_mat2x3_vs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_mat2x3_fs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_mat2x3_mat2x3_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_mat2x3_mat2x3_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_mat2x4_vs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_mat2x4_fs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_mat2x4_mat2x4_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_mat2x4_mat2x4_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_mat3_vs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_mat3_fs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_mat3_mat3_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_mat3_mat3_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_mat3x2_vs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_mat3x2_fs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_mat3x2_mat3x2_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_mat3x2_mat3x2_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_mat3x4_vs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_mat3x4_fs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_mat3x4_mat3x4_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_mat3x4_mat3x4_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_mat4_vs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_mat4_fs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_mat4_mat4_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_mat4_mat4_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_mat4x2_vs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_mat4x2_fs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_mat4x2_mat4x2_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_mat4x2_mat4x2_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_mat4x3_vs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_mat4x3_fs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_mat4x3_mat4x3_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_mat4x3_mat4x3_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_int_mat2_vs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_int_mat2_fs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_int_mat2_int_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_int_mat2_int_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_int_mat2x3_vs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_int_mat2x3_fs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_int_mat2x3_int_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_int_mat2x3_int_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_int_mat2x4_vs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_int_mat2x4_fs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_int_mat2x4_int_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_int_mat2x4_int_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_int_mat3_vs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_int_mat3_fs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_int_mat3_int_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_int_mat3_int_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_int_mat3x2_vs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_int_mat3x2_fs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_int_mat3x2_int_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_int_mat3x2_int_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_int_mat3x4_vs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_int_mat3x4_fs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_int_mat3x4_int_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_int_mat3x4_int_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_int_mat4_vs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_int_mat4_fs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_int_mat4_int_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_int_mat4_int_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_int_mat4x2_vs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_int_mat4x2_fs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_int_mat4x2_int_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_int_mat4x2_int_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_int_mat4x3_vs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_int_mat4x3_fs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_int_mat4x3_int_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_int_mat4x3_int_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_mat2_vs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_mat2_fs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_mat2_mat2_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_mat2_mat2_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_mat2x3_vs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_mat2x3_fs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_mat2x3_mat2x3_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_mat2x3_mat2x3_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_mat2x4_vs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_mat2x4_fs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_mat2x4_mat2x4_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_mat2x4_mat2x4_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_mat3_vs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_mat3_fs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_mat3_mat3_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_mat3_mat3_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_mat3x2_vs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_mat3x2_fs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_mat3x2_mat3x2_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_mat3x2_mat3x2_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_mat3x4_vs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_mat3x4_fs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_mat3x4_mat3x4_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_mat3x4_mat3x4_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_mat4_vs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_mat4_fs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_mat4_mat4_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_mat4_mat4_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_mat4x2_vs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_mat4x2_fs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_mat4x2_mat4x2_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_mat4x2_mat4x2_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_mat4x3_vs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_mat4x3_fs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_mat4x3_mat4x3_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_mat4x3_mat4x3_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_bool_mat2_vs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_bool_mat2_fs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_bool_mat2_bool_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_bool_mat2_bool_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_bool_mat2x3_vs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_bool_mat2x3_fs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_bool_mat2x3_bool_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_bool_mat2x3_bool_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_bool_mat2x4_vs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_bool_mat2x4_fs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_bool_mat2x4_bool_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_bool_mat2x4_bool_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_bool_mat3_vs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_bool_mat3_fs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_bool_mat3_bool_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_bool_mat3_bool_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_bool_mat3x2_vs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_bool_mat3x2_fs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_bool_mat3x2_bool_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_bool_mat3x2_bool_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_bool_mat3x4_vs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_bool_mat3x4_fs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_bool_mat3x4_bool_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_bool_mat3x4_bool_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_bool_mat4_vs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_bool_mat4_fs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_bool_mat4_bool_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_bool_mat4_bool_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_bool_mat4x2_vs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_bool_mat4x2_fs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_bool_mat4x2_bool_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_bool_mat4x2_bool_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_bool_mat4x3_vs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_bool_mat4x3_fs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_bool_mat4x3_bool_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_bool_mat4x3_bool_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_mat2_vs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_mat2_fs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_mat2_mat2_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_mat2_mat2_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_mat2x3_vs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_mat2x3_fs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_mat2x3_mat2x3_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_mat2x3_mat2x3_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_mat2x4_vs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_mat2x4_fs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_mat2x4_mat2x4_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_mat2x4_mat2x4_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_mat3_vs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_mat3_fs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_mat3_mat3_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_mat3_mat3_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_mat3x2_vs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_mat3x2_fs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_mat3x2_mat3x2_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_mat3x2_mat3x2_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_mat3x4_vs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_mat3x4_fs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_mat3x4_mat3x4_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_mat3x4_mat3x4_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_mat4_vs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_mat4_fs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_mat4_mat4_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_mat4_mat4_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_mat4x2_vs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_mat4x2_fs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_mat4x2_mat4x2_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_mat4x2_mat4x2_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_mat4x3_vs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_mat4x3_fs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_mat4x3_mat4x3_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_mat4x3_mat4x3_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_bool_mat2_vs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_bool_mat2_fs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_bool_mat2_bool_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_bool_mat2_bool_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_bool_mat2x3_vs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_bool_mat2x3_fs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_bool_mat2x3_bool_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_bool_mat2x3_bool_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_bool_mat2x4_vs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_bool_mat2x4_fs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_bool_mat2x4_bool_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_bool_mat2x4_bool_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_bool_mat3_vs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_bool_mat3_fs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_bool_mat3_bool_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_bool_mat3_bool_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_bool_mat3x2_vs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_bool_mat3x2_fs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_bool_mat3x2_bool_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_bool_mat3x2_bool_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_bool_mat3x4_vs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_bool_mat3x4_fs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_bool_mat3x4_bool_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_bool_mat3x4_bool_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_bool_mat4_vs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_bool_mat4_fs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_bool_mat4_bool_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_bool_mat4_bool_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_bool_mat4x2_vs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_bool_mat4x2_fs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_bool_mat4x2_bool_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_bool_mat4x2_bool_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_bool_mat4x3_vs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_bool_mat4x3_fs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_bool_mat4x3_bool_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_bool_mat4x3_bool_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_mat2_vs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_mat2_fs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_mat2_mat2_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_mat2_mat2_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_mat2x3_vs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_mat2x3_fs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_mat2x3_mat2x3_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_mat2x3_mat2x3_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_mat2x4_vs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_mat2x4_fs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_mat2x4_mat2x4_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_mat2x4_mat2x4_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_mat3_vs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_mat3_fs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_mat3_mat3_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_mat3_mat3_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_mat3x2_vs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_mat3x2_fs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_mat3x2_mat3x2_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_mat3x2_mat3x2_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_mat3x4_vs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_mat3x4_fs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_mat3x4_mat3x4_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_mat3x4_mat3x4_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_mat4_vs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_mat4_fs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_mat4_mat4_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_mat4_mat4_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_mat4x2_vs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_mat4x2_fs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_mat4x2_mat4x2_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_mat4x2_mat4x2_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_mat4x3_vs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_mat4x3_fs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_mat4x3_mat4x3_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_mat4x3_mat4x3_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_bool_mat2_vs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_bool_mat2_fs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_bool_mat2_bool_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_bool_mat2_bool_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_bool_mat2x3_vs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_bool_mat2x3_fs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_bool_mat2x3_bool_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_bool_mat2x3_bool_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_bool_mat2x4_vs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_bool_mat2x4_fs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_bool_mat2x4_bool_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_bool_mat2x4_bool_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_bool_mat3_vs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_bool_mat3_fs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_bool_mat3_bool_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_bool_mat3_bool_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_bool_mat3x2_vs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_bool_mat3x2_fs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_bool_mat3x2_bool_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_bool_mat3x2_bool_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_bool_mat3x4_vs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_bool_mat3x4_fs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_bool_mat3x4_bool_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_bool_mat3x4_bool_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_bool_mat4_vs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_bool_mat4_fs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_bool_mat4_bool_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_bool_mat4_bool_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_bool_mat4x2_vs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_bool_mat4x2_fs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_bool_mat4x2_bool_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_bool_mat4x2_bool_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_bool_mat4x3_vs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_bool_mat4x3_fs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_bool_mat4x3_bool_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_bool_mat4x3_bool_invalid_fs KHR-GLES3.shaders.shader_integer_mix.define KHR-GLES3.shaders.shader_integer_mix.prototypes-extension KHR-GLES3.shaders.shader_integer_mix.prototypes diff --git a/external/openglcts/data/mustpass/gles/khronos_mustpass/3.2.6.x/gles3-khr-master.txt b/external/openglcts/data/mustpass/gles/khronos_mustpass/3.2.6.x/gles3-khr-master.txt index abf2826..836915a 100644 --- a/external/openglcts/data/mustpass/gles/khronos_mustpass/3.2.6.x/gles3-khr-master.txt +++ b/external/openglcts/data/mustpass/gles/khronos_mustpass/3.2.6.x/gles3-khr-master.txt @@ -2579,6 +2579,654 @@ KHR-GLES3.shaders.uniform_block.random.all_shared_buffer.18 KHR-GLES3.shaders.uniform_block.random.all_shared_buffer.19 KHR-GLES3.shaders.uniform_block.common.precision_matching KHR-GLES3.shaders.uniform_block.common.name_matching +KHR-GLES3.shaders.glsl_constructors.vec2_from_mat2_vs +KHR-GLES3.shaders.glsl_constructors.vec2_from_mat2_fs +KHR-GLES3.shaders.glsl_constructors.vec2_from_mat2_mat2_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec2_from_mat2_mat2_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec2_from_mat2x3_vs +KHR-GLES3.shaders.glsl_constructors.vec2_from_mat2x3_fs +KHR-GLES3.shaders.glsl_constructors.vec2_from_mat2x3_mat2x3_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec2_from_mat2x3_mat2x3_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec2_from_mat2x4_vs +KHR-GLES3.shaders.glsl_constructors.vec2_from_mat2x4_fs +KHR-GLES3.shaders.glsl_constructors.vec2_from_mat2x4_mat2x4_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec2_from_mat2x4_mat2x4_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec2_from_mat3_vs +KHR-GLES3.shaders.glsl_constructors.vec2_from_mat3_fs +KHR-GLES3.shaders.glsl_constructors.vec2_from_mat3_mat3_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec2_from_mat3_mat3_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec2_from_mat3x2_vs +KHR-GLES3.shaders.glsl_constructors.vec2_from_mat3x2_fs +KHR-GLES3.shaders.glsl_constructors.vec2_from_mat3x2_mat3x2_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec2_from_mat3x2_mat3x2_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec2_from_mat3x4_vs +KHR-GLES3.shaders.glsl_constructors.vec2_from_mat3x4_fs +KHR-GLES3.shaders.glsl_constructors.vec2_from_mat3x4_mat3x4_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec2_from_mat3x4_mat3x4_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec2_from_mat4_vs +KHR-GLES3.shaders.glsl_constructors.vec2_from_mat4_fs +KHR-GLES3.shaders.glsl_constructors.vec2_from_mat4_mat4_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec2_from_mat4_mat4_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec2_from_mat4x2_vs +KHR-GLES3.shaders.glsl_constructors.vec2_from_mat4x2_fs +KHR-GLES3.shaders.glsl_constructors.vec2_from_mat4x2_mat4x2_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec2_from_mat4x2_mat4x2_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec2_from_mat4x3_vs +KHR-GLES3.shaders.glsl_constructors.vec2_from_mat4x3_fs +KHR-GLES3.shaders.glsl_constructors.vec2_from_mat4x3_mat4x3_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec2_from_mat4x3_mat4x3_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec2_from_float_mat2_vs +KHR-GLES3.shaders.glsl_constructors.vec2_from_float_mat2_fs +KHR-GLES3.shaders.glsl_constructors.vec2_from_float_mat2_float_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec2_from_float_mat2_float_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec2_from_float_mat2x3_vs +KHR-GLES3.shaders.glsl_constructors.vec2_from_float_mat2x3_fs +KHR-GLES3.shaders.glsl_constructors.vec2_from_float_mat2x3_float_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec2_from_float_mat2x3_float_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec2_from_float_mat2x4_vs +KHR-GLES3.shaders.glsl_constructors.vec2_from_float_mat2x4_fs +KHR-GLES3.shaders.glsl_constructors.vec2_from_float_mat2x4_float_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec2_from_float_mat2x4_float_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec2_from_float_mat3_vs +KHR-GLES3.shaders.glsl_constructors.vec2_from_float_mat3_fs +KHR-GLES3.shaders.glsl_constructors.vec2_from_float_mat3_float_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec2_from_float_mat3_float_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec2_from_float_mat3x2_vs +KHR-GLES3.shaders.glsl_constructors.vec2_from_float_mat3x2_fs +KHR-GLES3.shaders.glsl_constructors.vec2_from_float_mat3x2_float_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec2_from_float_mat3x2_float_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec2_from_float_mat3x4_vs +KHR-GLES3.shaders.glsl_constructors.vec2_from_float_mat3x4_fs +KHR-GLES3.shaders.glsl_constructors.vec2_from_float_mat3x4_float_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec2_from_float_mat3x4_float_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec2_from_float_mat4_vs +KHR-GLES3.shaders.glsl_constructors.vec2_from_float_mat4_fs +KHR-GLES3.shaders.glsl_constructors.vec2_from_float_mat4_float_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec2_from_float_mat4_float_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec2_from_float_mat4x2_vs +KHR-GLES3.shaders.glsl_constructors.vec2_from_float_mat4x2_fs +KHR-GLES3.shaders.glsl_constructors.vec2_from_float_mat4x2_float_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec2_from_float_mat4x2_float_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec2_from_float_mat4x3_vs +KHR-GLES3.shaders.glsl_constructors.vec2_from_float_mat4x3_fs +KHR-GLES3.shaders.glsl_constructors.vec2_from_float_mat4x3_float_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec2_from_float_mat4x3_float_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec3_from_mat2_vs +KHR-GLES3.shaders.glsl_constructors.vec3_from_mat2_fs +KHR-GLES3.shaders.glsl_constructors.vec3_from_mat2_mat2_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec3_from_mat2_mat2_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec3_from_mat2x3_vs +KHR-GLES3.shaders.glsl_constructors.vec3_from_mat2x3_fs +KHR-GLES3.shaders.glsl_constructors.vec3_from_mat2x3_mat2x3_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec3_from_mat2x3_mat2x3_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec3_from_mat2x4_vs +KHR-GLES3.shaders.glsl_constructors.vec3_from_mat2x4_fs +KHR-GLES3.shaders.glsl_constructors.vec3_from_mat2x4_mat2x4_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec3_from_mat2x4_mat2x4_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec3_from_mat3_vs +KHR-GLES3.shaders.glsl_constructors.vec3_from_mat3_fs +KHR-GLES3.shaders.glsl_constructors.vec3_from_mat3_mat3_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec3_from_mat3_mat3_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec3_from_mat3x2_vs +KHR-GLES3.shaders.glsl_constructors.vec3_from_mat3x2_fs +KHR-GLES3.shaders.glsl_constructors.vec3_from_mat3x2_mat3x2_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec3_from_mat3x2_mat3x2_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec3_from_mat3x4_vs +KHR-GLES3.shaders.glsl_constructors.vec3_from_mat3x4_fs +KHR-GLES3.shaders.glsl_constructors.vec3_from_mat3x4_mat3x4_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec3_from_mat3x4_mat3x4_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec3_from_mat4_vs +KHR-GLES3.shaders.glsl_constructors.vec3_from_mat4_fs +KHR-GLES3.shaders.glsl_constructors.vec3_from_mat4_mat4_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec3_from_mat4_mat4_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec3_from_mat4x2_vs +KHR-GLES3.shaders.glsl_constructors.vec3_from_mat4x2_fs +KHR-GLES3.shaders.glsl_constructors.vec3_from_mat4x2_mat4x2_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec3_from_mat4x2_mat4x2_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec3_from_mat4x3_vs +KHR-GLES3.shaders.glsl_constructors.vec3_from_mat4x3_fs +KHR-GLES3.shaders.glsl_constructors.vec3_from_mat4x3_mat4x3_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec3_from_mat4x3_mat4x3_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec3_from_float_mat2_vs +KHR-GLES3.shaders.glsl_constructors.vec3_from_float_mat2_fs +KHR-GLES3.shaders.glsl_constructors.vec3_from_float_mat2_float_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec3_from_float_mat2_float_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec3_from_float_mat2x3_vs +KHR-GLES3.shaders.glsl_constructors.vec3_from_float_mat2x3_fs +KHR-GLES3.shaders.glsl_constructors.vec3_from_float_mat2x3_float_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec3_from_float_mat2x3_float_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec3_from_float_mat2x4_vs +KHR-GLES3.shaders.glsl_constructors.vec3_from_float_mat2x4_fs +KHR-GLES3.shaders.glsl_constructors.vec3_from_float_mat2x4_float_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec3_from_float_mat2x4_float_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec3_from_float_mat3_vs +KHR-GLES3.shaders.glsl_constructors.vec3_from_float_mat3_fs +KHR-GLES3.shaders.glsl_constructors.vec3_from_float_mat3_float_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec3_from_float_mat3_float_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec3_from_float_mat3x2_vs +KHR-GLES3.shaders.glsl_constructors.vec3_from_float_mat3x2_fs +KHR-GLES3.shaders.glsl_constructors.vec3_from_float_mat3x2_float_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec3_from_float_mat3x2_float_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec3_from_float_mat3x4_vs +KHR-GLES3.shaders.glsl_constructors.vec3_from_float_mat3x4_fs +KHR-GLES3.shaders.glsl_constructors.vec3_from_float_mat3x4_float_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec3_from_float_mat3x4_float_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec3_from_float_mat4_vs +KHR-GLES3.shaders.glsl_constructors.vec3_from_float_mat4_fs +KHR-GLES3.shaders.glsl_constructors.vec3_from_float_mat4_float_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec3_from_float_mat4_float_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec3_from_float_mat4x2_vs +KHR-GLES3.shaders.glsl_constructors.vec3_from_float_mat4x2_fs +KHR-GLES3.shaders.glsl_constructors.vec3_from_float_mat4x2_float_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec3_from_float_mat4x2_float_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec3_from_float_mat4x3_vs +KHR-GLES3.shaders.glsl_constructors.vec3_from_float_mat4x3_fs +KHR-GLES3.shaders.glsl_constructors.vec3_from_float_mat4x3_float_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec3_from_float_mat4x3_float_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec4_from_mat2_vs +KHR-GLES3.shaders.glsl_constructors.vec4_from_mat2_fs +KHR-GLES3.shaders.glsl_constructors.vec4_from_mat2_mat2_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec4_from_mat2_mat2_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec4_from_mat2x3_vs +KHR-GLES3.shaders.glsl_constructors.vec4_from_mat2x3_fs +KHR-GLES3.shaders.glsl_constructors.vec4_from_mat2x3_mat2x3_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec4_from_mat2x3_mat2x3_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec4_from_mat2x4_vs +KHR-GLES3.shaders.glsl_constructors.vec4_from_mat2x4_fs +KHR-GLES3.shaders.glsl_constructors.vec4_from_mat2x4_mat2x4_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec4_from_mat2x4_mat2x4_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec4_from_mat3_vs +KHR-GLES3.shaders.glsl_constructors.vec4_from_mat3_fs +KHR-GLES3.shaders.glsl_constructors.vec4_from_mat3_mat3_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec4_from_mat3_mat3_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec4_from_mat3x2_vs +KHR-GLES3.shaders.glsl_constructors.vec4_from_mat3x2_fs +KHR-GLES3.shaders.glsl_constructors.vec4_from_mat3x2_mat3x2_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec4_from_mat3x2_mat3x2_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec4_from_mat3x4_vs +KHR-GLES3.shaders.glsl_constructors.vec4_from_mat3x4_fs +KHR-GLES3.shaders.glsl_constructors.vec4_from_mat3x4_mat3x4_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec4_from_mat3x4_mat3x4_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec4_from_mat4_vs +KHR-GLES3.shaders.glsl_constructors.vec4_from_mat4_fs +KHR-GLES3.shaders.glsl_constructors.vec4_from_mat4_mat4_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec4_from_mat4_mat4_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec4_from_mat4x2_vs +KHR-GLES3.shaders.glsl_constructors.vec4_from_mat4x2_fs +KHR-GLES3.shaders.glsl_constructors.vec4_from_mat4x2_mat4x2_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec4_from_mat4x2_mat4x2_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec4_from_mat4x3_vs +KHR-GLES3.shaders.glsl_constructors.vec4_from_mat4x3_fs +KHR-GLES3.shaders.glsl_constructors.vec4_from_mat4x3_mat4x3_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec4_from_mat4x3_mat4x3_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec4_from_float_mat2_vs +KHR-GLES3.shaders.glsl_constructors.vec4_from_float_mat2_fs +KHR-GLES3.shaders.glsl_constructors.vec4_from_float_mat2_float_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec4_from_float_mat2_float_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec4_from_float_mat2x3_vs +KHR-GLES3.shaders.glsl_constructors.vec4_from_float_mat2x3_fs +KHR-GLES3.shaders.glsl_constructors.vec4_from_float_mat2x3_float_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec4_from_float_mat2x3_float_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec4_from_float_mat2x4_vs +KHR-GLES3.shaders.glsl_constructors.vec4_from_float_mat2x4_fs +KHR-GLES3.shaders.glsl_constructors.vec4_from_float_mat2x4_float_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec4_from_float_mat2x4_float_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec4_from_float_mat3_vs +KHR-GLES3.shaders.glsl_constructors.vec4_from_float_mat3_fs +KHR-GLES3.shaders.glsl_constructors.vec4_from_float_mat3_float_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec4_from_float_mat3_float_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec4_from_float_mat3x2_vs +KHR-GLES3.shaders.glsl_constructors.vec4_from_float_mat3x2_fs +KHR-GLES3.shaders.glsl_constructors.vec4_from_float_mat3x2_float_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec4_from_float_mat3x2_float_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec4_from_float_mat3x4_vs +KHR-GLES3.shaders.glsl_constructors.vec4_from_float_mat3x4_fs +KHR-GLES3.shaders.glsl_constructors.vec4_from_float_mat3x4_float_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec4_from_float_mat3x4_float_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec4_from_float_mat4_vs +KHR-GLES3.shaders.glsl_constructors.vec4_from_float_mat4_fs +KHR-GLES3.shaders.glsl_constructors.vec4_from_float_mat4_float_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec4_from_float_mat4_float_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec4_from_float_mat4x2_vs +KHR-GLES3.shaders.glsl_constructors.vec4_from_float_mat4x2_fs +KHR-GLES3.shaders.glsl_constructors.vec4_from_float_mat4x2_float_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec4_from_float_mat4x2_float_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec4_from_float_mat4x3_vs +KHR-GLES3.shaders.glsl_constructors.vec4_from_float_mat4x3_fs +KHR-GLES3.shaders.glsl_constructors.vec4_from_float_mat4x3_float_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec4_from_float_mat4x3_float_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_mat2_vs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_mat2_fs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_mat2_mat2_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_mat2_mat2_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_mat2x3_vs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_mat2x3_fs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_mat2x3_mat2x3_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_mat2x3_mat2x3_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_mat2x4_vs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_mat2x4_fs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_mat2x4_mat2x4_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_mat2x4_mat2x4_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_mat3_vs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_mat3_fs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_mat3_mat3_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_mat3_mat3_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_mat3x2_vs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_mat3x2_fs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_mat3x2_mat3x2_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_mat3x2_mat3x2_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_mat3x4_vs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_mat3x4_fs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_mat3x4_mat3x4_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_mat3x4_mat3x4_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_mat4_vs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_mat4_fs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_mat4_mat4_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_mat4_mat4_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_mat4x2_vs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_mat4x2_fs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_mat4x2_mat4x2_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_mat4x2_mat4x2_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_mat4x3_vs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_mat4x3_fs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_mat4x3_mat4x3_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_mat4x3_mat4x3_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_int_mat2_vs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_int_mat2_fs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_int_mat2_int_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_int_mat2_int_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_int_mat2x3_vs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_int_mat2x3_fs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_int_mat2x3_int_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_int_mat2x3_int_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_int_mat2x4_vs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_int_mat2x4_fs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_int_mat2x4_int_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_int_mat2x4_int_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_int_mat3_vs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_int_mat3_fs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_int_mat3_int_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_int_mat3_int_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_int_mat3x2_vs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_int_mat3x2_fs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_int_mat3x2_int_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_int_mat3x2_int_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_int_mat3x4_vs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_int_mat3x4_fs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_int_mat3x4_int_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_int_mat3x4_int_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_int_mat4_vs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_int_mat4_fs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_int_mat4_int_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_int_mat4_int_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_int_mat4x2_vs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_int_mat4x2_fs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_int_mat4x2_int_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_int_mat4x2_int_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_int_mat4x3_vs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_int_mat4x3_fs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_int_mat4x3_int_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_int_mat4x3_int_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_mat2_vs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_mat2_fs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_mat2_mat2_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_mat2_mat2_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_mat2x3_vs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_mat2x3_fs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_mat2x3_mat2x3_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_mat2x3_mat2x3_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_mat2x4_vs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_mat2x4_fs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_mat2x4_mat2x4_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_mat2x4_mat2x4_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_mat3_vs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_mat3_fs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_mat3_mat3_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_mat3_mat3_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_mat3x2_vs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_mat3x2_fs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_mat3x2_mat3x2_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_mat3x2_mat3x2_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_mat3x4_vs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_mat3x4_fs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_mat3x4_mat3x4_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_mat3x4_mat3x4_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_mat4_vs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_mat4_fs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_mat4_mat4_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_mat4_mat4_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_mat4x2_vs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_mat4x2_fs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_mat4x2_mat4x2_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_mat4x2_mat4x2_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_mat4x3_vs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_mat4x3_fs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_mat4x3_mat4x3_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_mat4x3_mat4x3_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_int_mat2_vs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_int_mat2_fs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_int_mat2_int_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_int_mat2_int_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_int_mat2x3_vs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_int_mat2x3_fs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_int_mat2x3_int_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_int_mat2x3_int_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_int_mat2x4_vs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_int_mat2x4_fs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_int_mat2x4_int_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_int_mat2x4_int_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_int_mat3_vs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_int_mat3_fs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_int_mat3_int_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_int_mat3_int_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_int_mat3x2_vs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_int_mat3x2_fs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_int_mat3x2_int_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_int_mat3x2_int_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_int_mat3x4_vs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_int_mat3x4_fs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_int_mat3x4_int_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_int_mat3x4_int_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_int_mat4_vs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_int_mat4_fs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_int_mat4_int_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_int_mat4_int_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_int_mat4x2_vs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_int_mat4x2_fs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_int_mat4x2_int_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_int_mat4x2_int_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_int_mat4x3_vs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_int_mat4x3_fs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_int_mat4x3_int_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_int_mat4x3_int_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_mat2_vs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_mat2_fs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_mat2_mat2_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_mat2_mat2_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_mat2x3_vs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_mat2x3_fs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_mat2x3_mat2x3_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_mat2x3_mat2x3_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_mat2x4_vs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_mat2x4_fs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_mat2x4_mat2x4_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_mat2x4_mat2x4_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_mat3_vs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_mat3_fs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_mat3_mat3_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_mat3_mat3_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_mat3x2_vs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_mat3x2_fs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_mat3x2_mat3x2_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_mat3x2_mat3x2_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_mat3x4_vs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_mat3x4_fs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_mat3x4_mat3x4_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_mat3x4_mat3x4_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_mat4_vs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_mat4_fs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_mat4_mat4_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_mat4_mat4_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_mat4x2_vs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_mat4x2_fs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_mat4x2_mat4x2_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_mat4x2_mat4x2_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_mat4x3_vs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_mat4x3_fs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_mat4x3_mat4x3_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_mat4x3_mat4x3_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_int_mat2_vs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_int_mat2_fs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_int_mat2_int_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_int_mat2_int_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_int_mat2x3_vs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_int_mat2x3_fs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_int_mat2x3_int_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_int_mat2x3_int_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_int_mat2x4_vs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_int_mat2x4_fs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_int_mat2x4_int_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_int_mat2x4_int_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_int_mat3_vs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_int_mat3_fs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_int_mat3_int_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_int_mat3_int_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_int_mat3x2_vs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_int_mat3x2_fs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_int_mat3x2_int_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_int_mat3x2_int_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_int_mat3x4_vs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_int_mat3x4_fs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_int_mat3x4_int_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_int_mat3x4_int_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_int_mat4_vs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_int_mat4_fs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_int_mat4_int_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_int_mat4_int_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_int_mat4x2_vs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_int_mat4x2_fs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_int_mat4x2_int_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_int_mat4x2_int_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_int_mat4x3_vs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_int_mat4x3_fs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_int_mat4x3_int_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_int_mat4x3_int_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_mat2_vs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_mat2_fs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_mat2_mat2_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_mat2_mat2_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_mat2x3_vs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_mat2x3_fs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_mat2x3_mat2x3_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_mat2x3_mat2x3_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_mat2x4_vs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_mat2x4_fs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_mat2x4_mat2x4_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_mat2x4_mat2x4_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_mat3_vs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_mat3_fs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_mat3_mat3_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_mat3_mat3_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_mat3x2_vs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_mat3x2_fs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_mat3x2_mat3x2_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_mat3x2_mat3x2_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_mat3x4_vs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_mat3x4_fs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_mat3x4_mat3x4_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_mat3x4_mat3x4_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_mat4_vs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_mat4_fs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_mat4_mat4_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_mat4_mat4_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_mat4x2_vs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_mat4x2_fs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_mat4x2_mat4x2_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_mat4x2_mat4x2_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_mat4x3_vs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_mat4x3_fs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_mat4x3_mat4x3_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_mat4x3_mat4x3_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_bool_mat2_vs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_bool_mat2_fs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_bool_mat2_bool_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_bool_mat2_bool_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_bool_mat2x3_vs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_bool_mat2x3_fs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_bool_mat2x3_bool_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_bool_mat2x3_bool_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_bool_mat2x4_vs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_bool_mat2x4_fs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_bool_mat2x4_bool_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_bool_mat2x4_bool_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_bool_mat3_vs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_bool_mat3_fs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_bool_mat3_bool_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_bool_mat3_bool_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_bool_mat3x2_vs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_bool_mat3x2_fs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_bool_mat3x2_bool_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_bool_mat3x2_bool_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_bool_mat3x4_vs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_bool_mat3x4_fs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_bool_mat3x4_bool_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_bool_mat3x4_bool_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_bool_mat4_vs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_bool_mat4_fs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_bool_mat4_bool_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_bool_mat4_bool_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_bool_mat4x2_vs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_bool_mat4x2_fs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_bool_mat4x2_bool_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_bool_mat4x2_bool_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_bool_mat4x3_vs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_bool_mat4x3_fs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_bool_mat4x3_bool_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_bool_mat4x3_bool_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_mat2_vs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_mat2_fs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_mat2_mat2_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_mat2_mat2_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_mat2x3_vs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_mat2x3_fs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_mat2x3_mat2x3_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_mat2x3_mat2x3_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_mat2x4_vs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_mat2x4_fs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_mat2x4_mat2x4_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_mat2x4_mat2x4_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_mat3_vs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_mat3_fs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_mat3_mat3_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_mat3_mat3_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_mat3x2_vs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_mat3x2_fs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_mat3x2_mat3x2_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_mat3x2_mat3x2_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_mat3x4_vs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_mat3x4_fs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_mat3x4_mat3x4_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_mat3x4_mat3x4_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_mat4_vs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_mat4_fs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_mat4_mat4_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_mat4_mat4_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_mat4x2_vs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_mat4x2_fs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_mat4x2_mat4x2_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_mat4x2_mat4x2_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_mat4x3_vs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_mat4x3_fs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_mat4x3_mat4x3_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_mat4x3_mat4x3_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_bool_mat2_vs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_bool_mat2_fs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_bool_mat2_bool_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_bool_mat2_bool_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_bool_mat2x3_vs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_bool_mat2x3_fs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_bool_mat2x3_bool_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_bool_mat2x3_bool_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_bool_mat2x4_vs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_bool_mat2x4_fs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_bool_mat2x4_bool_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_bool_mat2x4_bool_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_bool_mat3_vs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_bool_mat3_fs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_bool_mat3_bool_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_bool_mat3_bool_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_bool_mat3x2_vs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_bool_mat3x2_fs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_bool_mat3x2_bool_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_bool_mat3x2_bool_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_bool_mat3x4_vs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_bool_mat3x4_fs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_bool_mat3x4_bool_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_bool_mat3x4_bool_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_bool_mat4_vs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_bool_mat4_fs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_bool_mat4_bool_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_bool_mat4_bool_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_bool_mat4x2_vs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_bool_mat4x2_fs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_bool_mat4x2_bool_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_bool_mat4x2_bool_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_bool_mat4x3_vs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_bool_mat4x3_fs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_bool_mat4x3_bool_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_bool_mat4x3_bool_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_mat2_vs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_mat2_fs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_mat2_mat2_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_mat2_mat2_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_mat2x3_vs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_mat2x3_fs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_mat2x3_mat2x3_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_mat2x3_mat2x3_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_mat2x4_vs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_mat2x4_fs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_mat2x4_mat2x4_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_mat2x4_mat2x4_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_mat3_vs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_mat3_fs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_mat3_mat3_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_mat3_mat3_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_mat3x2_vs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_mat3x2_fs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_mat3x2_mat3x2_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_mat3x2_mat3x2_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_mat3x4_vs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_mat3x4_fs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_mat3x4_mat3x4_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_mat3x4_mat3x4_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_mat4_vs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_mat4_fs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_mat4_mat4_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_mat4_mat4_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_mat4x2_vs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_mat4x2_fs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_mat4x2_mat4x2_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_mat4x2_mat4x2_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_mat4x3_vs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_mat4x3_fs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_mat4x3_mat4x3_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_mat4x3_mat4x3_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_bool_mat2_vs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_bool_mat2_fs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_bool_mat2_bool_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_bool_mat2_bool_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_bool_mat2x3_vs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_bool_mat2x3_fs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_bool_mat2x3_bool_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_bool_mat2x3_bool_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_bool_mat2x4_vs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_bool_mat2x4_fs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_bool_mat2x4_bool_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_bool_mat2x4_bool_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_bool_mat3_vs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_bool_mat3_fs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_bool_mat3_bool_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_bool_mat3_bool_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_bool_mat3x2_vs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_bool_mat3x2_fs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_bool_mat3x2_bool_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_bool_mat3x2_bool_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_bool_mat3x4_vs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_bool_mat3x4_fs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_bool_mat3x4_bool_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_bool_mat3x4_bool_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_bool_mat4_vs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_bool_mat4_fs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_bool_mat4_bool_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_bool_mat4_bool_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_bool_mat4x2_vs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_bool_mat4x2_fs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_bool_mat4x2_bool_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_bool_mat4x2_bool_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_bool_mat4x3_vs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_bool_mat4x3_fs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_bool_mat4x3_bool_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_bool_mat4x3_bool_invalid_fs KHR-GLES3.shaders.shader_integer_mix.define KHR-GLES3.shaders.shader_integer_mix.prototypes-extension KHR-GLES3.shaders.shader_integer_mix.prototypes diff --git a/external/openglcts/data/mustpass/gles/khronos_mustpass/master/gles3-khr-master.txt b/external/openglcts/data/mustpass/gles/khronos_mustpass/master/gles3-khr-master.txt index abf2826..836915a 100644 --- a/external/openglcts/data/mustpass/gles/khronos_mustpass/master/gles3-khr-master.txt +++ b/external/openglcts/data/mustpass/gles/khronos_mustpass/master/gles3-khr-master.txt @@ -2579,6 +2579,654 @@ KHR-GLES3.shaders.uniform_block.random.all_shared_buffer.18 KHR-GLES3.shaders.uniform_block.random.all_shared_buffer.19 KHR-GLES3.shaders.uniform_block.common.precision_matching KHR-GLES3.shaders.uniform_block.common.name_matching +KHR-GLES3.shaders.glsl_constructors.vec2_from_mat2_vs +KHR-GLES3.shaders.glsl_constructors.vec2_from_mat2_fs +KHR-GLES3.shaders.glsl_constructors.vec2_from_mat2_mat2_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec2_from_mat2_mat2_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec2_from_mat2x3_vs +KHR-GLES3.shaders.glsl_constructors.vec2_from_mat2x3_fs +KHR-GLES3.shaders.glsl_constructors.vec2_from_mat2x3_mat2x3_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec2_from_mat2x3_mat2x3_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec2_from_mat2x4_vs +KHR-GLES3.shaders.glsl_constructors.vec2_from_mat2x4_fs +KHR-GLES3.shaders.glsl_constructors.vec2_from_mat2x4_mat2x4_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec2_from_mat2x4_mat2x4_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec2_from_mat3_vs +KHR-GLES3.shaders.glsl_constructors.vec2_from_mat3_fs +KHR-GLES3.shaders.glsl_constructors.vec2_from_mat3_mat3_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec2_from_mat3_mat3_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec2_from_mat3x2_vs +KHR-GLES3.shaders.glsl_constructors.vec2_from_mat3x2_fs +KHR-GLES3.shaders.glsl_constructors.vec2_from_mat3x2_mat3x2_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec2_from_mat3x2_mat3x2_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec2_from_mat3x4_vs +KHR-GLES3.shaders.glsl_constructors.vec2_from_mat3x4_fs +KHR-GLES3.shaders.glsl_constructors.vec2_from_mat3x4_mat3x4_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec2_from_mat3x4_mat3x4_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec2_from_mat4_vs +KHR-GLES3.shaders.glsl_constructors.vec2_from_mat4_fs +KHR-GLES3.shaders.glsl_constructors.vec2_from_mat4_mat4_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec2_from_mat4_mat4_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec2_from_mat4x2_vs +KHR-GLES3.shaders.glsl_constructors.vec2_from_mat4x2_fs +KHR-GLES3.shaders.glsl_constructors.vec2_from_mat4x2_mat4x2_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec2_from_mat4x2_mat4x2_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec2_from_mat4x3_vs +KHR-GLES3.shaders.glsl_constructors.vec2_from_mat4x3_fs +KHR-GLES3.shaders.glsl_constructors.vec2_from_mat4x3_mat4x3_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec2_from_mat4x3_mat4x3_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec2_from_float_mat2_vs +KHR-GLES3.shaders.glsl_constructors.vec2_from_float_mat2_fs +KHR-GLES3.shaders.glsl_constructors.vec2_from_float_mat2_float_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec2_from_float_mat2_float_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec2_from_float_mat2x3_vs +KHR-GLES3.shaders.glsl_constructors.vec2_from_float_mat2x3_fs +KHR-GLES3.shaders.glsl_constructors.vec2_from_float_mat2x3_float_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec2_from_float_mat2x3_float_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec2_from_float_mat2x4_vs +KHR-GLES3.shaders.glsl_constructors.vec2_from_float_mat2x4_fs +KHR-GLES3.shaders.glsl_constructors.vec2_from_float_mat2x4_float_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec2_from_float_mat2x4_float_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec2_from_float_mat3_vs +KHR-GLES3.shaders.glsl_constructors.vec2_from_float_mat3_fs +KHR-GLES3.shaders.glsl_constructors.vec2_from_float_mat3_float_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec2_from_float_mat3_float_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec2_from_float_mat3x2_vs +KHR-GLES3.shaders.glsl_constructors.vec2_from_float_mat3x2_fs +KHR-GLES3.shaders.glsl_constructors.vec2_from_float_mat3x2_float_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec2_from_float_mat3x2_float_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec2_from_float_mat3x4_vs +KHR-GLES3.shaders.glsl_constructors.vec2_from_float_mat3x4_fs +KHR-GLES3.shaders.glsl_constructors.vec2_from_float_mat3x4_float_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec2_from_float_mat3x4_float_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec2_from_float_mat4_vs +KHR-GLES3.shaders.glsl_constructors.vec2_from_float_mat4_fs +KHR-GLES3.shaders.glsl_constructors.vec2_from_float_mat4_float_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec2_from_float_mat4_float_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec2_from_float_mat4x2_vs +KHR-GLES3.shaders.glsl_constructors.vec2_from_float_mat4x2_fs +KHR-GLES3.shaders.glsl_constructors.vec2_from_float_mat4x2_float_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec2_from_float_mat4x2_float_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec2_from_float_mat4x3_vs +KHR-GLES3.shaders.glsl_constructors.vec2_from_float_mat4x3_fs +KHR-GLES3.shaders.glsl_constructors.vec2_from_float_mat4x3_float_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec2_from_float_mat4x3_float_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec3_from_mat2_vs +KHR-GLES3.shaders.glsl_constructors.vec3_from_mat2_fs +KHR-GLES3.shaders.glsl_constructors.vec3_from_mat2_mat2_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec3_from_mat2_mat2_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec3_from_mat2x3_vs +KHR-GLES3.shaders.glsl_constructors.vec3_from_mat2x3_fs +KHR-GLES3.shaders.glsl_constructors.vec3_from_mat2x3_mat2x3_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec3_from_mat2x3_mat2x3_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec3_from_mat2x4_vs +KHR-GLES3.shaders.glsl_constructors.vec3_from_mat2x4_fs +KHR-GLES3.shaders.glsl_constructors.vec3_from_mat2x4_mat2x4_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec3_from_mat2x4_mat2x4_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec3_from_mat3_vs +KHR-GLES3.shaders.glsl_constructors.vec3_from_mat3_fs +KHR-GLES3.shaders.glsl_constructors.vec3_from_mat3_mat3_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec3_from_mat3_mat3_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec3_from_mat3x2_vs +KHR-GLES3.shaders.glsl_constructors.vec3_from_mat3x2_fs +KHR-GLES3.shaders.glsl_constructors.vec3_from_mat3x2_mat3x2_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec3_from_mat3x2_mat3x2_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec3_from_mat3x4_vs +KHR-GLES3.shaders.glsl_constructors.vec3_from_mat3x4_fs +KHR-GLES3.shaders.glsl_constructors.vec3_from_mat3x4_mat3x4_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec3_from_mat3x4_mat3x4_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec3_from_mat4_vs +KHR-GLES3.shaders.glsl_constructors.vec3_from_mat4_fs +KHR-GLES3.shaders.glsl_constructors.vec3_from_mat4_mat4_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec3_from_mat4_mat4_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec3_from_mat4x2_vs +KHR-GLES3.shaders.glsl_constructors.vec3_from_mat4x2_fs +KHR-GLES3.shaders.glsl_constructors.vec3_from_mat4x2_mat4x2_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec3_from_mat4x2_mat4x2_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec3_from_mat4x3_vs +KHR-GLES3.shaders.glsl_constructors.vec3_from_mat4x3_fs +KHR-GLES3.shaders.glsl_constructors.vec3_from_mat4x3_mat4x3_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec3_from_mat4x3_mat4x3_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec3_from_float_mat2_vs +KHR-GLES3.shaders.glsl_constructors.vec3_from_float_mat2_fs +KHR-GLES3.shaders.glsl_constructors.vec3_from_float_mat2_float_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec3_from_float_mat2_float_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec3_from_float_mat2x3_vs +KHR-GLES3.shaders.glsl_constructors.vec3_from_float_mat2x3_fs +KHR-GLES3.shaders.glsl_constructors.vec3_from_float_mat2x3_float_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec3_from_float_mat2x3_float_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec3_from_float_mat2x4_vs +KHR-GLES3.shaders.glsl_constructors.vec3_from_float_mat2x4_fs +KHR-GLES3.shaders.glsl_constructors.vec3_from_float_mat2x4_float_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec3_from_float_mat2x4_float_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec3_from_float_mat3_vs +KHR-GLES3.shaders.glsl_constructors.vec3_from_float_mat3_fs +KHR-GLES3.shaders.glsl_constructors.vec3_from_float_mat3_float_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec3_from_float_mat3_float_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec3_from_float_mat3x2_vs +KHR-GLES3.shaders.glsl_constructors.vec3_from_float_mat3x2_fs +KHR-GLES3.shaders.glsl_constructors.vec3_from_float_mat3x2_float_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec3_from_float_mat3x2_float_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec3_from_float_mat3x4_vs +KHR-GLES3.shaders.glsl_constructors.vec3_from_float_mat3x4_fs +KHR-GLES3.shaders.glsl_constructors.vec3_from_float_mat3x4_float_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec3_from_float_mat3x4_float_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec3_from_float_mat4_vs +KHR-GLES3.shaders.glsl_constructors.vec3_from_float_mat4_fs +KHR-GLES3.shaders.glsl_constructors.vec3_from_float_mat4_float_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec3_from_float_mat4_float_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec3_from_float_mat4x2_vs +KHR-GLES3.shaders.glsl_constructors.vec3_from_float_mat4x2_fs +KHR-GLES3.shaders.glsl_constructors.vec3_from_float_mat4x2_float_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec3_from_float_mat4x2_float_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec3_from_float_mat4x3_vs +KHR-GLES3.shaders.glsl_constructors.vec3_from_float_mat4x3_fs +KHR-GLES3.shaders.glsl_constructors.vec3_from_float_mat4x3_float_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec3_from_float_mat4x3_float_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec4_from_mat2_vs +KHR-GLES3.shaders.glsl_constructors.vec4_from_mat2_fs +KHR-GLES3.shaders.glsl_constructors.vec4_from_mat2_mat2_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec4_from_mat2_mat2_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec4_from_mat2x3_vs +KHR-GLES3.shaders.glsl_constructors.vec4_from_mat2x3_fs +KHR-GLES3.shaders.glsl_constructors.vec4_from_mat2x3_mat2x3_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec4_from_mat2x3_mat2x3_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec4_from_mat2x4_vs +KHR-GLES3.shaders.glsl_constructors.vec4_from_mat2x4_fs +KHR-GLES3.shaders.glsl_constructors.vec4_from_mat2x4_mat2x4_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec4_from_mat2x4_mat2x4_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec4_from_mat3_vs +KHR-GLES3.shaders.glsl_constructors.vec4_from_mat3_fs +KHR-GLES3.shaders.glsl_constructors.vec4_from_mat3_mat3_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec4_from_mat3_mat3_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec4_from_mat3x2_vs +KHR-GLES3.shaders.glsl_constructors.vec4_from_mat3x2_fs +KHR-GLES3.shaders.glsl_constructors.vec4_from_mat3x2_mat3x2_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec4_from_mat3x2_mat3x2_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec4_from_mat3x4_vs +KHR-GLES3.shaders.glsl_constructors.vec4_from_mat3x4_fs +KHR-GLES3.shaders.glsl_constructors.vec4_from_mat3x4_mat3x4_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec4_from_mat3x4_mat3x4_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec4_from_mat4_vs +KHR-GLES3.shaders.glsl_constructors.vec4_from_mat4_fs +KHR-GLES3.shaders.glsl_constructors.vec4_from_mat4_mat4_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec4_from_mat4_mat4_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec4_from_mat4x2_vs +KHR-GLES3.shaders.glsl_constructors.vec4_from_mat4x2_fs +KHR-GLES3.shaders.glsl_constructors.vec4_from_mat4x2_mat4x2_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec4_from_mat4x2_mat4x2_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec4_from_mat4x3_vs +KHR-GLES3.shaders.glsl_constructors.vec4_from_mat4x3_fs +KHR-GLES3.shaders.glsl_constructors.vec4_from_mat4x3_mat4x3_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec4_from_mat4x3_mat4x3_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec4_from_float_mat2_vs +KHR-GLES3.shaders.glsl_constructors.vec4_from_float_mat2_fs +KHR-GLES3.shaders.glsl_constructors.vec4_from_float_mat2_float_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec4_from_float_mat2_float_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec4_from_float_mat2x3_vs +KHR-GLES3.shaders.glsl_constructors.vec4_from_float_mat2x3_fs +KHR-GLES3.shaders.glsl_constructors.vec4_from_float_mat2x3_float_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec4_from_float_mat2x3_float_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec4_from_float_mat2x4_vs +KHR-GLES3.shaders.glsl_constructors.vec4_from_float_mat2x4_fs +KHR-GLES3.shaders.glsl_constructors.vec4_from_float_mat2x4_float_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec4_from_float_mat2x4_float_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec4_from_float_mat3_vs +KHR-GLES3.shaders.glsl_constructors.vec4_from_float_mat3_fs +KHR-GLES3.shaders.glsl_constructors.vec4_from_float_mat3_float_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec4_from_float_mat3_float_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec4_from_float_mat3x2_vs +KHR-GLES3.shaders.glsl_constructors.vec4_from_float_mat3x2_fs +KHR-GLES3.shaders.glsl_constructors.vec4_from_float_mat3x2_float_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec4_from_float_mat3x2_float_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec4_from_float_mat3x4_vs +KHR-GLES3.shaders.glsl_constructors.vec4_from_float_mat3x4_fs +KHR-GLES3.shaders.glsl_constructors.vec4_from_float_mat3x4_float_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec4_from_float_mat3x4_float_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec4_from_float_mat4_vs +KHR-GLES3.shaders.glsl_constructors.vec4_from_float_mat4_fs +KHR-GLES3.shaders.glsl_constructors.vec4_from_float_mat4_float_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec4_from_float_mat4_float_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec4_from_float_mat4x2_vs +KHR-GLES3.shaders.glsl_constructors.vec4_from_float_mat4x2_fs +KHR-GLES3.shaders.glsl_constructors.vec4_from_float_mat4x2_float_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec4_from_float_mat4x2_float_invalid_fs +KHR-GLES3.shaders.glsl_constructors.vec4_from_float_mat4x3_vs +KHR-GLES3.shaders.glsl_constructors.vec4_from_float_mat4x3_fs +KHR-GLES3.shaders.glsl_constructors.vec4_from_float_mat4x3_float_invalid_vs +KHR-GLES3.shaders.glsl_constructors.vec4_from_float_mat4x3_float_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_mat2_vs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_mat2_fs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_mat2_mat2_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_mat2_mat2_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_mat2x3_vs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_mat2x3_fs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_mat2x3_mat2x3_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_mat2x3_mat2x3_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_mat2x4_vs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_mat2x4_fs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_mat2x4_mat2x4_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_mat2x4_mat2x4_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_mat3_vs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_mat3_fs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_mat3_mat3_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_mat3_mat3_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_mat3x2_vs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_mat3x2_fs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_mat3x2_mat3x2_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_mat3x2_mat3x2_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_mat3x4_vs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_mat3x4_fs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_mat3x4_mat3x4_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_mat3x4_mat3x4_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_mat4_vs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_mat4_fs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_mat4_mat4_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_mat4_mat4_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_mat4x2_vs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_mat4x2_fs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_mat4x2_mat4x2_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_mat4x2_mat4x2_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_mat4x3_vs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_mat4x3_fs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_mat4x3_mat4x3_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_mat4x3_mat4x3_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_int_mat2_vs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_int_mat2_fs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_int_mat2_int_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_int_mat2_int_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_int_mat2x3_vs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_int_mat2x3_fs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_int_mat2x3_int_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_int_mat2x3_int_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_int_mat2x4_vs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_int_mat2x4_fs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_int_mat2x4_int_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_int_mat2x4_int_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_int_mat3_vs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_int_mat3_fs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_int_mat3_int_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_int_mat3_int_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_int_mat3x2_vs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_int_mat3x2_fs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_int_mat3x2_int_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_int_mat3x2_int_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_int_mat3x4_vs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_int_mat3x4_fs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_int_mat3x4_int_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_int_mat3x4_int_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_int_mat4_vs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_int_mat4_fs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_int_mat4_int_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_int_mat4_int_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_int_mat4x2_vs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_int_mat4x2_fs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_int_mat4x2_int_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_int_mat4x2_int_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_int_mat4x3_vs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_int_mat4x3_fs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_int_mat4x3_int_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec2_from_int_mat4x3_int_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_mat2_vs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_mat2_fs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_mat2_mat2_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_mat2_mat2_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_mat2x3_vs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_mat2x3_fs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_mat2x3_mat2x3_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_mat2x3_mat2x3_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_mat2x4_vs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_mat2x4_fs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_mat2x4_mat2x4_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_mat2x4_mat2x4_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_mat3_vs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_mat3_fs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_mat3_mat3_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_mat3_mat3_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_mat3x2_vs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_mat3x2_fs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_mat3x2_mat3x2_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_mat3x2_mat3x2_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_mat3x4_vs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_mat3x4_fs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_mat3x4_mat3x4_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_mat3x4_mat3x4_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_mat4_vs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_mat4_fs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_mat4_mat4_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_mat4_mat4_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_mat4x2_vs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_mat4x2_fs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_mat4x2_mat4x2_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_mat4x2_mat4x2_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_mat4x3_vs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_mat4x3_fs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_mat4x3_mat4x3_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_mat4x3_mat4x3_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_int_mat2_vs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_int_mat2_fs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_int_mat2_int_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_int_mat2_int_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_int_mat2x3_vs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_int_mat2x3_fs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_int_mat2x3_int_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_int_mat2x3_int_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_int_mat2x4_vs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_int_mat2x4_fs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_int_mat2x4_int_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_int_mat2x4_int_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_int_mat3_vs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_int_mat3_fs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_int_mat3_int_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_int_mat3_int_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_int_mat3x2_vs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_int_mat3x2_fs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_int_mat3x2_int_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_int_mat3x2_int_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_int_mat3x4_vs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_int_mat3x4_fs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_int_mat3x4_int_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_int_mat3x4_int_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_int_mat4_vs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_int_mat4_fs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_int_mat4_int_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_int_mat4_int_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_int_mat4x2_vs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_int_mat4x2_fs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_int_mat4x2_int_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_int_mat4x2_int_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_int_mat4x3_vs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_int_mat4x3_fs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_int_mat4x3_int_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec3_from_int_mat4x3_int_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_mat2_vs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_mat2_fs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_mat2_mat2_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_mat2_mat2_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_mat2x3_vs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_mat2x3_fs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_mat2x3_mat2x3_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_mat2x3_mat2x3_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_mat2x4_vs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_mat2x4_fs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_mat2x4_mat2x4_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_mat2x4_mat2x4_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_mat3_vs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_mat3_fs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_mat3_mat3_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_mat3_mat3_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_mat3x2_vs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_mat3x2_fs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_mat3x2_mat3x2_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_mat3x2_mat3x2_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_mat3x4_vs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_mat3x4_fs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_mat3x4_mat3x4_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_mat3x4_mat3x4_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_mat4_vs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_mat4_fs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_mat4_mat4_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_mat4_mat4_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_mat4x2_vs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_mat4x2_fs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_mat4x2_mat4x2_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_mat4x2_mat4x2_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_mat4x3_vs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_mat4x3_fs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_mat4x3_mat4x3_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_mat4x3_mat4x3_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_int_mat2_vs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_int_mat2_fs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_int_mat2_int_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_int_mat2_int_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_int_mat2x3_vs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_int_mat2x3_fs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_int_mat2x3_int_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_int_mat2x3_int_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_int_mat2x4_vs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_int_mat2x4_fs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_int_mat2x4_int_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_int_mat2x4_int_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_int_mat3_vs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_int_mat3_fs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_int_mat3_int_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_int_mat3_int_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_int_mat3x2_vs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_int_mat3x2_fs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_int_mat3x2_int_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_int_mat3x2_int_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_int_mat3x4_vs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_int_mat3x4_fs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_int_mat3x4_int_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_int_mat3x4_int_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_int_mat4_vs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_int_mat4_fs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_int_mat4_int_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_int_mat4_int_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_int_mat4x2_vs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_int_mat4x2_fs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_int_mat4x2_int_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_int_mat4x2_int_invalid_fs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_int_mat4x3_vs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_int_mat4x3_fs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_int_mat4x3_int_invalid_vs +KHR-GLES3.shaders.glsl_constructors.ivec4_from_int_mat4x3_int_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_mat2_vs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_mat2_fs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_mat2_mat2_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_mat2_mat2_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_mat2x3_vs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_mat2x3_fs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_mat2x3_mat2x3_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_mat2x3_mat2x3_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_mat2x4_vs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_mat2x4_fs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_mat2x4_mat2x4_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_mat2x4_mat2x4_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_mat3_vs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_mat3_fs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_mat3_mat3_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_mat3_mat3_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_mat3x2_vs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_mat3x2_fs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_mat3x2_mat3x2_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_mat3x2_mat3x2_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_mat3x4_vs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_mat3x4_fs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_mat3x4_mat3x4_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_mat3x4_mat3x4_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_mat4_vs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_mat4_fs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_mat4_mat4_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_mat4_mat4_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_mat4x2_vs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_mat4x2_fs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_mat4x2_mat4x2_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_mat4x2_mat4x2_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_mat4x3_vs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_mat4x3_fs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_mat4x3_mat4x3_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_mat4x3_mat4x3_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_bool_mat2_vs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_bool_mat2_fs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_bool_mat2_bool_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_bool_mat2_bool_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_bool_mat2x3_vs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_bool_mat2x3_fs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_bool_mat2x3_bool_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_bool_mat2x3_bool_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_bool_mat2x4_vs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_bool_mat2x4_fs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_bool_mat2x4_bool_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_bool_mat2x4_bool_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_bool_mat3_vs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_bool_mat3_fs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_bool_mat3_bool_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_bool_mat3_bool_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_bool_mat3x2_vs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_bool_mat3x2_fs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_bool_mat3x2_bool_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_bool_mat3x2_bool_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_bool_mat3x4_vs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_bool_mat3x4_fs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_bool_mat3x4_bool_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_bool_mat3x4_bool_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_bool_mat4_vs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_bool_mat4_fs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_bool_mat4_bool_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_bool_mat4_bool_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_bool_mat4x2_vs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_bool_mat4x2_fs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_bool_mat4x2_bool_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_bool_mat4x2_bool_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_bool_mat4x3_vs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_bool_mat4x3_fs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_bool_mat4x3_bool_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec2_from_bool_mat4x3_bool_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_mat2_vs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_mat2_fs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_mat2_mat2_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_mat2_mat2_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_mat2x3_vs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_mat2x3_fs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_mat2x3_mat2x3_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_mat2x3_mat2x3_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_mat2x4_vs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_mat2x4_fs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_mat2x4_mat2x4_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_mat2x4_mat2x4_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_mat3_vs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_mat3_fs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_mat3_mat3_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_mat3_mat3_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_mat3x2_vs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_mat3x2_fs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_mat3x2_mat3x2_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_mat3x2_mat3x2_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_mat3x4_vs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_mat3x4_fs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_mat3x4_mat3x4_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_mat3x4_mat3x4_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_mat4_vs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_mat4_fs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_mat4_mat4_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_mat4_mat4_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_mat4x2_vs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_mat4x2_fs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_mat4x2_mat4x2_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_mat4x2_mat4x2_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_mat4x3_vs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_mat4x3_fs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_mat4x3_mat4x3_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_mat4x3_mat4x3_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_bool_mat2_vs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_bool_mat2_fs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_bool_mat2_bool_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_bool_mat2_bool_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_bool_mat2x3_vs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_bool_mat2x3_fs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_bool_mat2x3_bool_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_bool_mat2x3_bool_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_bool_mat2x4_vs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_bool_mat2x4_fs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_bool_mat2x4_bool_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_bool_mat2x4_bool_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_bool_mat3_vs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_bool_mat3_fs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_bool_mat3_bool_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_bool_mat3_bool_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_bool_mat3x2_vs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_bool_mat3x2_fs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_bool_mat3x2_bool_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_bool_mat3x2_bool_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_bool_mat3x4_vs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_bool_mat3x4_fs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_bool_mat3x4_bool_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_bool_mat3x4_bool_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_bool_mat4_vs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_bool_mat4_fs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_bool_mat4_bool_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_bool_mat4_bool_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_bool_mat4x2_vs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_bool_mat4x2_fs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_bool_mat4x2_bool_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_bool_mat4x2_bool_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_bool_mat4x3_vs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_bool_mat4x3_fs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_bool_mat4x3_bool_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec3_from_bool_mat4x3_bool_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_mat2_vs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_mat2_fs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_mat2_mat2_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_mat2_mat2_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_mat2x3_vs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_mat2x3_fs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_mat2x3_mat2x3_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_mat2x3_mat2x3_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_mat2x4_vs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_mat2x4_fs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_mat2x4_mat2x4_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_mat2x4_mat2x4_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_mat3_vs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_mat3_fs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_mat3_mat3_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_mat3_mat3_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_mat3x2_vs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_mat3x2_fs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_mat3x2_mat3x2_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_mat3x2_mat3x2_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_mat3x4_vs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_mat3x4_fs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_mat3x4_mat3x4_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_mat3x4_mat3x4_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_mat4_vs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_mat4_fs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_mat4_mat4_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_mat4_mat4_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_mat4x2_vs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_mat4x2_fs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_mat4x2_mat4x2_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_mat4x2_mat4x2_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_mat4x3_vs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_mat4x3_fs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_mat4x3_mat4x3_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_mat4x3_mat4x3_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_bool_mat2_vs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_bool_mat2_fs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_bool_mat2_bool_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_bool_mat2_bool_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_bool_mat2x3_vs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_bool_mat2x3_fs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_bool_mat2x3_bool_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_bool_mat2x3_bool_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_bool_mat2x4_vs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_bool_mat2x4_fs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_bool_mat2x4_bool_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_bool_mat2x4_bool_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_bool_mat3_vs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_bool_mat3_fs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_bool_mat3_bool_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_bool_mat3_bool_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_bool_mat3x2_vs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_bool_mat3x2_fs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_bool_mat3x2_bool_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_bool_mat3x2_bool_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_bool_mat3x4_vs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_bool_mat3x4_fs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_bool_mat3x4_bool_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_bool_mat3x4_bool_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_bool_mat4_vs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_bool_mat4_fs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_bool_mat4_bool_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_bool_mat4_bool_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_bool_mat4x2_vs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_bool_mat4x2_fs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_bool_mat4x2_bool_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_bool_mat4x2_bool_invalid_fs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_bool_mat4x3_vs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_bool_mat4x3_fs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_bool_mat4x3_bool_invalid_vs +KHR-GLES3.shaders.glsl_constructors.bvec4_from_bool_mat4x3_bool_invalid_fs KHR-GLES3.shaders.shader_integer_mix.define KHR-GLES3.shaders.shader_integer_mix.prototypes-extension KHR-GLES3.shaders.shader_integer_mix.prototypes diff --git a/external/openglcts/modules/common/CMakeLists.txt b/external/openglcts/modules/common/CMakeLists.txt index fb9c37d..f1e46a2 100644 --- a/external/openglcts/modules/common/CMakeLists.txt +++ b/external/openglcts/modules/common/CMakeLists.txt @@ -115,6 +115,8 @@ set(GLCTS_COMMON_SRCS glcLimitTest.inl glcLimitTest.hpp glcWaiver.hpp + glcGLSLVectorConstructorTests.cpp + glcGLSLVectorConstructorTests.hpp ) set(GLCTS_COMMON_LIBS diff --git a/external/openglcts/modules/common/glcGLSLVectorConstructorTests.cpp b/external/openglcts/modules/common/glcGLSLVectorConstructorTests.cpp new file mode 100644 index 0000000..39cf0f6 --- /dev/null +++ b/external/openglcts/modules/common/glcGLSLVectorConstructorTests.cpp @@ -0,0 +1,592 @@ +/*------------------------------------------------------------------------- + * OpenGL Conformance Test Suite + * ----------------------------- + * + * Copyright (c) 2016 Google Inc. + * Copyright (c) 2016 The Khronos Group Inc. + * + * 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. + * + */ /*! + * \file + * \brief GLSL vector constructor tests. + */ /*-------------------------------------------------------------------*/ +#include "glcGLSLVectorConstructorTests.hpp" + +#include "gluDefs.hpp" +#include "gluTextureUtil.hpp" +#include "gluDrawUtil.hpp" +#include "gluShaderProgram.hpp" + +#include "glwDefs.hpp" +#include "glwFunctions.hpp" +#include "glwEnums.hpp" + +#include "tcuTestLog.hpp" +#include "tcuRenderTarget.hpp" +#include "tcuStringTemplate.hpp" + +#include +#include +#include +#include +#include +#include + +namespace deqp +{ + +namespace +{ +using std::string; + +using std::map; +using std::vector; + +using std::function; +using std::bind; +using namespace std::placeholders; + +using std::ostringstream; + +enum struct TestType +{ + VERTEX_SHADER_ERROR = 0, + FRAGMENT_SHADER_ERROR, + VERTEX_SHADER, + FRAGMENT_SHADER +}; + +struct TestDefinition +{ + vector outputTypes; + vector> inputTypeLists; + string extraFields; +}; + +const TestDefinition tests[] = +{ + { + { "vec2", "vec3", "vec4" }, // vector outputTypes + { // vector> inputTypeLists + { "mat2" }, + { "mat2x3" }, + { "mat2x4" }, + { "mat3" }, + { "mat3x2" }, + { "mat3x4" }, + { "mat4" }, + { "mat4x2" }, + { "mat4x3" }, + { "float", "mat2" }, + { "float", "mat2x3" }, + { "float", "mat2x4" }, + { "float", "mat3" }, + { "float", "mat3x2" }, + { "float", "mat3x4" }, + { "float", "mat4" }, + { "float", "mat4x2" }, + { "float", "mat4x3" }, + }, + "const float errorBound = 1.0E-5;\n" // deUint32 extraFields; + }, + { + { "ivec2", "ivec3", "ivec4" }, // vector outputTypes + { // vector> inputTypeLists + { "mat2" }, + { "mat2x3" }, + { "mat2x4" }, + { "mat3" }, + { "mat3x2" }, + { "mat3x4" }, + { "mat4" }, + { "mat4x2" }, + { "mat4x3" }, + { "int", "mat2" }, + { "int", "mat2x3" }, + { "int", "mat2x4" }, + { "int", "mat3" }, + { "int", "mat3x2" }, + { "int", "mat3x4" }, + { "int", "mat4" }, + { "int", "mat4x2" }, + { "int", "mat4x3" }, + }, + "" // deUint32 extraFields; + }, + { + { "bvec2", "bvec3", "bvec4" }, // vector outputTypes + { // vector> inputTypeLists + { "mat2" }, + { "mat2x3" }, + { "mat2x4" }, + { "mat3" }, + { "mat3x2" }, + { "mat3x4" }, + { "mat4" }, + { "mat4x2" }, + { "mat4x3" }, + { "bool", "mat2" }, + { "bool", "mat2x3" }, + { "bool", "mat2x4" }, + { "bool", "mat3" }, + { "bool", "mat3x2" }, + { "bool", "mat3x4" }, + { "bool", "mat4" }, + { "bool", "mat4x2" }, + { "bool", "mat4x3" }, + }, + "" // deUint32 extraFields; + }, +}; + +struct TestParams +{ + string name; + string description; + TestType testType; + string outputType; + vector inputTypes; + string extraFields; +}; + +vector generateTestParams() +{ + vector result; + result.reserve(64); + for(const auto& test : tests) + { + for(const auto& outputType : test.outputTypes) + { + for(const auto& inputTypes : test.inputTypeLists) + { + ostringstream testNameVs, testNameFs; + ostringstream testDescriptionVs, testDescriptionFs; + testNameVs << outputType << "_from"; + testNameFs << outputType << "_from"; + testDescriptionVs << outputType << "("; + testDescriptionFs << outputType << "("; + for(vector::size_type i = 0; i < inputTypes.size(); ++i) + { + const auto& inputType = inputTypes[i]; + testNameVs << "_" << inputType; + testNameFs << "_" << inputType; + if (i > 0) { + testDescriptionVs << ","; + testDescriptionFs << ","; + } + testDescriptionVs << inputType; + } + ostringstream testNameInvalidVs, testNameInvalidFs; + testNameInvalidVs << testNameVs.str() << "_" << inputTypes[0] << "_invalid_vs"; + testNameInvalidFs << testNameFs.str() << "_" << inputTypes[0] << "_invalid_fs"; + + testNameVs << "_vs"; + testNameFs << "_fs"; + testDescriptionVs << ") vertex shader"; + testDescriptionFs << ") fragment shader"; + result.push_back({ testNameVs.str(), testDescriptionVs.str(), TestType::VERTEX_SHADER, outputType, inputTypes, test.extraFields }); + result.push_back({ testNameFs.str(), testDescriptionFs.str(), TestType::FRAGMENT_SHADER, outputType, inputTypes, test.extraFields }); + + vector failInputTypes; + failInputTypes.insert(failInputTypes.end(), inputTypes.begin(), inputTypes.end()); + failInputTypes.push_back(inputTypes[0]); + testDescriptionVs << " invalid"; + testDescriptionFs << " invalid"; + result.push_back({ testNameInvalidVs.str(), testDescriptionVs.str(), TestType::VERTEX_SHADER_ERROR, outputType, failInputTypes, test.extraFields }); + result.push_back({ testNameInvalidFs.str(), testDescriptionFs.str(), TestType::FRAGMENT_SHADER_ERROR, outputType, failInputTypes, test.extraFields }); + + } + } + } + return result; +} + +const string defaultVertexShader = + "${GLSL_VERSION}\n" + "in vec4 vPosition;\n" + "void main()\n" + "{\n" + " gl_Position = vPosition;\n" + "}\n"; + +const string defaultFragmentShader = + "${GLSL_VERSION}\n" + "precision mediump float;\n" + "in vec4 vColor;\n" + "out vec4 my_FragColor;\n" + "void main() {\n" + " my_FragColor = vColor;\n" + "}\n"; + +const string vertexShaderTemplate = + "${GLSL_VERSION}\n" + "in vec4 vPosition;\n" + "precision mediump int;\n" + "precision mediump float;\n" + "const vec4 green = vec4(0.0, 1.0, 0.0, 1.0);\n" + "const vec4 red = vec4(1.0, 0.0, 0.0, 1.0);\n" + "${TEST_CONSTANTS}" + "out vec4 vColor;\n" + "void main() {\n" + " ${TEST_CODE}\n" + " if ${TEST_CONDITION}\n" + " vColor = green;\n" + " else\n" + " vColor = red;\n" + " gl_Position = vPosition;\n" + "}\n"; + +const string fragmentShaderTemplate = + "${GLSL_VERSION}\n" + "precision mediump int;\n" + "precision mediump float;\n" + "const vec4 green = vec4(0.0, 1.0, 0.0, 1.0);\n" + "const vec4 red = vec4(1.0, 0.0, 0.0, 1.0);\n" + "${TEST_CONSTANTS}" + "out vec4 my_FragColor;\n" + "void main() {\n" + " ${TEST_CODE}\n" + " if ${TEST_CONDITION}\n" + " my_FragColor = green;\n" + " else\n" + " my_FragColor = red;\n" + "}\n"; + +const map testConditions = +{ + { "vec2" , "(abs(v[0] - 0.0) <= errorBound && abs(v[1] - 1.0) <= errorBound)" }, + { "vec3" , "(abs(v[0] - 0.0) <= errorBound && abs(v[1] - 1.0) <= errorBound && abs(v[2] - 2.0) <= errorBound)" }, + { "vec4" , "(abs(v[0] - 0.0) <= errorBound && abs(v[1] - 1.0) <= errorBound && abs(v[2] - 2.0) <= errorBound && abs(v[3] - 3.0) <= errorBound)" }, + { "ivec2" , "(v[0] == 0 && v[1] == 1)" }, + { "ivec3" , "(v[0] == 0 && v[1] == 1 && v[2] == 2)" }, + { "ivec4" , "(v[0] == 0 && v[1] == 1 && v[2] == 2 && v[3] == 3)" }, + { "bvec2" , "(v[0] == false && v[1] == true)" }, + { "bvec3" , "(v[0] == false && v[1] == true && v[2] == true)" }, + { "bvec4" , "(v[0] == false && v[1] == true && v[2] == true && v[3] == true)" } +}; + +typedef function GeneratorFn; + +struct DataTypeInfo +{ + size_t numElements; + GeneratorFn valueFn; + GeneratorFn beforeValueFn; + GeneratorFn afterValueFn; +}; + +void generateValueFloat(ostringstream& out, const size_t index) +{ + out << index << ".0"; +} + +void generateValueInt(ostringstream& out, const size_t index) +{ + out << index; +} + +void generateValueBool(ostringstream& out, const size_t index) +{ + out << ((index != 0) ? "true" : "false"); +} + +void generateCtorOpen(const char* className, ostringstream& out, const size_t) +{ + out << className << "("; +} + +void generateCtorClose(ostringstream &out, const size_t) +{ + out << ")"; +} + +const map dataTypeInfos = +{ + // numElements , valueFn , beforeValueFn , afterValueFn + { "float" , { 1 , generateValueFloat, DE_NULL , DE_NULL } }, + { "vec2" , { 2 , generateValueFloat, bind(generateCtorOpen, "vec2", _1, _2) , generateCtorClose } }, + { "vec3" , { 3 , generateValueFloat, bind(generateCtorOpen, "vec3", _1, _2) , generateCtorClose } }, + { "vec4" , { 4 , generateValueFloat, bind(generateCtorOpen, "vec4", _1, _2) , generateCtorClose } }, + { "int" , { 1 , generateValueInt , DE_NULL , DE_NULL } }, + { "ivec2" , { 2 , generateValueInt , bind(generateCtorOpen, "ivec2", _1, _2) , generateCtorClose } }, + { "ivec3" , { 3 , generateValueInt , bind(generateCtorOpen, "ivec3", _1, _2) , generateCtorClose } }, + { "ivec4" , { 4 , generateValueInt , bind(generateCtorOpen, "ivec4", _1, _2) , generateCtorClose } }, + { "bool" , { 1 , generateValueBool , DE_NULL , DE_NULL } }, + { "bvec2" , { 2 , generateValueBool , bind(generateCtorOpen, "bvec2", _1, _2) , generateCtorClose } }, + { "bvec3" , { 3 , generateValueBool , bind(generateCtorOpen, "bvec3", _1, _2) , generateCtorClose } }, + { "bvec4" , { 4 , generateValueBool , bind(generateCtorOpen, "bvec4", _1, _2) , generateCtorClose } }, + { "mat2" , { 4 , generateValueFloat, bind(generateCtorOpen, "mat2", _1, _2) , generateCtorClose } }, + { "mat2x3" , { 6 , generateValueFloat, bind(generateCtorOpen, "mat2x3", _1, _2) , generateCtorClose } }, + { "mat2x4" , { 8 , generateValueFloat, bind(generateCtorOpen, "mat2x4", _1, _2) , generateCtorClose } }, + { "mat3" , { 9 , generateValueFloat, bind(generateCtorOpen, "mat3", _1, _2) , generateCtorClose } }, + { "mat3x2" , { 6 , generateValueFloat, bind(generateCtorOpen, "mat3x2", _1, _2) , generateCtorClose } }, + { "mat3x4" , { 12 , generateValueFloat, bind(generateCtorOpen, "mat3x4", _1, _2) , generateCtorClose } }, + { "mat4" , { 16 , generateValueFloat, bind(generateCtorOpen, "mat4", _1, _2) , generateCtorClose } }, + { "mat4x2" , { 8 , generateValueFloat, bind(generateCtorOpen, "mat4x2", _1, _2) , generateCtorClose } }, + { "mat4x3" , { 12 , generateValueFloat, bind(generateCtorOpen, "mat4x3", _1, _2) , generateCtorClose } }, +}; + +string generateTestCode(const string& outputType, const vector& inputTypes) +{ + ostringstream output; + const auto outputTypeInfo = dataTypeInfos.find(outputType); + DE_ASSERT(outputTypeInfo != dataTypeInfos.end()); + + output << outputType << " v = "; + if (outputTypeInfo->second.beforeValueFn != DE_NULL) + outputTypeInfo->second.beforeValueFn(output, -1); + int outputElementsRemaining = outputTypeInfo->second.numElements; + int outputElementIndex = 0; + for(size_t i = 0; i < inputTypes.size() && outputElementsRemaining > 0; ++i) + { + const auto& inputType = inputTypes[i]; + const auto inputTypeInfo = dataTypeInfos.find(inputType); + DE_ASSERT(inputTypeInfo != dataTypeInfos.end()); + + if (outputElementIndex > 0) + output << ", "; + if (inputTypeInfo->second.beforeValueFn != DE_NULL) + inputTypeInfo->second.beforeValueFn(output, i); + for(size_t j = 0; j < inputTypeInfo->second.numElements; ++j) + { + if (j > 0) + output << ", "; + + inputTypeInfo->second.valueFn(output, outputElementIndex++); + --outputElementsRemaining; + } + if (inputTypeInfo->second.afterValueFn != DE_NULL) + inputTypeInfo->second.afterValueFn(output, i); + } + if (outputTypeInfo->second.afterValueFn != DE_NULL) + outputTypeInfo->second.afterValueFn(output, -1); + output << ";"; + return output.str(); +} + +string replacePlaceholders(const string& shaderTemplate, const TestParams& params, const glu::GLSLVersion glslVersion) +{ + const auto condition = testConditions.find(params.outputType); + return tcu::StringTemplate(shaderTemplate).specialize( + { + { "GLSL_VERSION" , glu::getGLSLVersionDeclaration(glslVersion) }, + { "TEST_CONSTANTS" , params.extraFields }, + { "TEST_CODE" , generateTestCode(params.outputType, params.inputTypes) }, + { "TEST_CONDITION" , (condition != testConditions.end()) ? condition->second : "" } + }); +} + +const vector positions = +{ + -1.0f, -1.0f, + 1.0f, -1.0f, + -1.0f, 1.0f, + 1.0f, 1.0f +}; + +const vector indices = { 0, 1, 2, 3 }; + +const int RENDERTARGET_WIDTH = 16; +const int RENDERTARGET_HEIGHT = 16; + +class GLSLVectorConstructorTestCase : public deqp::TestCase +{ +public: + GLSLVectorConstructorTestCase(deqp::Context& context, glu::GLSLVersion glslVersion, const TestParams& params); + + void init(void); + void deinit(void); + IterateResult iterate(); + +private: + void setupRenderTarget(); + void releaseRenderTarget(); + + const glu::GLSLVersion m_glslVersion; + const TestParams m_params; + glw::GLuint m_fboId; + glw::GLuint m_rboId; + + string m_vertexShader; + string m_fragmentShader; +}; + +GLSLVectorConstructorTestCase::GLSLVectorConstructorTestCase(deqp::Context& context, glu::GLSLVersion glslVersion, const TestParams& params) + : TestCase(context, params.name.c_str(), params.description.c_str()) + , m_glslVersion(glslVersion) + , m_params(params) +{ + switch(m_params.testType) + { + case TestType::VERTEX_SHADER_ERROR: + case TestType::VERTEX_SHADER: + m_vertexShader = replacePlaceholders(vertexShaderTemplate, m_params, m_glslVersion); + m_fragmentShader = replacePlaceholders(defaultFragmentShader, m_params, m_glslVersion); + break; + case TestType::FRAGMENT_SHADER_ERROR: + case TestType::FRAGMENT_SHADER: + m_vertexShader = replacePlaceholders(defaultVertexShader, m_params, m_glslVersion); + m_fragmentShader = replacePlaceholders(fragmentShaderTemplate, m_params, m_glslVersion); + break; + } +} + +void GLSLVectorConstructorTestCase::init(void) +{ + deqp::TestCase::init(); +} + +void GLSLVectorConstructorTestCase::deinit(void) +{ + deqp::TestCase::deinit(); +} + +GLSLVectorConstructorTestCase::IterateResult GLSLVectorConstructorTestCase::iterate() +{ + const auto& renderContext = m_context.getRenderContext(); + const auto& gl = renderContext.getFunctions(); + const auto textureFormat = tcu::TextureFormat(tcu::TextureFormat::RGBA, tcu::TextureFormat::UNORM_INT8); + const auto transferFormat = glu::getTransferFormat(textureFormat); + + setupRenderTarget(); + + glu::ShaderProgram program(renderContext, glu::makeVtxFragSources(m_vertexShader, m_fragmentShader)); + if (!program.isOk()) + { + switch(m_params.testType) + { + case TestType::VERTEX_SHADER_ERROR: + case TestType::FRAGMENT_SHADER_ERROR: + m_testCtx.setTestResult(QP_TEST_RESULT_PASS, "Pass"); + return STOP; + default: + TCU_FAIL("Shader compilation failed:\nVertex shader:\n" + m_vertexShader + "\nFragment shader:\n" + m_fragmentShader); + break; + } + } + + const vector vertexArrays = + { + glu::va::Float("vPosition", 2, positions.size(), 0, positions.data()), + }; + + gl.useProgram(program.getProgram()); + GLU_EXPECT_NO_ERROR(gl.getError(), "glUseProgram failed"); + + gl.clear(GL_COLOR_BUFFER_BIT); + + glu::draw(renderContext, program.getProgram(), + static_cast(vertexArrays.size()), vertexArrays.data(), + glu::pr::TriangleStrip(static_cast(indices.size()), indices.data())); + + const auto pixelSize = tcu::getPixelSize(textureFormat); + vector fbData (RENDERTARGET_WIDTH * RENDERTARGET_HEIGHT * pixelSize); + + if (pixelSize < 4) + gl.pixelStorei(GL_PACK_ALIGNMENT, 1); + + gl.readPixels(0, 0, RENDERTARGET_WIDTH, RENDERTARGET_HEIGHT, transferFormat.format, transferFormat.dataType, fbData.data()); + GLU_EXPECT_NO_ERROR(gl.getError(), "glReadPixels"); + + tcu::ConstPixelBufferAccess fbAccess { textureFormat, RENDERTARGET_WIDTH, RENDERTARGET_HEIGHT, 1, fbData.data() }; + const auto expectedColor = tcu::RGBA::green().toVec(); + bool pass = true; + for(int y = 0; pass && y < RENDERTARGET_HEIGHT; ++y) + for(int x = 0; x < RENDERTARGET_WIDTH; ++x) + if (fbAccess.getPixel(x,y) != expectedColor) + { + pass = false; + break; + } + + releaseRenderTarget(); + + const qpTestResult result = (pass ? QP_TEST_RESULT_PASS : QP_TEST_RESULT_FAIL); + const char* desc = (pass ? "Pass" : "Pixel mismatch; vector initialization failed"); + + m_testCtx.setTestResult(result, desc); + + return STOP; +} + +void GLSLVectorConstructorTestCase::setupRenderTarget() +{ + const auto& renderContext = m_context.getRenderContext(); + const auto& gl = renderContext.getFunctions(); + + gl.genFramebuffers(1, &m_fboId); + GLU_EXPECT_NO_ERROR(gl.getError(), "GenFramebuffers"); + + gl.genRenderbuffers(1, &m_rboId); + GLU_EXPECT_NO_ERROR(gl.getError(), "GenRenderBuffers"); + + gl.bindRenderbuffer(GL_RENDERBUFFER, m_rboId); + GLU_EXPECT_NO_ERROR(gl.getError(), "BindRenderBuffer"); + + gl.renderbufferStorage(GL_RENDERBUFFER, GL_RGBA8, RENDERTARGET_WIDTH, RENDERTARGET_HEIGHT); + GLU_EXPECT_NO_ERROR(gl.getError(), "RenderBufferStorage"); + + gl.bindFramebuffer(GL_FRAMEBUFFER, m_fboId); + GLU_EXPECT_NO_ERROR(gl.getError(), "BindFrameBuffer"); + + gl.framebufferRenderbuffer(GL_FRAMEBUFFER, GL_COLOR_ATTACHMENT0, GL_RENDERBUFFER, m_rboId); + GLU_EXPECT_NO_ERROR(gl.getError(), "FrameBufferRenderBuffer"); + + glw::GLenum drawBuffer = GL_COLOR_ATTACHMENT0; + gl.drawBuffers(1, &drawBuffer); + GLU_EXPECT_NO_ERROR(gl.getError(), "DrawBuffers"); + + glw::GLfloat clearColor[4] = { 0, 0, 0, 0 }; + gl.clearBufferfv(GL_COLOR, 0, clearColor); + GLU_EXPECT_NO_ERROR(gl.getError(), "ClearBuffers"); + + gl.viewport(0, 0, RENDERTARGET_WIDTH, RENDERTARGET_HEIGHT); + GLU_EXPECT_NO_ERROR(gl.getError(), "Viewport"); +} + +void GLSLVectorConstructorTestCase::releaseRenderTarget() +{ + const auto& renderContext = m_context.getRenderContext(); + const auto& gl = renderContext.getFunctions(); + if (m_fboId != 0) + { + gl.deleteFramebuffers(1, &m_fboId); + m_fboId = 0; + } + if (m_rboId != 0) + { + gl.deleteRenderbuffers(1, &m_rboId); + m_rboId = 0; + } +} + +} + +GLSLVectorConstructorTests::GLSLVectorConstructorTests(Context& context, glu::GLSLVersion glslVersion) + : deqp::TestCaseGroup(context, "glsl_constructors", "GLSL vector constructor tests") + , m_glslVersion(glslVersion) +{ +} + +GLSLVectorConstructorTests::~GLSLVectorConstructorTests() +{ +} + +void GLSLVectorConstructorTests::init() +{ + for(const auto& params : generateTestParams()) + addChild(new GLSLVectorConstructorTestCase(m_context, m_glslVersion, params)); +} + +} // deqp diff --git a/external/openglcts/modules/common/glcGLSLVectorConstructorTests.hpp b/external/openglcts/modules/common/glcGLSLVectorConstructorTests.hpp new file mode 100644 index 0000000..282840a --- /dev/null +++ b/external/openglcts/modules/common/glcGLSLVectorConstructorTests.hpp @@ -0,0 +1,52 @@ +#ifndef _GLCGLSLVECTORCONSTRUCTORTESTS_HPP +#define _GLCGLSLVECTORCONSTRUCTORTESTS_HPP + +/*------------------------------------------------------------------------- +* OpenGL Conformance Test Suite +* ----------------------------- +* +* Copyright (c) 2020 Google Inc. +* Copyright (c) 2020 The Khronos Group Inc. +* +* 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. +* +*/ /*! +* \file glcGLSLVectorConstructorTests.hpp +* \brief Tests for GLSL vector type constructors +*/ /*-------------------------------------------------------------------*/ + +#include "glcTestCase.hpp" +#include "gluShaderUtil.hpp" +#include "tcuDefs.hpp" + +namespace deqp +{ + +class GLSLVectorConstructorTests : public TestCaseGroup +{ +public: + GLSLVectorConstructorTests(Context& context, glu::GLSLVersion glslVersion); + ~GLSLVectorConstructorTests(); + + void init(); + +private: + GLSLVectorConstructorTests(const GLSLVectorConstructorTests& other) = delete; + GLSLVectorConstructorTests& operator=(const GLSLVectorConstructorTests& other) = delete; + + glu::GLSLVersion m_glslVersion; +}; + +} // deqp + +#endif // _GLCGLSLVECTORCONSTRUCTORTESTS_HPP diff --git a/external/openglcts/modules/gl/gl3cTestPackages.cpp b/external/openglcts/modules/gl/gl3cTestPackages.cpp index 154d44a..576457c 100644 --- a/external/openglcts/modules/gl/gl3cTestPackages.cpp +++ b/external/openglcts/modules/gl/gl3cTestPackages.cpp @@ -48,6 +48,7 @@ #include "glcTextureRepeatModeTests.hpp" #include "glcUniformBlockTests.hpp" #include "glcNearestEdgeTests.hpp" +#include "glcGLSLVectorConstructorTests.hpp" #include "gluStateReset.hpp" #include "tcuTestLog.hpp" #include "tcuWaiverUtil.hpp" @@ -144,6 +145,7 @@ public: void init(void) { addChild(new deqp::ShaderLibraryGroup(m_context, "declarations", "Declaration Tests", "gl30/declarations.test")); + addChild(new deqp::GLSLVectorConstructorTests(m_context, glu::GLSL_VERSION_330)); } }; diff --git a/external/openglcts/modules/gles3/es3cTestPackage.cpp b/external/openglcts/modules/gles3/es3cTestPackage.cpp index 1971b09..9d07e9c 100644 --- a/external/openglcts/modules/gles3/es3cTestPackage.cpp +++ b/external/openglcts/modules/gles3/es3cTestPackage.cpp @@ -27,6 +27,7 @@ #include "glcAggressiveShaderOptimizationsTests.hpp" #include "glcExposedExtensionsTests.hpp" #include "glcFragDepthTests.hpp" +#include "glcGLSLVectorConstructorTests.hpp" #include "glcInfoTests.hpp" #include "glcInternalformatTests.hpp" #include "glcPackedDepthStencilTests.hpp" @@ -150,6 +151,7 @@ public: addChild(new deqp::ShaderStructTests(m_context, glu::GLSL_VERSION_300_ES)); addChild(new deqp::ShaderSwitchTests(m_context, glu::GLSL_VERSION_300_ES)); addChild(new deqp::UniformBlockTests(m_context, glu::GLSL_VERSION_300_ES)); + addChild(new deqp::GLSLVectorConstructorTests(m_context, glu::GLSL_VERSION_300_ES)); addChild(new deqp::ShaderIntegerMixTests(m_context, glu::GLSL_VERSION_300_ES)); addChild(new deqp::ShaderNegativeTests(m_context, glu::GLSL_VERSION_300_ES)); addChild(new glcts::AggressiveShaderOptimizationsTests(m_context)); -- 2.7.4