Merge "Improve logging of texture border color."
diff --git a/Android.mk b/Android.mk
index 69c5058..619175f 100644
--- a/Android.mk
+++ b/Android.mk
@@ -407,6 +407,7 @@
 	modules/gles3/functional/es3fClippingTests.cpp \
 	modules/gles3/functional/es3fColorClearTest.cpp \
 	modules/gles3/functional/es3fCompressedTextureTests.cpp \
+	modules/gles3/functional/es3fDefaultVertexArrayObjectTests.cpp \
 	modules/gles3/functional/es3fDefaultVertexAttributeTests.cpp \
 	modules/gles3/functional/es3fDepthStencilClearTests.cpp \
 	modules/gles3/functional/es3fDepthStencilTests.cpp \
@@ -535,6 +536,7 @@
 	modules/gles31/functional/es31fBuiltinPrecisionTests.cpp \
 	modules/gles31/functional/es31fComputeShaderBuiltinVarTests.cpp \
 	modules/gles31/functional/es31fDebugTests.cpp \
+	modules/gles31/functional/es31fDefaultVertexArrayObjectTests.cpp \
 	modules/gles31/functional/es31fDrawTests.cpp \
 	modules/gles31/functional/es31fFboColorbufferTests.cpp \
 	modules/gles31/functional/es31fFboNoAttachmentTests.cpp \
diff --git a/android/cts/master/com.drawelements.deqp.egl.xml b/android/cts/master/com.drawelements.deqp.egl.xml
index d5668ff..0c7a402 100644
--- a/android/cts/master/com.drawelements.deqp.egl.xml
+++ b/android/cts/master/com.drawelements.deqp.egl.xml
@@ -5846,26 +5846,6 @@
 						<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
 					</Test>
 				</TestCase>
-				<TestCase name="robust_gles_20">
-					<Test name="rgba4444_no_depth_no_stencil">
-						<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-					</Test>
-					<Test name="rgba4444_no_depth_stencil">
-						<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-					</Test>
-					<Test name="rgba4444_depth_no_stencil">
-						<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-					</Test>
-					<Test name="rgba5551_no_depth_no_stencil">
-						<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-					</Test>
-					<Test name="rgba5551_no_depth_stencil">
-						<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-					</Test>
-					<Test name="rgba5551_depth_no_stencil">
-						<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-					</Test>
-				</TestCase>
 				<TestCase name="gles_30">
 					<Test name="rgba4444_no_depth_no_stencil">
 						<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
@@ -5892,26 +5872,6 @@
 						<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
 					</Test>
 				</TestCase>
-				<TestCase name="robust_gles_30">
-					<Test name="rgba4444_no_depth_no_stencil">
-						<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-					</Test>
-					<Test name="rgba4444_no_depth_stencil">
-						<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-					</Test>
-					<Test name="rgba4444_depth_no_stencil">
-						<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-					</Test>
-					<Test name="rgba5551_no_depth_no_stencil">
-						<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-					</Test>
-					<Test name="rgba5551_no_depth_stencil">
-						<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-					</Test>
-					<Test name="rgba5551_depth_no_stencil">
-						<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-					</Test>
-				</TestCase>
 				<TestCase name="gl_30">
 					<Test name="rgb565_no_depth_no_stencil">
 						<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
diff --git a/android/cts/master/com.drawelements.deqp.gles3.xml b/android/cts/master/com.drawelements.deqp.gles3.xml
index 4acc406..f6f856d 100644
--- a/android/cts/master/com.drawelements.deqp.gles3.xml
+++ b/android/cts/master/com.drawelements.deqp.gles3.xml
@@ -14197,10 +14197,22 @@
 						<Test name="missing_block_name_fragment">
 							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
 						</Test>
-						<Test name="invalid_character_block_name_vertex">
+						<Test name="invalid_number_block_name_vertex">
 							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
 						</Test>
-						<Test name="invalid_character_block_name_fragment">
+						<Test name="invalid_number_block_name_fragment">
+							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
+						</Test>
+						<Test name="invalid_hash_block_name_vertex">
+							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
+						</Test>
+						<Test name="invalid_hash_block_name_fragment">
+							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
+						</Test>
+						<Test name="invalid_dollar_block_name_vertex">
+							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
+						</Test>
+						<Test name="invalid_dollar_block_name_fragment">
 							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
 						</Test>
 						<Test name="invalid_identifier_block_name_vertex">
@@ -14215,10 +14227,22 @@
 						<Test name="too_long_block_name_fragment">
 							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
 						</Test>
-						<Test name="invalid_character_instance_name_vertex">
+						<Test name="invalid_number_instance_name_vertex">
 							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
 						</Test>
-						<Test name="invalid_character_instance_name_fragment">
+						<Test name="invalid_number_instance_name_fragment">
+							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
+						</Test>
+						<Test name="invalid_hash_instance_name_vertex">
+							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
+						</Test>
+						<Test name="invalid_hash_instance_name_fragment">
+							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
+						</Test>
+						<Test name="invalid_dollar_instance_name_vertex">
+							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
+						</Test>
+						<Test name="invalid_dollar_instance_name_fragment">
 							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
 						</Test>
 						<Test name="invalid_identifier_instance_name_vertex">
@@ -59649,69 +59673,9 @@
 						<Test name="switch_case_fragment">
 							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
 						</Test>
-						<Test name="nested_builtin_funcs_vertex">
-							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-						</Test>
-						<Test name="nested_builtin_funcs_fragment">
-							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-						</Test>
-						<Test name="complex_vertex">
-							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-						</Test>
-						<Test name="complex_fragment">
-							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-						</Test>
 					</TestCase>
 					<TestSuite name="builtin_functions">
 						<TestCase name="angle_and_trigonometry">
-							<Test name="radians_float_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="radians_float_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="radians_vec2_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="radians_vec2_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="radians_vec3_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="radians_vec3_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="radians_vec4_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="radians_vec4_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="degrees_float_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="degrees_float_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="degrees_vec2_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="degrees_vec2_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="degrees_vec3_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="degrees_vec3_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="degrees_vec4_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="degrees_vec4_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
 							<Test name="sin_float_vertex">
 								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
 							</Test>
@@ -59760,30 +59724,6 @@
 							<Test name="cos_vec4_fragment">
 								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
 							</Test>
-							<Test name="tan_float_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="tan_float_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="tan_vec2_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="tan_vec2_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="tan_vec3_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="tan_vec3_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="tan_vec4_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="tan_vec4_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
 							<Test name="asin_float_vertex">
 								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
 							</Test>
@@ -59832,198 +59772,6 @@
 							<Test name="acos_vec4_fragment">
 								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
 							</Test>
-							<Test name="atan_separate_float_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="atan_separate_float_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="atan_separate_vec2_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="atan_separate_vec2_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="atan_separate_vec3_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="atan_separate_vec3_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="atan_separate_vec4_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="atan_separate_vec4_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="atan_combined_float_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="atan_combined_float_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="atan_combined_vec2_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="atan_combined_vec2_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="atan_combined_vec3_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="atan_combined_vec3_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="atan_combined_vec4_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="atan_combined_vec4_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="sinh_float_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="sinh_float_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="sinh_vec2_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="sinh_vec2_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="sinh_vec3_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="sinh_vec3_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="sinh_vec4_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="sinh_vec4_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cosh_float_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cosh_float_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cosh_vec2_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cosh_vec2_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cosh_vec3_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cosh_vec3_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cosh_vec4_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cosh_vec4_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="tanh_float_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="tanh_float_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="tanh_vec2_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="tanh_vec2_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="tanh_vec3_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="tanh_vec3_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="tanh_vec4_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="tanh_vec4_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="asinh_float_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="asinh_float_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="asinh_vec2_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="asinh_vec2_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="asinh_vec3_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="asinh_vec3_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="asinh_vec4_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="asinh_vec4_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="acosh_float_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="acosh_float_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="acosh_vec2_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="acosh_vec2_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="acosh_vec3_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="acosh_vec3_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="acosh_vec4_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="acosh_vec4_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="atanh_float_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="atanh_float_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="atanh_vec2_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="atanh_vec2_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="atanh_vec3_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="atanh_vec3_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="atanh_vec4_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="atanh_vec4_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
 						</TestCase>
 						<TestCase name="exponential">
 							<Test name="pow_float_vertex">
@@ -60364,30 +60112,6 @@
 							<Test name="round_vec4_fragment">
 								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
 							</Test>
-							<Test name="roundEven_float_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="roundEven_float_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="roundEven_vec2_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="roundEven_vec2_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="roundEven_vec3_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="roundEven_vec3_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="roundEven_vec4_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="roundEven_vec4_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
 							<Test name="ceil_float_vertex">
 								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
 							</Test>
@@ -60412,72 +60136,6 @@
 							<Test name="ceil_vec4_fragment">
 								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
 							</Test>
-							<Test name="fract_float_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="fract_float_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="fract_vec2_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="fract_vec2_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="fract_vec3_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="fract_vec3_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="fract_vec4_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="fract_vec4_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="mod_float_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="mod_float_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="mod_vec2_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="mod_vec2_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="mod_vec2_float_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="mod_vec2_float_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="mod_vec3_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="mod_vec3_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="mod_vec3_float_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="mod_vec3_float_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="mod_vec4_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="mod_vec4_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="mod_vec4_float_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="mod_vec4_float_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
 							<Test name="min_float_vertex">
 								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
 							</Test>
@@ -60856,248 +60514,6 @@
 							<Test name="clamp_uvec4_uint_fragment">
 								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
 							</Test>
-							<Test name="mix_float_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="mix_float_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="mix_vec2_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="mix_vec2_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="mix_vec2_float_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="mix_vec2_float_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="mix_vec3_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="mix_vec3_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="mix_vec3_float_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="mix_vec3_float_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="mix_vec4_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="mix_vec4_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="mix_vec4_float_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="mix_vec4_float_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="mix_float_bool_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="mix_float_bool_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="mix_vec2_bvec2_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="mix_vec2_bvec2_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="mix_vec3_bvec3_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="mix_vec3_bvec3_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="mix_vec4_bvec4_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="mix_vec4_bvec4_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="step_float_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="step_float_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="step_vec2_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="step_vec2_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="step_vec2_float_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="step_vec2_float_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="step_vec3_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="step_vec3_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="step_vec3_float_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="step_vec3_float_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="step_vec4_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="step_vec4_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="step_vec4_float_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="step_vec4_float_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="smoothstep_float_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="smoothstep_float_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="smoothstep_vec2_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="smoothstep_vec2_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="smoothstep_vec2_float_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="smoothstep_vec2_float_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="smoothstep_vec3_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="smoothstep_vec3_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="smoothstep_vec3_float_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="smoothstep_vec3_float_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="smoothstep_vec4_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="smoothstep_vec4_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="smoothstep_vec4_float_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="smoothstep_vec4_float_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="isnan_float_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="isnan_float_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="isnan_vec2_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="isnan_vec2_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="isnan_vec3_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="isnan_vec3_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="isnan_vec4_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="isnan_vec4_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="isinf_float_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="isinf_float_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="isinf_vec2_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="isinf_vec2_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="isinf_vec3_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="isinf_vec3_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="isinf_vec4_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="isinf_vec4_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="floatbits_int_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="floatbits_int_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="floatbits_uint_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="floatbits_uint_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-						</TestCase>
-						<TestCase name="float_pack_unpack">
-							<Test name="packSnorm2x16_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="packSnorm2x16_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="unpackSnorm2x16_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="unpackSnorm2x16_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="packUnorm2x16_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="packUnorm2x16_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="unpackUnorm2x16_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="unpackUnorm2x16_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="packHalf2x16_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="packHalf2x16_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
 						</TestCase>
 						<TestCase name="geometric">
 							<Test name="length_float_vertex">
@@ -61124,30 +60540,6 @@
 							<Test name="length_vec4_fragment">
 								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
 							</Test>
-							<Test name="distance_float_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="distance_float_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="distance_vec2_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="distance_vec2_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="distance_vec3_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="distance_vec3_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="distance_vec4_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="distance_vec4_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
 							<Test name="dot_float_vertex">
 								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
 							</Test>
@@ -61196,696 +60588,6 @@
 							<Test name="normalize_vec4_fragment">
 								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
 							</Test>
-							<Test name="faceforward_float_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="faceforward_float_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="faceforward_vec2_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="faceforward_vec2_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="faceforward_vec3_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="faceforward_vec3_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="faceforward_vec4_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="faceforward_vec4_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="reflect_float_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="reflect_float_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="reflect_vec2_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="reflect_vec2_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="reflect_vec3_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="reflect_vec3_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="reflect_vec4_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="reflect_vec4_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="refract_float_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="refract_float_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="refract_vec2_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="refract_vec2_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="refract_vec3_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="refract_vec3_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="refract_vec4_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="refract_vec4_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-						</TestCase>
-						<TestCase name="matrix">
-							<Test name="compMult_mat2_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="compMult_mat2_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="compMult_mat3_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="compMult_mat3_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="compMult_mat4_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="compMult_mat4_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="outerProd_mat2_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="outerProd_mat2_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="outerProd_mat3_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="outerProd_mat3_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="outerProd_mat4_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="outerProd_mat4_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="outerProd_mat2x3_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="outerProd_mat2x3_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="outerProd_mat3x2_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="outerProd_mat3x2_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="outerProd_mat2x4_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="outerProd_mat2x4_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="outerProd_mat4x2_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="outerProd_mat4x2_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="outerProd_mat3x4_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="outerProd_mat3x4_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="outerProd_mat4x3_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="outerProd_mat4x3_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="transpose_mat2_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="transpose_mat2_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="transpose_mat3_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="transpose_mat3_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="transpose_mat4_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="transpose_mat4_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="transpose_mat3x2_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="transpose_mat3x2_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="transpose_mat2x3_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="transpose_mat2x3_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="transpose_mat4x2_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="transpose_mat4x2_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="transpose_mat4x3_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="transpose_mat4x3_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="transpose_mat2x4_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="transpose_mat2x4_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="transpose_mat3x4_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="transpose_mat3x4_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="determinant_mat2_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="determinant_mat2_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="determinant_mat3_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="determinant_mat3_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="determinant_mat4_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="determinant_mat4_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="inverse_mat2_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="inverse_mat2_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="inverse_mat3_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="inverse_mat3_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="inverse_mat4_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="inverse_mat4_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-						</TestCase>
-						<TestCase name="vector_relational">
-							<Test name="lessThan_vec2_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="lessThan_vec2_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="lessThan_vec3_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="lessThan_vec3_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="lessThan_vec4_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="lessThan_vec4_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="lessThan_ivec2_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="lessThan_ivec2_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="lessThan_ivec3_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="lessThan_ivec3_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="lessThan_ivec4_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="lessThan_ivec4_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="lessThan_uvec2_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="lessThan_uvec2_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="lessThan_uvec3_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="lessThan_uvec3_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="lessThan_uvec4_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="lessThan_uvec4_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="lessThanEqual_vec2_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="lessThanEqual_vec2_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="lessThanEqual_vec3_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="lessThanEqual_vec3_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="lessThanEqual_vec4_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="lessThanEqual_vec4_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="lessThanEqual_ivec2_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="lessThanEqual_ivec2_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="lessThanEqual_ivec3_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="lessThanEqual_ivec3_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="lessThanEqual_ivec4_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="lessThanEqual_ivec4_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="lessThanEqual_uvec2_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="lessThanEqual_uvec2_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="lessThanEqual_uvec3_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="lessThanEqual_uvec3_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="lessThanEqual_uvec4_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="lessThanEqual_uvec4_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="greaterThan_vec2_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="greaterThan_vec2_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="greaterThan_vec3_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="greaterThan_vec3_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="greaterThan_vec4_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="greaterThan_vec4_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="greaterThan_ivec2_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="greaterThan_ivec2_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="greaterThan_ivec3_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="greaterThan_ivec3_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="greaterThan_ivec4_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="greaterThan_ivec4_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="greaterThan_uvec2_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="greaterThan_uvec2_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="greaterThan_uvec3_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="greaterThan_uvec3_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="greaterThan_uvec4_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="greaterThan_uvec4_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="greaterThanEqual_vec2_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="greaterThanEqual_vec2_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="greaterThanEqual_vec3_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="greaterThanEqual_vec3_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="greaterThanEqual_vec4_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="greaterThanEqual_vec4_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="greaterThanEqual_ivec2_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="greaterThanEqual_ivec2_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="greaterThanEqual_ivec3_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="greaterThanEqual_ivec3_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="greaterThanEqual_ivec4_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="greaterThanEqual_ivec4_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="greaterThanEqual_uvec2_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="greaterThanEqual_uvec2_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="greaterThanEqual_uvec3_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="greaterThanEqual_uvec3_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="greaterThanEqual_uvec4_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="greaterThanEqual_uvec4_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="equal_vec2_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="equal_vec2_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="equal_vec3_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="equal_vec3_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="equal_vec4_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="equal_vec4_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="equal_ivec2_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="equal_ivec2_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="equal_ivec3_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="equal_ivec3_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="equal_ivec4_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="equal_ivec4_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="equal_uvec2_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="equal_uvec2_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="equal_uvec3_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="equal_uvec3_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="equal_uvec4_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="equal_uvec4_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="equal_bvec2_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="equal_bvec2_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="equal_bvec3_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="equal_bvec3_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="equal_bvec4_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="equal_bvec4_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="notEqual_vec2_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="notEqual_vec2_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="notEqual_vec3_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="notEqual_vec3_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="notEqual_vec4_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="notEqual_vec4_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="notEqual_ivec2_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="notEqual_ivec2_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="notEqual_ivec3_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="notEqual_ivec3_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="notEqual_ivec4_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="notEqual_ivec4_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="notEqual_uvec2_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="notEqual_uvec2_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="notEqual_uvec3_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="notEqual_uvec3_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="notEqual_uvec4_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="notEqual_uvec4_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="notEqual_bvec2_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="notEqual_bvec2_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="notEqual_bvec3_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="notEqual_bvec3_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="notEqual_bvec4_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="notEqual_bvec4_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="any_bvec2_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="any_bvec2_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="any_bvec3_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="any_bvec3_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="any_bvec4_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="any_bvec4_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="all_bvec2_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="all_bvec2_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="all_bvec3_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="all_bvec3_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="all_bvec4_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="all_bvec4_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="not_bvec2_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="not_bvec2_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="not_bvec3_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="not_bvec3_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="not_bvec4_vertex">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="not_bvec4_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-						</TestCase>
-						<TestCase name="fragment_processing">
-							<Test name="dFdx_float_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="dFdx_vec2_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="dFdx_vec3_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="dFdx_vec4_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="dFdy_float_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="dFdy_vec2_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="dFdy_vec3_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="dFdy_vec4_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="fwidth_float_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="fwidth_vec2_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="fwidth_vec3_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="fwidth_vec4_fragment">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
 						</TestCase>
 					</TestSuite>
 				</TestSuite>
@@ -65261,9 +63963,6 @@
 							<Test name="10">
 								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
 							</Test>
-							<Test name="11">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
 							<Test name="12">
 								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
 							</Test>
@@ -65273,9 +63972,6 @@
 							<Test name="14">
 								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
 							</Test>
-							<Test name="15">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
 							<Test name="16">
 								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
 							</Test>
@@ -65375,9 +64071,6 @@
 							<Test name="48">
 								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
 							</Test>
-							<Test name="49">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
 							<Test name="50">
 								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
 							</Test>
@@ -65495,9 +64188,6 @@
 							<Test name="88">
 								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
 							</Test>
-							<Test name="89">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
 							<Test name="90">
 								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
 							</Test>
@@ -65510,9 +64200,6 @@
 							<Test name="93">
 								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
 							</Test>
-							<Test name="94">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
 							<Test name="95">
 								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
 							</Test>
@@ -65641,9 +64328,6 @@
 							<Test name="36">
 								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
 							</Test>
-							<Test name="37">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
 							<Test name="38">
 								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
 							</Test>
@@ -65677,9 +64361,6 @@
 							<Test name="48">
 								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
 							</Test>
-							<Test name="49">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
 							<Test name="50">
 								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
 							</Test>
@@ -65797,9 +64478,6 @@
 							<Test name="88">
 								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
 							</Test>
-							<Test name="89">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
 							<Test name="90">
 								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
 							</Test>
@@ -65812,9 +64490,6 @@
 							<Test name="93">
 								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
 							</Test>
-							<Test name="94">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
 							<Test name="95">
 								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
 							</Test>
@@ -67052,21 +65727,12 @@
 							<Test name="1">
 								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
 							</Test>
-							<Test name="2">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
 							<Test name="3">
 								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
 							</Test>
-							<Test name="4">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
 							<Test name="5">
 								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
 							</Test>
-							<Test name="6">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
 							<Test name="7">
 								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
 							</Test>
@@ -67085,9 +65751,6 @@
 							<Test name="12">
 								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
 							</Test>
-							<Test name="13">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
 							<Test name="14">
 								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
 							</Test>
@@ -67097,12 +65760,6 @@
 							<Test name="16">
 								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
 							</Test>
-							<Test name="17">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="18">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
 							<Test name="19">
 								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
 							</Test>
@@ -67124,18 +65781,12 @@
 							<Test name="25">
 								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
 							</Test>
-							<Test name="26">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
 							<Test name="27">
 								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
 							</Test>
 							<Test name="28">
 								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
 							</Test>
-							<Test name="29">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
 							<Test name="30">
 								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
 							</Test>
@@ -67148,9 +65799,6 @@
 							<Test name="33">
 								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
 							</Test>
-							<Test name="34">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
 							<Test name="35">
 								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
 							</Test>
@@ -67166,12 +65814,6 @@
 							<Test name="39">
 								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
 							</Test>
-							<Test name="40">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="41">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
 							<Test name="42">
 								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
 							</Test>
@@ -67184,33 +65826,15 @@
 							<Test name="45">
 								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
 							</Test>
-							<Test name="46">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="47">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
 							<Test name="48">
 								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
 							</Test>
-							<Test name="49">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="50">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
 							<Test name="51">
 								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
 							</Test>
 							<Test name="52">
 								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
 							</Test>
-							<Test name="53">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="54">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
 							<Test name="55">
 								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
 							</Test>
@@ -67232,21 +65856,12 @@
 							<Test name="61">
 								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
 							</Test>
-							<Test name="62">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
 							<Test name="63">
 								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
 							</Test>
 							<Test name="64">
 								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
 							</Test>
-							<Test name="65">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="66">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
 							<Test name="67">
 								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
 							</Test>
@@ -67262,9 +65877,6 @@
 							<Test name="71">
 								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
 							</Test>
-							<Test name="72">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
 							<Test name="73">
 								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
 							</Test>
@@ -67274,24 +65886,12 @@
 							<Test name="75">
 								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
 							</Test>
-							<Test name="76">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="77">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
 							<Test name="78">
 								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
 							</Test>
-							<Test name="79">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
 							<Test name="80">
 								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
 							</Test>
-							<Test name="81">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
 							<Test name="82">
 								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
 							</Test>
@@ -67307,12 +65907,6 @@
 							<Test name="86">
 								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
 							</Test>
-							<Test name="87">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="88">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
 							<Test name="89">
 								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
 							</Test>
@@ -67325,18 +65919,9 @@
 							<Test name="92">
 								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
 							</Test>
-							<Test name="93">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="94">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
 							<Test name="95">
 								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
 							</Test>
-							<Test name="96">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
 							<Test name="97">
 								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
 							</Test>
@@ -67366,18 +65951,9 @@
 							<Test name="5">
 								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
 							</Test>
-							<Test name="6">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="7">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
 							<Test name="8">
 								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
 							</Test>
-							<Test name="9">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
 							<Test name="10">
 								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
 							</Test>
@@ -67387,42 +65963,24 @@
 							<Test name="12">
 								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
 							</Test>
-							<Test name="13">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="14">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
 							<Test name="15">
 								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
 							</Test>
 							<Test name="17">
 								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
 							</Test>
-							<Test name="18">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
 							<Test name="19">
 								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
 							</Test>
 							<Test name="20">
 								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
 							</Test>
-							<Test name="21">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="22">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
 							<Test name="23">
 								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
 							</Test>
 							<Test name="24">
 								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
 							</Test>
-							<Test name="25">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
 							<Test name="26">
 								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
 							</Test>
@@ -67435,21 +65993,12 @@
 							<Test name="29">
 								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
 							</Test>
-							<Test name="30">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
 							<Test name="31">
 								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
 							</Test>
-							<Test name="32">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
 							<Test name="33">
 								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
 							</Test>
-							<Test name="34">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
 							<Test name="35">
 								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
 							</Test>
@@ -67459,15 +66008,6 @@
 							<Test name="37">
 								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
 							</Test>
-							<Test name="38">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="39">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="40">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
 							<Test name="41">
 								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
 							</Test>
@@ -67483,9 +66023,6 @@
 							<Test name="45">
 								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
 							</Test>
-							<Test name="46">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
 							<Test name="47">
 								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
 							</Test>
@@ -67504,15 +66041,9 @@
 							<Test name="52">
 								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
 							</Test>
-							<Test name="53">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
 							<Test name="54">
 								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
 							</Test>
-							<Test name="55">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
 							<Test name="56">
 								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
 							</Test>
@@ -67537,33 +66068,15 @@
 							<Test name="63">
 								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
 							</Test>
-							<Test name="64">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="65">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="66">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
 							<Test name="67">
 								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
 							</Test>
 							<Test name="68">
 								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
 							</Test>
-							<Test name="69">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="70">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
 							<Test name="71">
 								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
 							</Test>
-							<Test name="72">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
 							<Test name="73">
 								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
 							</Test>
@@ -67585,12 +66098,6 @@
 							<Test name="79">
 								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
 							</Test>
-							<Test name="80">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="81">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
 							<Test name="82">
 								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
 							</Test>
@@ -67603,18 +66110,12 @@
 							<Test name="85">
 								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
 							</Test>
-							<Test name="86">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
 							<Test name="87">
 								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
 							</Test>
 							<Test name="88">
 								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
 							</Test>
-							<Test name="89">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
 							<Test name="90">
 								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
 							</Test>
@@ -67627,15 +66128,9 @@
 							<Test name="93">
 								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
 							</Test>
-							<Test name="94">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
 							<Test name="95">
 								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
 							</Test>
-							<Test name="96">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
 							<Test name="97">
 								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
 							</Test>
@@ -99197,9 +97692,6 @@
 					<Test name="texture_levels">
 						<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
 					</Test>
-					<Test name="attachment_query_default_fbo">
-						<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-					</Test>
 					<Test name="attachment_query_empty_fbo">
 						<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
 					</Test>
@@ -134737,9 +133229,6 @@
 					<Test name="compressedtexsubimage2d_invalid_buffer_target">
 						<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
 					</Test>
-					<Test name="teximage3d">
-						<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-					</Test>
 					<Test name="teximage3d_neg_level">
 						<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
 					</Test>
@@ -143086,6 +141575,11 @@
 					</Test>
 				</TestCase>
 			</TestSuite>
+			<TestCase name="default_vertex_array_object">
+				<Test name="vertex_attrib_divisor">
+					<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
+				</Test>
+			</TestCase>
 		</TestSuite>
 	</TestSuite>
 </TestPackage>
diff --git a/android/cts/master/com.drawelements.deqp.gles31.xml b/android/cts/master/com.drawelements.deqp.gles31.xml
index 6b0abf4..7336303 100644
--- a/android/cts/master/com.drawelements.deqp.gles31.xml
+++ b/android/cts/master/com.drawelements.deqp.gles31.xml
@@ -16900,6 +16900,450 @@
 						</TestCase>
 					</TestSuite>
 				</TestSuite>
+				<TestSuite name="uniform_block">
+					<TestCase name="valid">
+						<Test name="repeat_interface_qualifier_vertex">
+							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
+						</Test>
+						<Test name="repeat_interface_qualifier_fragment">
+							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
+						</Test>
+						<Test name="layout_shared_vertex">
+							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
+						</Test>
+						<Test name="layout_shared_fragment">
+							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
+						</Test>
+						<Test name="layout_packed_vertex">
+							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
+						</Test>
+						<Test name="layout_packed_fragment">
+							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
+						</Test>
+						<Test name="layout_std140_vertex">
+							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
+						</Test>
+						<Test name="layout_std140_fragment">
+							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
+						</Test>
+						<Test name="layout_row_major_vertex">
+							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
+						</Test>
+						<Test name="layout_row_major_fragment">
+							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
+						</Test>
+						<Test name="layout_column_major_vertex">
+							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
+						</Test>
+						<Test name="layout_column_major_fragment">
+							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
+						</Test>
+						<Test name="layout_all_vertex">
+							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
+						</Test>
+						<Test name="layout_all_fragment">
+							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
+						</Test>
+						<Test name="layout_all_8_times_vertex">
+							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
+						</Test>
+						<Test name="layout_all_8_times_fragment">
+							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
+						</Test>
+						<Test name="global_layout_shared_vertex">
+							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
+						</Test>
+						<Test name="global_layout_shared_fragment">
+							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
+						</Test>
+						<Test name="global_layout_packed_vertex">
+							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
+						</Test>
+						<Test name="global_layout_packed_fragment">
+							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
+						</Test>
+						<Test name="global_layout_std140_vertex">
+							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
+						</Test>
+						<Test name="global_layout_std140_fragment">
+							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
+						</Test>
+						<Test name="global_layout_row_major_vertex">
+							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
+						</Test>
+						<Test name="global_layout_row_major_fragment">
+							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
+						</Test>
+						<Test name="global_layout_column_major_vertex">
+							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
+						</Test>
+						<Test name="global_layout_column_major_fragment">
+							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
+						</Test>
+						<Test name="global_layout_all_vertex">
+							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
+						</Test>
+						<Test name="global_layout_all_fragment">
+							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
+						</Test>
+						<Test name="global_layout_all_8_times_vertex">
+							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
+						</Test>
+						<Test name="global_layout_all_8_times_fragment">
+							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
+						</Test>
+						<Test name="member_layout_row_major_vertex">
+							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
+						</Test>
+						<Test name="member_layout_row_major_fragment">
+							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
+						</Test>
+						<Test name="member_layout_column_major_vertex">
+							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
+						</Test>
+						<Test name="member_layout_column_major_fragment">
+							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
+						</Test>
+						<Test name="member_layout_row_major_vec4_vertex">
+							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
+						</Test>
+						<Test name="member_layout_row_major_vec4_fragment">
+							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
+						</Test>
+						<Test name="member_layout_column_major_vec4_vertex">
+							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
+						</Test>
+						<Test name="member_layout_column_major_vec4_fragment">
+							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
+						</Test>
+						<Test name="member_layout_all_vertex">
+							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
+						</Test>
+						<Test name="member_layout_all_fragment">
+							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
+						</Test>
+						<Test name="member_layout_all_8_times_vertex">
+							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
+						</Test>
+						<Test name="member_layout_all_8_times_fragment">
+							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
+						</Test>
+						<Test name="no_instance_name_vertex">
+							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
+						</Test>
+						<Test name="no_instance_name_fragment">
+							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
+						</Test>
+						<Test name="same_variable_and_block_name_vertex">
+							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
+						</Test>
+						<Test name="same_variable_and_block_name_fragment">
+							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
+						</Test>
+						<Test name="same_variable_and_instance_name_vertex">
+							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
+						</Test>
+						<Test name="same_variable_and_instance_name_fragment">
+							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
+						</Test>
+						<Test name="struct_member_vertex">
+							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
+						</Test>
+						<Test name="struct_member_fragment">
+							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
+						</Test>
+						<Test name="struct_member_layout_row_major_vertex">
+							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
+						</Test>
+						<Test name="struct_member_layout_row_major_fragment">
+							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
+						</Test>
+						<Test name="struct_member_layout_column_major_vertex">
+							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
+						</Test>
+						<Test name="struct_member_layout_column_major_fragment">
+							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
+						</Test>
+						<Test name="struct_member_layout_all_vertex">
+							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
+						</Test>
+						<Test name="struct_member_layout_all_fragment">
+							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
+						</Test>
+						<Test name="struct_member_layout_all_8_times_vertex">
+							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
+						</Test>
+						<Test name="struct_member_layout_all_8_times_fragment">
+							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
+						</Test>
+						<Test name="long_block_name_vertex">
+							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
+						</Test>
+						<Test name="long_block_name_fragment">
+							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
+						</Test>
+						<Test name="long_instance_name_vertex">
+							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
+						</Test>
+						<Test name="long_instance_name_fragment">
+							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
+						</Test>
+						<Test name="underscore_block_name_vertex">
+							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
+						</Test>
+						<Test name="underscore_block_name_fragment">
+							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
+						</Test>
+						<Test name="underscore_instance_name_vertex">
+							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
+						</Test>
+						<Test name="underscore_instance_name_fragment">
+							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
+						</Test>
+					</TestCase>
+					<TestCase name="invalid">
+						<Test name="member_in_interface_qualifier_vertex">
+							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
+						</Test>
+						<Test name="member_in_interface_qualifier_fragment">
+							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
+						</Test>
+						<Test name="member_out_interface_qualifier_vertex">
+							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
+						</Test>
+						<Test name="member_out_interface_qualifier_fragment">
+							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
+						</Test>
+						<Test name="member_buffer_interface_qualifier_vertex">
+							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
+						</Test>
+						<Test name="member_buffer_interface_qualifier_fragment">
+							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
+						</Test>
+						<Test name="member_attribute_interface_qualifier_vertex">
+							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
+						</Test>
+						<Test name="member_attribute_interface_qualifier_fragment">
+							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
+						</Test>
+						<Test name="member_varying_interface_qualifier_vertex">
+							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
+						</Test>
+						<Test name="member_varying_interface_qualifier_fragment">
+							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
+						</Test>
+						<Test name="conflicting_instance_names_vertex">
+							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
+						</Test>
+						<Test name="conflicting_instance_names_fragment">
+							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
+						</Test>
+						<Test name="conflicting_function_and_instance_name_vertex">
+							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
+						</Test>
+						<Test name="conflicting_function_and_instance_name_fragment">
+							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
+						</Test>
+						<Test name="conflicting_function_and_block_name_vertex">
+							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
+						</Test>
+						<Test name="conflicting_function_and_block_name_fragment">
+							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
+						</Test>
+						<Test name="conflicting_uniform_and_instance_name_vertex">
+							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
+						</Test>
+						<Test name="conflicting_uniform_and_instance_name_fragment">
+							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
+						</Test>
+						<Test name="conflicting_in_and_instance_name_vertex">
+							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
+						</Test>
+						<Test name="conflicting_in_and_instance_name_fragment">
+							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
+						</Test>
+						<Test name="conflicting_out_and_instance_name_vertex">
+							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
+						</Test>
+						<Test name="conflicting_out_and_instance_name_fragment">
+							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
+						</Test>
+						<Test name="conflicting_uniform_and_block_name_vertex">
+							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
+						</Test>
+						<Test name="conflicting_uniform_and_block_name_fragment">
+							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
+						</Test>
+						<Test name="conflicting_in_and_block_name_vertex">
+							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
+						</Test>
+						<Test name="conflicting_in_and_block_name_fragment">
+							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
+						</Test>
+						<Test name="conflicting_out_and_block_name_vertex">
+							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
+						</Test>
+						<Test name="conflicting_out_and_block_name_fragment">
+							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
+						</Test>
+						<Test name="matching_instance_and_block_name_vertex">
+							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
+						</Test>
+						<Test name="matching_instance_and_block_name_fragment">
+							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
+						</Test>
+						<Test name="reference_using_block_name_vertex">
+							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
+						</Test>
+						<Test name="reference_using_block_name_fragment">
+							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
+						</Test>
+						<Test name="empty_block_vertex">
+							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
+						</Test>
+						<Test name="empty_block_fragment">
+							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
+						</Test>
+						<Test name="empty_layout_vertex">
+							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
+						</Test>
+						<Test name="empty_layout_fragment">
+							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
+						</Test>
+						<Test name="empty_member_layout_vertex">
+							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
+						</Test>
+						<Test name="empty_member_layout_fragment">
+							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
+						</Test>
+						<Test name="empty_global_layout_vertex">
+							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
+						</Test>
+						<Test name="empty_global_layout_fragment">
+							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
+						</Test>
+						<Test name="structure_definition_vertex">
+							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
+						</Test>
+						<Test name="structure_definition_fragment">
+							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
+						</Test>
+						<Test name="member_layout_shared_vertex">
+							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
+						</Test>
+						<Test name="member_layout_shared_fragment">
+							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
+						</Test>
+						<Test name="member_layout_packed_vertex">
+							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
+						</Test>
+						<Test name="member_layout_packed_fragment">
+							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
+						</Test>
+						<Test name="member_layout_std140std430_vertex">
+							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
+						</Test>
+						<Test name="member_layout_std140std430_fragment">
+							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
+						</Test>
+						<Test name="missing_block_name_vertex">
+							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
+						</Test>
+						<Test name="missing_block_name_fragment">
+							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
+						</Test>
+						<Test name="invalid_number_block_name_vertex">
+							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
+						</Test>
+						<Test name="invalid_number_block_name_fragment">
+							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
+						</Test>
+						<Test name="invalid_identifier_block_name_vertex">
+							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
+						</Test>
+						<Test name="invalid_identifier_block_name_fragment">
+							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
+						</Test>
+						<Test name="invalid_hash_block_name_vertex">
+							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
+						</Test>
+						<Test name="invalid_hash_block_name_fragment">
+							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
+						</Test>
+						<Test name="invalid_dollar_block_name_vertex">
+							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
+						</Test>
+						<Test name="invalid_dollar_block_name_fragment">
+							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
+						</Test>
+						<Test name="too_long_block_name_vertex">
+							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
+						</Test>
+						<Test name="too_long_block_name_fragment">
+							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
+						</Test>
+						<Test name="invalid_number_instance_name_vertex">
+							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
+						</Test>
+						<Test name="invalid_number_instance_name_fragment">
+							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
+						</Test>
+						<Test name="invalid_identifier_instance_name_vertex">
+							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
+						</Test>
+						<Test name="invalid_identifier_instance_name_fragment">
+							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
+						</Test>
+						<Test name="invalid_hash_instance_name_vertex">
+							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
+						</Test>
+						<Test name="invalid_hash_instance_name_fragment">
+							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
+						</Test>
+						<Test name="invalid_dollar_instance_name_vertex">
+							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
+						</Test>
+						<Test name="invalid_dollar_instance_name_fragment">
+							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
+						</Test>
+						<Test name="double_underscore_block_name_vertex">
+							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
+						</Test>
+						<Test name="double_underscore_block_name_fragment">
+							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
+						</Test>
+						<Test name="double_underscore_instance_name_vertex">
+							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
+						</Test>
+						<Test name="double_underscore_instance_name_fragment">
+							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
+						</Test>
+						<Test name="repeated_block_vertex">
+							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
+						</Test>
+						<Test name="repeated_block_fragment">
+							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
+						</Test>
+						<Test name="repeated_block_no_instance_name_vertex">
+							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
+						</Test>
+						<Test name="repeated_block_no_instance_name_fragment">
+							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
+						</Test>
+						<Test name="layout_std430_vertex">
+							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
+						</Test>
+						<Test name="layout_std430_fragment">
+							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
+						</Test>
+						<Test name="global_layout_std430_vertex">
+							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
+						</Test>
+						<Test name="global_layout_std430_fragment">
+							<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
+						</Test>
+					</TestCase>
+				</TestSuite>
 			</TestSuite>
 			<TestSuite name="compute">
 				<TestCase name="basic">
@@ -74278,56 +74722,6 @@
 								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
 							</Test>
 						</TestCase>
-						<TestCase name="r32f_rgba8_snorm">
-							<Test name="texture2d_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-						</TestCase>
 						<TestCase name="r32f_srgb8_alpha8">
 							<Test name="texture2d_to_texture2d">
 								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
@@ -75257,68 +75651,6 @@
 								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
 							</Test>
 						</TestCase>
-						<TestCase name="r32i_rgba8_snorm">
-							<Test name="texture2d_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="renderbuffer_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="renderbuffer_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="renderbuffer_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="renderbuffer_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-						</TestCase>
 						<TestCase name="r32i_srgb8_alpha8">
 							<Test name="texture2d_to_texture2d">
 								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
@@ -76322,68 +76654,6 @@
 								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
 							</Test>
 						</TestCase>
-						<TestCase name="r32ui_rgba8_snorm">
-							<Test name="texture2d_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="renderbuffer_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="renderbuffer_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="renderbuffer_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="renderbuffer_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-						</TestCase>
 						<TestCase name="r32ui_srgb8_alpha8">
 							<Test name="texture2d_to_texture2d">
 								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
@@ -77116,56 +77386,6 @@
 								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
 							</Test>
 						</TestCase>
-						<TestCase name="rg16f_rgba8_snorm">
-							<Test name="texture2d_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-						</TestCase>
 						<TestCase name="rg16f_srgb8_alpha8">
 							<Test name="texture2d_to_texture2d">
 								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
@@ -78095,68 +78315,6 @@
 								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
 							</Test>
 						</TestCase>
-						<TestCase name="rg16i_rgba8_snorm">
-							<Test name="texture2d_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="renderbuffer_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="renderbuffer_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="renderbuffer_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="renderbuffer_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-						</TestCase>
 						<TestCase name="rg16i_srgb8_alpha8">
 							<Test name="texture2d_to_texture2d">
 								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
@@ -79160,68 +79318,6 @@
 								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
 							</Test>
 						</TestCase>
-						<TestCase name="rg16ui_rgba8_snorm">
-							<Test name="texture2d_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="renderbuffer_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="renderbuffer_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="renderbuffer_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="renderbuffer_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-						</TestCase>
 						<TestCase name="rg16ui_srgb8_alpha8">
 							<Test name="texture2d_to_texture2d">
 								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
@@ -80225,68 +80321,6 @@
 								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
 							</Test>
 						</TestCase>
-						<TestCase name="rgba8_rgba8_snorm">
-							<Test name="texture2d_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="renderbuffer_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="renderbuffer_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="renderbuffer_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="renderbuffer_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-						</TestCase>
 						<TestCase name="rgba8_srgb8_alpha8">
 							<Test name="texture2d_to_texture2d">
 								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
@@ -81290,68 +81324,6 @@
 								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
 							</Test>
 						</TestCase>
-						<TestCase name="rgba8i_rgba8_snorm">
-							<Test name="texture2d_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="renderbuffer_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="renderbuffer_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="renderbuffer_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="renderbuffer_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-						</TestCase>
 						<TestCase name="rgba8i_srgb8_alpha8">
 							<Test name="texture2d_to_texture2d">
 								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
@@ -82355,68 +82327,6 @@
 								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
 							</Test>
 						</TestCase>
-						<TestCase name="rgba8ui_rgba8_snorm">
-							<Test name="texture2d_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="renderbuffer_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="renderbuffer_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="renderbuffer_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="renderbuffer_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-						</TestCase>
 						<TestCase name="rgba8ui_srgb8_alpha8">
 							<Test name="texture2d_to_texture2d">
 								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
@@ -83149,56 +83059,6 @@
 								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
 							</Test>
 						</TestCase>
-						<TestCase name="r11f_g11f_b10f_rgba8_snorm">
-							<Test name="texture2d_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-						</TestCase>
 						<TestCase name="r11f_g11f_b10f_srgb8_alpha8">
 							<Test name="texture2d_to_texture2d">
 								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
@@ -84128,68 +83988,6 @@
 								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
 							</Test>
 						</TestCase>
-						<TestCase name="rgb10_a2ui_rgba8_snorm">
-							<Test name="texture2d_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="renderbuffer_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="renderbuffer_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="renderbuffer_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="renderbuffer_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-						</TestCase>
 						<TestCase name="rgb10_a2ui_srgb8_alpha8">
 							<Test name="texture2d_to_texture2d">
 								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
@@ -85193,68 +84991,6 @@
 								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
 							</Test>
 						</TestCase>
-						<TestCase name="rgb10_a2_rgba8_snorm">
-							<Test name="texture2d_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="renderbuffer_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="renderbuffer_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="renderbuffer_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="renderbuffer_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-						</TestCase>
 						<TestCase name="rgb10_a2_srgb8_alpha8">
 							<Test name="texture2d_to_texture2d">
 								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
@@ -85379,864 +85115,6 @@
 								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
 							</Test>
 						</TestCase>
-						<TestCase name="rgba8_snorm_r32f">
-							<Test name="texture2d_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-						</TestCase>
-						<TestCase name="rgba8_snorm_r32i">
-							<Test name="texture2d_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_renderbuffer">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_renderbuffer">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_renderbuffer">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_renderbuffer">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-						</TestCase>
-						<TestCase name="rgba8_snorm_r32ui">
-							<Test name="texture2d_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_renderbuffer">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_renderbuffer">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_renderbuffer">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_renderbuffer">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-						</TestCase>
-						<TestCase name="rgba8_snorm_rg16f">
-							<Test name="texture2d_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-						</TestCase>
-						<TestCase name="rgba8_snorm_rg16i">
-							<Test name="texture2d_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_renderbuffer">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_renderbuffer">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_renderbuffer">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_renderbuffer">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-						</TestCase>
-						<TestCase name="rgba8_snorm_rg16ui">
-							<Test name="texture2d_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_renderbuffer">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_renderbuffer">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_renderbuffer">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_renderbuffer">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-						</TestCase>
-						<TestCase name="rgba8_snorm_rgba8">
-							<Test name="texture2d_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_renderbuffer">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_renderbuffer">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_renderbuffer">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_renderbuffer">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-						</TestCase>
-						<TestCase name="rgba8_snorm_rgba8i">
-							<Test name="texture2d_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_renderbuffer">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_renderbuffer">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_renderbuffer">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_renderbuffer">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-						</TestCase>
-						<TestCase name="rgba8_snorm_rgba8ui">
-							<Test name="texture2d_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_renderbuffer">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_renderbuffer">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_renderbuffer">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_renderbuffer">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-						</TestCase>
-						<TestCase name="rgba8_snorm_r11f_g11f_b10f">
-							<Test name="texture2d_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-						</TestCase>
-						<TestCase name="rgba8_snorm_rgb10_a2ui">
-							<Test name="texture2d_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_renderbuffer">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_renderbuffer">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_renderbuffer">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_renderbuffer">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-						</TestCase>
-						<TestCase name="rgba8_snorm_rgb10_a2">
-							<Test name="texture2d_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_renderbuffer">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_renderbuffer">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_renderbuffer">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_renderbuffer">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-						</TestCase>
-						<TestCase name="rgba8_snorm_rgba8_snorm">
-							<Test name="texture2d_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-						</TestCase>
-						<TestCase name="rgba8_snorm_srgb8_alpha8">
-							<Test name="texture2d_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-						</TestCase>
-						<TestCase name="rgba8_snorm_rgb9_e5">
-							<Test name="texture2d_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-						</TestCase>
 						<TestCase name="srgb8_alpha8_r32f">
 							<Test name="texture2d_to_texture2d">
 								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
@@ -86981,68 +85859,6 @@
 								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
 							</Test>
 						</TestCase>
-						<TestCase name="srgb8_alpha8_rgba8_snorm">
-							<Test name="texture2d_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="renderbuffer_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="renderbuffer_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="renderbuffer_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="renderbuffer_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-						</TestCase>
 						<TestCase name="srgb8_alpha8_srgb8_alpha8">
 							<Test name="texture2d_to_texture2d">
 								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
@@ -87725,56 +86541,6 @@
 								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
 							</Test>
 						</TestCase>
-						<TestCase name="rgb9_e5_rgba8_snorm">
-							<Test name="texture2d_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-						</TestCase>
 						<TestCase name="rgb9_e5_srgb8_alpha8">
 							<Test name="texture2d_to_texture2d">
 								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
@@ -88078,68 +86844,6 @@
 								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
 							</Test>
 						</TestCase>
-						<TestCase name="rgb8_rgb8_snorm">
-							<Test name="texture2d_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="renderbuffer_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="renderbuffer_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="renderbuffer_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="renderbuffer_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-						</TestCase>
 						<TestCase name="rgb8_srgb8">
 							<Test name="texture2d_to_texture2d">
 								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
@@ -88364,56 +87068,6 @@
 								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
 							</Test>
 						</TestCase>
-						<TestCase name="rgb8i_rgb8_snorm">
-							<Test name="texture2d_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-						</TestCase>
 						<TestCase name="rgb8i_srgb8">
 							<Test name="texture2d_to_texture2d">
 								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
@@ -88626,56 +87280,6 @@
 								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
 							</Test>
 						</TestCase>
-						<TestCase name="rgb8ui_rgb8_snorm">
-							<Test name="texture2d_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-						</TestCase>
 						<TestCase name="rgb8ui_srgb8">
 							<Test name="texture2d_to_texture2d">
 								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
@@ -88726,268 +87330,6 @@
 								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
 							</Test>
 						</TestCase>
-						<TestCase name="rgb8_snorm_rgb8">
-							<Test name="texture2d_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_renderbuffer">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_renderbuffer">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_renderbuffer">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_renderbuffer">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-						</TestCase>
-						<TestCase name="rgb8_snorm_rgb8i">
-							<Test name="texture2d_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-						</TestCase>
-						<TestCase name="rgb8_snorm_rgb8ui">
-							<Test name="texture2d_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-						</TestCase>
-						<TestCase name="rgb8_snorm_rgb8_snorm">
-							<Test name="texture2d_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-						</TestCase>
-						<TestCase name="rgb8_snorm_srgb8">
-							<Test name="texture2d_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-						</TestCase>
 						<TestCase name="srgb8_rgb8">
 							<Test name="texture2d_to_texture2d">
 								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
@@ -89138,56 +87480,6 @@
 								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
 							</Test>
 						</TestCase>
-						<TestCase name="srgb8_rgb8_snorm">
-							<Test name="texture2d_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-						</TestCase>
 						<TestCase name="srgb8_srgb8">
 							<Test name="texture2d_to_texture2d">
 								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
@@ -89600,56 +87892,6 @@
 								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
 							</Test>
 						</TestCase>
-						<TestCase name="r16f_rg8_snorm">
-							<Test name="texture2d_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-						</TestCase>
 						<TestCase name="r16i_r16f">
 							<Test name="texture2d_to_texture2d">
 								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
@@ -90097,68 +88339,6 @@
 								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
 							</Test>
 						</TestCase>
-						<TestCase name="r16i_rg8_snorm">
-							<Test name="texture2d_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="renderbuffer_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="renderbuffer_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="renderbuffer_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="renderbuffer_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-						</TestCase>
 						<TestCase name="r16ui_r16f">
 							<Test name="texture2d_to_texture2d">
 								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
@@ -90606,68 +88786,6 @@
 								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
 							</Test>
 						</TestCase>
-						<TestCase name="r16ui_rg8_snorm">
-							<Test name="texture2d_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="renderbuffer_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="renderbuffer_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="renderbuffer_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="renderbuffer_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-						</TestCase>
 						<TestCase name="rg8_r16f">
 							<Test name="texture2d_to_texture2d">
 								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
@@ -91115,68 +89233,6 @@
 								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
 							</Test>
 						</TestCase>
-						<TestCase name="rg8_rg8_snorm">
-							<Test name="texture2d_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="renderbuffer_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="renderbuffer_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="renderbuffer_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="renderbuffer_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-						</TestCase>
 						<TestCase name="rg8i_r16f">
 							<Test name="texture2d_to_texture2d">
 								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
@@ -91624,68 +89680,6 @@
 								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
 							</Test>
 						</TestCase>
-						<TestCase name="rg8i_rg8_snorm">
-							<Test name="texture2d_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="renderbuffer_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="renderbuffer_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="renderbuffer_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="renderbuffer_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-						</TestCase>
 						<TestCase name="rg8ui_r16f">
 							<Test name="texture2d_to_texture2d">
 								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
@@ -92133,478 +90127,6 @@
 								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
 							</Test>
 						</TestCase>
-						<TestCase name="rg8ui_rg8_snorm">
-							<Test name="texture2d_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="renderbuffer_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="renderbuffer_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="renderbuffer_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="renderbuffer_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-						</TestCase>
-						<TestCase name="rg8_snorm_r16f">
-							<Test name="texture2d_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-						</TestCase>
-						<TestCase name="rg8_snorm_r16i">
-							<Test name="texture2d_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_renderbuffer">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_renderbuffer">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_renderbuffer">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_renderbuffer">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-						</TestCase>
-						<TestCase name="rg8_snorm_r16ui">
-							<Test name="texture2d_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_renderbuffer">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_renderbuffer">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_renderbuffer">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_renderbuffer">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-						</TestCase>
-						<TestCase name="rg8_snorm_rg8">
-							<Test name="texture2d_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_renderbuffer">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_renderbuffer">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_renderbuffer">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_renderbuffer">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-						</TestCase>
-						<TestCase name="rg8_snorm_rg8i">
-							<Test name="texture2d_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_renderbuffer">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_renderbuffer">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_renderbuffer">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_renderbuffer">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-						</TestCase>
-						<TestCase name="rg8_snorm_rg8ui">
-							<Test name="texture2d_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_renderbuffer">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_renderbuffer">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_renderbuffer">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_renderbuffer">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-						</TestCase>
-						<TestCase name="rg8_snorm_rg8_snorm">
-							<Test name="texture2d_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-						</TestCase>
 					</TestSuite>
 					<TestSuite name="viewclass_8_bits">
 						<TestCase name="r8_r8">
@@ -92838,68 +90360,6 @@
 								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
 							</Test>
 						</TestCase>
-						<TestCase name="r8_r8_snorm">
-							<Test name="texture2d_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="renderbuffer_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="renderbuffer_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="renderbuffer_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="renderbuffer_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-						</TestCase>
 						<TestCase name="r8i_r8">
 							<Test name="texture2d_to_texture2d">
 								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
@@ -93131,68 +90591,6 @@
 								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
 							</Test>
 						</TestCase>
-						<TestCase name="r8i_r8_snorm">
-							<Test name="texture2d_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="renderbuffer_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="renderbuffer_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="renderbuffer_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="renderbuffer_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-						</TestCase>
 						<TestCase name="r8ui_r8">
 							<Test name="texture2d_to_texture2d">
 								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
@@ -93424,304 +90822,6 @@
 								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
 							</Test>
 						</TestCase>
-						<TestCase name="r8ui_r8_snorm">
-							<Test name="texture2d_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="renderbuffer_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="renderbuffer_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="renderbuffer_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="renderbuffer_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-						</TestCase>
-						<TestCase name="r8_snorm_r8">
-							<Test name="texture2d_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_renderbuffer">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_renderbuffer">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_renderbuffer">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_renderbuffer">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-						</TestCase>
-						<TestCase name="r8_snorm_r8i">
-							<Test name="texture2d_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_renderbuffer">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_renderbuffer">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_renderbuffer">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_renderbuffer">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-						</TestCase>
-						<TestCase name="r8_snorm_r8ui">
-							<Test name="texture2d_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_renderbuffer">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_renderbuffer">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_renderbuffer">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_renderbuffer">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-						</TestCase>
-						<TestCase name="r8_snorm_r8_snorm">
-							<Test name="texture2d_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture3d_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="cubemap_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture2d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture3d">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_cubemap">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-							<Test name="texture2d_array_to_texture2d_array">
-								<TestInstance glconfig="rgba8888d24s8ms0" rotation="unspecified" surfacetype="window"/>
-							</Test>
-						</TestCase>
 					</TestSuite>
 				</TestSuite>
 				<TestSuite name="compressed">
diff --git a/android/cts/master/egl-master.txt b/android/cts/master/egl-master.txt
index 4f59a8f..ba553e7 100644
--- a/android/cts/master/egl-master.txt
+++ b/android/cts/master/egl-master.txt
@@ -1823,12 +1823,6 @@
 dEQP-EGL.functional.create_context_ext.gles_20.rgba5551_no_depth_stencil
 dEQP-EGL.functional.create_context_ext.gles_20.rgba5551_depth_no_stencil
 dEQP-EGL.functional.create_context_ext.gles_20.rgba5551_depth_stencil
-dEQP-EGL.functional.create_context_ext.robust_gles_20.rgba4444_no_depth_no_stencil
-dEQP-EGL.functional.create_context_ext.robust_gles_20.rgba4444_no_depth_stencil
-dEQP-EGL.functional.create_context_ext.robust_gles_20.rgba4444_depth_no_stencil
-dEQP-EGL.functional.create_context_ext.robust_gles_20.rgba5551_no_depth_no_stencil
-dEQP-EGL.functional.create_context_ext.robust_gles_20.rgba5551_no_depth_stencil
-dEQP-EGL.functional.create_context_ext.robust_gles_20.rgba5551_depth_no_stencil
 dEQP-EGL.functional.create_context_ext.gles_30.rgba4444_no_depth_no_stencil
 dEQP-EGL.functional.create_context_ext.gles_30.rgba4444_no_depth_stencil
 dEQP-EGL.functional.create_context_ext.gles_30.rgba4444_depth_no_stencil
@@ -1837,12 +1831,6 @@
 dEQP-EGL.functional.create_context_ext.gles_30.rgba5551_no_depth_stencil
 dEQP-EGL.functional.create_context_ext.gles_30.rgba5551_depth_no_stencil
 dEQP-EGL.functional.create_context_ext.gles_30.rgba5551_depth_stencil
-dEQP-EGL.functional.create_context_ext.robust_gles_30.rgba4444_no_depth_no_stencil
-dEQP-EGL.functional.create_context_ext.robust_gles_30.rgba4444_no_depth_stencil
-dEQP-EGL.functional.create_context_ext.robust_gles_30.rgba4444_depth_no_stencil
-dEQP-EGL.functional.create_context_ext.robust_gles_30.rgba5551_no_depth_no_stencil
-dEQP-EGL.functional.create_context_ext.robust_gles_30.rgba5551_no_depth_stencil
-dEQP-EGL.functional.create_context_ext.robust_gles_30.rgba5551_depth_no_stencil
 dEQP-EGL.functional.create_context_ext.gl_30.rgb565_no_depth_no_stencil
 dEQP-EGL.functional.create_context_ext.gl_30.rgb565_no_depth_stencil
 dEQP-EGL.functional.create_context_ext.gl_30.rgb565_depth_no_stencil
diff --git a/android/cts/master/gles3-master.txt b/android/cts/master/gles3-master.txt
index 48b9ad7..fac9567 100644
--- a/android/cts/master/gles3-master.txt
+++ b/android/cts/master/gles3-master.txt
@@ -4573,14 +4573,22 @@
 dEQP-GLES3.functional.shaders.uniform_block.invalid.member_layout_std140_fragment
 dEQP-GLES3.functional.shaders.uniform_block.invalid.missing_block_name_vertex
 dEQP-GLES3.functional.shaders.uniform_block.invalid.missing_block_name_fragment
-dEQP-GLES3.functional.shaders.uniform_block.invalid.invalid_character_block_name_vertex
-dEQP-GLES3.functional.shaders.uniform_block.invalid.invalid_character_block_name_fragment
+dEQP-GLES3.functional.shaders.uniform_block.invalid.invalid_number_block_name_vertex
+dEQP-GLES3.functional.shaders.uniform_block.invalid.invalid_number_block_name_fragment
+dEQP-GLES3.functional.shaders.uniform_block.invalid.invalid_hash_block_name_vertex
+dEQP-GLES3.functional.shaders.uniform_block.invalid.invalid_hash_block_name_fragment
+dEQP-GLES3.functional.shaders.uniform_block.invalid.invalid_dollar_block_name_vertex
+dEQP-GLES3.functional.shaders.uniform_block.invalid.invalid_dollar_block_name_fragment
 dEQP-GLES3.functional.shaders.uniform_block.invalid.invalid_identifier_block_name_vertex
 dEQP-GLES3.functional.shaders.uniform_block.invalid.invalid_identifier_block_name_fragment
 dEQP-GLES3.functional.shaders.uniform_block.invalid.too_long_block_name_vertex
 dEQP-GLES3.functional.shaders.uniform_block.invalid.too_long_block_name_fragment
-dEQP-GLES3.functional.shaders.uniform_block.invalid.invalid_character_instance_name_vertex
-dEQP-GLES3.functional.shaders.uniform_block.invalid.invalid_character_instance_name_fragment
+dEQP-GLES3.functional.shaders.uniform_block.invalid.invalid_number_instance_name_vertex
+dEQP-GLES3.functional.shaders.uniform_block.invalid.invalid_number_instance_name_fragment
+dEQP-GLES3.functional.shaders.uniform_block.invalid.invalid_hash_instance_name_vertex
+dEQP-GLES3.functional.shaders.uniform_block.invalid.invalid_hash_instance_name_fragment
+dEQP-GLES3.functional.shaders.uniform_block.invalid.invalid_dollar_instance_name_vertex
+dEQP-GLES3.functional.shaders.uniform_block.invalid.invalid_dollar_instance_name_fragment
 dEQP-GLES3.functional.shaders.uniform_block.invalid.invalid_identifier_instance_name_vertex
 dEQP-GLES3.functional.shaders.uniform_block.invalid.invalid_identifier_instance_name_fragment
 dEQP-GLES3.functional.shaders.uniform_block.invalid.double_underscore_block_name_vertex
@@ -18285,26 +18293,6 @@
 dEQP-GLES3.functional.shaders.constant_expressions.complex_types.array_fragment
 dEQP-GLES3.functional.shaders.constant_expressions.other.switch_case_vertex
 dEQP-GLES3.functional.shaders.constant_expressions.other.switch_case_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.other.nested_builtin_funcs_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.other.nested_builtin_funcs_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.other.complex_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.other.complex_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.radians_float_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.radians_float_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.radians_vec2_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.radians_vec2_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.radians_vec3_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.radians_vec3_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.radians_vec4_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.radians_vec4_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.degrees_float_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.degrees_float_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.degrees_vec2_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.degrees_vec2_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.degrees_vec3_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.degrees_vec3_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.degrees_vec4_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.degrees_vec4_fragment
 dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.sin_float_vertex
 dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.sin_float_fragment
 dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.sin_vec2_vertex
@@ -18321,14 +18309,6 @@
 dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.cos_vec3_fragment
 dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.cos_vec4_vertex
 dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.cos_vec4_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.tan_float_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.tan_float_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.tan_vec2_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.tan_vec2_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.tan_vec3_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.tan_vec3_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.tan_vec4_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.tan_vec4_fragment
 dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.asin_float_vertex
 dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.asin_float_fragment
 dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.asin_vec2_vertex
@@ -18345,70 +18325,6 @@
 dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.acos_vec3_fragment
 dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.acos_vec4_vertex
 dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.acos_vec4_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.atan_separate_float_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.atan_separate_float_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.atan_separate_vec2_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.atan_separate_vec2_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.atan_separate_vec3_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.atan_separate_vec3_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.atan_separate_vec4_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.atan_separate_vec4_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.atan_combined_float_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.atan_combined_float_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.atan_combined_vec2_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.atan_combined_vec2_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.atan_combined_vec3_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.atan_combined_vec3_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.atan_combined_vec4_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.atan_combined_vec4_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.sinh_float_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.sinh_float_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.sinh_vec2_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.sinh_vec2_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.sinh_vec3_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.sinh_vec3_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.sinh_vec4_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.sinh_vec4_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.cosh_float_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.cosh_float_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.cosh_vec2_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.cosh_vec2_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.cosh_vec3_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.cosh_vec3_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.cosh_vec4_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.cosh_vec4_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.tanh_float_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.tanh_float_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.tanh_vec2_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.tanh_vec2_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.tanh_vec3_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.tanh_vec3_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.tanh_vec4_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.tanh_vec4_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.asinh_float_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.asinh_float_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.asinh_vec2_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.asinh_vec2_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.asinh_vec3_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.asinh_vec3_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.asinh_vec4_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.asinh_vec4_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.acosh_float_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.acosh_float_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.acosh_vec2_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.acosh_vec2_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.acosh_vec3_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.acosh_vec3_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.acosh_vec4_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.acosh_vec4_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.atanh_float_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.atanh_float_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.atanh_vec2_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.atanh_vec2_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.atanh_vec3_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.atanh_vec3_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.atanh_vec4_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.atanh_vec4_fragment
 dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.exponential.pow_float_vertex
 dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.exponential.pow_float_fragment
 dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.exponential.pow_vec2_vertex
@@ -18521,14 +18437,6 @@
 dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.round_vec3_fragment
 dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.round_vec4_vertex
 dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.round_vec4_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.roundEven_float_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.roundEven_float_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.roundEven_vec2_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.roundEven_vec2_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.roundEven_vec3_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.roundEven_vec3_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.roundEven_vec4_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.roundEven_vec4_fragment
 dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.ceil_float_vertex
 dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.ceil_float_fragment
 dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.ceil_vec2_vertex
@@ -18537,28 +18445,6 @@
 dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.ceil_vec3_fragment
 dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.ceil_vec4_vertex
 dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.ceil_vec4_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.fract_float_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.fract_float_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.fract_vec2_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.fract_vec2_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.fract_vec3_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.fract_vec3_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.fract_vec4_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.fract_vec4_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.mod_float_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.mod_float_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.mod_vec2_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.mod_vec2_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.mod_vec2_float_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.mod_vec2_float_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.mod_vec3_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.mod_vec3_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.mod_vec3_float_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.mod_vec3_float_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.mod_vec4_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.mod_vec4_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.mod_vec4_float_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.mod_vec4_float_fragment
 dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.min_float_vertex
 dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.min_float_fragment
 dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.min_vec2_vertex
@@ -18685,86 +18571,6 @@
 dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.clamp_uvec4_fragment
 dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.clamp_uvec4_uint_vertex
 dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.clamp_uvec4_uint_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.mix_float_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.mix_float_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.mix_vec2_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.mix_vec2_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.mix_vec2_float_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.mix_vec2_float_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.mix_vec3_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.mix_vec3_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.mix_vec3_float_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.mix_vec3_float_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.mix_vec4_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.mix_vec4_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.mix_vec4_float_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.mix_vec4_float_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.mix_float_bool_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.mix_float_bool_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.mix_vec2_bvec2_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.mix_vec2_bvec2_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.mix_vec3_bvec3_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.mix_vec3_bvec3_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.mix_vec4_bvec4_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.mix_vec4_bvec4_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.step_float_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.step_float_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.step_vec2_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.step_vec2_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.step_vec2_float_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.step_vec2_float_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.step_vec3_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.step_vec3_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.step_vec3_float_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.step_vec3_float_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.step_vec4_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.step_vec4_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.step_vec4_float_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.step_vec4_float_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.smoothstep_float_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.smoothstep_float_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.smoothstep_vec2_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.smoothstep_vec2_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.smoothstep_vec2_float_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.smoothstep_vec2_float_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.smoothstep_vec3_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.smoothstep_vec3_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.smoothstep_vec3_float_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.smoothstep_vec3_float_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.smoothstep_vec4_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.smoothstep_vec4_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.smoothstep_vec4_float_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.smoothstep_vec4_float_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.isnan_float_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.isnan_float_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.isnan_vec2_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.isnan_vec2_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.isnan_vec3_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.isnan_vec3_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.isnan_vec4_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.isnan_vec4_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.isinf_float_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.isinf_float_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.isinf_vec2_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.isinf_vec2_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.isinf_vec3_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.isinf_vec3_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.isinf_vec4_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.isinf_vec4_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.floatbits_int_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.floatbits_int_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.floatbits_uint_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.floatbits_uint_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.float_pack_unpack.packSnorm2x16_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.float_pack_unpack.packSnorm2x16_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.float_pack_unpack.unpackSnorm2x16_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.float_pack_unpack.unpackSnorm2x16_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.float_pack_unpack.packUnorm2x16_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.float_pack_unpack.packUnorm2x16_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.float_pack_unpack.unpackUnorm2x16_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.float_pack_unpack.unpackUnorm2x16_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.float_pack_unpack.packHalf2x16_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.float_pack_unpack.packHalf2x16_fragment
 dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.geometric.length_float_vertex
 dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.geometric.length_float_fragment
 dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.geometric.length_vec2_vertex
@@ -18773,14 +18579,6 @@
 dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.geometric.length_vec3_fragment
 dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.geometric.length_vec4_vertex
 dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.geometric.length_vec4_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.geometric.distance_float_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.geometric.distance_float_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.geometric.distance_vec2_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.geometric.distance_vec2_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.geometric.distance_vec3_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.geometric.distance_vec3_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.geometric.distance_vec4_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.geometric.distance_vec4_fragment
 dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.geometric.dot_float_vertex
 dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.geometric.dot_float_fragment
 dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.geometric.dot_vec2_vertex
@@ -18797,234 +18595,6 @@
 dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.geometric.normalize_vec3_fragment
 dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.geometric.normalize_vec4_vertex
 dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.geometric.normalize_vec4_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.geometric.faceforward_float_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.geometric.faceforward_float_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.geometric.faceforward_vec2_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.geometric.faceforward_vec2_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.geometric.faceforward_vec3_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.geometric.faceforward_vec3_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.geometric.faceforward_vec4_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.geometric.faceforward_vec4_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.geometric.reflect_float_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.geometric.reflect_float_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.geometric.reflect_vec2_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.geometric.reflect_vec2_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.geometric.reflect_vec3_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.geometric.reflect_vec3_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.geometric.reflect_vec4_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.geometric.reflect_vec4_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.geometric.refract_float_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.geometric.refract_float_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.geometric.refract_vec2_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.geometric.refract_vec2_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.geometric.refract_vec3_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.geometric.refract_vec3_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.geometric.refract_vec4_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.geometric.refract_vec4_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.matrix.compMult_mat2_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.matrix.compMult_mat2_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.matrix.compMult_mat3_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.matrix.compMult_mat3_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.matrix.compMult_mat4_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.matrix.compMult_mat4_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.matrix.outerProd_mat2_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.matrix.outerProd_mat2_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.matrix.outerProd_mat3_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.matrix.outerProd_mat3_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.matrix.outerProd_mat4_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.matrix.outerProd_mat4_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.matrix.outerProd_mat2x3_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.matrix.outerProd_mat2x3_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.matrix.outerProd_mat3x2_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.matrix.outerProd_mat3x2_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.matrix.outerProd_mat2x4_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.matrix.outerProd_mat2x4_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.matrix.outerProd_mat4x2_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.matrix.outerProd_mat4x2_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.matrix.outerProd_mat3x4_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.matrix.outerProd_mat3x4_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.matrix.outerProd_mat4x3_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.matrix.outerProd_mat4x3_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.matrix.transpose_mat2_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.matrix.transpose_mat2_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.matrix.transpose_mat3_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.matrix.transpose_mat3_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.matrix.transpose_mat4_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.matrix.transpose_mat4_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.matrix.transpose_mat3x2_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.matrix.transpose_mat3x2_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.matrix.transpose_mat2x3_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.matrix.transpose_mat2x3_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.matrix.transpose_mat4x2_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.matrix.transpose_mat4x2_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.matrix.transpose_mat4x3_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.matrix.transpose_mat4x3_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.matrix.transpose_mat2x4_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.matrix.transpose_mat2x4_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.matrix.transpose_mat3x4_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.matrix.transpose_mat3x4_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.matrix.determinant_mat2_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.matrix.determinant_mat2_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.matrix.determinant_mat3_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.matrix.determinant_mat3_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.matrix.determinant_mat4_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.matrix.determinant_mat4_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.matrix.inverse_mat2_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.matrix.inverse_mat2_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.matrix.inverse_mat3_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.matrix.inverse_mat3_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.matrix.inverse_mat4_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.matrix.inverse_mat4_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.lessThan_vec2_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.lessThan_vec2_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.lessThan_vec3_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.lessThan_vec3_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.lessThan_vec4_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.lessThan_vec4_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.lessThan_ivec2_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.lessThan_ivec2_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.lessThan_ivec3_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.lessThan_ivec3_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.lessThan_ivec4_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.lessThan_ivec4_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.lessThan_uvec2_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.lessThan_uvec2_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.lessThan_uvec3_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.lessThan_uvec3_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.lessThan_uvec4_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.lessThan_uvec4_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.lessThanEqual_vec2_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.lessThanEqual_vec2_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.lessThanEqual_vec3_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.lessThanEqual_vec3_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.lessThanEqual_vec4_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.lessThanEqual_vec4_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.lessThanEqual_ivec2_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.lessThanEqual_ivec2_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.lessThanEqual_ivec3_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.lessThanEqual_ivec3_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.lessThanEqual_ivec4_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.lessThanEqual_ivec4_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.lessThanEqual_uvec2_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.lessThanEqual_uvec2_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.lessThanEqual_uvec3_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.lessThanEqual_uvec3_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.lessThanEqual_uvec4_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.lessThanEqual_uvec4_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.greaterThan_vec2_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.greaterThan_vec2_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.greaterThan_vec3_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.greaterThan_vec3_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.greaterThan_vec4_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.greaterThan_vec4_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.greaterThan_ivec2_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.greaterThan_ivec2_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.greaterThan_ivec3_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.greaterThan_ivec3_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.greaterThan_ivec4_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.greaterThan_ivec4_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.greaterThan_uvec2_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.greaterThan_uvec2_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.greaterThan_uvec3_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.greaterThan_uvec3_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.greaterThan_uvec4_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.greaterThan_uvec4_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.greaterThanEqual_vec2_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.greaterThanEqual_vec2_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.greaterThanEqual_vec3_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.greaterThanEqual_vec3_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.greaterThanEqual_vec4_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.greaterThanEqual_vec4_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.greaterThanEqual_ivec2_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.greaterThanEqual_ivec2_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.greaterThanEqual_ivec3_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.greaterThanEqual_ivec3_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.greaterThanEqual_ivec4_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.greaterThanEqual_ivec4_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.greaterThanEqual_uvec2_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.greaterThanEqual_uvec2_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.greaterThanEqual_uvec3_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.greaterThanEqual_uvec3_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.greaterThanEqual_uvec4_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.greaterThanEqual_uvec4_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.equal_vec2_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.equal_vec2_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.equal_vec3_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.equal_vec3_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.equal_vec4_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.equal_vec4_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.equal_ivec2_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.equal_ivec2_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.equal_ivec3_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.equal_ivec3_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.equal_ivec4_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.equal_ivec4_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.equal_uvec2_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.equal_uvec2_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.equal_uvec3_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.equal_uvec3_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.equal_uvec4_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.equal_uvec4_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.equal_bvec2_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.equal_bvec2_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.equal_bvec3_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.equal_bvec3_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.equal_bvec4_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.equal_bvec4_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.notEqual_vec2_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.notEqual_vec2_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.notEqual_vec3_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.notEqual_vec3_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.notEqual_vec4_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.notEqual_vec4_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.notEqual_ivec2_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.notEqual_ivec2_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.notEqual_ivec3_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.notEqual_ivec3_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.notEqual_ivec4_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.notEqual_ivec4_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.notEqual_uvec2_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.notEqual_uvec2_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.notEqual_uvec3_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.notEqual_uvec3_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.notEqual_uvec4_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.notEqual_uvec4_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.notEqual_bvec2_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.notEqual_bvec2_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.notEqual_bvec3_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.notEqual_bvec3_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.notEqual_bvec4_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.notEqual_bvec4_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.any_bvec2_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.any_bvec2_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.any_bvec3_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.any_bvec3_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.any_bvec4_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.any_bvec4_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.all_bvec2_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.all_bvec2_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.all_bvec3_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.all_bvec3_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.all_bvec4_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.all_bvec4_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.not_bvec2_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.not_bvec2_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.not_bvec3_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.not_bvec3_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.not_bvec4_vertex
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.not_bvec4_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.fragment_processing.dFdx_float_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.fragment_processing.dFdx_vec2_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.fragment_processing.dFdx_vec3_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.fragment_processing.dFdx_vec4_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.fragment_processing.dFdy_float_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.fragment_processing.dFdy_vec2_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.fragment_processing.dFdy_vec3_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.fragment_processing.dFdy_vec4_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.fragment_processing.fwidth_float_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.fragment_processing.fwidth_vec2_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.fragment_processing.fwidth_vec3_fragment
-dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.fragment_processing.fwidth_vec4_fragment
 dEQP-GLES3.functional.shaders.random.basic_expression.vertex.0
 dEQP-GLES3.functional.shaders.random.basic_expression.vertex.1
 dEQP-GLES3.functional.shaders.random.basic_expression.vertex.2
@@ -20136,11 +19706,9 @@
 dEQP-GLES3.functional.shaders.random.trigonometric.vertex.8
 dEQP-GLES3.functional.shaders.random.trigonometric.vertex.9
 dEQP-GLES3.functional.shaders.random.trigonometric.vertex.10
-dEQP-GLES3.functional.shaders.random.trigonometric.vertex.11
 dEQP-GLES3.functional.shaders.random.trigonometric.vertex.12
 dEQP-GLES3.functional.shaders.random.trigonometric.vertex.13
 dEQP-GLES3.functional.shaders.random.trigonometric.vertex.14
-dEQP-GLES3.functional.shaders.random.trigonometric.vertex.15
 dEQP-GLES3.functional.shaders.random.trigonometric.vertex.16
 dEQP-GLES3.functional.shaders.random.trigonometric.vertex.17
 dEQP-GLES3.functional.shaders.random.trigonometric.vertex.18
@@ -20174,7 +19742,6 @@
 dEQP-GLES3.functional.shaders.random.trigonometric.vertex.46
 dEQP-GLES3.functional.shaders.random.trigonometric.vertex.47
 dEQP-GLES3.functional.shaders.random.trigonometric.vertex.48
-dEQP-GLES3.functional.shaders.random.trigonometric.vertex.49
 dEQP-GLES3.functional.shaders.random.trigonometric.vertex.50
 dEQP-GLES3.functional.shaders.random.trigonometric.vertex.51
 dEQP-GLES3.functional.shaders.random.trigonometric.vertex.52
@@ -20214,12 +19781,10 @@
 dEQP-GLES3.functional.shaders.random.trigonometric.vertex.86
 dEQP-GLES3.functional.shaders.random.trigonometric.vertex.87
 dEQP-GLES3.functional.shaders.random.trigonometric.vertex.88
-dEQP-GLES3.functional.shaders.random.trigonometric.vertex.89
 dEQP-GLES3.functional.shaders.random.trigonometric.vertex.90
 dEQP-GLES3.functional.shaders.random.trigonometric.vertex.91
 dEQP-GLES3.functional.shaders.random.trigonometric.vertex.92
 dEQP-GLES3.functional.shaders.random.trigonometric.vertex.93
-dEQP-GLES3.functional.shaders.random.trigonometric.vertex.94
 dEQP-GLES3.functional.shaders.random.trigonometric.vertex.95
 dEQP-GLES3.functional.shaders.random.trigonometric.vertex.96
 dEQP-GLES3.functional.shaders.random.trigonometric.vertex.97
@@ -20262,7 +19827,6 @@
 dEQP-GLES3.functional.shaders.random.trigonometric.fragment.34
 dEQP-GLES3.functional.shaders.random.trigonometric.fragment.35
 dEQP-GLES3.functional.shaders.random.trigonometric.fragment.36
-dEQP-GLES3.functional.shaders.random.trigonometric.fragment.37
 dEQP-GLES3.functional.shaders.random.trigonometric.fragment.38
 dEQP-GLES3.functional.shaders.random.trigonometric.fragment.39
 dEQP-GLES3.functional.shaders.random.trigonometric.fragment.40
@@ -20274,7 +19838,6 @@
 dEQP-GLES3.functional.shaders.random.trigonometric.fragment.46
 dEQP-GLES3.functional.shaders.random.trigonometric.fragment.47
 dEQP-GLES3.functional.shaders.random.trigonometric.fragment.48
-dEQP-GLES3.functional.shaders.random.trigonometric.fragment.49
 dEQP-GLES3.functional.shaders.random.trigonometric.fragment.50
 dEQP-GLES3.functional.shaders.random.trigonometric.fragment.51
 dEQP-GLES3.functional.shaders.random.trigonometric.fragment.52
@@ -20314,12 +19877,10 @@
 dEQP-GLES3.functional.shaders.random.trigonometric.fragment.86
 dEQP-GLES3.functional.shaders.random.trigonometric.fragment.87
 dEQP-GLES3.functional.shaders.random.trigonometric.fragment.88
-dEQP-GLES3.functional.shaders.random.trigonometric.fragment.89
 dEQP-GLES3.functional.shaders.random.trigonometric.fragment.90
 dEQP-GLES3.functional.shaders.random.trigonometric.fragment.91
 dEQP-GLES3.functional.shaders.random.trigonometric.fragment.92
 dEQP-GLES3.functional.shaders.random.trigonometric.fragment.93
-dEQP-GLES3.functional.shaders.random.trigonometric.fragment.94
 dEQP-GLES3.functional.shaders.random.trigonometric.fragment.95
 dEQP-GLES3.functional.shaders.random.trigonometric.fragment.96
 dEQP-GLES3.functional.shaders.random.trigonometric.fragment.97
@@ -20727,23 +20288,17 @@
 dEQP-GLES3.functional.shaders.random.texture.fragment.149
 dEQP-GLES3.functional.shaders.random.all_features.vertex.0
 dEQP-GLES3.functional.shaders.random.all_features.vertex.1
-dEQP-GLES3.functional.shaders.random.all_features.vertex.2
 dEQP-GLES3.functional.shaders.random.all_features.vertex.3
-dEQP-GLES3.functional.shaders.random.all_features.vertex.4
 dEQP-GLES3.functional.shaders.random.all_features.vertex.5
-dEQP-GLES3.functional.shaders.random.all_features.vertex.6
 dEQP-GLES3.functional.shaders.random.all_features.vertex.7
 dEQP-GLES3.functional.shaders.random.all_features.vertex.8
 dEQP-GLES3.functional.shaders.random.all_features.vertex.9
 dEQP-GLES3.functional.shaders.random.all_features.vertex.10
 dEQP-GLES3.functional.shaders.random.all_features.vertex.11
 dEQP-GLES3.functional.shaders.random.all_features.vertex.12
-dEQP-GLES3.functional.shaders.random.all_features.vertex.13
 dEQP-GLES3.functional.shaders.random.all_features.vertex.14
 dEQP-GLES3.functional.shaders.random.all_features.vertex.15
 dEQP-GLES3.functional.shaders.random.all_features.vertex.16
-dEQP-GLES3.functional.shaders.random.all_features.vertex.17
-dEQP-GLES3.functional.shaders.random.all_features.vertex.18
 dEQP-GLES3.functional.shaders.random.all_features.vertex.19
 dEQP-GLES3.functional.shaders.random.all_features.vertex.20
 dEQP-GLES3.functional.shaders.random.all_features.vertex.21
@@ -20751,35 +20306,24 @@
 dEQP-GLES3.functional.shaders.random.all_features.vertex.23
 dEQP-GLES3.functional.shaders.random.all_features.vertex.24
 dEQP-GLES3.functional.shaders.random.all_features.vertex.25
-dEQP-GLES3.functional.shaders.random.all_features.vertex.26
 dEQP-GLES3.functional.shaders.random.all_features.vertex.27
 dEQP-GLES3.functional.shaders.random.all_features.vertex.28
-dEQP-GLES3.functional.shaders.random.all_features.vertex.29
 dEQP-GLES3.functional.shaders.random.all_features.vertex.30
 dEQP-GLES3.functional.shaders.random.all_features.vertex.31
 dEQP-GLES3.functional.shaders.random.all_features.vertex.32
 dEQP-GLES3.functional.shaders.random.all_features.vertex.33
-dEQP-GLES3.functional.shaders.random.all_features.vertex.34
 dEQP-GLES3.functional.shaders.random.all_features.vertex.35
 dEQP-GLES3.functional.shaders.random.all_features.vertex.36
 dEQP-GLES3.functional.shaders.random.all_features.vertex.37
 dEQP-GLES3.functional.shaders.random.all_features.vertex.38
 dEQP-GLES3.functional.shaders.random.all_features.vertex.39
-dEQP-GLES3.functional.shaders.random.all_features.vertex.40
-dEQP-GLES3.functional.shaders.random.all_features.vertex.41
 dEQP-GLES3.functional.shaders.random.all_features.vertex.42
 dEQP-GLES3.functional.shaders.random.all_features.vertex.43
 dEQP-GLES3.functional.shaders.random.all_features.vertex.44
 dEQP-GLES3.functional.shaders.random.all_features.vertex.45
-dEQP-GLES3.functional.shaders.random.all_features.vertex.46
-dEQP-GLES3.functional.shaders.random.all_features.vertex.47
 dEQP-GLES3.functional.shaders.random.all_features.vertex.48
-dEQP-GLES3.functional.shaders.random.all_features.vertex.49
-dEQP-GLES3.functional.shaders.random.all_features.vertex.50
 dEQP-GLES3.functional.shaders.random.all_features.vertex.51
 dEQP-GLES3.functional.shaders.random.all_features.vertex.52
-dEQP-GLES3.functional.shaders.random.all_features.vertex.53
-dEQP-GLES3.functional.shaders.random.all_features.vertex.54
 dEQP-GLES3.functional.shaders.random.all_features.vertex.55
 dEQP-GLES3.functional.shaders.random.all_features.vertex.56
 dEQP-GLES3.functional.shaders.random.all_features.vertex.57
@@ -20787,41 +20331,28 @@
 dEQP-GLES3.functional.shaders.random.all_features.vertex.59
 dEQP-GLES3.functional.shaders.random.all_features.vertex.60
 dEQP-GLES3.functional.shaders.random.all_features.vertex.61
-dEQP-GLES3.functional.shaders.random.all_features.vertex.62
 dEQP-GLES3.functional.shaders.random.all_features.vertex.63
 dEQP-GLES3.functional.shaders.random.all_features.vertex.64
-dEQP-GLES3.functional.shaders.random.all_features.vertex.65
-dEQP-GLES3.functional.shaders.random.all_features.vertex.66
 dEQP-GLES3.functional.shaders.random.all_features.vertex.67
 dEQP-GLES3.functional.shaders.random.all_features.vertex.68
 dEQP-GLES3.functional.shaders.random.all_features.vertex.69
 dEQP-GLES3.functional.shaders.random.all_features.vertex.70
 dEQP-GLES3.functional.shaders.random.all_features.vertex.71
-dEQP-GLES3.functional.shaders.random.all_features.vertex.72
 dEQP-GLES3.functional.shaders.random.all_features.vertex.73
 dEQP-GLES3.functional.shaders.random.all_features.vertex.74
 dEQP-GLES3.functional.shaders.random.all_features.vertex.75
-dEQP-GLES3.functional.shaders.random.all_features.vertex.76
-dEQP-GLES3.functional.shaders.random.all_features.vertex.77
 dEQP-GLES3.functional.shaders.random.all_features.vertex.78
-dEQP-GLES3.functional.shaders.random.all_features.vertex.79
 dEQP-GLES3.functional.shaders.random.all_features.vertex.80
-dEQP-GLES3.functional.shaders.random.all_features.vertex.81
 dEQP-GLES3.functional.shaders.random.all_features.vertex.82
 dEQP-GLES3.functional.shaders.random.all_features.vertex.83
 dEQP-GLES3.functional.shaders.random.all_features.vertex.84
 dEQP-GLES3.functional.shaders.random.all_features.vertex.85
 dEQP-GLES3.functional.shaders.random.all_features.vertex.86
-dEQP-GLES3.functional.shaders.random.all_features.vertex.87
-dEQP-GLES3.functional.shaders.random.all_features.vertex.88
 dEQP-GLES3.functional.shaders.random.all_features.vertex.89
 dEQP-GLES3.functional.shaders.random.all_features.vertex.90
 dEQP-GLES3.functional.shaders.random.all_features.vertex.91
 dEQP-GLES3.functional.shaders.random.all_features.vertex.92
-dEQP-GLES3.functional.shaders.random.all_features.vertex.93
-dEQP-GLES3.functional.shaders.random.all_features.vertex.94
 dEQP-GLES3.functional.shaders.random.all_features.vertex.95
-dEQP-GLES3.functional.shaders.random.all_features.vertex.96
 dEQP-GLES3.functional.shaders.random.all_features.vertex.97
 dEQP-GLES3.functional.shaders.random.all_features.vertex.98
 dEQP-GLES3.functional.shaders.random.all_features.vertex.99
@@ -20831,55 +20362,37 @@
 dEQP-GLES3.functional.shaders.random.all_features.fragment.3
 dEQP-GLES3.functional.shaders.random.all_features.fragment.4
 dEQP-GLES3.functional.shaders.random.all_features.fragment.5
-dEQP-GLES3.functional.shaders.random.all_features.fragment.6
-dEQP-GLES3.functional.shaders.random.all_features.fragment.7
 dEQP-GLES3.functional.shaders.random.all_features.fragment.8
-dEQP-GLES3.functional.shaders.random.all_features.fragment.9
 dEQP-GLES3.functional.shaders.random.all_features.fragment.10
 dEQP-GLES3.functional.shaders.random.all_features.fragment.11
 dEQP-GLES3.functional.shaders.random.all_features.fragment.12
-dEQP-GLES3.functional.shaders.random.all_features.fragment.13
-dEQP-GLES3.functional.shaders.random.all_features.fragment.14
 dEQP-GLES3.functional.shaders.random.all_features.fragment.15
 dEQP-GLES3.functional.shaders.random.all_features.fragment.17
-dEQP-GLES3.functional.shaders.random.all_features.fragment.18
 dEQP-GLES3.functional.shaders.random.all_features.fragment.19
 dEQP-GLES3.functional.shaders.random.all_features.fragment.20
-dEQP-GLES3.functional.shaders.random.all_features.fragment.21
-dEQP-GLES3.functional.shaders.random.all_features.fragment.22
 dEQP-GLES3.functional.shaders.random.all_features.fragment.23
 dEQP-GLES3.functional.shaders.random.all_features.fragment.24
-dEQP-GLES3.functional.shaders.random.all_features.fragment.25
 dEQP-GLES3.functional.shaders.random.all_features.fragment.26
 dEQP-GLES3.functional.shaders.random.all_features.fragment.27
 dEQP-GLES3.functional.shaders.random.all_features.fragment.28
 dEQP-GLES3.functional.shaders.random.all_features.fragment.29
-dEQP-GLES3.functional.shaders.random.all_features.fragment.30
 dEQP-GLES3.functional.shaders.random.all_features.fragment.31
-dEQP-GLES3.functional.shaders.random.all_features.fragment.32
 dEQP-GLES3.functional.shaders.random.all_features.fragment.33
-dEQP-GLES3.functional.shaders.random.all_features.fragment.34
 dEQP-GLES3.functional.shaders.random.all_features.fragment.35
 dEQP-GLES3.functional.shaders.random.all_features.fragment.36
 dEQP-GLES3.functional.shaders.random.all_features.fragment.37
-dEQP-GLES3.functional.shaders.random.all_features.fragment.38
-dEQP-GLES3.functional.shaders.random.all_features.fragment.39
-dEQP-GLES3.functional.shaders.random.all_features.fragment.40
 dEQP-GLES3.functional.shaders.random.all_features.fragment.41
 dEQP-GLES3.functional.shaders.random.all_features.fragment.42
 dEQP-GLES3.functional.shaders.random.all_features.fragment.43
 dEQP-GLES3.functional.shaders.random.all_features.fragment.44
 dEQP-GLES3.functional.shaders.random.all_features.fragment.45
-dEQP-GLES3.functional.shaders.random.all_features.fragment.46
 dEQP-GLES3.functional.shaders.random.all_features.fragment.47
 dEQP-GLES3.functional.shaders.random.all_features.fragment.48
 dEQP-GLES3.functional.shaders.random.all_features.fragment.49
 dEQP-GLES3.functional.shaders.random.all_features.fragment.50
 dEQP-GLES3.functional.shaders.random.all_features.fragment.51
 dEQP-GLES3.functional.shaders.random.all_features.fragment.52
-dEQP-GLES3.functional.shaders.random.all_features.fragment.53
 dEQP-GLES3.functional.shaders.random.all_features.fragment.54
-dEQP-GLES3.functional.shaders.random.all_features.fragment.55
 dEQP-GLES3.functional.shaders.random.all_features.fragment.56
 dEQP-GLES3.functional.shaders.random.all_features.fragment.57
 dEQP-GLES3.functional.shaders.random.all_features.fragment.58
@@ -20888,15 +20401,9 @@
 dEQP-GLES3.functional.shaders.random.all_features.fragment.61
 dEQP-GLES3.functional.shaders.random.all_features.fragment.62
 dEQP-GLES3.functional.shaders.random.all_features.fragment.63
-dEQP-GLES3.functional.shaders.random.all_features.fragment.64
-dEQP-GLES3.functional.shaders.random.all_features.fragment.65
-dEQP-GLES3.functional.shaders.random.all_features.fragment.66
 dEQP-GLES3.functional.shaders.random.all_features.fragment.67
 dEQP-GLES3.functional.shaders.random.all_features.fragment.68
-dEQP-GLES3.functional.shaders.random.all_features.fragment.69
-dEQP-GLES3.functional.shaders.random.all_features.fragment.70
 dEQP-GLES3.functional.shaders.random.all_features.fragment.71
-dEQP-GLES3.functional.shaders.random.all_features.fragment.72
 dEQP-GLES3.functional.shaders.random.all_features.fragment.73
 dEQP-GLES3.functional.shaders.random.all_features.fragment.74
 dEQP-GLES3.functional.shaders.random.all_features.fragment.75
@@ -20904,23 +20411,17 @@
 dEQP-GLES3.functional.shaders.random.all_features.fragment.77
 dEQP-GLES3.functional.shaders.random.all_features.fragment.78
 dEQP-GLES3.functional.shaders.random.all_features.fragment.79
-dEQP-GLES3.functional.shaders.random.all_features.fragment.80
-dEQP-GLES3.functional.shaders.random.all_features.fragment.81
 dEQP-GLES3.functional.shaders.random.all_features.fragment.82
 dEQP-GLES3.functional.shaders.random.all_features.fragment.83
 dEQP-GLES3.functional.shaders.random.all_features.fragment.84
 dEQP-GLES3.functional.shaders.random.all_features.fragment.85
-dEQP-GLES3.functional.shaders.random.all_features.fragment.86
 dEQP-GLES3.functional.shaders.random.all_features.fragment.87
 dEQP-GLES3.functional.shaders.random.all_features.fragment.88
-dEQP-GLES3.functional.shaders.random.all_features.fragment.89
 dEQP-GLES3.functional.shaders.random.all_features.fragment.90
 dEQP-GLES3.functional.shaders.random.all_features.fragment.91
 dEQP-GLES3.functional.shaders.random.all_features.fragment.92
 dEQP-GLES3.functional.shaders.random.all_features.fragment.93
-dEQP-GLES3.functional.shaders.random.all_features.fragment.94
 dEQP-GLES3.functional.shaders.random.all_features.fragment.95
-dEQP-GLES3.functional.shaders.random.all_features.fragment.96
 dEQP-GLES3.functional.shaders.random.all_features.fragment.97
 dEQP-GLES3.functional.shaders.random.all_features.fragment.98
 dEQP-GLES3.functional.shaders.random.all_features.fragment.99
@@ -29170,7 +28671,6 @@
 dEQP-GLES3.functional.fbo.api.invalid_rbo_attachments
 dEQP-GLES3.functional.fbo.api.attach_names
 dEQP-GLES3.functional.fbo.api.texture_levels
-dEQP-GLES3.functional.fbo.api.attachment_query_default_fbo
 dEQP-GLES3.functional.fbo.api.attachment_query_empty_fbo
 dEQP-GLES3.functional.fbo.api.attachment_query_tex2d
 dEQP-GLES3.functional.fbo.api.attachment_query_texcube
@@ -40079,7 +39579,6 @@
 dEQP-GLES3.functional.negative_api.texture.compressedtexsubimage2d_neg_width_height
 dEQP-GLES3.functional.negative_api.texture.compressedtexsubimage2d_invalid_size
 dEQP-GLES3.functional.negative_api.texture.compressedtexsubimage2d_invalid_buffer_target
-dEQP-GLES3.functional.negative_api.texture.teximage3d
 dEQP-GLES3.functional.negative_api.texture.teximage3d_neg_level
 dEQP-GLES3.functional.negative_api.texture.teximage3d_max_level
 dEQP-GLES3.functional.negative_api.texture.teximage3d_neg_width_height_depth
@@ -42461,3 +41960,4 @@
 dEQP-GLES3.functional.lifetime.attach.deleted_output.renderbuffer_framebuffer
 dEQP-GLES3.functional.lifetime.attach.deleted_output.buffer_transform_feedback
 dEQP-GLES3.functional.lifetime.delete_active.transform_feedback
+dEQP-GLES3.functional.default_vertex_array_object.vertex_attrib_divisor
diff --git a/android/cts/master/gles31-master.txt b/android/cts/master/gles31-master.txt
index c3f1e8d..bfd0140 100644
--- a/android/cts/master/gles31-master.txt
+++ b/android/cts/master/gles31-master.txt
@@ -5143,6 +5143,152 @@
 dEQP-GLES31.functional.shaders.implicit_conversions.invalid.structs.ivec4_to_vec4_fragment
 dEQP-GLES31.functional.shaders.implicit_conversions.invalid.structs.uvec4_to_vec4_vertex
 dEQP-GLES31.functional.shaders.implicit_conversions.invalid.structs.uvec4_to_vec4_fragment
+dEQP-GLES31.functional.shaders.uniform_block.valid.repeat_interface_qualifier_vertex
+dEQP-GLES31.functional.shaders.uniform_block.valid.repeat_interface_qualifier_fragment
+dEQP-GLES31.functional.shaders.uniform_block.valid.layout_shared_vertex
+dEQP-GLES31.functional.shaders.uniform_block.valid.layout_shared_fragment
+dEQP-GLES31.functional.shaders.uniform_block.valid.layout_packed_vertex
+dEQP-GLES31.functional.shaders.uniform_block.valid.layout_packed_fragment
+dEQP-GLES31.functional.shaders.uniform_block.valid.layout_std140_vertex
+dEQP-GLES31.functional.shaders.uniform_block.valid.layout_std140_fragment
+dEQP-GLES31.functional.shaders.uniform_block.valid.layout_row_major_vertex
+dEQP-GLES31.functional.shaders.uniform_block.valid.layout_row_major_fragment
+dEQP-GLES31.functional.shaders.uniform_block.valid.layout_column_major_vertex
+dEQP-GLES31.functional.shaders.uniform_block.valid.layout_column_major_fragment
+dEQP-GLES31.functional.shaders.uniform_block.valid.layout_all_vertex
+dEQP-GLES31.functional.shaders.uniform_block.valid.layout_all_fragment
+dEQP-GLES31.functional.shaders.uniform_block.valid.layout_all_8_times_vertex
+dEQP-GLES31.functional.shaders.uniform_block.valid.layout_all_8_times_fragment
+dEQP-GLES31.functional.shaders.uniform_block.valid.global_layout_shared_vertex
+dEQP-GLES31.functional.shaders.uniform_block.valid.global_layout_shared_fragment
+dEQP-GLES31.functional.shaders.uniform_block.valid.global_layout_packed_vertex
+dEQP-GLES31.functional.shaders.uniform_block.valid.global_layout_packed_fragment
+dEQP-GLES31.functional.shaders.uniform_block.valid.global_layout_std140_vertex
+dEQP-GLES31.functional.shaders.uniform_block.valid.global_layout_std140_fragment
+dEQP-GLES31.functional.shaders.uniform_block.valid.global_layout_row_major_vertex
+dEQP-GLES31.functional.shaders.uniform_block.valid.global_layout_row_major_fragment
+dEQP-GLES31.functional.shaders.uniform_block.valid.global_layout_column_major_vertex
+dEQP-GLES31.functional.shaders.uniform_block.valid.global_layout_column_major_fragment
+dEQP-GLES31.functional.shaders.uniform_block.valid.global_layout_all_vertex
+dEQP-GLES31.functional.shaders.uniform_block.valid.global_layout_all_fragment
+dEQP-GLES31.functional.shaders.uniform_block.valid.global_layout_all_8_times_vertex
+dEQP-GLES31.functional.shaders.uniform_block.valid.global_layout_all_8_times_fragment
+dEQP-GLES31.functional.shaders.uniform_block.valid.member_layout_row_major_vertex
+dEQP-GLES31.functional.shaders.uniform_block.valid.member_layout_row_major_fragment
+dEQP-GLES31.functional.shaders.uniform_block.valid.member_layout_column_major_vertex
+dEQP-GLES31.functional.shaders.uniform_block.valid.member_layout_column_major_fragment
+dEQP-GLES31.functional.shaders.uniform_block.valid.member_layout_row_major_vec4_vertex
+dEQP-GLES31.functional.shaders.uniform_block.valid.member_layout_row_major_vec4_fragment
+dEQP-GLES31.functional.shaders.uniform_block.valid.member_layout_column_major_vec4_vertex
+dEQP-GLES31.functional.shaders.uniform_block.valid.member_layout_column_major_vec4_fragment
+dEQP-GLES31.functional.shaders.uniform_block.valid.member_layout_all_vertex
+dEQP-GLES31.functional.shaders.uniform_block.valid.member_layout_all_fragment
+dEQP-GLES31.functional.shaders.uniform_block.valid.member_layout_all_8_times_vertex
+dEQP-GLES31.functional.shaders.uniform_block.valid.member_layout_all_8_times_fragment
+dEQP-GLES31.functional.shaders.uniform_block.valid.no_instance_name_vertex
+dEQP-GLES31.functional.shaders.uniform_block.valid.no_instance_name_fragment
+dEQP-GLES31.functional.shaders.uniform_block.valid.same_variable_and_block_name_vertex
+dEQP-GLES31.functional.shaders.uniform_block.valid.same_variable_and_block_name_fragment
+dEQP-GLES31.functional.shaders.uniform_block.valid.same_variable_and_instance_name_vertex
+dEQP-GLES31.functional.shaders.uniform_block.valid.same_variable_and_instance_name_fragment
+dEQP-GLES31.functional.shaders.uniform_block.valid.struct_member_vertex
+dEQP-GLES31.functional.shaders.uniform_block.valid.struct_member_fragment
+dEQP-GLES31.functional.shaders.uniform_block.valid.struct_member_layout_row_major_vertex
+dEQP-GLES31.functional.shaders.uniform_block.valid.struct_member_layout_row_major_fragment
+dEQP-GLES31.functional.shaders.uniform_block.valid.struct_member_layout_column_major_vertex
+dEQP-GLES31.functional.shaders.uniform_block.valid.struct_member_layout_column_major_fragment
+dEQP-GLES31.functional.shaders.uniform_block.valid.struct_member_layout_all_vertex
+dEQP-GLES31.functional.shaders.uniform_block.valid.struct_member_layout_all_fragment
+dEQP-GLES31.functional.shaders.uniform_block.valid.struct_member_layout_all_8_times_vertex
+dEQP-GLES31.functional.shaders.uniform_block.valid.struct_member_layout_all_8_times_fragment
+dEQP-GLES31.functional.shaders.uniform_block.valid.long_block_name_vertex
+dEQP-GLES31.functional.shaders.uniform_block.valid.long_block_name_fragment
+dEQP-GLES31.functional.shaders.uniform_block.valid.long_instance_name_vertex
+dEQP-GLES31.functional.shaders.uniform_block.valid.long_instance_name_fragment
+dEQP-GLES31.functional.shaders.uniform_block.valid.underscore_block_name_vertex
+dEQP-GLES31.functional.shaders.uniform_block.valid.underscore_block_name_fragment
+dEQP-GLES31.functional.shaders.uniform_block.valid.underscore_instance_name_vertex
+dEQP-GLES31.functional.shaders.uniform_block.valid.underscore_instance_name_fragment
+dEQP-GLES31.functional.shaders.uniform_block.invalid.member_in_interface_qualifier_vertex
+dEQP-GLES31.functional.shaders.uniform_block.invalid.member_in_interface_qualifier_fragment
+dEQP-GLES31.functional.shaders.uniform_block.invalid.member_out_interface_qualifier_vertex
+dEQP-GLES31.functional.shaders.uniform_block.invalid.member_out_interface_qualifier_fragment
+dEQP-GLES31.functional.shaders.uniform_block.invalid.member_buffer_interface_qualifier_vertex
+dEQP-GLES31.functional.shaders.uniform_block.invalid.member_buffer_interface_qualifier_fragment
+dEQP-GLES31.functional.shaders.uniform_block.invalid.member_attribute_interface_qualifier_vertex
+dEQP-GLES31.functional.shaders.uniform_block.invalid.member_attribute_interface_qualifier_fragment
+dEQP-GLES31.functional.shaders.uniform_block.invalid.member_varying_interface_qualifier_vertex
+dEQP-GLES31.functional.shaders.uniform_block.invalid.member_varying_interface_qualifier_fragment
+dEQP-GLES31.functional.shaders.uniform_block.invalid.conflicting_instance_names_vertex
+dEQP-GLES31.functional.shaders.uniform_block.invalid.conflicting_instance_names_fragment
+dEQP-GLES31.functional.shaders.uniform_block.invalid.conflicting_function_and_instance_name_vertex
+dEQP-GLES31.functional.shaders.uniform_block.invalid.conflicting_function_and_instance_name_fragment
+dEQP-GLES31.functional.shaders.uniform_block.invalid.conflicting_function_and_block_name_vertex
+dEQP-GLES31.functional.shaders.uniform_block.invalid.conflicting_function_and_block_name_fragment
+dEQP-GLES31.functional.shaders.uniform_block.invalid.conflicting_uniform_and_instance_name_vertex
+dEQP-GLES31.functional.shaders.uniform_block.invalid.conflicting_uniform_and_instance_name_fragment
+dEQP-GLES31.functional.shaders.uniform_block.invalid.conflicting_in_and_instance_name_vertex
+dEQP-GLES31.functional.shaders.uniform_block.invalid.conflicting_in_and_instance_name_fragment
+dEQP-GLES31.functional.shaders.uniform_block.invalid.conflicting_out_and_instance_name_vertex
+dEQP-GLES31.functional.shaders.uniform_block.invalid.conflicting_out_and_instance_name_fragment
+dEQP-GLES31.functional.shaders.uniform_block.invalid.conflicting_uniform_and_block_name_vertex
+dEQP-GLES31.functional.shaders.uniform_block.invalid.conflicting_uniform_and_block_name_fragment
+dEQP-GLES31.functional.shaders.uniform_block.invalid.conflicting_in_and_block_name_vertex
+dEQP-GLES31.functional.shaders.uniform_block.invalid.conflicting_in_and_block_name_fragment
+dEQP-GLES31.functional.shaders.uniform_block.invalid.conflicting_out_and_block_name_vertex
+dEQP-GLES31.functional.shaders.uniform_block.invalid.conflicting_out_and_block_name_fragment
+dEQP-GLES31.functional.shaders.uniform_block.invalid.matching_instance_and_block_name_vertex
+dEQP-GLES31.functional.shaders.uniform_block.invalid.matching_instance_and_block_name_fragment
+dEQP-GLES31.functional.shaders.uniform_block.invalid.reference_using_block_name_vertex
+dEQP-GLES31.functional.shaders.uniform_block.invalid.reference_using_block_name_fragment
+dEQP-GLES31.functional.shaders.uniform_block.invalid.empty_block_vertex
+dEQP-GLES31.functional.shaders.uniform_block.invalid.empty_block_fragment
+dEQP-GLES31.functional.shaders.uniform_block.invalid.empty_layout_vertex
+dEQP-GLES31.functional.shaders.uniform_block.invalid.empty_layout_fragment
+dEQP-GLES31.functional.shaders.uniform_block.invalid.empty_member_layout_vertex
+dEQP-GLES31.functional.shaders.uniform_block.invalid.empty_member_layout_fragment
+dEQP-GLES31.functional.shaders.uniform_block.invalid.empty_global_layout_vertex
+dEQP-GLES31.functional.shaders.uniform_block.invalid.empty_global_layout_fragment
+dEQP-GLES31.functional.shaders.uniform_block.invalid.structure_definition_vertex
+dEQP-GLES31.functional.shaders.uniform_block.invalid.structure_definition_fragment
+dEQP-GLES31.functional.shaders.uniform_block.invalid.member_layout_shared_vertex
+dEQP-GLES31.functional.shaders.uniform_block.invalid.member_layout_shared_fragment
+dEQP-GLES31.functional.shaders.uniform_block.invalid.member_layout_packed_vertex
+dEQP-GLES31.functional.shaders.uniform_block.invalid.member_layout_packed_fragment
+dEQP-GLES31.functional.shaders.uniform_block.invalid.member_layout_std140std430_vertex
+dEQP-GLES31.functional.shaders.uniform_block.invalid.member_layout_std140std430_fragment
+dEQP-GLES31.functional.shaders.uniform_block.invalid.missing_block_name_vertex
+dEQP-GLES31.functional.shaders.uniform_block.invalid.missing_block_name_fragment
+dEQP-GLES31.functional.shaders.uniform_block.invalid.invalid_number_block_name_vertex
+dEQP-GLES31.functional.shaders.uniform_block.invalid.invalid_number_block_name_fragment
+dEQP-GLES31.functional.shaders.uniform_block.invalid.invalid_identifier_block_name_vertex
+dEQP-GLES31.functional.shaders.uniform_block.invalid.invalid_identifier_block_name_fragment
+dEQP-GLES31.functional.shaders.uniform_block.invalid.invalid_hash_block_name_vertex
+dEQP-GLES31.functional.shaders.uniform_block.invalid.invalid_hash_block_name_fragment
+dEQP-GLES31.functional.shaders.uniform_block.invalid.invalid_dollar_block_name_vertex
+dEQP-GLES31.functional.shaders.uniform_block.invalid.invalid_dollar_block_name_fragment
+dEQP-GLES31.functional.shaders.uniform_block.invalid.too_long_block_name_vertex
+dEQP-GLES31.functional.shaders.uniform_block.invalid.too_long_block_name_fragment
+dEQP-GLES31.functional.shaders.uniform_block.invalid.invalid_number_instance_name_vertex
+dEQP-GLES31.functional.shaders.uniform_block.invalid.invalid_number_instance_name_fragment
+dEQP-GLES31.functional.shaders.uniform_block.invalid.invalid_identifier_instance_name_vertex
+dEQP-GLES31.functional.shaders.uniform_block.invalid.invalid_identifier_instance_name_fragment
+dEQP-GLES31.functional.shaders.uniform_block.invalid.invalid_hash_instance_name_vertex
+dEQP-GLES31.functional.shaders.uniform_block.invalid.invalid_hash_instance_name_fragment
+dEQP-GLES31.functional.shaders.uniform_block.invalid.invalid_dollar_instance_name_vertex
+dEQP-GLES31.functional.shaders.uniform_block.invalid.invalid_dollar_instance_name_fragment
+dEQP-GLES31.functional.shaders.uniform_block.invalid.double_underscore_block_name_vertex
+dEQP-GLES31.functional.shaders.uniform_block.invalid.double_underscore_block_name_fragment
+dEQP-GLES31.functional.shaders.uniform_block.invalid.double_underscore_instance_name_vertex
+dEQP-GLES31.functional.shaders.uniform_block.invalid.double_underscore_instance_name_fragment
+dEQP-GLES31.functional.shaders.uniform_block.invalid.repeated_block_vertex
+dEQP-GLES31.functional.shaders.uniform_block.invalid.repeated_block_fragment
+dEQP-GLES31.functional.shaders.uniform_block.invalid.repeated_block_no_instance_name_vertex
+dEQP-GLES31.functional.shaders.uniform_block.invalid.repeated_block_no_instance_name_fragment
+dEQP-GLES31.functional.shaders.uniform_block.invalid.layout_std430_vertex
+dEQP-GLES31.functional.shaders.uniform_block.invalid.layout_std430_fragment
+dEQP-GLES31.functional.shaders.uniform_block.invalid.global_layout_std430_vertex
+dEQP-GLES31.functional.shaders.uniform_block.invalid.global_layout_std430_fragment
 dEQP-GLES31.functional.compute.basic.empty
 dEQP-GLES31.functional.compute.basic.ubo_to_ssbo_single_invocation
 dEQP-GLES31.functional.compute.basic.ubo_to_ssbo_single_group
@@ -22705,22 +22851,6 @@
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.r32f_rgb10_a2.texture2d_array_to_cubemap
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.r32f_rgb10_a2.texture2d_array_to_texture2d_array
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.r32f_rgb10_a2.texture2d_array_to_renderbuffer
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.r32f_rgba8_snorm.texture2d_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.r32f_rgba8_snorm.texture2d_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.r32f_rgba8_snorm.texture2d_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.r32f_rgba8_snorm.texture2d_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.r32f_rgba8_snorm.texture3d_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.r32f_rgba8_snorm.texture3d_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.r32f_rgba8_snorm.texture3d_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.r32f_rgba8_snorm.texture3d_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.r32f_rgba8_snorm.cubemap_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.r32f_rgba8_snorm.cubemap_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.r32f_rgba8_snorm.cubemap_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.r32f_rgba8_snorm.cubemap_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.r32f_rgba8_snorm.texture2d_array_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.r32f_rgba8_snorm.texture2d_array_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.r32f_rgba8_snorm.texture2d_array_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.r32f_rgba8_snorm.texture2d_array_to_texture2d_array
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.r32f_srgb8_alpha8.texture2d_to_texture2d
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.r32f_srgb8_alpha8.texture2d_to_texture3d
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.r32f_srgb8_alpha8.texture2d_to_cubemap
@@ -23022,26 +23152,6 @@
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.r32i_rgb10_a2.renderbuffer_to_cubemap
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.r32i_rgb10_a2.renderbuffer_to_texture2d_array
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.r32i_rgb10_a2.renderbuffer_to_renderbuffer
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.r32i_rgba8_snorm.texture2d_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.r32i_rgba8_snorm.texture2d_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.r32i_rgba8_snorm.texture2d_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.r32i_rgba8_snorm.texture2d_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.r32i_rgba8_snorm.texture3d_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.r32i_rgba8_snorm.texture3d_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.r32i_rgba8_snorm.texture3d_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.r32i_rgba8_snorm.texture3d_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.r32i_rgba8_snorm.cubemap_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.r32i_rgba8_snorm.cubemap_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.r32i_rgba8_snorm.cubemap_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.r32i_rgba8_snorm.cubemap_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.r32i_rgba8_snorm.texture2d_array_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.r32i_rgba8_snorm.texture2d_array_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.r32i_rgba8_snorm.texture2d_array_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.r32i_rgba8_snorm.texture2d_array_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.r32i_rgba8_snorm.renderbuffer_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.r32i_rgba8_snorm.renderbuffer_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.r32i_rgba8_snorm.renderbuffer_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.r32i_rgba8_snorm.renderbuffer_to_texture2d_array
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.r32i_srgb8_alpha8.texture2d_to_texture2d
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.r32i_srgb8_alpha8.texture2d_to_texture3d
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.r32i_srgb8_alpha8.texture2d_to_cubemap
@@ -23367,26 +23477,6 @@
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.r32ui_rgb10_a2.renderbuffer_to_cubemap
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.r32ui_rgb10_a2.renderbuffer_to_texture2d_array
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.r32ui_rgb10_a2.renderbuffer_to_renderbuffer
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.r32ui_rgba8_snorm.texture2d_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.r32ui_rgba8_snorm.texture2d_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.r32ui_rgba8_snorm.texture2d_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.r32ui_rgba8_snorm.texture2d_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.r32ui_rgba8_snorm.texture3d_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.r32ui_rgba8_snorm.texture3d_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.r32ui_rgba8_snorm.texture3d_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.r32ui_rgba8_snorm.texture3d_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.r32ui_rgba8_snorm.cubemap_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.r32ui_rgba8_snorm.cubemap_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.r32ui_rgba8_snorm.cubemap_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.r32ui_rgba8_snorm.cubemap_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.r32ui_rgba8_snorm.texture2d_array_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.r32ui_rgba8_snorm.texture2d_array_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.r32ui_rgba8_snorm.texture2d_array_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.r32ui_rgba8_snorm.texture2d_array_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.r32ui_rgba8_snorm.renderbuffer_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.r32ui_rgba8_snorm.renderbuffer_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.r32ui_rgba8_snorm.renderbuffer_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.r32ui_rgba8_snorm.renderbuffer_to_texture2d_array
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.r32ui_srgb8_alpha8.texture2d_to_texture2d
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.r32ui_srgb8_alpha8.texture2d_to_texture3d
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.r32ui_srgb8_alpha8.texture2d_to_cubemap
@@ -23623,22 +23713,6 @@
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rg16f_rgb10_a2.texture2d_array_to_cubemap
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rg16f_rgb10_a2.texture2d_array_to_texture2d_array
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rg16f_rgb10_a2.texture2d_array_to_renderbuffer
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rg16f_rgba8_snorm.texture2d_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rg16f_rgba8_snorm.texture2d_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rg16f_rgba8_snorm.texture2d_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rg16f_rgba8_snorm.texture2d_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rg16f_rgba8_snorm.texture3d_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rg16f_rgba8_snorm.texture3d_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rg16f_rgba8_snorm.texture3d_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rg16f_rgba8_snorm.texture3d_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rg16f_rgba8_snorm.cubemap_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rg16f_rgba8_snorm.cubemap_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rg16f_rgba8_snorm.cubemap_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rg16f_rgba8_snorm.cubemap_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rg16f_rgba8_snorm.texture2d_array_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rg16f_rgba8_snorm.texture2d_array_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rg16f_rgba8_snorm.texture2d_array_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rg16f_rgba8_snorm.texture2d_array_to_texture2d_array
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rg16f_srgb8_alpha8.texture2d_to_texture2d
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rg16f_srgb8_alpha8.texture2d_to_texture3d
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rg16f_srgb8_alpha8.texture2d_to_cubemap
@@ -23940,26 +24014,6 @@
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rg16i_rgb10_a2.renderbuffer_to_cubemap
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rg16i_rgb10_a2.renderbuffer_to_texture2d_array
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rg16i_rgb10_a2.renderbuffer_to_renderbuffer
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rg16i_rgba8_snorm.texture2d_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rg16i_rgba8_snorm.texture2d_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rg16i_rgba8_snorm.texture2d_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rg16i_rgba8_snorm.texture2d_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rg16i_rgba8_snorm.texture3d_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rg16i_rgba8_snorm.texture3d_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rg16i_rgba8_snorm.texture3d_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rg16i_rgba8_snorm.texture3d_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rg16i_rgba8_snorm.cubemap_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rg16i_rgba8_snorm.cubemap_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rg16i_rgba8_snorm.cubemap_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rg16i_rgba8_snorm.cubemap_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rg16i_rgba8_snorm.texture2d_array_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rg16i_rgba8_snorm.texture2d_array_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rg16i_rgba8_snorm.texture2d_array_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rg16i_rgba8_snorm.texture2d_array_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rg16i_rgba8_snorm.renderbuffer_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rg16i_rgba8_snorm.renderbuffer_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rg16i_rgba8_snorm.renderbuffer_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rg16i_rgba8_snorm.renderbuffer_to_texture2d_array
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rg16i_srgb8_alpha8.texture2d_to_texture2d
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rg16i_srgb8_alpha8.texture2d_to_texture3d
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rg16i_srgb8_alpha8.texture2d_to_cubemap
@@ -24285,26 +24339,6 @@
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rg16ui_rgb10_a2.renderbuffer_to_cubemap
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rg16ui_rgb10_a2.renderbuffer_to_texture2d_array
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rg16ui_rgb10_a2.renderbuffer_to_renderbuffer
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rg16ui_rgba8_snorm.texture2d_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rg16ui_rgba8_snorm.texture2d_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rg16ui_rgba8_snorm.texture2d_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rg16ui_rgba8_snorm.texture2d_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rg16ui_rgba8_snorm.texture3d_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rg16ui_rgba8_snorm.texture3d_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rg16ui_rgba8_snorm.texture3d_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rg16ui_rgba8_snorm.texture3d_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rg16ui_rgba8_snorm.cubemap_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rg16ui_rgba8_snorm.cubemap_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rg16ui_rgba8_snorm.cubemap_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rg16ui_rgba8_snorm.cubemap_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rg16ui_rgba8_snorm.texture2d_array_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rg16ui_rgba8_snorm.texture2d_array_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rg16ui_rgba8_snorm.texture2d_array_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rg16ui_rgba8_snorm.texture2d_array_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rg16ui_rgba8_snorm.renderbuffer_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rg16ui_rgba8_snorm.renderbuffer_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rg16ui_rgba8_snorm.renderbuffer_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rg16ui_rgba8_snorm.renderbuffer_to_texture2d_array
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rg16ui_srgb8_alpha8.texture2d_to_texture2d
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rg16ui_srgb8_alpha8.texture2d_to_texture3d
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rg16ui_srgb8_alpha8.texture2d_to_cubemap
@@ -24630,26 +24664,6 @@
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_rgb10_a2.renderbuffer_to_cubemap
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_rgb10_a2.renderbuffer_to_texture2d_array
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_rgb10_a2.renderbuffer_to_renderbuffer
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_rgba8_snorm.texture2d_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_rgba8_snorm.texture2d_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_rgba8_snorm.texture2d_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_rgba8_snorm.texture2d_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_rgba8_snorm.texture3d_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_rgba8_snorm.texture3d_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_rgba8_snorm.texture3d_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_rgba8_snorm.texture3d_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_rgba8_snorm.cubemap_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_rgba8_snorm.cubemap_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_rgba8_snorm.cubemap_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_rgba8_snorm.cubemap_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_rgba8_snorm.texture2d_array_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_rgba8_snorm.texture2d_array_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_rgba8_snorm.texture2d_array_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_rgba8_snorm.texture2d_array_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_rgba8_snorm.renderbuffer_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_rgba8_snorm.renderbuffer_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_rgba8_snorm.renderbuffer_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_rgba8_snorm.renderbuffer_to_texture2d_array
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_srgb8_alpha8.texture2d_to_texture2d
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_srgb8_alpha8.texture2d_to_texture3d
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_srgb8_alpha8.texture2d_to_cubemap
@@ -24975,26 +24989,6 @@
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8i_rgb10_a2.renderbuffer_to_cubemap
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8i_rgb10_a2.renderbuffer_to_texture2d_array
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8i_rgb10_a2.renderbuffer_to_renderbuffer
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8i_rgba8_snorm.texture2d_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8i_rgba8_snorm.texture2d_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8i_rgba8_snorm.texture2d_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8i_rgba8_snorm.texture2d_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8i_rgba8_snorm.texture3d_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8i_rgba8_snorm.texture3d_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8i_rgba8_snorm.texture3d_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8i_rgba8_snorm.texture3d_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8i_rgba8_snorm.cubemap_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8i_rgba8_snorm.cubemap_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8i_rgba8_snorm.cubemap_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8i_rgba8_snorm.cubemap_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8i_rgba8_snorm.texture2d_array_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8i_rgba8_snorm.texture2d_array_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8i_rgba8_snorm.texture2d_array_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8i_rgba8_snorm.texture2d_array_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8i_rgba8_snorm.renderbuffer_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8i_rgba8_snorm.renderbuffer_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8i_rgba8_snorm.renderbuffer_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8i_rgba8_snorm.renderbuffer_to_texture2d_array
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8i_srgb8_alpha8.texture2d_to_texture2d
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8i_srgb8_alpha8.texture2d_to_texture3d
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8i_srgb8_alpha8.texture2d_to_cubemap
@@ -25320,26 +25314,6 @@
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8ui_rgb10_a2.renderbuffer_to_cubemap
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8ui_rgb10_a2.renderbuffer_to_texture2d_array
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8ui_rgb10_a2.renderbuffer_to_renderbuffer
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8ui_rgba8_snorm.texture2d_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8ui_rgba8_snorm.texture2d_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8ui_rgba8_snorm.texture2d_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8ui_rgba8_snorm.texture2d_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8ui_rgba8_snorm.texture3d_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8ui_rgba8_snorm.texture3d_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8ui_rgba8_snorm.texture3d_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8ui_rgba8_snorm.texture3d_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8ui_rgba8_snorm.cubemap_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8ui_rgba8_snorm.cubemap_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8ui_rgba8_snorm.cubemap_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8ui_rgba8_snorm.cubemap_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8ui_rgba8_snorm.texture2d_array_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8ui_rgba8_snorm.texture2d_array_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8ui_rgba8_snorm.texture2d_array_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8ui_rgba8_snorm.texture2d_array_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8ui_rgba8_snorm.renderbuffer_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8ui_rgba8_snorm.renderbuffer_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8ui_rgba8_snorm.renderbuffer_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8ui_rgba8_snorm.renderbuffer_to_texture2d_array
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8ui_srgb8_alpha8.texture2d_to_texture2d
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8ui_srgb8_alpha8.texture2d_to_texture3d
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8ui_srgb8_alpha8.texture2d_to_cubemap
@@ -25576,22 +25550,6 @@
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.r11f_g11f_b10f_rgb10_a2.texture2d_array_to_cubemap
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.r11f_g11f_b10f_rgb10_a2.texture2d_array_to_texture2d_array
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.r11f_g11f_b10f_rgb10_a2.texture2d_array_to_renderbuffer
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.r11f_g11f_b10f_rgba8_snorm.texture2d_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.r11f_g11f_b10f_rgba8_snorm.texture2d_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.r11f_g11f_b10f_rgba8_snorm.texture2d_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.r11f_g11f_b10f_rgba8_snorm.texture2d_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.r11f_g11f_b10f_rgba8_snorm.texture3d_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.r11f_g11f_b10f_rgba8_snorm.texture3d_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.r11f_g11f_b10f_rgba8_snorm.texture3d_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.r11f_g11f_b10f_rgba8_snorm.texture3d_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.r11f_g11f_b10f_rgba8_snorm.cubemap_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.r11f_g11f_b10f_rgba8_snorm.cubemap_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.r11f_g11f_b10f_rgba8_snorm.cubemap_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.r11f_g11f_b10f_rgba8_snorm.cubemap_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.r11f_g11f_b10f_rgba8_snorm.texture2d_array_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.r11f_g11f_b10f_rgba8_snorm.texture2d_array_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.r11f_g11f_b10f_rgba8_snorm.texture2d_array_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.r11f_g11f_b10f_rgba8_snorm.texture2d_array_to_texture2d_array
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.r11f_g11f_b10f_srgb8_alpha8.texture2d_to_texture2d
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.r11f_g11f_b10f_srgb8_alpha8.texture2d_to_texture3d
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.r11f_g11f_b10f_srgb8_alpha8.texture2d_to_cubemap
@@ -25893,26 +25851,6 @@
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgb10_a2ui_rgb10_a2.renderbuffer_to_cubemap
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgb10_a2ui_rgb10_a2.renderbuffer_to_texture2d_array
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgb10_a2ui_rgb10_a2.renderbuffer_to_renderbuffer
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgb10_a2ui_rgba8_snorm.texture2d_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgb10_a2ui_rgba8_snorm.texture2d_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgb10_a2ui_rgba8_snorm.texture2d_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgb10_a2ui_rgba8_snorm.texture2d_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgb10_a2ui_rgba8_snorm.texture3d_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgb10_a2ui_rgba8_snorm.texture3d_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgb10_a2ui_rgba8_snorm.texture3d_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgb10_a2ui_rgba8_snorm.texture3d_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgb10_a2ui_rgba8_snorm.cubemap_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgb10_a2ui_rgba8_snorm.cubemap_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgb10_a2ui_rgba8_snorm.cubemap_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgb10_a2ui_rgba8_snorm.cubemap_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgb10_a2ui_rgba8_snorm.texture2d_array_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgb10_a2ui_rgba8_snorm.texture2d_array_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgb10_a2ui_rgba8_snorm.texture2d_array_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgb10_a2ui_rgba8_snorm.texture2d_array_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgb10_a2ui_rgba8_snorm.renderbuffer_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgb10_a2ui_rgba8_snorm.renderbuffer_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgb10_a2ui_rgba8_snorm.renderbuffer_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgb10_a2ui_rgba8_snorm.renderbuffer_to_texture2d_array
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgb10_a2ui_srgb8_alpha8.texture2d_to_texture2d
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgb10_a2ui_srgb8_alpha8.texture2d_to_texture3d
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgb10_a2ui_srgb8_alpha8.texture2d_to_cubemap
@@ -26238,26 +26176,6 @@
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgb10_a2_rgb10_a2.renderbuffer_to_cubemap
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgb10_a2_rgb10_a2.renderbuffer_to_texture2d_array
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgb10_a2_rgb10_a2.renderbuffer_to_renderbuffer
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgb10_a2_rgba8_snorm.texture2d_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgb10_a2_rgba8_snorm.texture2d_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgb10_a2_rgba8_snorm.texture2d_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgb10_a2_rgba8_snorm.texture2d_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgb10_a2_rgba8_snorm.texture3d_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgb10_a2_rgba8_snorm.texture3d_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgb10_a2_rgba8_snorm.texture3d_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgb10_a2_rgba8_snorm.texture3d_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgb10_a2_rgba8_snorm.cubemap_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgb10_a2_rgba8_snorm.cubemap_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgb10_a2_rgba8_snorm.cubemap_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgb10_a2_rgba8_snorm.cubemap_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgb10_a2_rgba8_snorm.texture2d_array_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgb10_a2_rgba8_snorm.texture2d_array_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgb10_a2_rgba8_snorm.texture2d_array_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgb10_a2_rgba8_snorm.texture2d_array_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgb10_a2_rgba8_snorm.renderbuffer_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgb10_a2_rgba8_snorm.renderbuffer_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgb10_a2_rgba8_snorm.renderbuffer_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgb10_a2_rgba8_snorm.renderbuffer_to_texture2d_array
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgb10_a2_srgb8_alpha8.texture2d_to_texture2d
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgb10_a2_srgb8_alpha8.texture2d_to_texture3d
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgb10_a2_srgb8_alpha8.texture2d_to_cubemap
@@ -26298,282 +26216,6 @@
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgb10_a2_rgb9_e5.renderbuffer_to_texture3d
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgb10_a2_rgb9_e5.renderbuffer_to_cubemap
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgb10_a2_rgb9_e5.renderbuffer_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_r32f.texture2d_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_r32f.texture2d_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_r32f.texture2d_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_r32f.texture2d_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_r32f.texture3d_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_r32f.texture3d_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_r32f.texture3d_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_r32f.texture3d_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_r32f.cubemap_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_r32f.cubemap_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_r32f.cubemap_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_r32f.cubemap_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_r32f.texture2d_array_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_r32f.texture2d_array_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_r32f.texture2d_array_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_r32f.texture2d_array_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_r32i.texture2d_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_r32i.texture2d_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_r32i.texture2d_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_r32i.texture2d_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_r32i.texture2d_to_renderbuffer
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_r32i.texture3d_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_r32i.texture3d_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_r32i.texture3d_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_r32i.texture3d_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_r32i.texture3d_to_renderbuffer
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_r32i.cubemap_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_r32i.cubemap_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_r32i.cubemap_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_r32i.cubemap_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_r32i.cubemap_to_renderbuffer
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_r32i.texture2d_array_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_r32i.texture2d_array_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_r32i.texture2d_array_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_r32i.texture2d_array_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_r32i.texture2d_array_to_renderbuffer
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_r32ui.texture2d_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_r32ui.texture2d_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_r32ui.texture2d_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_r32ui.texture2d_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_r32ui.texture2d_to_renderbuffer
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_r32ui.texture3d_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_r32ui.texture3d_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_r32ui.texture3d_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_r32ui.texture3d_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_r32ui.texture3d_to_renderbuffer
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_r32ui.cubemap_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_r32ui.cubemap_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_r32ui.cubemap_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_r32ui.cubemap_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_r32ui.cubemap_to_renderbuffer
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_r32ui.texture2d_array_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_r32ui.texture2d_array_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_r32ui.texture2d_array_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_r32ui.texture2d_array_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_r32ui.texture2d_array_to_renderbuffer
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rg16f.texture2d_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rg16f.texture2d_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rg16f.texture2d_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rg16f.texture2d_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rg16f.texture3d_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rg16f.texture3d_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rg16f.texture3d_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rg16f.texture3d_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rg16f.cubemap_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rg16f.cubemap_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rg16f.cubemap_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rg16f.cubemap_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rg16f.texture2d_array_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rg16f.texture2d_array_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rg16f.texture2d_array_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rg16f.texture2d_array_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rg16i.texture2d_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rg16i.texture2d_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rg16i.texture2d_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rg16i.texture2d_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rg16i.texture2d_to_renderbuffer
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rg16i.texture3d_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rg16i.texture3d_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rg16i.texture3d_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rg16i.texture3d_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rg16i.texture3d_to_renderbuffer
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rg16i.cubemap_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rg16i.cubemap_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rg16i.cubemap_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rg16i.cubemap_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rg16i.cubemap_to_renderbuffer
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rg16i.texture2d_array_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rg16i.texture2d_array_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rg16i.texture2d_array_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rg16i.texture2d_array_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rg16i.texture2d_array_to_renderbuffer
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rg16ui.texture2d_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rg16ui.texture2d_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rg16ui.texture2d_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rg16ui.texture2d_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rg16ui.texture2d_to_renderbuffer
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rg16ui.texture3d_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rg16ui.texture3d_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rg16ui.texture3d_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rg16ui.texture3d_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rg16ui.texture3d_to_renderbuffer
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rg16ui.cubemap_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rg16ui.cubemap_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rg16ui.cubemap_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rg16ui.cubemap_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rg16ui.cubemap_to_renderbuffer
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rg16ui.texture2d_array_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rg16ui.texture2d_array_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rg16ui.texture2d_array_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rg16ui.texture2d_array_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rg16ui.texture2d_array_to_renderbuffer
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rgba8.texture2d_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rgba8.texture2d_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rgba8.texture2d_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rgba8.texture2d_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rgba8.texture2d_to_renderbuffer
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rgba8.texture3d_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rgba8.texture3d_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rgba8.texture3d_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rgba8.texture3d_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rgba8.texture3d_to_renderbuffer
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rgba8.cubemap_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rgba8.cubemap_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rgba8.cubemap_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rgba8.cubemap_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rgba8.cubemap_to_renderbuffer
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rgba8.texture2d_array_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rgba8.texture2d_array_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rgba8.texture2d_array_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rgba8.texture2d_array_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rgba8.texture2d_array_to_renderbuffer
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rgba8i.texture2d_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rgba8i.texture2d_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rgba8i.texture2d_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rgba8i.texture2d_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rgba8i.texture2d_to_renderbuffer
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rgba8i.texture3d_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rgba8i.texture3d_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rgba8i.texture3d_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rgba8i.texture3d_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rgba8i.texture3d_to_renderbuffer
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rgba8i.cubemap_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rgba8i.cubemap_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rgba8i.cubemap_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rgba8i.cubemap_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rgba8i.cubemap_to_renderbuffer
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rgba8i.texture2d_array_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rgba8i.texture2d_array_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rgba8i.texture2d_array_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rgba8i.texture2d_array_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rgba8i.texture2d_array_to_renderbuffer
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rgba8ui.texture2d_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rgba8ui.texture2d_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rgba8ui.texture2d_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rgba8ui.texture2d_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rgba8ui.texture2d_to_renderbuffer
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rgba8ui.texture3d_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rgba8ui.texture3d_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rgba8ui.texture3d_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rgba8ui.texture3d_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rgba8ui.texture3d_to_renderbuffer
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rgba8ui.cubemap_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rgba8ui.cubemap_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rgba8ui.cubemap_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rgba8ui.cubemap_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rgba8ui.cubemap_to_renderbuffer
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rgba8ui.texture2d_array_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rgba8ui.texture2d_array_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rgba8ui.texture2d_array_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rgba8ui.texture2d_array_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rgba8ui.texture2d_array_to_renderbuffer
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_r11f_g11f_b10f.texture2d_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_r11f_g11f_b10f.texture2d_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_r11f_g11f_b10f.texture2d_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_r11f_g11f_b10f.texture2d_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_r11f_g11f_b10f.texture3d_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_r11f_g11f_b10f.texture3d_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_r11f_g11f_b10f.texture3d_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_r11f_g11f_b10f.texture3d_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_r11f_g11f_b10f.cubemap_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_r11f_g11f_b10f.cubemap_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_r11f_g11f_b10f.cubemap_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_r11f_g11f_b10f.cubemap_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_r11f_g11f_b10f.texture2d_array_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_r11f_g11f_b10f.texture2d_array_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_r11f_g11f_b10f.texture2d_array_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_r11f_g11f_b10f.texture2d_array_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rgb10_a2ui.texture2d_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rgb10_a2ui.texture2d_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rgb10_a2ui.texture2d_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rgb10_a2ui.texture2d_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rgb10_a2ui.texture2d_to_renderbuffer
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rgb10_a2ui.texture3d_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rgb10_a2ui.texture3d_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rgb10_a2ui.texture3d_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rgb10_a2ui.texture3d_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rgb10_a2ui.texture3d_to_renderbuffer
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rgb10_a2ui.cubemap_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rgb10_a2ui.cubemap_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rgb10_a2ui.cubemap_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rgb10_a2ui.cubemap_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rgb10_a2ui.cubemap_to_renderbuffer
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rgb10_a2ui.texture2d_array_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rgb10_a2ui.texture2d_array_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rgb10_a2ui.texture2d_array_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rgb10_a2ui.texture2d_array_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rgb10_a2ui.texture2d_array_to_renderbuffer
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rgb10_a2.texture2d_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rgb10_a2.texture2d_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rgb10_a2.texture2d_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rgb10_a2.texture2d_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rgb10_a2.texture2d_to_renderbuffer
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rgb10_a2.texture3d_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rgb10_a2.texture3d_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rgb10_a2.texture3d_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rgb10_a2.texture3d_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rgb10_a2.texture3d_to_renderbuffer
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rgb10_a2.cubemap_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rgb10_a2.cubemap_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rgb10_a2.cubemap_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rgb10_a2.cubemap_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rgb10_a2.cubemap_to_renderbuffer
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rgb10_a2.texture2d_array_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rgb10_a2.texture2d_array_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rgb10_a2.texture2d_array_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rgb10_a2.texture2d_array_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rgb10_a2.texture2d_array_to_renderbuffer
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rgba8_snorm.texture2d_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rgba8_snorm.texture2d_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rgba8_snorm.texture2d_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rgba8_snorm.texture2d_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rgba8_snorm.texture3d_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rgba8_snorm.texture3d_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rgba8_snorm.texture3d_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rgba8_snorm.texture3d_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rgba8_snorm.cubemap_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rgba8_snorm.cubemap_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rgba8_snorm.cubemap_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rgba8_snorm.cubemap_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rgba8_snorm.texture2d_array_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rgba8_snorm.texture2d_array_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rgba8_snorm.texture2d_array_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rgba8_snorm.texture2d_array_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_srgb8_alpha8.texture2d_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_srgb8_alpha8.texture2d_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_srgb8_alpha8.texture2d_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_srgb8_alpha8.texture2d_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_srgb8_alpha8.texture3d_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_srgb8_alpha8.texture3d_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_srgb8_alpha8.texture3d_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_srgb8_alpha8.texture3d_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_srgb8_alpha8.cubemap_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_srgb8_alpha8.cubemap_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_srgb8_alpha8.cubemap_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_srgb8_alpha8.cubemap_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_srgb8_alpha8.texture2d_array_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_srgb8_alpha8.texture2d_array_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_srgb8_alpha8.texture2d_array_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_srgb8_alpha8.texture2d_array_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rgb9_e5.texture2d_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rgb9_e5.texture2d_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rgb9_e5.texture2d_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rgb9_e5.texture2d_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rgb9_e5.texture3d_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rgb9_e5.texture3d_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rgb9_e5.texture3d_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rgb9_e5.texture3d_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rgb9_e5.cubemap_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rgb9_e5.cubemap_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rgb9_e5.cubemap_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rgb9_e5.cubemap_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rgb9_e5.texture2d_array_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rgb9_e5.texture2d_array_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rgb9_e5.texture2d_array_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rgb9_e5.texture2d_array_to_texture2d_array
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.srgb8_alpha8_r32f.texture2d_to_texture2d
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.srgb8_alpha8_r32f.texture2d_to_texture3d
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.srgb8_alpha8_r32f.texture2d_to_cubemap
@@ -26814,26 +26456,6 @@
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.srgb8_alpha8_rgb10_a2.renderbuffer_to_texture3d
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.srgb8_alpha8_rgb10_a2.renderbuffer_to_cubemap
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.srgb8_alpha8_rgb10_a2.renderbuffer_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.srgb8_alpha8_rgba8_snorm.texture2d_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.srgb8_alpha8_rgba8_snorm.texture2d_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.srgb8_alpha8_rgba8_snorm.texture2d_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.srgb8_alpha8_rgba8_snorm.texture2d_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.srgb8_alpha8_rgba8_snorm.texture3d_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.srgb8_alpha8_rgba8_snorm.texture3d_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.srgb8_alpha8_rgba8_snorm.texture3d_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.srgb8_alpha8_rgba8_snorm.texture3d_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.srgb8_alpha8_rgba8_snorm.cubemap_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.srgb8_alpha8_rgba8_snorm.cubemap_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.srgb8_alpha8_rgba8_snorm.cubemap_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.srgb8_alpha8_rgba8_snorm.cubemap_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.srgb8_alpha8_rgba8_snorm.texture2d_array_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.srgb8_alpha8_rgba8_snorm.texture2d_array_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.srgb8_alpha8_rgba8_snorm.texture2d_array_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.srgb8_alpha8_rgba8_snorm.texture2d_array_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.srgb8_alpha8_rgba8_snorm.renderbuffer_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.srgb8_alpha8_rgba8_snorm.renderbuffer_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.srgb8_alpha8_rgba8_snorm.renderbuffer_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.srgb8_alpha8_rgba8_snorm.renderbuffer_to_texture2d_array
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.srgb8_alpha8_srgb8_alpha8.texture2d_to_texture2d
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.srgb8_alpha8_srgb8_alpha8.texture2d_to_texture3d
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.srgb8_alpha8_srgb8_alpha8.texture2d_to_cubemap
@@ -27054,22 +26676,6 @@
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgb9_e5_rgb10_a2.texture2d_array_to_cubemap
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgb9_e5_rgb10_a2.texture2d_array_to_texture2d_array
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgb9_e5_rgb10_a2.texture2d_array_to_renderbuffer
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgb9_e5_rgba8_snorm.texture2d_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgb9_e5_rgba8_snorm.texture2d_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgb9_e5_rgba8_snorm.texture2d_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgb9_e5_rgba8_snorm.texture2d_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgb9_e5_rgba8_snorm.texture3d_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgb9_e5_rgba8_snorm.texture3d_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgb9_e5_rgba8_snorm.texture3d_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgb9_e5_rgba8_snorm.texture3d_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgb9_e5_rgba8_snorm.cubemap_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgb9_e5_rgba8_snorm.cubemap_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgb9_e5_rgba8_snorm.cubemap_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgb9_e5_rgba8_snorm.cubemap_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgb9_e5_rgba8_snorm.texture2d_array_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgb9_e5_rgba8_snorm.texture2d_array_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgb9_e5_rgba8_snorm.texture2d_array_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgb9_e5_rgba8_snorm.texture2d_array_to_texture2d_array
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgb9_e5_srgb8_alpha8.texture2d_to_texture2d
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgb9_e5_srgb8_alpha8.texture2d_to_texture3d
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgb9_e5_srgb8_alpha8.texture2d_to_cubemap
@@ -27167,26 +26773,6 @@
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8_rgb8ui.renderbuffer_to_texture3d
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8_rgb8ui.renderbuffer_to_cubemap
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8_rgb8ui.renderbuffer_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8_rgb8_snorm.texture2d_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8_rgb8_snorm.texture2d_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8_rgb8_snorm.texture2d_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8_rgb8_snorm.texture2d_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8_rgb8_snorm.texture3d_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8_rgb8_snorm.texture3d_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8_rgb8_snorm.texture3d_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8_rgb8_snorm.texture3d_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8_rgb8_snorm.cubemap_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8_rgb8_snorm.cubemap_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8_rgb8_snorm.cubemap_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8_rgb8_snorm.cubemap_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8_rgb8_snorm.texture2d_array_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8_rgb8_snorm.texture2d_array_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8_rgb8_snorm.texture2d_array_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8_rgb8_snorm.texture2d_array_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8_rgb8_snorm.renderbuffer_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8_rgb8_snorm.renderbuffer_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8_rgb8_snorm.renderbuffer_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8_rgb8_snorm.renderbuffer_to_texture2d_array
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8_srgb8.texture2d_to_texture2d
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8_srgb8.texture2d_to_texture3d
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8_srgb8.texture2d_to_cubemap
@@ -27259,22 +26845,6 @@
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8i_rgb8ui.texture2d_array_to_texture3d
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8i_rgb8ui.texture2d_array_to_cubemap
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8i_rgb8ui.texture2d_array_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8i_rgb8_snorm.texture2d_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8i_rgb8_snorm.texture2d_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8i_rgb8_snorm.texture2d_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8i_rgb8_snorm.texture2d_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8i_rgb8_snorm.texture3d_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8i_rgb8_snorm.texture3d_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8i_rgb8_snorm.texture3d_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8i_rgb8_snorm.texture3d_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8i_rgb8_snorm.cubemap_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8i_rgb8_snorm.cubemap_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8i_rgb8_snorm.cubemap_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8i_rgb8_snorm.cubemap_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8i_rgb8_snorm.texture2d_array_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8i_rgb8_snorm.texture2d_array_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8i_rgb8_snorm.texture2d_array_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8i_rgb8_snorm.texture2d_array_to_texture2d_array
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8i_srgb8.texture2d_to_texture2d
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8i_srgb8.texture2d_to_texture3d
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8i_srgb8.texture2d_to_cubemap
@@ -27343,22 +26913,6 @@
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8ui_rgb8ui.texture2d_array_to_texture3d
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8ui_rgb8ui.texture2d_array_to_cubemap
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8ui_rgb8ui.texture2d_array_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8ui_rgb8_snorm.texture2d_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8ui_rgb8_snorm.texture2d_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8ui_rgb8_snorm.texture2d_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8ui_rgb8_snorm.texture2d_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8ui_rgb8_snorm.texture3d_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8ui_rgb8_snorm.texture3d_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8ui_rgb8_snorm.texture3d_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8ui_rgb8_snorm.texture3d_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8ui_rgb8_snorm.cubemap_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8ui_rgb8_snorm.cubemap_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8ui_rgb8_snorm.cubemap_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8ui_rgb8_snorm.cubemap_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8ui_rgb8_snorm.texture2d_array_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8ui_rgb8_snorm.texture2d_array_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8ui_rgb8_snorm.texture2d_array_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8ui_rgb8_snorm.texture2d_array_to_texture2d_array
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8ui_srgb8.texture2d_to_texture2d
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8ui_srgb8.texture2d_to_texture3d
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8ui_srgb8.texture2d_to_cubemap
@@ -27375,90 +26929,6 @@
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8ui_srgb8.texture2d_array_to_texture3d
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8ui_srgb8.texture2d_array_to_cubemap
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8ui_srgb8.texture2d_array_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8_snorm_rgb8.texture2d_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8_snorm_rgb8.texture2d_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8_snorm_rgb8.texture2d_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8_snorm_rgb8.texture2d_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8_snorm_rgb8.texture2d_to_renderbuffer
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8_snorm_rgb8.texture3d_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8_snorm_rgb8.texture3d_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8_snorm_rgb8.texture3d_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8_snorm_rgb8.texture3d_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8_snorm_rgb8.texture3d_to_renderbuffer
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8_snorm_rgb8.cubemap_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8_snorm_rgb8.cubemap_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8_snorm_rgb8.cubemap_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8_snorm_rgb8.cubemap_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8_snorm_rgb8.cubemap_to_renderbuffer
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8_snorm_rgb8.texture2d_array_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8_snorm_rgb8.texture2d_array_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8_snorm_rgb8.texture2d_array_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8_snorm_rgb8.texture2d_array_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8_snorm_rgb8.texture2d_array_to_renderbuffer
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8_snorm_rgb8i.texture2d_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8_snorm_rgb8i.texture2d_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8_snorm_rgb8i.texture2d_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8_snorm_rgb8i.texture2d_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8_snorm_rgb8i.texture3d_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8_snorm_rgb8i.texture3d_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8_snorm_rgb8i.texture3d_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8_snorm_rgb8i.texture3d_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8_snorm_rgb8i.cubemap_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8_snorm_rgb8i.cubemap_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8_snorm_rgb8i.cubemap_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8_snorm_rgb8i.cubemap_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8_snorm_rgb8i.texture2d_array_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8_snorm_rgb8i.texture2d_array_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8_snorm_rgb8i.texture2d_array_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8_snorm_rgb8i.texture2d_array_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8_snorm_rgb8ui.texture2d_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8_snorm_rgb8ui.texture2d_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8_snorm_rgb8ui.texture2d_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8_snorm_rgb8ui.texture2d_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8_snorm_rgb8ui.texture3d_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8_snorm_rgb8ui.texture3d_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8_snorm_rgb8ui.texture3d_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8_snorm_rgb8ui.texture3d_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8_snorm_rgb8ui.cubemap_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8_snorm_rgb8ui.cubemap_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8_snorm_rgb8ui.cubemap_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8_snorm_rgb8ui.cubemap_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8_snorm_rgb8ui.texture2d_array_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8_snorm_rgb8ui.texture2d_array_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8_snorm_rgb8ui.texture2d_array_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8_snorm_rgb8ui.texture2d_array_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8_snorm_rgb8_snorm.texture2d_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8_snorm_rgb8_snorm.texture2d_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8_snorm_rgb8_snorm.texture2d_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8_snorm_rgb8_snorm.texture2d_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8_snorm_rgb8_snorm.texture3d_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8_snorm_rgb8_snorm.texture3d_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8_snorm_rgb8_snorm.texture3d_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8_snorm_rgb8_snorm.texture3d_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8_snorm_rgb8_snorm.cubemap_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8_snorm_rgb8_snorm.cubemap_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8_snorm_rgb8_snorm.cubemap_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8_snorm_rgb8_snorm.cubemap_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8_snorm_rgb8_snorm.texture2d_array_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8_snorm_rgb8_snorm.texture2d_array_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8_snorm_rgb8_snorm.texture2d_array_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8_snorm_rgb8_snorm.texture2d_array_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8_snorm_srgb8.texture2d_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8_snorm_srgb8.texture2d_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8_snorm_srgb8.texture2d_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8_snorm_srgb8.texture2d_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8_snorm_srgb8.texture3d_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8_snorm_srgb8.texture3d_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8_snorm_srgb8.texture3d_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8_snorm_srgb8.texture3d_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8_snorm_srgb8.cubemap_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8_snorm_srgb8.cubemap_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8_snorm_srgb8.cubemap_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8_snorm_srgb8.cubemap_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8_snorm_srgb8.texture2d_array_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8_snorm_srgb8.texture2d_array_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8_snorm_srgb8.texture2d_array_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8_snorm_srgb8.texture2d_array_to_texture2d_array
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.srgb8_rgb8.texture2d_to_texture2d
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.srgb8_rgb8.texture2d_to_texture3d
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.srgb8_rgb8.texture2d_to_cubemap
@@ -27507,22 +26977,6 @@
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.srgb8_rgb8ui.texture2d_array_to_texture3d
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.srgb8_rgb8ui.texture2d_array_to_cubemap
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.srgb8_rgb8ui.texture2d_array_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.srgb8_rgb8_snorm.texture2d_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.srgb8_rgb8_snorm.texture2d_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.srgb8_rgb8_snorm.texture2d_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.srgb8_rgb8_snorm.texture2d_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.srgb8_rgb8_snorm.texture3d_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.srgb8_rgb8_snorm.texture3d_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.srgb8_rgb8_snorm.texture3d_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.srgb8_rgb8_snorm.texture3d_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.srgb8_rgb8_snorm.cubemap_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.srgb8_rgb8_snorm.cubemap_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.srgb8_rgb8_snorm.cubemap_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.srgb8_rgb8_snorm.cubemap_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.srgb8_rgb8_snorm.texture2d_array_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.srgb8_rgb8_snorm.texture2d_array_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.srgb8_rgb8_snorm.texture2d_array_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.srgb8_rgb8_snorm.texture2d_array_to_texture2d_array
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.srgb8_srgb8.texture2d_to_texture2d
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.srgb8_srgb8.texture2d_to_texture3d
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.srgb8_srgb8.texture2d_to_cubemap
@@ -27655,22 +27109,6 @@
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.r16f_rg8ui.texture2d_array_to_cubemap
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.r16f_rg8ui.texture2d_array_to_texture2d_array
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.r16f_rg8ui.texture2d_array_to_renderbuffer
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.r16f_rg8_snorm.texture2d_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.r16f_rg8_snorm.texture2d_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.r16f_rg8_snorm.texture2d_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.r16f_rg8_snorm.texture2d_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.r16f_rg8_snorm.texture3d_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.r16f_rg8_snorm.texture3d_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.r16f_rg8_snorm.texture3d_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.r16f_rg8_snorm.texture3d_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.r16f_rg8_snorm.cubemap_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.r16f_rg8_snorm.cubemap_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.r16f_rg8_snorm.cubemap_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.r16f_rg8_snorm.cubemap_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.r16f_rg8_snorm.texture2d_array_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.r16f_rg8_snorm.texture2d_array_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.r16f_rg8_snorm.texture2d_array_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.r16f_rg8_snorm.texture2d_array_to_texture2d_array
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.r16i_r16f.texture2d_to_texture2d
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.r16i_r16f.texture2d_to_texture3d
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.r16i_r16f.texture2d_to_cubemap
@@ -27816,26 +27254,6 @@
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.r16i_rg8ui.renderbuffer_to_cubemap
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.r16i_rg8ui.renderbuffer_to_texture2d_array
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.r16i_rg8ui.renderbuffer_to_renderbuffer
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.r16i_rg8_snorm.texture2d_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.r16i_rg8_snorm.texture2d_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.r16i_rg8_snorm.texture2d_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.r16i_rg8_snorm.texture2d_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.r16i_rg8_snorm.texture3d_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.r16i_rg8_snorm.texture3d_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.r16i_rg8_snorm.texture3d_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.r16i_rg8_snorm.texture3d_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.r16i_rg8_snorm.cubemap_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.r16i_rg8_snorm.cubemap_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.r16i_rg8_snorm.cubemap_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.r16i_rg8_snorm.cubemap_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.r16i_rg8_snorm.texture2d_array_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.r16i_rg8_snorm.texture2d_array_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.r16i_rg8_snorm.texture2d_array_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.r16i_rg8_snorm.texture2d_array_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.r16i_rg8_snorm.renderbuffer_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.r16i_rg8_snorm.renderbuffer_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.r16i_rg8_snorm.renderbuffer_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.r16i_rg8_snorm.renderbuffer_to_texture2d_array
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.r16ui_r16f.texture2d_to_texture2d
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.r16ui_r16f.texture2d_to_texture3d
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.r16ui_r16f.texture2d_to_cubemap
@@ -27981,26 +27399,6 @@
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.r16ui_rg8ui.renderbuffer_to_cubemap
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.r16ui_rg8ui.renderbuffer_to_texture2d_array
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.r16ui_rg8ui.renderbuffer_to_renderbuffer
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.r16ui_rg8_snorm.texture2d_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.r16ui_rg8_snorm.texture2d_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.r16ui_rg8_snorm.texture2d_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.r16ui_rg8_snorm.texture2d_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.r16ui_rg8_snorm.texture3d_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.r16ui_rg8_snorm.texture3d_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.r16ui_rg8_snorm.texture3d_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.r16ui_rg8_snorm.texture3d_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.r16ui_rg8_snorm.cubemap_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.r16ui_rg8_snorm.cubemap_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.r16ui_rg8_snorm.cubemap_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.r16ui_rg8_snorm.cubemap_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.r16ui_rg8_snorm.texture2d_array_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.r16ui_rg8_snorm.texture2d_array_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.r16ui_rg8_snorm.texture2d_array_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.r16ui_rg8_snorm.texture2d_array_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.r16ui_rg8_snorm.renderbuffer_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.r16ui_rg8_snorm.renderbuffer_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.r16ui_rg8_snorm.renderbuffer_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.r16ui_rg8_snorm.renderbuffer_to_texture2d_array
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_r16f.texture2d_to_texture2d
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_r16f.texture2d_to_texture3d
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_r16f.texture2d_to_cubemap
@@ -28146,26 +27544,6 @@
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_rg8ui.renderbuffer_to_cubemap
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_rg8ui.renderbuffer_to_texture2d_array
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_rg8ui.renderbuffer_to_renderbuffer
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_rg8_snorm.texture2d_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_rg8_snorm.texture2d_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_rg8_snorm.texture2d_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_rg8_snorm.texture2d_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_rg8_snorm.texture3d_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_rg8_snorm.texture3d_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_rg8_snorm.texture3d_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_rg8_snorm.texture3d_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_rg8_snorm.cubemap_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_rg8_snorm.cubemap_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_rg8_snorm.cubemap_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_rg8_snorm.cubemap_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_rg8_snorm.texture2d_array_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_rg8_snorm.texture2d_array_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_rg8_snorm.texture2d_array_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_rg8_snorm.texture2d_array_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_rg8_snorm.renderbuffer_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_rg8_snorm.renderbuffer_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_rg8_snorm.renderbuffer_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_rg8_snorm.renderbuffer_to_texture2d_array
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8i_r16f.texture2d_to_texture2d
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8i_r16f.texture2d_to_texture3d
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8i_r16f.texture2d_to_cubemap
@@ -28311,26 +27689,6 @@
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8i_rg8ui.renderbuffer_to_cubemap
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8i_rg8ui.renderbuffer_to_texture2d_array
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8i_rg8ui.renderbuffer_to_renderbuffer
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8i_rg8_snorm.texture2d_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8i_rg8_snorm.texture2d_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8i_rg8_snorm.texture2d_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8i_rg8_snorm.texture2d_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8i_rg8_snorm.texture3d_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8i_rg8_snorm.texture3d_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8i_rg8_snorm.texture3d_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8i_rg8_snorm.texture3d_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8i_rg8_snorm.cubemap_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8i_rg8_snorm.cubemap_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8i_rg8_snorm.cubemap_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8i_rg8_snorm.cubemap_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8i_rg8_snorm.texture2d_array_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8i_rg8_snorm.texture2d_array_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8i_rg8_snorm.texture2d_array_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8i_rg8_snorm.texture2d_array_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8i_rg8_snorm.renderbuffer_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8i_rg8_snorm.renderbuffer_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8i_rg8_snorm.renderbuffer_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8i_rg8_snorm.renderbuffer_to_texture2d_array
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8ui_r16f.texture2d_to_texture2d
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8ui_r16f.texture2d_to_texture3d
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8ui_r16f.texture2d_to_cubemap
@@ -28476,158 +27834,6 @@
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8ui_rg8ui.renderbuffer_to_cubemap
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8ui_rg8ui.renderbuffer_to_texture2d_array
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8ui_rg8ui.renderbuffer_to_renderbuffer
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8ui_rg8_snorm.texture2d_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8ui_rg8_snorm.texture2d_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8ui_rg8_snorm.texture2d_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8ui_rg8_snorm.texture2d_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8ui_rg8_snorm.texture3d_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8ui_rg8_snorm.texture3d_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8ui_rg8_snorm.texture3d_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8ui_rg8_snorm.texture3d_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8ui_rg8_snorm.cubemap_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8ui_rg8_snorm.cubemap_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8ui_rg8_snorm.cubemap_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8ui_rg8_snorm.cubemap_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8ui_rg8_snorm.texture2d_array_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8ui_rg8_snorm.texture2d_array_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8ui_rg8_snorm.texture2d_array_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8ui_rg8_snorm.texture2d_array_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8ui_rg8_snorm.renderbuffer_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8ui_rg8_snorm.renderbuffer_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8ui_rg8_snorm.renderbuffer_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8ui_rg8_snorm.renderbuffer_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_snorm_r16f.texture2d_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_snorm_r16f.texture2d_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_snorm_r16f.texture2d_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_snorm_r16f.texture2d_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_snorm_r16f.texture3d_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_snorm_r16f.texture3d_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_snorm_r16f.texture3d_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_snorm_r16f.texture3d_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_snorm_r16f.cubemap_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_snorm_r16f.cubemap_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_snorm_r16f.cubemap_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_snorm_r16f.cubemap_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_snorm_r16f.texture2d_array_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_snorm_r16f.texture2d_array_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_snorm_r16f.texture2d_array_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_snorm_r16f.texture2d_array_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_snorm_r16i.texture2d_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_snorm_r16i.texture2d_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_snorm_r16i.texture2d_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_snorm_r16i.texture2d_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_snorm_r16i.texture2d_to_renderbuffer
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_snorm_r16i.texture3d_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_snorm_r16i.texture3d_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_snorm_r16i.texture3d_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_snorm_r16i.texture3d_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_snorm_r16i.texture3d_to_renderbuffer
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_snorm_r16i.cubemap_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_snorm_r16i.cubemap_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_snorm_r16i.cubemap_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_snorm_r16i.cubemap_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_snorm_r16i.cubemap_to_renderbuffer
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_snorm_r16i.texture2d_array_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_snorm_r16i.texture2d_array_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_snorm_r16i.texture2d_array_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_snorm_r16i.texture2d_array_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_snorm_r16i.texture2d_array_to_renderbuffer
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_snorm_r16ui.texture2d_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_snorm_r16ui.texture2d_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_snorm_r16ui.texture2d_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_snorm_r16ui.texture2d_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_snorm_r16ui.texture2d_to_renderbuffer
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_snorm_r16ui.texture3d_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_snorm_r16ui.texture3d_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_snorm_r16ui.texture3d_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_snorm_r16ui.texture3d_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_snorm_r16ui.texture3d_to_renderbuffer
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_snorm_r16ui.cubemap_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_snorm_r16ui.cubemap_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_snorm_r16ui.cubemap_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_snorm_r16ui.cubemap_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_snorm_r16ui.cubemap_to_renderbuffer
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_snorm_r16ui.texture2d_array_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_snorm_r16ui.texture2d_array_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_snorm_r16ui.texture2d_array_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_snorm_r16ui.texture2d_array_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_snorm_r16ui.texture2d_array_to_renderbuffer
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_snorm_rg8.texture2d_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_snorm_rg8.texture2d_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_snorm_rg8.texture2d_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_snorm_rg8.texture2d_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_snorm_rg8.texture2d_to_renderbuffer
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_snorm_rg8.texture3d_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_snorm_rg8.texture3d_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_snorm_rg8.texture3d_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_snorm_rg8.texture3d_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_snorm_rg8.texture3d_to_renderbuffer
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_snorm_rg8.cubemap_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_snorm_rg8.cubemap_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_snorm_rg8.cubemap_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_snorm_rg8.cubemap_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_snorm_rg8.cubemap_to_renderbuffer
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_snorm_rg8.texture2d_array_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_snorm_rg8.texture2d_array_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_snorm_rg8.texture2d_array_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_snorm_rg8.texture2d_array_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_snorm_rg8.texture2d_array_to_renderbuffer
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_snorm_rg8i.texture2d_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_snorm_rg8i.texture2d_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_snorm_rg8i.texture2d_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_snorm_rg8i.texture2d_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_snorm_rg8i.texture2d_to_renderbuffer
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_snorm_rg8i.texture3d_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_snorm_rg8i.texture3d_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_snorm_rg8i.texture3d_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_snorm_rg8i.texture3d_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_snorm_rg8i.texture3d_to_renderbuffer
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_snorm_rg8i.cubemap_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_snorm_rg8i.cubemap_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_snorm_rg8i.cubemap_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_snorm_rg8i.cubemap_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_snorm_rg8i.cubemap_to_renderbuffer
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_snorm_rg8i.texture2d_array_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_snorm_rg8i.texture2d_array_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_snorm_rg8i.texture2d_array_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_snorm_rg8i.texture2d_array_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_snorm_rg8i.texture2d_array_to_renderbuffer
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_snorm_rg8ui.texture2d_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_snorm_rg8ui.texture2d_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_snorm_rg8ui.texture2d_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_snorm_rg8ui.texture2d_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_snorm_rg8ui.texture2d_to_renderbuffer
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_snorm_rg8ui.texture3d_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_snorm_rg8ui.texture3d_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_snorm_rg8ui.texture3d_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_snorm_rg8ui.texture3d_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_snorm_rg8ui.texture3d_to_renderbuffer
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_snorm_rg8ui.cubemap_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_snorm_rg8ui.cubemap_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_snorm_rg8ui.cubemap_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_snorm_rg8ui.cubemap_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_snorm_rg8ui.cubemap_to_renderbuffer
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_snorm_rg8ui.texture2d_array_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_snorm_rg8ui.texture2d_array_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_snorm_rg8ui.texture2d_array_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_snorm_rg8ui.texture2d_array_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_snorm_rg8ui.texture2d_array_to_renderbuffer
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_snorm_rg8_snorm.texture2d_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_snorm_rg8_snorm.texture2d_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_snorm_rg8_snorm.texture2d_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_snorm_rg8_snorm.texture2d_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_snorm_rg8_snorm.texture3d_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_snorm_rg8_snorm.texture3d_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_snorm_rg8_snorm.texture3d_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_snorm_rg8_snorm.texture3d_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_snorm_rg8_snorm.cubemap_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_snorm_rg8_snorm.cubemap_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_snorm_rg8_snorm.cubemap_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_snorm_rg8_snorm.cubemap_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_snorm_rg8_snorm.texture2d_array_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_snorm_rg8_snorm.texture2d_array_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_snorm_rg8_snorm.texture2d_array_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_snorm_rg8_snorm.texture2d_array_to_texture2d_array
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8_r8.texture2d_to_texture2d
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8_r8.texture2d_to_texture3d
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8_r8.texture2d_to_cubemap
@@ -28703,26 +27909,6 @@
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8_r8ui.renderbuffer_to_cubemap
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8_r8ui.renderbuffer_to_texture2d_array
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8_r8ui.renderbuffer_to_renderbuffer
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8_r8_snorm.texture2d_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8_r8_snorm.texture2d_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8_r8_snorm.texture2d_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8_r8_snorm.texture2d_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8_r8_snorm.texture3d_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8_r8_snorm.texture3d_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8_r8_snorm.texture3d_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8_r8_snorm.texture3d_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8_r8_snorm.cubemap_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8_r8_snorm.cubemap_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8_r8_snorm.cubemap_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8_r8_snorm.cubemap_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8_r8_snorm.texture2d_array_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8_r8_snorm.texture2d_array_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8_r8_snorm.texture2d_array_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8_r8_snorm.texture2d_array_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8_r8_snorm.renderbuffer_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8_r8_snorm.renderbuffer_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8_r8_snorm.renderbuffer_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8_r8_snorm.renderbuffer_to_texture2d_array
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8i_r8.texture2d_to_texture2d
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8i_r8.texture2d_to_texture3d
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8i_r8.texture2d_to_cubemap
@@ -28798,26 +27984,6 @@
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8i_r8ui.renderbuffer_to_cubemap
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8i_r8ui.renderbuffer_to_texture2d_array
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8i_r8ui.renderbuffer_to_renderbuffer
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8i_r8_snorm.texture2d_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8i_r8_snorm.texture2d_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8i_r8_snorm.texture2d_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8i_r8_snorm.texture2d_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8i_r8_snorm.texture3d_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8i_r8_snorm.texture3d_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8i_r8_snorm.texture3d_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8i_r8_snorm.texture3d_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8i_r8_snorm.cubemap_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8i_r8_snorm.cubemap_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8i_r8_snorm.cubemap_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8i_r8_snorm.cubemap_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8i_r8_snorm.texture2d_array_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8i_r8_snorm.texture2d_array_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8i_r8_snorm.texture2d_array_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8i_r8_snorm.texture2d_array_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8i_r8_snorm.renderbuffer_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8i_r8_snorm.renderbuffer_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8i_r8_snorm.renderbuffer_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8i_r8_snorm.renderbuffer_to_texture2d_array
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8ui_r8.texture2d_to_texture2d
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8ui_r8.texture2d_to_texture3d
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8ui_r8.texture2d_to_cubemap
@@ -28893,102 +28059,6 @@
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8ui_r8ui.renderbuffer_to_cubemap
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8ui_r8ui.renderbuffer_to_texture2d_array
 dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8ui_r8ui.renderbuffer_to_renderbuffer
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8ui_r8_snorm.texture2d_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8ui_r8_snorm.texture2d_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8ui_r8_snorm.texture2d_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8ui_r8_snorm.texture2d_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8ui_r8_snorm.texture3d_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8ui_r8_snorm.texture3d_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8ui_r8_snorm.texture3d_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8ui_r8_snorm.texture3d_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8ui_r8_snorm.cubemap_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8ui_r8_snorm.cubemap_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8ui_r8_snorm.cubemap_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8ui_r8_snorm.cubemap_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8ui_r8_snorm.texture2d_array_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8ui_r8_snorm.texture2d_array_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8ui_r8_snorm.texture2d_array_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8ui_r8_snorm.texture2d_array_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8ui_r8_snorm.renderbuffer_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8ui_r8_snorm.renderbuffer_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8ui_r8_snorm.renderbuffer_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8ui_r8_snorm.renderbuffer_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8_snorm_r8.texture2d_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8_snorm_r8.texture2d_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8_snorm_r8.texture2d_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8_snorm_r8.texture2d_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8_snorm_r8.texture2d_to_renderbuffer
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8_snorm_r8.texture3d_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8_snorm_r8.texture3d_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8_snorm_r8.texture3d_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8_snorm_r8.texture3d_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8_snorm_r8.texture3d_to_renderbuffer
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8_snorm_r8.cubemap_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8_snorm_r8.cubemap_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8_snorm_r8.cubemap_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8_snorm_r8.cubemap_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8_snorm_r8.cubemap_to_renderbuffer
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8_snorm_r8.texture2d_array_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8_snorm_r8.texture2d_array_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8_snorm_r8.texture2d_array_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8_snorm_r8.texture2d_array_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8_snorm_r8.texture2d_array_to_renderbuffer
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8_snorm_r8i.texture2d_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8_snorm_r8i.texture2d_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8_snorm_r8i.texture2d_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8_snorm_r8i.texture2d_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8_snorm_r8i.texture2d_to_renderbuffer
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8_snorm_r8i.texture3d_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8_snorm_r8i.texture3d_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8_snorm_r8i.texture3d_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8_snorm_r8i.texture3d_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8_snorm_r8i.texture3d_to_renderbuffer
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8_snorm_r8i.cubemap_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8_snorm_r8i.cubemap_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8_snorm_r8i.cubemap_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8_snorm_r8i.cubemap_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8_snorm_r8i.cubemap_to_renderbuffer
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8_snorm_r8i.texture2d_array_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8_snorm_r8i.texture2d_array_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8_snorm_r8i.texture2d_array_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8_snorm_r8i.texture2d_array_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8_snorm_r8i.texture2d_array_to_renderbuffer
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8_snorm_r8ui.texture2d_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8_snorm_r8ui.texture2d_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8_snorm_r8ui.texture2d_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8_snorm_r8ui.texture2d_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8_snorm_r8ui.texture2d_to_renderbuffer
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8_snorm_r8ui.texture3d_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8_snorm_r8ui.texture3d_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8_snorm_r8ui.texture3d_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8_snorm_r8ui.texture3d_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8_snorm_r8ui.texture3d_to_renderbuffer
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8_snorm_r8ui.cubemap_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8_snorm_r8ui.cubemap_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8_snorm_r8ui.cubemap_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8_snorm_r8ui.cubemap_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8_snorm_r8ui.cubemap_to_renderbuffer
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8_snorm_r8ui.texture2d_array_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8_snorm_r8ui.texture2d_array_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8_snorm_r8ui.texture2d_array_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8_snorm_r8ui.texture2d_array_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8_snorm_r8ui.texture2d_array_to_renderbuffer
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8_snorm_r8_snorm.texture2d_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8_snorm_r8_snorm.texture2d_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8_snorm_r8_snorm.texture2d_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8_snorm_r8_snorm.texture2d_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8_snorm_r8_snorm.texture3d_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8_snorm_r8_snorm.texture3d_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8_snorm_r8_snorm.texture3d_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8_snorm_r8_snorm.texture3d_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8_snorm_r8_snorm.cubemap_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8_snorm_r8_snorm.cubemap_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8_snorm_r8_snorm.cubemap_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8_snorm_r8_snorm.cubemap_to_texture2d_array
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8_snorm_r8_snorm.texture2d_array_to_texture2d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8_snorm_r8_snorm.texture2d_array_to_texture3d
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8_snorm_r8_snorm.texture2d_array_to_cubemap
-dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8_snorm_r8_snorm.texture2d_array_to_texture2d_array
 dEQP-GLES31.functional.copy_image.compressed.viewclass_eac_r11.r11_eac_r11_eac.texture2d_to_texture2d
 dEQP-GLES31.functional.copy_image.compressed.viewclass_eac_r11.r11_eac_r11_eac.texture2d_to_cubemap
 dEQP-GLES31.functional.copy_image.compressed.viewclass_eac_r11.r11_eac_r11_eac.cubemap_to_texture2d
diff --git a/android/cts/master/src/egl-failures.txt b/android/cts/master/src/egl-failures.txt
index 6f46bbb..15fb3ef 100644
--- a/android/cts/master/src/egl-failures.txt
+++ b/android/cts/master/src/egl-failures.txt
@@ -303,97 +303,56 @@
 dEQP-EGL.functional.image.create.gles2_android_native_rgba8_read_pixels
 dEQP-EGL.functional.image.create.gles2_android_native_rgba8_depth_buffer
 dEQP-EGL.functional.image.modify.tex_rgb8_tex_subimage_rgb565
-dEQP-EGL.functional.image.modify.tex_rgb8_tex_subimage_rgba8
-dEQP-EGL.functional.image.modify.tex_rgb8_tex_subimage_rgba5_a1
-dEQP-EGL.functional.image.modify.tex_rgb8_tex_subimage_rgba4
-dEQP-EGL.functional.image.modify.tex_rgb565_tex_subimage_rgba8
-dEQP-EGL.functional.image.modify.tex_rgb565_tex_subimage_rgba5_a1
-dEQP-EGL.functional.image.modify.tex_rgb565_tex_subimage_rgba4
-dEQP-EGL.functional.image.modify.tex_rgba8_tex_subimage_rgb8
-dEQP-EGL.functional.image.modify.tex_rgba8_tex_subimage_rgb565
 dEQP-EGL.functional.image.modify.tex_rgba8_tex_subimage_rgba5_a1
 dEQP-EGL.functional.image.modify.tex_rgba8_tex_subimage_rgba4
-dEQP-EGL.functional.image.modify.tex_rgba5_a1_tex_subimage_rgb8
-dEQP-EGL.functional.image.modify.tex_rgba5_a1_tex_subimage_rgb565
 dEQP-EGL.functional.image.modify.tex_rgba5_a1_tex_subimage_rgba8
 dEQP-EGL.functional.image.modify.tex_rgba5_a1_tex_subimage_rgba5_a1
 dEQP-EGL.functional.image.modify.tex_rgba5_a1_tex_subimage_rgba4
 dEQP-EGL.functional.image.modify.tex_rgba5_a1_renderbuffer_clear_color
 dEQP-EGL.functional.image.modify.tex_rgba5_a1_renderbuffer_clear_depth
 dEQP-EGL.functional.image.modify.tex_rgba5_a1_renderbuffer_clear_stencil
-dEQP-EGL.functional.image.modify.tex_rgba4_tex_subimage_rgb8
-dEQP-EGL.functional.image.modify.tex_rgba4_tex_subimage_rgb565
 dEQP-EGL.functional.image.modify.tex_rgba4_tex_subimage_rgba8
 dEQP-EGL.functional.image.modify.tex_rgba4_tex_subimage_rgba5_a1
 dEQP-EGL.functional.image.modify.tex_rgba4_tex_subimage_rgba4
 dEQP-EGL.functional.image.modify.tex_rgba4_renderbuffer_clear_color
 dEQP-EGL.functional.image.modify.tex_rgba4_renderbuffer_clear_depth
 dEQP-EGL.functional.image.modify.tex_rgba4_renderbuffer_clear_stencil
-dEQP-EGL.functional.image.modify.renderbuffer_rgba4_tex_subimage_rgb8
-dEQP-EGL.functional.image.modify.renderbuffer_rgba4_tex_subimage_rgb565
 dEQP-EGL.functional.image.modify.renderbuffer_rgba4_tex_subimage_rgba8
 dEQP-EGL.functional.image.modify.renderbuffer_rgba4_tex_subimage_rgba5_a1
 dEQP-EGL.functional.image.modify.renderbuffer_rgba4_tex_subimage_rgba4
 dEQP-EGL.functional.image.modify.renderbuffer_rgba4_renderbuffer_clear_color
 dEQP-EGL.functional.image.modify.renderbuffer_rgba4_renderbuffer_clear_depth
 dEQP-EGL.functional.image.modify.renderbuffer_rgba4_renderbuffer_clear_stencil
-dEQP-EGL.functional.image.modify.renderbuffer_rgb5_a1_tex_subimage_rgb8
-dEQP-EGL.functional.image.modify.renderbuffer_rgb5_a1_tex_subimage_rgb565
 dEQP-EGL.functional.image.modify.renderbuffer_rgb5_a1_tex_subimage_rgba8
 dEQP-EGL.functional.image.modify.renderbuffer_rgb5_a1_tex_subimage_rgba4
-dEQP-EGL.functional.image.modify.renderbuffer_rgb565_tex_subimage_rgba8
-dEQP-EGL.functional.image.modify.renderbuffer_rgb565_tex_subimage_rgba5_a1
-dEQP-EGL.functional.image.modify.renderbuffer_rgb565_tex_subimage_rgba4
-dEQP-EGL.functional.image.modify.renderbuffer_depth16_tex_subimage_rgb8
-dEQP-EGL.functional.image.modify.renderbuffer_depth16_tex_subimage_rgb565
-dEQP-EGL.functional.image.modify.renderbuffer_depth16_tex_subimage_rgba8
-dEQP-EGL.functional.image.modify.renderbuffer_depth16_tex_subimage_rgba5_a1
-dEQP-EGL.functional.image.modify.renderbuffer_depth16_tex_subimage_rgba4
 dEQP-EGL.functional.image.modify.renderbuffer_depth16_renderbuffer_clear_color
 dEQP-EGL.functional.image.modify.renderbuffer_depth16_renderbuffer_clear_depth
 dEQP-EGL.functional.image.modify.renderbuffer_depth16_renderbuffer_clear_stencil
-dEQP-EGL.functional.image.modify.renderbuffer_stencil_tex_subimage_rgb8
-dEQP-EGL.functional.image.modify.renderbuffer_stencil_tex_subimage_rgb565
-dEQP-EGL.functional.image.modify.renderbuffer_stencil_tex_subimage_rgba8
-dEQP-EGL.functional.image.modify.renderbuffer_stencil_tex_subimage_rgba5_a1
-dEQP-EGL.functional.image.modify.renderbuffer_stencil_tex_subimage_rgba4
 dEQP-EGL.functional.image.modify.renderbuffer_stencil_renderbuffer_clear_color
 dEQP-EGL.functional.image.modify.renderbuffer_stencil_renderbuffer_clear_depth
 dEQP-EGL.functional.image.modify.renderbuffer_stencil_renderbuffer_clear_stencil
 dEQP-EGL.functional.image.modify.android_native_rgb565_tex_subimage_rgb8
 dEQP-EGL.functional.image.modify.android_native_rgb565_tex_subimage_rgb565
-dEQP-EGL.functional.image.modify.android_native_rgb565_tex_subimage_rgba8
-dEQP-EGL.functional.image.modify.android_native_rgb565_tex_subimage_rgba5_a1
-dEQP-EGL.functional.image.modify.android_native_rgb565_tex_subimage_rgba4
 dEQP-EGL.functional.image.modify.android_native_rgb565_renderbuffer_clear_color
 dEQP-EGL.functional.image.modify.android_native_rgb565_renderbuffer_clear_depth
 dEQP-EGL.functional.image.modify.android_native_rgb565_renderbuffer_clear_stencil
 dEQP-EGL.functional.image.modify.android_native_rgb8_tex_subimage_rgb8
 dEQP-EGL.functional.image.modify.android_native_rgb8_tex_subimage_rgb565
-dEQP-EGL.functional.image.modify.android_native_rgb8_tex_subimage_rgba8
-dEQP-EGL.functional.image.modify.android_native_rgb8_tex_subimage_rgba5_a1
-dEQP-EGL.functional.image.modify.android_native_rgb8_tex_subimage_rgba4
 dEQP-EGL.functional.image.modify.android_native_rgb8_renderbuffer_clear_color
 dEQP-EGL.functional.image.modify.android_native_rgb8_renderbuffer_clear_depth
 dEQP-EGL.functional.image.modify.android_native_rgb8_renderbuffer_clear_stencil
-dEQP-EGL.functional.image.modify.android_native_rgba4_tex_subimage_rgb8
-dEQP-EGL.functional.image.modify.android_native_rgba4_tex_subimage_rgb565
 dEQP-EGL.functional.image.modify.android_native_rgba4_tex_subimage_rgba8
 dEQP-EGL.functional.image.modify.android_native_rgba4_tex_subimage_rgba5_a1
 dEQP-EGL.functional.image.modify.android_native_rgba4_tex_subimage_rgba4
 dEQP-EGL.functional.image.modify.android_native_rgba4_renderbuffer_clear_color
 dEQP-EGL.functional.image.modify.android_native_rgba4_renderbuffer_clear_depth
 dEQP-EGL.functional.image.modify.android_native_rgba4_renderbuffer_clear_stencil
-dEQP-EGL.functional.image.modify.android_native_rgb5_a1_tex_subimage_rgb8
-dEQP-EGL.functional.image.modify.android_native_rgb5_a1_tex_subimage_rgb565
 dEQP-EGL.functional.image.modify.android_native_rgb5_a1_tex_subimage_rgba8
 dEQP-EGL.functional.image.modify.android_native_rgb5_a1_tex_subimage_rgba5_a1
 dEQP-EGL.functional.image.modify.android_native_rgb5_a1_tex_subimage_rgba4
 dEQP-EGL.functional.image.modify.android_native_rgb5_a1_renderbuffer_clear_color
 dEQP-EGL.functional.image.modify.android_native_rgb5_a1_renderbuffer_clear_depth
 dEQP-EGL.functional.image.modify.android_native_rgb5_a1_renderbuffer_clear_stencil
-dEQP-EGL.functional.image.modify.android_native_rgba8_tex_subimage_rgb8
-dEQP-EGL.functional.image.modify.android_native_rgba8_tex_subimage_rgb565
 dEQP-EGL.functional.image.modify.android_native_rgba8_tex_subimage_rgba8
 dEQP-EGL.functional.image.modify.android_native_rgba8_tex_subimage_rgba5_a1
 dEQP-EGL.functional.image.modify.android_native_rgba8_tex_subimage_rgba4
@@ -913,20 +872,6 @@
 dEQP-EGL.functional.create_context_ext.gles_20.rgba8888_no_depth_stencil
 dEQP-EGL.functional.create_context_ext.gles_20.rgba8888_depth_no_stencil
 dEQP-EGL.functional.create_context_ext.gles_20.rgba8888_depth_stencil
-dEQP-EGL.functional.create_context_ext.robust_gles_20.rgb565_no_depth_no_stencil
-dEQP-EGL.functional.create_context_ext.robust_gles_20.rgb565_no_depth_stencil
-dEQP-EGL.functional.create_context_ext.robust_gles_20.rgb565_depth_no_stencil
-dEQP-EGL.functional.create_context_ext.robust_gles_20.rgb565_depth_stencil
-dEQP-EGL.functional.create_context_ext.robust_gles_20.rgb888_no_depth_no_stencil
-dEQP-EGL.functional.create_context_ext.robust_gles_20.rgb888_no_depth_stencil
-dEQP-EGL.functional.create_context_ext.robust_gles_20.rgb888_depth_no_stencil
-dEQP-EGL.functional.create_context_ext.robust_gles_20.rgb888_depth_stencil
-dEQP-EGL.functional.create_context_ext.robust_gles_20.rgba4444_depth_stencil
-dEQP-EGL.functional.create_context_ext.robust_gles_20.rgba5551_depth_stencil
-dEQP-EGL.functional.create_context_ext.robust_gles_20.rgba8888_no_depth_no_stencil
-dEQP-EGL.functional.create_context_ext.robust_gles_20.rgba8888_no_depth_stencil
-dEQP-EGL.functional.create_context_ext.robust_gles_20.rgba8888_depth_no_stencil
-dEQP-EGL.functional.create_context_ext.robust_gles_20.rgba8888_depth_stencil
 dEQP-EGL.functional.create_context_ext.gles_30.rgb565_no_depth_no_stencil
 dEQP-EGL.functional.create_context_ext.gles_30.rgb565_no_depth_stencil
 dEQP-EGL.functional.create_context_ext.gles_30.rgb565_depth_no_stencil
@@ -939,20 +884,6 @@
 dEQP-EGL.functional.create_context_ext.gles_30.rgba8888_no_depth_stencil
 dEQP-EGL.functional.create_context_ext.gles_30.rgba8888_depth_no_stencil
 dEQP-EGL.functional.create_context_ext.gles_30.rgba8888_depth_stencil
-dEQP-EGL.functional.create_context_ext.robust_gles_30.rgb565_no_depth_no_stencil
-dEQP-EGL.functional.create_context_ext.robust_gles_30.rgb565_no_depth_stencil
-dEQP-EGL.functional.create_context_ext.robust_gles_30.rgb565_depth_no_stencil
-dEQP-EGL.functional.create_context_ext.robust_gles_30.rgb565_depth_stencil
-dEQP-EGL.functional.create_context_ext.robust_gles_30.rgb888_no_depth_no_stencil
-dEQP-EGL.functional.create_context_ext.robust_gles_30.rgb888_no_depth_stencil
-dEQP-EGL.functional.create_context_ext.robust_gles_30.rgb888_depth_no_stencil
-dEQP-EGL.functional.create_context_ext.robust_gles_30.rgb888_depth_stencil
-dEQP-EGL.functional.create_context_ext.robust_gles_30.rgba4444_depth_stencil
-dEQP-EGL.functional.create_context_ext.robust_gles_30.rgba5551_depth_stencil
-dEQP-EGL.functional.create_context_ext.robust_gles_30.rgba8888_no_depth_no_stencil
-dEQP-EGL.functional.create_context_ext.robust_gles_30.rgba8888_no_depth_stencil
-dEQP-EGL.functional.create_context_ext.robust_gles_30.rgba8888_depth_no_stencil
-dEQP-EGL.functional.create_context_ext.robust_gles_30.rgba8888_depth_stencil
 dEQP-EGL.functional.create_context_ext.robust_gles_2_ext.rgb565_no_depth_no_stencil
 dEQP-EGL.functional.create_context_ext.robust_gles_2_ext.rgb565_no_depth_stencil
 dEQP-EGL.functional.create_context_ext.robust_gles_2_ext.rgb565_depth_no_stencil
diff --git a/android/cts/master/src/gles3-spec-issues.txt b/android/cts/master/src/gles3-spec-issues.txt
new file mode 100644
index 0000000..aa431c0
--- /dev/null
+++ b/android/cts/master/src/gles3-spec-issues.txt
@@ -0,0 +1,508 @@
+# Khronos bug 11600, internal bug 20334181
+dEQP-GLES3.functional.shaders.constant_expressions.other.nested_builtin_funcs_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.other.nested_builtin_funcs_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.other.complex_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.other.complex_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.radians_float_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.radians_float_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.radians_vec2_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.radians_vec2_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.radians_vec3_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.radians_vec3_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.radians_vec4_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.radians_vec4_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.degrees_float_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.degrees_float_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.degrees_vec2_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.degrees_vec2_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.degrees_vec3_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.degrees_vec3_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.degrees_vec4_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.degrees_vec4_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.tan_float_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.tan_float_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.tan_vec2_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.tan_vec2_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.tan_vec3_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.tan_vec3_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.tan_vec4_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.tan_vec4_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.atan_separate_float_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.atan_separate_float_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.atan_separate_vec2_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.atan_separate_vec2_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.atan_separate_vec3_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.atan_separate_vec3_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.atan_separate_vec4_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.atan_separate_vec4_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.atan_combined_float_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.atan_combined_float_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.atan_combined_vec2_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.atan_combined_vec2_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.atan_combined_vec3_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.atan_combined_vec3_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.atan_combined_vec4_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.atan_combined_vec4_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.sinh_float_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.sinh_float_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.sinh_vec2_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.sinh_vec2_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.sinh_vec3_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.sinh_vec3_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.sinh_vec4_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.sinh_vec4_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.cosh_float_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.cosh_float_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.cosh_vec2_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.cosh_vec2_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.cosh_vec3_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.cosh_vec3_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.cosh_vec4_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.cosh_vec4_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.tanh_float_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.tanh_float_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.tanh_vec2_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.tanh_vec2_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.tanh_vec3_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.tanh_vec3_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.tanh_vec4_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.tanh_vec4_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.asinh_float_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.asinh_float_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.asinh_vec2_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.asinh_vec2_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.asinh_vec3_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.asinh_vec3_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.asinh_vec4_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.asinh_vec4_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.acosh_float_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.acosh_float_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.acosh_vec2_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.acosh_vec2_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.acosh_vec3_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.acosh_vec3_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.acosh_vec4_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.acosh_vec4_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.atanh_float_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.atanh_float_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.atanh_vec2_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.atanh_vec2_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.atanh_vec3_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.atanh_vec3_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.atanh_vec4_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.angle_and_trigonometry.atanh_vec4_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.roundEven_float_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.roundEven_float_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.roundEven_vec2_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.roundEven_vec2_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.roundEven_vec3_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.roundEven_vec3_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.roundEven_vec4_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.roundEven_vec4_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.fract_float_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.fract_float_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.fract_vec2_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.fract_vec2_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.fract_vec3_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.fract_vec3_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.fract_vec4_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.fract_vec4_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.mod_float_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.mod_float_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.mod_vec2_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.mod_vec2_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.mod_vec2_float_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.mod_vec2_float_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.mod_vec3_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.mod_vec3_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.mod_vec3_float_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.mod_vec3_float_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.mod_vec4_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.mod_vec4_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.mod_vec4_float_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.mod_vec4_float_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.mix_float_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.mix_float_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.mix_vec2_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.mix_vec2_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.mix_vec2_float_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.mix_vec2_float_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.mix_vec3_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.mix_vec3_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.mix_vec3_float_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.mix_vec3_float_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.mix_vec4_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.mix_vec4_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.mix_vec4_float_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.mix_vec4_float_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.mix_float_bool_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.mix_float_bool_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.mix_vec2_bvec2_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.mix_vec2_bvec2_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.mix_vec3_bvec3_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.mix_vec3_bvec3_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.mix_vec4_bvec4_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.mix_vec4_bvec4_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.step_float_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.step_float_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.step_vec2_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.step_vec2_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.step_vec2_float_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.step_vec2_float_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.step_vec3_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.step_vec3_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.step_vec3_float_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.step_vec3_float_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.step_vec4_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.step_vec4_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.step_vec4_float_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.step_vec4_float_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.smoothstep_float_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.smoothstep_float_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.smoothstep_vec2_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.smoothstep_vec2_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.smoothstep_vec2_float_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.smoothstep_vec2_float_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.smoothstep_vec3_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.smoothstep_vec3_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.smoothstep_vec3_float_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.smoothstep_vec3_float_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.smoothstep_vec4_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.smoothstep_vec4_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.smoothstep_vec4_float_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.smoothstep_vec4_float_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.isnan_float_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.isnan_float_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.isnan_vec2_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.isnan_vec2_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.isnan_vec3_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.isnan_vec3_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.isnan_vec4_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.isnan_vec4_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.isinf_float_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.isinf_float_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.isinf_vec2_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.isinf_vec2_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.isinf_vec3_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.isinf_vec3_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.isinf_vec4_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.isinf_vec4_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.floatbits_int_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.floatbits_int_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.floatbits_uint_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.floatbits_uint_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.float_pack_unpack.packSnorm2x16_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.float_pack_unpack.packSnorm2x16_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.float_pack_unpack.unpackSnorm2x16_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.float_pack_unpack.unpackSnorm2x16_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.float_pack_unpack.packUnorm2x16_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.float_pack_unpack.packUnorm2x16_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.float_pack_unpack.unpackUnorm2x16_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.float_pack_unpack.unpackUnorm2x16_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.float_pack_unpack.packHalf2x16_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.float_pack_unpack.packHalf2x16_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.geometric.distance_float_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.geometric.distance_float_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.geometric.distance_vec2_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.geometric.distance_vec2_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.geometric.distance_vec3_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.geometric.distance_vec3_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.geometric.distance_vec4_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.geometric.distance_vec4_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.geometric.faceforward_float_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.geometric.faceforward_float_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.geometric.faceforward_vec2_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.geometric.faceforward_vec2_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.geometric.faceforward_vec3_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.geometric.faceforward_vec3_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.geometric.faceforward_vec4_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.geometric.faceforward_vec4_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.geometric.reflect_float_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.geometric.reflect_float_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.geometric.reflect_vec2_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.geometric.reflect_vec2_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.geometric.reflect_vec3_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.geometric.reflect_vec3_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.geometric.reflect_vec4_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.geometric.reflect_vec4_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.geometric.refract_float_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.geometric.refract_float_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.geometric.refract_vec2_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.geometric.refract_vec2_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.geometric.refract_vec3_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.geometric.refract_vec3_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.geometric.refract_vec4_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.geometric.refract_vec4_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.matrix.compMult_mat2_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.matrix.compMult_mat2_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.matrix.compMult_mat3_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.matrix.compMult_mat3_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.matrix.compMult_mat4_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.matrix.compMult_mat4_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.matrix.outerProd_mat2_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.matrix.outerProd_mat2_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.matrix.outerProd_mat3_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.matrix.outerProd_mat3_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.matrix.outerProd_mat4_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.matrix.outerProd_mat4_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.matrix.outerProd_mat2x3_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.matrix.outerProd_mat2x3_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.matrix.outerProd_mat3x2_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.matrix.outerProd_mat3x2_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.matrix.outerProd_mat2x4_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.matrix.outerProd_mat2x4_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.matrix.outerProd_mat4x2_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.matrix.outerProd_mat4x2_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.matrix.outerProd_mat3x4_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.matrix.outerProd_mat3x4_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.matrix.outerProd_mat4x3_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.matrix.outerProd_mat4x3_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.matrix.transpose_mat2_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.matrix.transpose_mat2_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.matrix.transpose_mat3_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.matrix.transpose_mat3_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.matrix.transpose_mat4_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.matrix.transpose_mat4_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.matrix.transpose_mat3x2_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.matrix.transpose_mat3x2_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.matrix.transpose_mat2x3_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.matrix.transpose_mat2x3_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.matrix.transpose_mat4x2_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.matrix.transpose_mat4x2_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.matrix.transpose_mat4x3_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.matrix.transpose_mat4x3_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.matrix.transpose_mat2x4_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.matrix.transpose_mat2x4_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.matrix.transpose_mat3x4_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.matrix.transpose_mat3x4_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.matrix.determinant_mat2_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.matrix.determinant_mat2_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.matrix.determinant_mat3_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.matrix.determinant_mat3_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.matrix.determinant_mat4_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.matrix.determinant_mat4_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.matrix.inverse_mat2_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.matrix.inverse_mat2_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.matrix.inverse_mat3_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.matrix.inverse_mat3_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.matrix.inverse_mat4_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.matrix.inverse_mat4_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.lessThan_vec2_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.lessThan_vec2_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.lessThan_vec3_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.lessThan_vec3_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.lessThan_vec4_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.lessThan_vec4_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.lessThan_ivec2_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.lessThan_ivec2_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.lessThan_ivec3_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.lessThan_ivec3_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.lessThan_ivec4_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.lessThan_ivec4_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.lessThan_uvec2_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.lessThan_uvec2_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.lessThan_uvec3_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.lessThan_uvec3_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.lessThan_uvec4_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.lessThan_uvec4_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.lessThanEqual_vec2_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.lessThanEqual_vec2_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.lessThanEqual_vec3_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.lessThanEqual_vec3_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.lessThanEqual_vec4_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.lessThanEqual_vec4_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.lessThanEqual_ivec2_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.lessThanEqual_ivec2_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.lessThanEqual_ivec3_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.lessThanEqual_ivec3_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.lessThanEqual_ivec4_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.lessThanEqual_ivec4_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.lessThanEqual_uvec2_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.lessThanEqual_uvec2_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.lessThanEqual_uvec3_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.lessThanEqual_uvec3_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.lessThanEqual_uvec4_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.lessThanEqual_uvec4_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.greaterThan_vec2_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.greaterThan_vec2_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.greaterThan_vec3_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.greaterThan_vec3_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.greaterThan_vec4_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.greaterThan_vec4_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.greaterThan_ivec2_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.greaterThan_ivec2_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.greaterThan_ivec3_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.greaterThan_ivec3_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.greaterThan_ivec4_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.greaterThan_ivec4_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.greaterThan_uvec2_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.greaterThan_uvec2_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.greaterThan_uvec3_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.greaterThan_uvec3_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.greaterThan_uvec4_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.greaterThan_uvec4_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.greaterThanEqual_vec2_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.greaterThanEqual_vec2_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.greaterThanEqual_vec3_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.greaterThanEqual_vec3_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.greaterThanEqual_vec4_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.greaterThanEqual_vec4_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.greaterThanEqual_ivec2_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.greaterThanEqual_ivec2_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.greaterThanEqual_ivec3_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.greaterThanEqual_ivec3_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.greaterThanEqual_ivec4_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.greaterThanEqual_ivec4_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.greaterThanEqual_uvec2_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.greaterThanEqual_uvec2_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.greaterThanEqual_uvec3_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.greaterThanEqual_uvec3_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.greaterThanEqual_uvec4_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.greaterThanEqual_uvec4_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.equal_vec2_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.equal_vec2_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.equal_vec3_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.equal_vec3_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.equal_vec4_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.equal_vec4_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.equal_ivec2_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.equal_ivec2_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.equal_ivec3_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.equal_ivec3_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.equal_ivec4_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.equal_ivec4_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.equal_uvec2_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.equal_uvec2_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.equal_uvec3_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.equal_uvec3_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.equal_uvec4_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.equal_uvec4_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.equal_bvec2_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.equal_bvec2_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.equal_bvec3_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.equal_bvec3_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.equal_bvec4_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.equal_bvec4_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.notEqual_vec2_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.notEqual_vec2_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.notEqual_vec3_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.notEqual_vec3_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.notEqual_vec4_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.notEqual_vec4_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.notEqual_ivec2_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.notEqual_ivec2_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.notEqual_ivec3_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.notEqual_ivec3_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.notEqual_ivec4_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.notEqual_ivec4_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.notEqual_uvec2_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.notEqual_uvec2_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.notEqual_uvec3_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.notEqual_uvec3_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.notEqual_uvec4_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.notEqual_uvec4_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.notEqual_bvec2_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.notEqual_bvec2_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.notEqual_bvec3_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.notEqual_bvec3_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.notEqual_bvec4_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.notEqual_bvec4_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.any_bvec2_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.any_bvec2_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.any_bvec3_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.any_bvec3_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.any_bvec4_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.any_bvec4_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.all_bvec2_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.all_bvec2_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.all_bvec3_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.all_bvec3_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.all_bvec4_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.all_bvec4_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.not_bvec2_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.not_bvec2_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.not_bvec3_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.not_bvec3_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.not_bvec4_vertex
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.vector_relational.not_bvec4_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.fragment_processing.dFdx_float_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.fragment_processing.dFdx_vec2_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.fragment_processing.dFdx_vec3_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.fragment_processing.dFdx_vec4_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.fragment_processing.dFdy_float_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.fragment_processing.dFdy_vec2_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.fragment_processing.dFdy_vec3_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.fragment_processing.dFdy_vec4_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.fragment_processing.fwidth_float_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.fragment_processing.fwidth_vec2_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.fragment_processing.fwidth_vec3_fragment
+dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.fragment_processing.fwidth_vec4_fragment
+dEQP-GLES3.functional.shaders.random.all_features.fragment.13
+dEQP-GLES3.functional.shaders.random.all_features.fragment.14
+dEQP-GLES3.functional.shaders.random.all_features.fragment.18
+dEQP-GLES3.functional.shaders.random.all_features.fragment.21
+dEQP-GLES3.functional.shaders.random.all_features.fragment.22
+dEQP-GLES3.functional.shaders.random.all_features.fragment.25
+dEQP-GLES3.functional.shaders.random.all_features.fragment.30
+dEQP-GLES3.functional.shaders.random.all_features.fragment.32
+dEQP-GLES3.functional.shaders.random.all_features.fragment.34
+dEQP-GLES3.functional.shaders.random.all_features.fragment.38
+dEQP-GLES3.functional.shaders.random.all_features.fragment.39
+dEQP-GLES3.functional.shaders.random.all_features.fragment.40
+dEQP-GLES3.functional.shaders.random.all_features.fragment.46
+dEQP-GLES3.functional.shaders.random.all_features.fragment.53
+dEQP-GLES3.functional.shaders.random.all_features.fragment.55
+dEQP-GLES3.functional.shaders.random.all_features.fragment.6
+dEQP-GLES3.functional.shaders.random.all_features.fragment.64
+dEQP-GLES3.functional.shaders.random.all_features.fragment.65
+dEQP-GLES3.functional.shaders.random.all_features.fragment.66
+dEQP-GLES3.functional.shaders.random.all_features.fragment.69
+dEQP-GLES3.functional.shaders.random.all_features.fragment.7
+dEQP-GLES3.functional.shaders.random.all_features.fragment.70
+dEQP-GLES3.functional.shaders.random.all_features.fragment.72
+dEQP-GLES3.functional.shaders.random.all_features.fragment.80
+dEQP-GLES3.functional.shaders.random.all_features.fragment.81
+dEQP-GLES3.functional.shaders.random.all_features.fragment.86
+dEQP-GLES3.functional.shaders.random.all_features.fragment.89
+dEQP-GLES3.functional.shaders.random.all_features.fragment.9
+dEQP-GLES3.functional.shaders.random.all_features.fragment.94
+dEQP-GLES3.functional.shaders.random.all_features.fragment.96
+dEQP-GLES3.functional.shaders.random.all_features.vertex.13
+dEQP-GLES3.functional.shaders.random.all_features.vertex.17
+dEQP-GLES3.functional.shaders.random.all_features.vertex.18
+dEQP-GLES3.functional.shaders.random.all_features.vertex.2
+dEQP-GLES3.functional.shaders.random.all_features.vertex.26
+dEQP-GLES3.functional.shaders.random.all_features.vertex.29
+dEQP-GLES3.functional.shaders.random.all_features.vertex.34
+dEQP-GLES3.functional.shaders.random.all_features.vertex.4
+dEQP-GLES3.functional.shaders.random.all_features.vertex.40
+dEQP-GLES3.functional.shaders.random.all_features.vertex.41
+dEQP-GLES3.functional.shaders.random.all_features.vertex.46
+dEQP-GLES3.functional.shaders.random.all_features.vertex.47
+dEQP-GLES3.functional.shaders.random.all_features.vertex.49
+dEQP-GLES3.functional.shaders.random.all_features.vertex.50
+dEQP-GLES3.functional.shaders.random.all_features.vertex.53
+dEQP-GLES3.functional.shaders.random.all_features.vertex.54
+dEQP-GLES3.functional.shaders.random.all_features.vertex.6
+dEQP-GLES3.functional.shaders.random.all_features.vertex.62
+dEQP-GLES3.functional.shaders.random.all_features.vertex.65
+dEQP-GLES3.functional.shaders.random.all_features.vertex.66
+dEQP-GLES3.functional.shaders.random.all_features.vertex.72
+dEQP-GLES3.functional.shaders.random.all_features.vertex.76
+dEQP-GLES3.functional.shaders.random.all_features.vertex.77
+dEQP-GLES3.functional.shaders.random.all_features.vertex.79
+dEQP-GLES3.functional.shaders.random.all_features.vertex.81
+dEQP-GLES3.functional.shaders.random.all_features.vertex.87
+dEQP-GLES3.functional.shaders.random.all_features.vertex.88
+dEQP-GLES3.functional.shaders.random.all_features.vertex.93
+dEQP-GLES3.functional.shaders.random.all_features.vertex.94
+dEQP-GLES3.functional.shaders.random.all_features.vertex.96
+dEQP-GLES3.functional.shaders.random.trigonometric.fragment.37
+dEQP-GLES3.functional.shaders.random.trigonometric.fragment.49
+dEQP-GLES3.functional.shaders.random.trigonometric.fragment.89
+dEQP-GLES3.functional.shaders.random.trigonometric.fragment.94
+dEQP-GLES3.functional.shaders.random.trigonometric.vertex.11
+dEQP-GLES3.functional.shaders.random.trigonometric.vertex.15
+dEQP-GLES3.functional.shaders.random.trigonometric.vertex.49
+dEQP-GLES3.functional.shaders.random.trigonometric.vertex.89
+dEQP-GLES3.functional.shaders.random.trigonometric.vertex.94
diff --git a/android/cts/master/src/gles3-test-issues.txt b/android/cts/master/src/gles3-test-issues.txt
index eefa9b4..e30eebf 100644
--- a/android/cts/master/src/gles3-test-issues.txt
+++ b/android/cts/master/src/gles3-test-issues.txt
@@ -84,3 +84,9 @@
 
 # Bug 20092191
 dEQP-GLES3.functional.fragment_ops.interaction.basic_shader.20
+
+# Bug 20340817
+dEQP-GLES3.functional.fbo.api.attachment_query_default_fbo
+
+# Bug 20340818
+dEQP-GLES3.functional.negative_api.texture.teximage3d
diff --git a/android/cts/master/src/gles31-spec-issues.txt b/android/cts/master/src/gles31-spec-issues.txt
new file mode 100644
index 0000000..884b49c
--- /dev/null
+++ b/android/cts/master/src/gles31-spec-issues.txt
@@ -0,0 +1,2 @@
+# Bug 13564
+dEQP-GLES31.functional.default_vertex_array_object.vertex_attrib_divisor
diff --git a/android/cts/master/src/gles31-test-issues.txt b/android/cts/master/src/gles31-test-issues.txt
index 946daed..6358fa5 100644
--- a/android/cts/master/src/gles31-test-issues.txt
+++ b/android/cts/master/src/gles31-test-issues.txt
@@ -21,3 +21,13 @@
 
 # Bug 18033342
 dEQP-GLES31.functional.debug.negative_coverage.get_error.state.get_framebuffer_attachment_parameteriv
+
+# Bug 20302019
+dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_*
+dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.*_rgba8_snorm.*
+dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.rgb8_snorm_*
+dEQP-GLES31.functional.copy_image.non_compressed.viewclass_24_bits.*_rgb8_snorm.*
+dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.rg8_snorm_*
+dEQP-GLES31.functional.copy_image.non_compressed.viewclass_16_bits.*_rg8_snorm.*
+dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.r8_snorm_*
+dEQP-GLES31.functional.copy_image.non_compressed.viewclass_8_bits.*_r8_snorm.*
diff --git a/data/gles3/shaders/uniform_block.test b/data/gles3/shaders/uniform_block.test
index c5f6751..2a45400 100644
--- a/data/gles3/shaders/uniform_block.test
+++ b/data/gles3/shaders/uniform_block.test
@@ -4135,7 +4135,7 @@
 			}
 		""
 	end
-	case invalid_character_block_name_vertex
+	case invalid_number_block_name_vertex
 		version 300 es
 		expect compile_fail
 
@@ -4168,7 +4168,7 @@
 			}
 		""
 	end
-	case invalid_character_block_name_fragment
+	case invalid_number_block_name_fragment
 		version 300 es
 		expect compile_fail
 
@@ -4201,6 +4201,138 @@
 			}
 		""
 	end
+	case invalid_hash_block_name_vertex
+		version 300 es
+		expect compile_fail
+
+		vertex ""
+			#version 300 es
+			precision highp float;
+
+
+
+			uniform #UniformBlock
+			{
+				vec4 uniformMember;
+			} uniformBlock;
+
+			void main()
+			{
+				gl_Position = uniformBlock.uniformMember;
+			}
+		""
+
+		fragment ""
+			#version 300 es
+			precision highp float;
+
+			layout(location=0) out vec4 o_color;
+
+			void main()
+			{
+				o_color = vec4(1.0);
+			}
+		""
+	end
+	case invalid_hash_block_name_fragment
+		version 300 es
+		expect compile_fail
+
+		vertex ""
+			#version 300 es
+			precision highp float;
+
+			in vec4 a_pos;
+
+			void main()
+			{
+				gl_Position = a_pos;
+			}
+		""
+
+		fragment ""
+			#version 300 es
+			precision highp float;
+
+			layout(location=0) out vec4 o_color;
+
+			uniform #UniformBlock
+			{
+				vec4 uniformMember;
+			} uniformBlock;
+
+			void main()
+			{
+				o_color = uniformBlock.uniformMember;
+			}
+		""
+	end
+	case invalid_dollar_block_name_vertex
+		version 300 es
+		expect compile_fail
+
+		vertex ""
+			#version 300 es
+			precision highp float;
+
+
+
+			uniform $UniformBlock
+			{
+				vec4 uniformMember;
+			} uniformBlock;
+
+			void main()
+			{
+				gl_Position = uniformBlock.uniformMember;
+			}
+		""
+
+		fragment ""
+			#version 300 es
+			precision highp float;
+
+			layout(location=0) out vec4 o_color;
+
+			void main()
+			{
+				o_color = vec4(1.0);
+			}
+		""
+	end
+	case invalid_dollar_block_name_fragment
+		version 300 es
+		expect compile_fail
+
+		vertex ""
+			#version 300 es
+			precision highp float;
+
+			in vec4 a_pos;
+
+			void main()
+			{
+				gl_Position = a_pos;
+			}
+		""
+
+		fragment ""
+			#version 300 es
+			precision highp float;
+
+			layout(location=0) out vec4 o_color;
+
+			uniform $UniformBlock
+			{
+				vec4 uniformMember;
+			} uniformBlock;
+
+			void main()
+			{
+				o_color = uniformBlock.uniformMember;
+			}
+		""
+	end
 	case invalid_identifier_block_name_vertex
 		version 300 es
 		expect compile_fail
@@ -4335,7 +4467,7 @@
 			}
 		""
 	end
-	case invalid_character_instance_name_vertex
+	case invalid_number_instance_name_vertex
 		version 300 es
 		expect compile_fail
 
@@ -4368,7 +4500,7 @@
 			}
 		""
 	end
-	case invalid_character_instance_name_fragment
+	case invalid_number_instance_name_fragment
 		version 300 es
 		expect compile_fail
 
@@ -4401,6 +4533,138 @@
 			}
 		""
 	end
+	case invalid_hash_instance_name_vertex
+		version 300 es
+		expect compile_fail
+
+		vertex ""
+			#version 300 es
+			precision highp float;
+
+
+
+			uniform UniformInstance
+			{
+				vec4 uniformMember;
+			} $uniformBlock;
+
+			void main()
+			{
+				gl_Position = $uniformBlock.uniformMember;
+			}
+		""
+
+		fragment ""
+			#version 300 es
+			precision highp float;
+
+			layout(location=0) out vec4 o_color;
+
+			void main()
+			{
+				o_color = vec4(1.0);
+			}
+		""
+	end
+	case invalid_hash_instance_name_fragment
+		version 300 es
+		expect compile_fail
+
+		vertex ""
+			#version 300 es
+			precision highp float;
+
+			in vec4 a_pos;
+
+			void main()
+			{
+				gl_Position = a_pos;
+			}
+		""
+
+		fragment ""
+			#version 300 es
+			precision highp float;
+
+			layout(location=0) out vec4 o_color;
+
+			uniform UniformInstance
+			{
+				vec4 uniformMember;
+			} $uniformBlock;
+
+			void main()
+			{
+				o_color = $uniformBlock.uniformMember;
+			}
+		""
+	end
+	case invalid_dollar_instance_name_vertex
+		version 300 es
+		expect compile_fail
+
+		vertex ""
+			#version 300 es
+			precision highp float;
+
+
+
+			uniform UniformInstance
+			{
+				vec4 uniformMember;
+			} $uniformBlock;
+
+			void main()
+			{
+				gl_Position = $uniformBlock.uniformMember;
+			}
+		""
+
+		fragment ""
+			#version 300 es
+			precision highp float;
+
+			layout(location=0) out vec4 o_color;
+
+			void main()
+			{
+				o_color = vec4(1.0);
+			}
+		""
+	end
+	case invalid_dollar_instance_name_fragment
+		version 300 es
+		expect compile_fail
+
+		vertex ""
+			#version 300 es
+			precision highp float;
+
+			in vec4 a_pos;
+
+			void main()
+			{
+				gl_Position = a_pos;
+			}
+		""
+
+		fragment ""
+			#version 300 es
+			precision highp float;
+
+			layout(location=0) out vec4 o_color;
+
+			uniform UniformInstance
+			{
+				vec4 uniformMember;
+			} $uniformBlock;
+
+			void main()
+			{
+				o_color = $uniformBlock.uniformMember;
+			}
+		""
+	end
 	case invalid_identifier_instance_name_vertex
 		version 300 es
 		expect compile_fail
diff --git a/data/gles31/shaders/uniform_block.test b/data/gles31/shaders/uniform_block.test
new file mode 100644
index 0000000..c78ca33
--- /dev/null
+++ b/data/gles31/shaders/uniform_block.test
@@ -0,0 +1,5003 @@
+# WARNING: This file is auto-generated. Do NOT modify it manually, but rather
+# modify the generating script file. Otherwise changes will be lost!
+
+group valid "Valid uniform interface block syntax tests."
+
+	case repeat_interface_qualifier_vertex
+		version 310 es
+		expect build_successful
+
+		vertex ""
+			#version 310 es
+			precision highp float;
+
+
+
+			uniform UniformBlock
+			{
+				uniform vec4 uniformMember;
+			} uniformBlock;
+
+			void main()
+			{
+				gl_Position = uniformBlock.uniformMember;
+			}
+		""
+
+		fragment ""
+			#version 310 es
+			precision highp float;
+
+			layout(location=0) out vec4 o_color;
+
+			void main()
+			{
+				o_color = vec4(1.0);
+			}
+		""
+	end
+	case repeat_interface_qualifier_fragment
+		version 310 es
+		expect build_successful
+
+		vertex ""
+			#version 310 es
+			precision highp float;
+
+			in vec4 a_pos;
+
+			void main()
+			{
+				gl_Position = a_pos;
+			}
+		""
+
+		fragment ""
+			#version 310 es
+			precision highp float;
+
+			layout(location=0) out vec4 o_color;
+
+			uniform UniformBlock
+			{
+				uniform vec4 uniformMember;
+			} uniformBlock;
+
+			void main()
+			{
+				o_color = uniformBlock.uniformMember;
+			}
+		""
+	end
+	case layout_shared_vertex
+		version 310 es
+		expect build_successful
+
+		vertex ""
+			#version 310 es
+			precision highp float;
+
+
+
+			layout(shared) uniform UniformBlock
+			{
+				vec4 uniformMember;
+			} uniformBlock;
+
+			void main()
+			{
+				gl_Position = uniformBlock.uniformMember;
+			}
+		""
+
+		fragment ""
+			#version 310 es
+			precision highp float;
+
+			layout(location=0) out vec4 o_color;
+
+			void main()
+			{
+				o_color = vec4(1.0);
+			}
+		""
+	end
+	case layout_shared_fragment
+		version 310 es
+		expect build_successful
+
+		vertex ""
+			#version 310 es
+			precision highp float;
+
+			in vec4 a_pos;
+
+			void main()
+			{
+				gl_Position = a_pos;
+			}
+		""
+
+		fragment ""
+			#version 310 es
+			precision highp float;
+
+			layout(location=0) out vec4 o_color;
+
+			layout(shared) uniform UniformBlock
+			{
+				vec4 uniformMember;
+			} uniformBlock;
+
+			void main()
+			{
+				o_color = uniformBlock.uniformMember;
+			}
+		""
+	end
+	case layout_packed_vertex
+		version 310 es
+		expect build_successful
+
+		vertex ""
+			#version 310 es
+			precision highp float;
+
+
+
+			layout(packed) uniform UniformBlock
+			{
+				vec4 uniformMember;
+			} uniformBlock;
+
+			void main()
+			{
+				gl_Position = uniformBlock.uniformMember;
+			}
+		""
+
+		fragment ""
+			#version 310 es
+			precision highp float;
+
+			layout(location=0) out vec4 o_color;
+
+			void main()
+			{
+				o_color = vec4(1.0);
+			}
+		""
+	end
+	case layout_packed_fragment
+		version 310 es
+		expect build_successful
+
+		vertex ""
+			#version 310 es
+			precision highp float;
+
+			in vec4 a_pos;
+
+			void main()
+			{
+				gl_Position = a_pos;
+			}
+		""
+
+		fragment ""
+			#version 310 es
+			precision highp float;
+
+			layout(location=0) out vec4 o_color;
+
+			layout(packed) uniform UniformBlock
+			{
+				vec4 uniformMember;
+			} uniformBlock;
+
+			void main()
+			{
+				o_color = uniformBlock.uniformMember;
+			}
+		""
+	end
+	case layout_std140_vertex
+		version 310 es
+		expect build_successful
+
+		vertex ""
+			#version 310 es
+			precision highp float;
+
+
+
+			layout(std140) uniform UniformBlock
+			{
+				vec4 uniformMember;
+			} uniformBlock;
+
+			void main()
+			{
+				gl_Position = uniformBlock.uniformMember;
+			}
+		""
+
+		fragment ""
+			#version 310 es
+			precision highp float;
+
+			layout(location=0) out vec4 o_color;
+
+			void main()
+			{
+				o_color = vec4(1.0);
+			}
+		""
+	end
+	case layout_std140_fragment
+		version 310 es
+		expect build_successful
+
+		vertex ""
+			#version 310 es
+			precision highp float;
+
+			in vec4 a_pos;
+
+			void main()
+			{
+				gl_Position = a_pos;
+			}
+		""
+
+		fragment ""
+			#version 310 es
+			precision highp float;
+
+			layout(location=0) out vec4 o_color;
+
+			layout(std140) uniform UniformBlock
+			{
+				vec4 uniformMember;
+			} uniformBlock;
+
+			void main()
+			{
+				o_color = uniformBlock.uniformMember;
+			}
+		""
+	end
+	case layout_row_major_vertex
+		version 310 es
+		expect build_successful
+
+		vertex ""
+			#version 310 es
+			precision highp float;
+
+
+
+			layout(row_major) uniform UniformBlock
+			{
+				vec4 uniformMember;
+			} uniformBlock;
+
+			void main()
+			{
+				gl_Position = uniformBlock.uniformMember;
+			}
+		""
+
+		fragment ""
+			#version 310 es
+			precision highp float;
+
+			layout(location=0) out vec4 o_color;
+
+			void main()
+			{
+				o_color = vec4(1.0);
+			}
+		""
+	end
+	case layout_row_major_fragment
+		version 310 es
+		expect build_successful
+
+		vertex ""
+			#version 310 es
+			precision highp float;
+
+			in vec4 a_pos;
+
+			void main()
+			{
+				gl_Position = a_pos;
+			}
+		""
+
+		fragment ""
+			#version 310 es
+			precision highp float;
+
+			layout(location=0) out vec4 o_color;
+
+			layout(row_major) uniform UniformBlock
+			{
+				vec4 uniformMember;
+			} uniformBlock;
+
+			void main()
+			{
+				o_color = uniformBlock.uniformMember;
+			}
+		""
+	end
+	case layout_column_major_vertex
+		version 310 es
+		expect build_successful
+
+		vertex ""
+			#version 310 es
+			precision highp float;
+
+
+
+			layout(column_major) uniform UniformBlock
+			{
+				vec4 uniformMember;
+			} uniformBlock;
+
+			void main()
+			{
+				gl_Position = uniformBlock.uniformMember;
+			}
+		""
+
+		fragment ""
+			#version 310 es
+			precision highp float;
+
+			layout(location=0) out vec4 o_color;
+
+			void main()
+			{
+				o_color = vec4(1.0);
+			}
+		""
+	end
+	case layout_column_major_fragment
+		version 310 es
+		expect build_successful
+
+		vertex ""
+			#version 310 es
+			precision highp float;
+
+			in vec4 a_pos;
+
+			void main()
+			{
+				gl_Position = a_pos;
+			}
+		""
+
+		fragment ""
+			#version 310 es
+			precision highp float;
+
+			layout(location=0) out vec4 o_color;
+
+			layout(column_major) uniform UniformBlock
+			{
+				vec4 uniformMember;
+			} uniformBlock;
+
+			void main()
+			{
+				o_color = uniformBlock.uniformMember;
+			}
+		""
+	end
+	case layout_all_vertex
+		version 310 es
+		expect build_successful
+
+		vertex ""
+			#version 310 es
+			precision highp float;
+
+
+
+			layout(shared, packed, std140, row_major, column_major) uniform UniformBlock
+			{
+				vec4 uniformMember;
+			} uniformBlock;
+
+			void main()
+			{
+				gl_Position = uniformBlock.uniformMember;
+			}
+		""
+
+		fragment ""
+			#version 310 es
+			precision highp float;
+
+			layout(location=0) out vec4 o_color;
+
+			void main()
+			{
+				o_color = vec4(1.0);
+			}
+		""
+	end
+	case layout_all_fragment
+		version 310 es
+		expect build_successful
+
+		vertex ""
+			#version 310 es
+			precision highp float;
+
+			in vec4 a_pos;
+
+			void main()
+			{
+				gl_Position = a_pos;
+			}
+		""
+
+		fragment ""
+			#version 310 es
+			precision highp float;
+
+			layout(location=0) out vec4 o_color;
+
+			layout(shared, packed, std140, row_major, column_major) uniform UniformBlock
+			{
+				vec4 uniformMember;
+			} uniformBlock;
+
+			void main()
+			{
+				o_color = uniformBlock.uniformMember;
+			}
+		""
+	end
+	case layout_all_8_times_vertex
+		version 310 es
+		expect build_successful
+
+		vertex ""
+			#version 310 es
+			precision highp float;
+
+
+
+			layout(shared, packed, std140, row_major, column_major, shared, packed, std140, row_major, column_major, shared, packed, std140, row_major, column_major, shared, packed, std140, row_major, column_major, shared, packed, std140, row_major, column_major, shared, packed, std140, row_major, column_major, shared, packed, std140, row_major, column_major, shared, packed, std140, row_major, column_major) uniform UniformBlock
+			{
+				vec4 uniformMember;
+			} uniformBlock;
+
+			void main()
+			{
+				gl_Position = uniformBlock.uniformMember;
+			}
+		""
+
+		fragment ""
+			#version 310 es
+			precision highp float;
+
+			layout(location=0) out vec4 o_color;
+
+			void main()
+			{
+				o_color = vec4(1.0);
+			}
+		""
+	end
+	case layout_all_8_times_fragment
+		version 310 es
+		expect build_successful
+
+		vertex ""
+			#version 310 es
+			precision highp float;
+
+			in vec4 a_pos;
+
+			void main()
+			{
+				gl_Position = a_pos;
+			}
+		""
+
+		fragment ""
+			#version 310 es
+			precision highp float;
+
+			layout(location=0) out vec4 o_color;
+
+			layout(shared, packed, std140, row_major, column_major, shared, packed, std140, row_major, column_major, shared, packed, std140, row_major, column_major, shared, packed, std140, row_major, column_major, shared, packed, std140, row_major, column_major, shared, packed, std140, row_major, column_major, shared, packed, std140, row_major, column_major, shared, packed, std140, row_major, column_major) uniform UniformBlock
+			{
+				vec4 uniformMember;
+			} uniformBlock;
+
+			void main()
+			{
+				o_color = uniformBlock.uniformMember;
+			}
+		""
+	end
+	case global_layout_shared_vertex
+		version 310 es
+		expect build_successful
+
+		vertex ""
+			#version 310 es
+			precision highp float;
+
+			layout(shared) uniform;
+
+
+
+			uniform UniformBlock
+			{
+				vec4 uniformMember;
+			} uniformBlock;
+
+			void main()
+			{
+				gl_Position = uniformBlock.uniformMember;
+			}
+		""
+
+		fragment ""
+			#version 310 es
+			precision highp float;
+
+			layout(location=0) out vec4 o_color;
+
+			void main()
+			{
+				o_color = vec4(1.0);
+			}
+		""
+	end
+	case global_layout_shared_fragment
+		version 310 es
+		expect build_successful
+
+		vertex ""
+			#version 310 es
+			precision highp float;
+
+			in vec4 a_pos;
+
+			void main()
+			{
+				gl_Position = a_pos;
+			}
+		""
+
+		fragment ""
+			#version 310 es
+			precision highp float;
+
+			layout(shared) uniform;
+
+			layout(location=0) out vec4 o_color;
+
+			uniform UniformBlock
+			{
+				vec4 uniformMember;
+			} uniformBlock;
+
+			void main()
+			{
+				o_color = uniformBlock.uniformMember;
+			}
+		""
+	end
+	case global_layout_packed_vertex
+		version 310 es
+		expect build_successful
+
+		vertex ""
+			#version 310 es
+			precision highp float;
+
+			layout(packed) uniform;
+
+
+
+			uniform UniformBlock
+			{
+				vec4 uniformMember;
+			} uniformBlock;
+
+			void main()
+			{
+				gl_Position = uniformBlock.uniformMember;
+			}
+		""
+
+		fragment ""
+			#version 310 es
+			precision highp float;
+
+			layout(location=0) out vec4 o_color;
+
+			void main()
+			{
+				o_color = vec4(1.0);
+			}
+		""
+	end
+	case global_layout_packed_fragment
+		version 310 es
+		expect build_successful
+
+		vertex ""
+			#version 310 es
+			precision highp float;
+
+			in vec4 a_pos;
+
+			void main()
+			{
+				gl_Position = a_pos;
+			}
+		""
+
+		fragment ""
+			#version 310 es
+			precision highp float;
+
+			layout(packed) uniform;
+
+			layout(location=0) out vec4 o_color;
+
+			uniform UniformBlock
+			{
+				vec4 uniformMember;
+			} uniformBlock;
+
+			void main()
+			{
+				o_color = uniformBlock.uniformMember;
+			}
+		""
+	end
+	case global_layout_std140_vertex
+		version 310 es
+		expect build_successful
+
+		vertex ""
+			#version 310 es
+			precision highp float;
+
+			layout(std140) uniform;
+
+
+
+			uniform UniformBlock
+			{
+				vec4 uniformMember;
+			} uniformBlock;
+
+			void main()
+			{
+				gl_Position = uniformBlock.uniformMember;
+			}
+		""
+
+		fragment ""
+			#version 310 es
+			precision highp float;
+
+			layout(location=0) out vec4 o_color;
+
+			void main()
+			{
+				o_color = vec4(1.0);
+			}
+		""
+	end
+	case global_layout_std140_fragment
+		version 310 es
+		expect build_successful
+
+		vertex ""
+			#version 310 es
+			precision highp float;
+
+			in vec4 a_pos;
+
+			void main()
+			{
+				gl_Position = a_pos;
+			}
+		""
+
+		fragment ""
+			#version 310 es
+			precision highp float;
+
+			layout(std140) uniform;
+
+			layout(location=0) out vec4 o_color;
+
+			uniform UniformBlock
+			{
+				vec4 uniformMember;
+			} uniformBlock;
+
+			void main()
+			{
+				o_color = uniformBlock.uniformMember;
+			}
+		""
+	end
+	case global_layout_row_major_vertex
+		version 310 es
+		expect build_successful
+
+		vertex ""
+			#version 310 es
+			precision highp float;
+
+			layout(row_major) uniform;
+
+
+
+			uniform UniformBlock
+			{
+				vec4 uniformMember;
+			} uniformBlock;
+
+			void main()
+			{
+				gl_Position = uniformBlock.uniformMember;
+			}
+		""
+
+		fragment ""
+			#version 310 es
+			precision highp float;
+
+			layout(location=0) out vec4 o_color;
+
+			void main()
+			{
+				o_color = vec4(1.0);
+			}
+		""
+	end
+	case global_layout_row_major_fragment
+		version 310 es
+		expect build_successful
+
+		vertex ""
+			#version 310 es
+			precision highp float;
+
+			in vec4 a_pos;
+
+			void main()
+			{
+				gl_Position = a_pos;
+			}
+		""
+
+		fragment ""
+			#version 310 es
+			precision highp float;
+
+			layout(row_major) uniform;
+
+			layout(location=0) out vec4 o_color;
+
+			uniform UniformBlock
+			{
+				vec4 uniformMember;
+			} uniformBlock;
+
+			void main()
+			{
+				o_color = uniformBlock.uniformMember;
+			}
+		""
+	end
+	case global_layout_column_major_vertex
+		version 310 es
+		expect build_successful
+
+		vertex ""
+			#version 310 es
+			precision highp float;
+
+			layout(column_major) uniform;
+
+
+
+			uniform UniformBlock
+			{
+				vec4 uniformMember;
+			} uniformBlock;
+
+			void main()
+			{
+				gl_Position = uniformBlock.uniformMember;
+			}
+		""
+
+		fragment ""
+			#version 310 es
+			precision highp float;
+
+			layout(location=0) out vec4 o_color;
+
+			void main()
+			{
+				o_color = vec4(1.0);
+			}
+		""
+	end
+	case global_layout_column_major_fragment
+		version 310 es
+		expect build_successful
+
+		vertex ""
+			#version 310 es
+			precision highp float;
+
+			in vec4 a_pos;
+
+			void main()
+			{
+				gl_Position = a_pos;
+			}
+		""
+
+		fragment ""
+			#version 310 es
+			precision highp float;
+
+			layout(column_major) uniform;
+
+			layout(location=0) out vec4 o_color;
+
+			uniform UniformBlock
+			{
+				vec4 uniformMember;
+			} uniformBlock;
+
+			void main()
+			{
+				o_color = uniformBlock.uniformMember;
+			}
+		""
+	end
+	case global_layout_all_vertex
+		version 310 es
+		expect build_successful
+
+		vertex ""
+			#version 310 es
+			precision highp float;
+
+			layout(shared, packed, std140, row_major, column_major) uniform;
+
+
+
+			uniform UniformBlock
+			{
+				vec4 uniformMember;
+			} uniformBlock;
+
+			void main()
+			{
+				gl_Position = uniformBlock.uniformMember;
+			}
+		""
+
+		fragment ""
+			#version 310 es
+			precision highp float;
+
+			layout(location=0) out vec4 o_color;
+
+			void main()
+			{
+				o_color = vec4(1.0);
+			}
+		""
+	end
+	case global_layout_all_fragment
+		version 310 es
+		expect build_successful
+
+		vertex ""
+			#version 310 es
+			precision highp float;
+
+			in vec4 a_pos;
+
+			void main()
+			{
+				gl_Position = a_pos;
+			}
+		""
+
+		fragment ""
+			#version 310 es
+			precision highp float;
+
+			layout(shared, packed, std140, row_major, column_major) uniform;
+
+			layout(location=0) out vec4 o_color;
+
+			uniform UniformBlock
+			{
+				vec4 uniformMember;
+			} uniformBlock;
+
+			void main()
+			{
+				o_color = uniformBlock.uniformMember;
+			}
+		""
+	end
+	case global_layout_all_8_times_vertex
+		version 310 es
+		expect build_successful
+
+		vertex ""
+			#version 310 es
+			precision highp float;
+
+			layout(shared, packed, std140, row_major, column_major, shared, packed, std140, row_major, column_major, shared, packed, std140, row_major, column_major, shared, packed, std140, row_major, column_major, shared, packed, std140, row_major, column_major, shared, packed, std140, row_major, column_major, shared, packed, std140, row_major, column_major, shared, packed, std140, row_major, column_major) uniform;
+
+
+
+			uniform UniformBlock
+			{
+				vec4 uniformMember;
+			} uniformBlock;
+
+			void main()
+			{
+				gl_Position = uniformBlock.uniformMember;
+			}
+		""
+
+		fragment ""
+			#version 310 es
+			precision highp float;
+
+			layout(location=0) out vec4 o_color;
+
+			void main()
+			{
+				o_color = vec4(1.0);
+			}
+		""
+	end
+	case global_layout_all_8_times_fragment
+		version 310 es
+		expect build_successful
+
+		vertex ""
+			#version 310 es
+			precision highp float;
+
+			in vec4 a_pos;
+
+			void main()
+			{
+				gl_Position = a_pos;
+			}
+		""
+
+		fragment ""
+			#version 310 es
+			precision highp float;
+
+			layout(shared, packed, std140, row_major, column_major, shared, packed, std140, row_major, column_major, shared, packed, std140, row_major, column_major, shared, packed, std140, row_major, column_major, shared, packed, std140, row_major, column_major, shared, packed, std140, row_major, column_major, shared, packed, std140, row_major, column_major, shared, packed, std140, row_major, column_major) uniform;
+
+			layout(location=0) out vec4 o_color;
+
+			uniform UniformBlock
+			{
+				vec4 uniformMember;
+			} uniformBlock;
+
+			void main()
+			{
+				o_color = uniformBlock.uniformMember;
+			}
+		""
+	end
+	case member_layout_row_major_vertex
+		version 310 es
+		expect build_successful
+
+		vertex ""
+			#version 310 es
+			precision highp float;
+
+
+
+			uniform UniformBlock
+			{
+				layout(row_major) mat4 uniformMember;
+			} uniformBlock;
+
+			void main()
+			{
+				gl_Position = uniformBlock.uniformMember[0];
+			}
+		""
+
+		fragment ""
+			#version 310 es
+			precision highp float;
+
+			layout(location=0) out vec4 o_color;
+
+			void main()
+			{
+				o_color = vec4(1.0);
+			}
+		""
+	end
+	case member_layout_row_major_fragment
+		version 310 es
+		expect build_successful
+
+		vertex ""
+			#version 310 es
+			precision highp float;
+
+			in vec4 a_pos;
+
+			void main()
+			{
+				gl_Position = a_pos;
+			}
+		""
+
+		fragment ""
+			#version 310 es
+			precision highp float;
+
+			layout(location=0) out vec4 o_color;
+
+			uniform UniformBlock
+			{
+				layout(row_major) mat4 uniformMember;
+			} uniformBlock;
+
+			void main()
+			{
+				o_color = uniformBlock.uniformMember[0];
+			}
+		""
+	end
+	case member_layout_column_major_vertex
+		version 310 es
+		expect build_successful
+
+		vertex ""
+			#version 310 es
+			precision highp float;
+
+
+
+			uniform UniformBlock
+			{
+				layout(column_major) mat4 uniformMember;
+			} uniformBlock;
+
+			void main()
+			{
+				gl_Position = uniformBlock.uniformMember[0];
+			}
+		""
+
+		fragment ""
+			#version 310 es
+			precision highp float;
+
+			layout(location=0) out vec4 o_color;
+
+			void main()
+			{
+				o_color = vec4(1.0);
+			}
+		""
+	end
+	case member_layout_column_major_fragment
+		version 310 es
+		expect build_successful
+
+		vertex ""
+			#version 310 es
+			precision highp float;
+
+			in vec4 a_pos;
+
+			void main()
+			{
+				gl_Position = a_pos;
+			}
+		""
+
+		fragment ""
+			#version 310 es
+			precision highp float;
+
+			layout(location=0) out vec4 o_color;
+
+			uniform UniformBlock
+			{
+				layout(column_major) mat4 uniformMember;
+			} uniformBlock;
+
+			void main()
+			{
+				o_color = uniformBlock.uniformMember[0];
+			}
+		""
+	end
+	case member_layout_row_major_vec4_vertex
+		version 310 es
+		expect build_successful
+
+		vertex ""
+			#version 310 es
+			precision highp float;
+
+
+
+			uniform UniformBlock
+			{
+				layout(row_major) vec4 uniformMember;
+			} uniformBlock;
+
+			void main()
+			{
+				gl_Position = uniformBlock.uniformMember;
+			}
+		""
+
+		fragment ""
+			#version 310 es
+			precision highp float;
+
+			layout(location=0) out vec4 o_color;
+
+			void main()
+			{
+				o_color = vec4(1.0);
+			}
+		""
+	end
+	case member_layout_row_major_vec4_fragment
+		version 310 es
+		expect build_successful
+
+		vertex ""
+			#version 310 es
+			precision highp float;
+
+			in vec4 a_pos;
+
+			void main()
+			{
+				gl_Position = a_pos;
+			}
+		""
+
+		fragment ""
+			#version 310 es
+			precision highp float;
+
+			layout(location=0) out vec4 o_color;
+
+			uniform UniformBlock
+			{
+				layout(row_major) vec4 uniformMember;
+			} uniformBlock;
+
+			void main()
+			{
+				o_color = uniformBlock.uniformMember;
+			}
+		""
+	end
+	case member_layout_column_major_vec4_vertex
+		version 310 es
+		expect build_successful
+
+		vertex ""
+			#version 310 es
+			precision highp float;
+
+
+
+			uniform UniformBlock
+			{
+				layout(column_major) vec4 uniformMember;
+			} uniformBlock;
+
+			void main()
+			{
+				gl_Position = uniformBlock.uniformMember;
+			}
+		""
+
+		fragment ""
+			#version 310 es
+			precision highp float;
+
+			layout(location=0) out vec4 o_color;
+
+			void main()
+			{
+				o_color = vec4(1.0);
+			}
+		""
+	end
+	case member_layout_column_major_vec4_fragment
+		version 310 es
+		expect build_successful
+
+		vertex ""
+			#version 310 es
+			precision highp float;
+
+			in vec4 a_pos;
+
+			void main()
+			{
+				gl_Position = a_pos;
+			}
+		""
+
+		fragment ""
+			#version 310 es
+			precision highp float;
+
+			layout(location=0) out vec4 o_color;
+
+			uniform UniformBlock
+			{
+				layout(column_major) vec4 uniformMember;
+			} uniformBlock;
+
+			void main()
+			{
+				o_color = uniformBlock.uniformMember;
+			}
+		""
+	end
+	case member_layout_all_vertex
+		version 310 es
+		expect build_successful
+
+		vertex ""
+			#version 310 es
+			precision highp float;
+
+
+
+			uniform UniformBlock
+			{
+				layout(row_major, column_major) mat4 uniformMember;
+			} uniformBlock;
+
+			void main()
+			{
+				gl_Position = uniformBlock.uniformMember[0];
+			}
+		""
+
+		fragment ""
+			#version 310 es
+			precision highp float;
+
+			layout(location=0) out vec4 o_color;
+
+			void main()
+			{
+				o_color = vec4(1.0);
+			}
+		""
+	end
+	case member_layout_all_fragment
+		version 310 es
+		expect build_successful
+
+		vertex ""
+			#version 310 es
+			precision highp float;
+
+			in vec4 a_pos;
+
+			void main()
+			{
+				gl_Position = a_pos;
+			}
+		""
+
+		fragment ""
+			#version 310 es
+			precision highp float;
+
+			layout(location=0) out vec4 o_color;
+
+			uniform UniformBlock
+			{
+				layout(row_major, column_major) mat4 uniformMember;
+			} uniformBlock;
+
+			void main()
+			{
+				o_color = uniformBlock.uniformMember[0];
+			}
+		""
+	end
+	case member_layout_all_8_times_vertex
+		version 310 es
+		expect build_successful
+
+		vertex ""
+			#version 310 es
+			precision highp float;
+
+
+
+			uniform UniformBlock
+			{
+				layout(row_major, column_major, row_major, column_major, row_major, column_major, row_major, column_major, row_major, column_major, row_major, column_major, row_major, column_major, row_major, column_major) mat4 uniformMember;
+			} uniformBlock;
+
+			void main()
+			{
+				gl_Position = uniformBlock.uniformMember[0];
+			}
+		""
+
+		fragment ""
+			#version 310 es
+			precision highp float;
+
+			layout(location=0) out vec4 o_color;
+
+			void main()
+			{
+				o_color = vec4(1.0);
+			}
+		""
+	end
+	case member_layout_all_8_times_fragment
+		version 310 es
+		expect build_successful
+
+		vertex ""
+			#version 310 es
+			precision highp float;
+
+			in vec4 a_pos;
+
+			void main()
+			{
+				gl_Position = a_pos;
+			}
+		""
+
+		fragment ""
+			#version 310 es
+			precision highp float;
+
+			layout(location=0) out vec4 o_color;
+
+			uniform UniformBlock
+			{
+				layout(row_major, column_major, row_major, column_major, row_major, column_major, row_major, column_major, row_major, column_major, row_major, column_major, row_major, column_major, row_major, column_major) mat4 uniformMember;
+			} uniformBlock;
+
+			void main()
+			{
+				o_color = uniformBlock.uniformMember[0];
+			}
+		""
+	end
+	case no_instance_name_vertex
+		version 310 es
+		expect build_successful
+
+		vertex ""
+			#version 310 es
+			precision highp float;
+
+
+
+			uniform UniformBlock
+			{
+				vec4 uniformMember;
+			};
+
+			void main()
+			{
+				gl_Position = uniformMember;
+			}
+		""
+
+		fragment ""
+			#version 310 es
+			precision highp float;
+
+			layout(location=0) out vec4 o_color;
+
+			void main()
+			{
+				o_color = vec4(1.0);
+			}
+		""
+	end
+	case no_instance_name_fragment
+		version 310 es
+		expect build_successful
+
+		vertex ""
+			#version 310 es
+			precision highp float;
+
+			in vec4 a_pos;
+
+			void main()
+			{
+				gl_Position = a_pos;
+			}
+		""
+
+		fragment ""
+			#version 310 es
+			precision highp float;
+
+			layout(location=0) out vec4 o_color;
+
+			uniform UniformBlock
+			{
+				vec4 uniformMember;
+			};
+
+			void main()
+			{
+				o_color = uniformMember;
+			}
+		""
+	end
+	case same_variable_and_block_name_vertex
+		version 310 es
+		expect build_successful
+
+		vertex ""
+			#version 310 es
+			precision highp float;
+
+
+
+			uniform UniformBlock
+			{
+				vec4 uniformMember;
+			} uniformBlock;
+
+			void main()
+			{
+				vec4 UniformBlock = vec4(0.0);
+				gl_Position = UniformBlock + uniformBlock.uniformMember;
+			}
+		""
+
+		fragment ""
+			#version 310 es
+			precision highp float;
+
+			layout(location=0) out vec4 o_color;
+
+			void main()
+			{
+				o_color = vec4(1.0);
+			}
+		""
+	end
+	case same_variable_and_block_name_fragment
+		version 310 es
+		expect build_successful
+
+		vertex ""
+			#version 310 es
+			precision highp float;
+
+			in vec4 a_pos;
+
+			void main()
+			{
+				gl_Position = a_pos;
+			}
+		""
+
+		fragment ""
+			#version 310 es
+			precision highp float;
+
+			layout(location=0) out vec4 o_color;
+
+			uniform UniformBlock
+			{
+				vec4 uniformMember;
+			} uniformBlock;
+
+			void main()
+			{
+				vec4 UniformBlock = vec4(0.0);
+				o_color = UniformBlock + uniformBlock.uniformMember;
+			}
+		""
+	end
+	case same_variable_and_instance_name_vertex
+		version 310 es
+		expect build_successful
+
+		vertex ""
+			#version 310 es
+			precision highp float;
+
+
+
+			uniform UniformBlock
+			{
+				vec4 uniformMember;
+			} uniformBlock;
+
+			void main()
+			{
+				vec4 uniformBlock = vec4(0.0);
+				gl_Position = uniformBlock;
+			}
+		""
+
+		fragment ""
+			#version 310 es
+			precision highp float;
+
+			layout(location=0) out vec4 o_color;
+
+			void main()
+			{
+				o_color = vec4(1.0);
+			}
+		""
+	end
+	case same_variable_and_instance_name_fragment
+		version 310 es
+		expect build_successful
+
+		vertex ""
+			#version 310 es
+			precision highp float;
+
+			in vec4 a_pos;
+
+			void main()
+			{
+				gl_Position = a_pos;
+			}
+		""
+
+		fragment ""
+			#version 310 es
+			precision highp float;
+
+			layout(location=0) out vec4 o_color;
+
+			uniform UniformBlock
+			{
+				vec4 uniformMember;
+			} uniformBlock;
+
+			void main()
+			{
+				vec4 uniformBlock = vec4(0.0);
+				o_color = uniformBlock;
+			}
+		""
+	end
+	case struct_member_vertex
+		version 310 es
+		expect build_successful
+
+		vertex ""
+			#version 310 es
+			precision highp float;
+
+
+
+			struct Struct
+			{
+				vec4 uniformMember;
+			};
+
+			uniform UniformBlock
+			{
+				Struct st;
+			} uniformBlock;
+
+			void main()
+			{
+				gl_Position = uniformBlock.st.uniformMember;
+			}
+		""
+
+		fragment ""
+			#version 310 es
+			precision highp float;
+
+			layout(location=0) out vec4 o_color;
+
+			void main()
+			{
+				o_color = vec4(1.0);
+			}
+		""
+	end
+	case struct_member_fragment
+		version 310 es
+		expect build_successful
+
+		vertex ""
+			#version 310 es
+			precision highp float;
+
+			in vec4 a_pos;
+
+			void main()
+			{
+				gl_Position = a_pos;
+			}
+		""
+
+		fragment ""
+			#version 310 es
+			precision highp float;
+
+			layout(location=0) out vec4 o_color;
+
+			struct Struct
+			{
+				vec4 uniformMember;
+			};
+
+			uniform UniformBlock
+			{
+				Struct st;
+			} uniformBlock;
+
+			void main()
+			{
+				o_color = uniformBlock.st.uniformMember;
+			}
+		""
+	end
+	case struct_member_layout_row_major_vertex
+		version 310 es
+		expect build_successful
+
+		vertex ""
+			#version 310 es
+			precision highp float;
+
+
+
+			struct Struct
+			{
+				vec4 uniformMember;
+			};
+
+			uniform UniformBlock
+			{
+				layout(row_major) Struct st;
+			} uniformBlock;
+
+			void main()
+			{
+				gl_Position = uniformBlock.st.uniformMember;
+			}
+		""
+
+		fragment ""
+			#version 310 es
+			precision highp float;
+
+			layout(location=0) out vec4 o_color;
+
+			void main()
+			{
+				o_color = vec4(1.0);
+			}
+		""
+	end
+	case struct_member_layout_row_major_fragment
+		version 310 es
+		expect build_successful
+
+		vertex ""
+			#version 310 es
+			precision highp float;
+
+			in vec4 a_pos;
+
+			void main()
+			{
+				gl_Position = a_pos;
+			}
+		""
+
+		fragment ""
+			#version 310 es
+			precision highp float;
+
+			layout(location=0) out vec4 o_color;
+
+			struct Struct
+			{
+				vec4 uniformMember;
+			};
+
+			uniform UniformBlock
+			{
+				layout(row_major) Struct st;
+			} uniformBlock;
+
+			void main()
+			{
+				o_color = uniformBlock.st.uniformMember;
+			}
+		""
+	end
+	case struct_member_layout_column_major_vertex
+		version 310 es
+		expect build_successful
+
+		vertex ""
+			#version 310 es
+			precision highp float;
+
+
+
+			struct Struct
+			{
+				vec4 uniformMember;
+			};
+
+			uniform UniformBlock
+			{
+				layout(column_major) Struct st;
+			} uniformBlock;
+
+			void main()
+			{
+				gl_Position = uniformBlock.st.uniformMember;
+			}
+		""
+
+		fragment ""
+			#version 310 es
+			precision highp float;
+
+			layout(location=0) out vec4 o_color;
+
+			void main()
+			{
+				o_color = vec4(1.0);
+			}
+		""
+	end
+	case struct_member_layout_column_major_fragment
+		version 310 es
+		expect build_successful
+
+		vertex ""
+			#version 310 es
+			precision highp float;
+
+			in vec4 a_pos;
+
+			void main()
+			{
+				gl_Position = a_pos;
+			}
+		""
+
+		fragment ""
+			#version 310 es
+			precision highp float;
+
+			layout(location=0) out vec4 o_color;
+
+			struct Struct
+			{
+				vec4 uniformMember;
+			};
+
+			uniform UniformBlock
+			{
+				layout(column_major) Struct st;
+			} uniformBlock;
+
+			void main()
+			{
+				o_color = uniformBlock.st.uniformMember;
+			}
+		""
+	end
+	case struct_member_layout_all_vertex
+		version 310 es
+		expect build_successful
+
+		vertex ""
+			#version 310 es
+			precision highp float;
+
+
+
+			struct Struct
+			{
+				vec4 uniformMember;
+			};
+
+			uniform UniformBlock
+			{
+				layout(row_major, column_major) Struct st;
+			} uniformBlock;
+
+			void main()
+			{
+				gl_Position = uniformBlock.st.uniformMember;
+			}
+		""
+
+		fragment ""
+			#version 310 es
+			precision highp float;
+
+			layout(location=0) out vec4 o_color;
+
+			void main()
+			{
+				o_color = vec4(1.0);
+			}
+		""
+	end
+	case struct_member_layout_all_fragment
+		version 310 es
+		expect build_successful
+
+		vertex ""
+			#version 310 es
+			precision highp float;
+
+			in vec4 a_pos;
+
+			void main()
+			{
+				gl_Position = a_pos;
+			}
+		""
+
+		fragment ""
+			#version 310 es
+			precision highp float;
+
+			layout(location=0) out vec4 o_color;
+
+			struct Struct
+			{
+				vec4 uniformMember;
+			};
+
+			uniform UniformBlock
+			{
+				layout(row_major, column_major) Struct st;
+			} uniformBlock;
+
+			void main()
+			{
+				o_color = uniformBlock.st.uniformMember;
+			}
+		""
+	end
+	case struct_member_layout_all_8_times_vertex
+		version 310 es
+		expect build_successful
+
+		vertex ""
+			#version 310 es
+			precision highp float;
+
+
+
+			struct Struct
+			{
+				vec4 uniformMember;
+			};
+
+			uniform UniformBlock
+			{
+				layout(row_major, column_major, row_major, column_major, row_major, column_major, row_major, column_major, row_major, column_major, row_major, column_major, row_major, column_major, row_major, column_major) Struct st;
+			} uniformBlock;
+
+			void main()
+			{
+				gl_Position = uniformBlock.st.uniformMember;
+			}
+		""
+
+		fragment ""
+			#version 310 es
+			precision highp float;
+
+			layout(location=0) out vec4 o_color;
+
+			void main()
+			{
+				o_color = vec4(1.0);
+			}
+		""
+	end
+	case struct_member_layout_all_8_times_fragment
+		version 310 es
+		expect build_successful
+
+		vertex ""
+			#version 310 es
+			precision highp float;
+
+			in vec4 a_pos;
+
+			void main()
+			{
+				gl_Position = a_pos;
+			}
+		""
+
+		fragment ""
+			#version 310 es
+			precision highp float;
+
+			layout(location=0) out vec4 o_color;
+
+			struct Struct
+			{
+				vec4 uniformMember;
+			};
+
+			uniform UniformBlock
+			{
+				layout(row_major, column_major, row_major, column_major, row_major, column_major, row_major, column_major, row_major, column_major, row_major, column_major, row_major, column_major, row_major, column_major) Struct st;
+			} uniformBlock;
+
+			void main()
+			{
+				o_color = uniformBlock.st.uniformMember;
+			}
+		""
+	end
+	case long_block_name_vertex
+		version 310 es
+		expect build_successful
+
+		vertex ""
+			#version 310 es
+			precision highp float;
+
+
+
+			// Total of 1024 characters
+			uniform aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+			{
+				vec4 uniformMember;
+			} uniformBlock;
+
+			void main()
+			{
+				gl_Position = uniformBlock.uniformMember;
+			}
+		""
+
+		fragment ""
+			#version 310 es
+			precision highp float;
+
+			layout(location=0) out vec4 o_color;
+
+			void main()
+			{
+				o_color = vec4(1.0);
+			}
+		""
+	end
+	case long_block_name_fragment
+		version 310 es
+		expect build_successful
+
+		vertex ""
+			#version 310 es
+			precision highp float;
+
+			in vec4 a_pos;
+
+			void main()
+			{
+				gl_Position = a_pos;
+			}
+		""
+
+		fragment ""
+			#version 310 es
+			precision highp float;
+
+			layout(location=0) out vec4 o_color;
+
+			// Total of 1024 characters
+			uniform aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+			{
+				vec4 uniformMember;
+			} uniformBlock;
+
+			void main()
+			{
+				o_color = uniformBlock.uniformMember;
+			}
+		""
+	end
+	case long_instance_name_vertex
+		version 310 es
+		expect build_successful
+
+		vertex ""
+			#version 310 es
+			precision highp float;
+
+
+
+			uniform UniformBlock
+			{
+				vec4 uniformMember;
+			} aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa;
+			// Total of 1024 characters
+
+			void main()
+			{
+				gl_Position = aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa.uniformMember;
+			}
+		""
+
+		fragment ""
+			#version 310 es
+			precision highp float;
+
+			layout(location=0) out vec4 o_color;
+
+			void main()
+			{
+				o_color = vec4(1.0);
+			}
+		""
+	end
+	case long_instance_name_fragment
+		version 310 es
+		expect build_successful
+
+		vertex ""
+			#version 310 es
+			precision highp float;
+
+			in vec4 a_pos;
+
+			void main()
+			{
+				gl_Position = a_pos;
+			}
+		""
+
+		fragment ""
+			#version 310 es
+			precision highp float;
+
+			layout(location=0) out vec4 o_color;
+
+			uniform UniformBlock
+			{
+				vec4 uniformMember;
+			} aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa;
+			// Total of 1024 characters
+
+			void main()
+			{
+				o_color = aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa.uniformMember;
+			}
+		""
+	end
+	case underscore_block_name_vertex
+		version 310 es
+		expect build_successful
+
+		vertex ""
+			#version 310 es
+			precision highp float;
+
+
+
+			uniform _
+			{
+				vec4 uniformMember;
+			} uniformBlock;
+
+			void main()
+			{
+				gl_Position = uniformBlock.uniformMember;
+			}
+		""
+
+		fragment ""
+			#version 310 es
+			precision highp float;
+
+			layout(location=0) out vec4 o_color;
+
+			void main()
+			{
+				o_color = vec4(1.0);
+			}
+		""
+	end
+	case underscore_block_name_fragment
+		version 310 es
+		expect build_successful
+
+		vertex ""
+			#version 310 es
+			precision highp float;
+
+			in vec4 a_pos;
+
+			void main()
+			{
+				gl_Position = a_pos;
+			}
+		""
+
+		fragment ""
+			#version 310 es
+			precision highp float;
+
+			layout(location=0) out vec4 o_color;
+
+			uniform _
+			{
+				vec4 uniformMember;
+			} uniformBlock;
+
+			void main()
+			{
+				o_color = uniformBlock.uniformMember;
+			}
+		""
+	end
+	case underscore_instance_name_vertex
+		version 310 es
+		expect build_successful
+
+		vertex ""
+			#version 310 es
+			precision highp float;
+
+
+
+			uniform UniformBlock
+			{
+				vec4 uniformMember;
+			} _;
+
+			void main()
+			{
+				gl_Position = _.uniformMember;
+			}
+		""
+
+		fragment ""
+			#version 310 es
+			precision highp float;
+
+			layout(location=0) out vec4 o_color;
+
+			void main()
+			{
+				o_color = vec4(1.0);
+			}
+		""
+	end
+	case underscore_instance_name_fragment
+		version 310 es
+		expect build_successful
+
+		vertex ""
+			#version 310 es
+			precision highp float;
+
+			in vec4 a_pos;
+
+			void main()
+			{
+				gl_Position = a_pos;
+			}
+		""
+
+		fragment ""
+			#version 310 es
+			precision highp float;
+
+			layout(location=0) out vec4 o_color;
+
+			uniform UniformBlock
+			{
+				vec4 uniformMember;
+			} _;
+
+			void main()
+			{
+				o_color = _.uniformMember;
+			}
+		""
+	end
+
+end # valid
+group invalid "Invalid uniform interface block syntax tests."
+
+	case member_in_interface_qualifier_vertex
+		version 310 es
+		expect compile_fail
+
+		vertex ""
+			#version 310 es
+			precision highp float;
+
+
+
+			uniform UniformBlock
+			{
+				in vec4 uniformMember;
+			} uniformBlock;
+
+			void main()
+			{
+				gl_Position = uniformBlock.uniformMember;
+			}
+		""
+
+		fragment ""
+			#version 310 es
+			precision highp float;
+
+			layout(location=0) out vec4 o_color;
+
+			void main()
+			{
+				o_color = vec4(1.0);
+			}
+		""
+	end
+	case member_in_interface_qualifier_fragment
+		version 310 es
+		expect compile_fail
+
+		vertex ""
+			#version 310 es
+			precision highp float;
+
+			in vec4 a_pos;
+
+			void main()
+			{
+				gl_Position = a_pos;
+			}
+		""
+
+		fragment ""
+			#version 310 es
+			precision highp float;
+
+			layout(location=0) out vec4 o_color;
+
+			uniform UniformBlock
+			{
+				in vec4 uniformMember;
+			} uniformBlock;
+
+			void main()
+			{
+				o_color = uniformBlock.uniformMember;
+			}
+		""
+	end
+	case member_out_interface_qualifier_vertex
+		version 310 es
+		expect compile_fail
+
+		vertex ""
+			#version 310 es
+			precision highp float;
+
+
+
+			uniform UniformBlock
+			{
+				out vec4 uniformMember;
+			} uniformBlock;
+
+			void main()
+			{
+				gl_Position = uniformBlock.uniformMember;
+			}
+		""
+
+		fragment ""
+			#version 310 es
+			precision highp float;
+
+			layout(location=0) out vec4 o_color;
+
+			void main()
+			{
+				o_color = vec4(1.0);
+			}
+		""
+	end
+	case member_out_interface_qualifier_fragment
+		version 310 es
+		expect compile_fail
+
+		vertex ""
+			#version 310 es
+			precision highp float;
+
+			in vec4 a_pos;
+
+			void main()
+			{
+				gl_Position = a_pos;
+			}
+		""
+
+		fragment ""
+			#version 310 es
+			precision highp float;
+
+			layout(location=0) out vec4 o_color;
+
+			uniform UniformBlock
+			{
+				out vec4 uniformMember;
+			} uniformBlock;
+
+			void main()
+			{
+				o_color = uniformBlock.uniformMember;
+			}
+		""
+	end
+	case member_buffer_interface_qualifier_vertex
+		version 310 es
+		expect compile_fail
+
+		vertex ""
+			#version 310 es
+			precision highp float;
+
+
+
+			uniform UniformBlock
+			{
+				buffer vec4 uniformMember;
+			} uniformBlock;
+
+			void main()
+			{
+				gl_Position = uniformBlock.uniformMember;
+			}
+		""
+
+		fragment ""
+			#version 310 es
+			precision highp float;
+
+			layout(location=0) out vec4 o_color;
+
+			void main()
+			{
+				o_color = vec4(1.0);
+			}
+		""
+	end
+	case member_buffer_interface_qualifier_fragment
+		version 310 es
+		expect compile_fail
+
+		vertex ""
+			#version 310 es
+			precision highp float;
+
+			in vec4 a_pos;
+
+			void main()
+			{
+				gl_Position = a_pos;
+			}
+		""
+
+		fragment ""
+			#version 310 es
+			precision highp float;
+
+			layout(location=0) out vec4 o_color;
+
+			uniform UniformBlock
+			{
+				buffer vec4 uniformMember;
+			} uniformBlock;
+
+			void main()
+			{
+				o_color = uniformBlock.uniformMember;
+			}
+		""
+	end
+	case member_attribute_interface_qualifier_vertex
+		version 310 es
+		expect compile_fail
+
+		vertex ""
+			#version 310 es
+			precision highp float;
+
+
+
+			uniform UniformBlock
+			{
+				attribute vec4 uniformMember;
+			} uniformBlock;
+
+			void main()
+			{
+				gl_Position = uniformBlock.uniformMember;
+			}
+		""
+
+		fragment ""
+			#version 310 es
+			precision highp float;
+
+			layout(location=0) out vec4 o_color;
+
+			void main()
+			{
+				o_color = vec4(1.0);
+			}
+		""
+	end
+	case member_attribute_interface_qualifier_fragment
+		version 310 es
+		expect compile_fail
+
+		vertex ""
+			#version 310 es
+			precision highp float;
+
+			in vec4 a_pos;
+
+			void main()
+			{
+				gl_Position = a_pos;
+			}
+		""
+
+		fragment ""
+			#version 310 es
+			precision highp float;
+
+			layout(location=0) out vec4 o_color;
+
+			uniform UniformBlock
+			{
+				attribute vec4 uniformMember;
+			} uniformBlock;
+
+			void main()
+			{
+				o_color = uniformBlock.uniformMember;
+			}
+		""
+	end
+	case member_varying_interface_qualifier_vertex
+		version 310 es
+		expect compile_fail
+
+		vertex ""
+			#version 310 es
+			precision highp float;
+
+
+
+			uniform UniformBlock
+			{
+				varying vec4 uniformMember;
+			} uniformBlock;
+
+			void main()
+			{
+				gl_Position = uniformBlock.uniformMember;
+			}
+		""
+
+		fragment ""
+			#version 310 es
+			precision highp float;
+
+			layout(location=0) out vec4 o_color;
+
+			void main()
+			{
+				o_color = vec4(1.0);
+			}
+		""
+	end
+	case member_varying_interface_qualifier_fragment
+		version 310 es
+		expect compile_fail
+
+		vertex ""
+			#version 310 es
+			precision highp float;
+
+			in vec4 a_pos;
+
+			void main()
+			{
+				gl_Position = a_pos;
+			}
+		""
+
+		fragment ""
+			#version 310 es
+			precision highp float;
+
+			layout(location=0) out vec4 o_color;
+
+			uniform UniformBlock
+			{
+				varying vec4 uniformMember;
+			} uniformBlock;
+
+			void main()
+			{
+				o_color = uniformBlock.uniformMember;
+			}
+		""
+	end
+	case conflicting_instance_names_vertex
+		version 310 es
+		expect compile_fail
+
+		vertex ""
+			#version 310 es
+			precision highp float;
+
+
+
+			uniform UniformBlockA
+			{
+				vec4 uniformMember;
+			} uniformBlock;
+
+			uniform UniformBlockB
+			{
+				vec4 uniformMember;
+			} uniformBlock;
+
+			void main()
+			{
+				gl_Position = uniformBlock.uniformMember;
+			}
+		""
+
+		fragment ""
+			#version 310 es
+			precision highp float;
+
+			layout(location=0) out vec4 o_color;
+
+			void main()
+			{
+				o_color = vec4(1.0);
+			}
+		""
+	end
+	case conflicting_instance_names_fragment
+		version 310 es
+		expect compile_fail
+
+		vertex ""
+			#version 310 es
+			precision highp float;
+
+			in vec4 a_pos;
+
+			void main()
+			{
+				gl_Position = a_pos;
+			}
+		""
+
+		fragment ""
+			#version 310 es
+			precision highp float;
+
+			layout(location=0) out vec4 o_color;
+
+			uniform UniformBlockA
+			{
+				vec4 uniformMember;
+			} uniformBlock;
+
+			uniform UniformBlockB
+			{
+				vec4 uniformMember;
+			} uniformBlock;
+
+			void main()
+			{
+				o_color = uniformBlock.uniformMember;
+			}
+		""
+	end
+	case conflicting_function_and_instance_name_vertex
+		version 310 es
+		expect compile_fail
+
+		vertex ""
+			#version 310 es
+			precision highp float;
+
+
+
+			uniform UniformBlock
+			{
+				vec4 uniformMember;
+			} uniformBlock;
+
+			float uniformBlock (float x)
+			{
+				return x;
+			}
+
+			void main()
+			{
+				gl_Position = uniformBlock.uniformMember;
+			}
+		""
+
+		fragment ""
+			#version 310 es
+			precision highp float;
+
+			layout(location=0) out vec4 o_color;
+
+			void main()
+			{
+				o_color = vec4(1.0);
+			}
+		""
+	end
+	case conflicting_function_and_instance_name_fragment
+		version 310 es
+		expect compile_fail
+
+		vertex ""
+			#version 310 es
+			precision highp float;
+
+			in vec4 a_pos;
+
+			void main()
+			{
+				gl_Position = a_pos;
+			}
+		""
+
+		fragment ""
+			#version 310 es
+			precision highp float;
+
+			layout(location=0) out vec4 o_color;
+
+			uniform UniformBlock
+			{
+				vec4 uniformMember;
+			} uniformBlock;
+
+			float uniformBlock (float x)
+			{
+				return x;
+			}
+
+			void main()
+			{
+				o_color = uniformBlock.uniformMember;
+			}
+		""
+	end
+	case conflicting_function_and_block_name_vertex
+		version 310 es
+		expect compile_fail
+
+		vertex ""
+			#version 310 es
+			precision highp float;
+
+
+
+			uniform UniformBlock
+			{
+				vec4 uniformMember;
+			} uniformBlock;
+
+			float UniformBlock (float x)
+			{
+				return x;
+			}
+
+			void main()
+			{
+				gl_Position = uniformBlock.uniformMember;
+			}
+		""
+
+		fragment ""
+			#version 310 es
+			precision highp float;
+
+			layout(location=0) out vec4 o_color;
+
+			void main()
+			{
+				o_color = vec4(1.0);
+			}
+		""
+	end
+	case conflicting_function_and_block_name_fragment
+		version 310 es
+		expect compile_fail
+
+		vertex ""
+			#version 310 es
+			precision highp float;
+
+			in vec4 a_pos;
+
+			void main()
+			{
+				gl_Position = a_pos;
+			}
+		""
+
+		fragment ""
+			#version 310 es
+			precision highp float;
+
+			layout(location=0) out vec4 o_color;
+
+			uniform UniformBlock
+			{
+				vec4 uniformMember;
+			} uniformBlock;
+
+			float UniformBlock (float x)
+			{
+				return x;
+			}
+
+			void main()
+			{
+				o_color = uniformBlock.uniformMember;
+			}
+		""
+	end
+	case conflicting_uniform_and_instance_name_vertex
+		version 310 es
+		expect compile_fail
+
+		vertex ""
+			#version 310 es
+			precision highp float;
+
+
+
+			uniform UniformBlock
+			{
+				vec4 uniformMember;
+			} uniformBlock;
+
+			uniform vec4 uniformBlock;
+
+			void main()
+			{
+				gl_Position = uniformBlock.uniformMember;
+			}
+		""
+
+		fragment ""
+			#version 310 es
+			precision highp float;
+
+			layout(location=0) out vec4 o_color;
+
+			void main()
+			{
+				o_color = vec4(1.0);
+			}
+		""
+	end
+	case conflicting_uniform_and_instance_name_fragment
+		version 310 es
+		expect compile_fail
+
+		vertex ""
+			#version 310 es
+			precision highp float;
+
+			in vec4 a_pos;
+
+			void main()
+			{
+				gl_Position = a_pos;
+			}
+		""
+
+		fragment ""
+			#version 310 es
+			precision highp float;
+
+			layout(location=0) out vec4 o_color;
+
+			uniform UniformBlock
+			{
+				vec4 uniformMember;
+			} uniformBlock;
+
+			uniform vec4 uniformBlock;
+
+			void main()
+			{
+				o_color = uniformBlock.uniformMember;
+			}
+		""
+	end
+	case conflicting_in_and_instance_name_vertex
+		version 310 es
+		expect compile_fail
+
+		vertex ""
+			#version 310 es
+			precision highp float;
+
+
+
+			uniform UniformBlock
+			{
+				vec4 uniformMember;
+			} uniformBlock;
+
+			in vec4 uniformBlock;
+
+			void main()
+			{
+				gl_Position = uniformBlock.uniformMember;
+			}
+		""
+
+		fragment ""
+			#version 310 es
+			precision highp float;
+
+			layout(location=0) out vec4 o_color;
+
+			void main()
+			{
+				o_color = vec4(1.0);
+			}
+		""
+	end
+	case conflicting_in_and_instance_name_fragment
+		version 310 es
+		expect compile_fail
+
+		vertex ""
+			#version 310 es
+			precision highp float;
+
+			in vec4 a_pos;
+
+			void main()
+			{
+				gl_Position = a_pos;
+			}
+		""
+
+		fragment ""
+			#version 310 es
+			precision highp float;
+
+			layout(location=0) out vec4 o_color;
+
+			uniform UniformBlock
+			{
+				vec4 uniformMember;
+			} uniformBlock;
+
+			in vec4 uniformBlock;
+
+			void main()
+			{
+				o_color = uniformBlock.uniformMember;
+			}
+		""
+	end
+	case conflicting_out_and_instance_name_vertex
+		version 310 es
+		expect compile_fail
+
+		vertex ""
+			#version 310 es
+			precision highp float;
+
+
+
+			uniform UniformBlock
+			{
+				vec4 uniformMember;
+			} uniformBlock;
+
+			out vec4 uniformBlock;
+
+			void main()
+			{
+				gl_Position = uniformBlock.uniformMember;
+			}
+		""
+
+		fragment ""
+			#version 310 es
+			precision highp float;
+
+			layout(location=0) out vec4 o_color;
+
+			void main()
+			{
+				o_color = vec4(1.0);
+			}
+		""
+	end
+	case conflicting_out_and_instance_name_fragment
+		version 310 es
+		expect compile_fail
+
+		vertex ""
+			#version 310 es
+			precision highp float;
+
+			in vec4 a_pos;
+
+			void main()
+			{
+				gl_Position = a_pos;
+			}
+		""
+
+		fragment ""
+			#version 310 es
+			precision highp float;
+
+			layout(location=0) out vec4 o_color;
+
+			uniform UniformBlock
+			{
+				vec4 uniformMember;
+			} uniformBlock;
+
+			out vec4 uniformBlock;
+
+			void main()
+			{
+				o_color = uniformBlock.uniformMember;
+			}
+		""
+	end
+	case conflicting_uniform_and_block_name_vertex
+		version 310 es
+		expect compile_fail
+
+		vertex ""
+			#version 310 es
+			precision highp float;
+
+
+
+			uniform UniformBlock
+			{
+				vec4 uniformMember;
+			} uniformBlock;
+
+			uniform vec4 UniformBlock;
+
+			void main()
+			{
+				gl_Position = uniformBlock.uniformMember;
+			}
+		""
+
+		fragment ""
+			#version 310 es
+			precision highp float;
+
+			layout(location=0) out vec4 o_color;
+
+			void main()
+			{
+				o_color = vec4(1.0);
+			}
+		""
+	end
+	case conflicting_uniform_and_block_name_fragment
+		version 310 es
+		expect compile_fail
+
+		vertex ""
+			#version 310 es
+			precision highp float;
+
+			in vec4 a_pos;
+
+			void main()
+			{
+				gl_Position = a_pos;
+			}
+		""
+
+		fragment ""
+			#version 310 es
+			precision highp float;
+
+			layout(location=0) out vec4 o_color;
+
+			uniform UniformBlock
+			{
+				vec4 uniformMember;
+			} uniformBlock;
+
+			uniform vec4 UniformBlock;
+
+			void main()
+			{
+				o_color = uniformBlock.uniformMember;
+			}
+		""
+	end
+	case conflicting_in_and_block_name_vertex
+		version 310 es
+		expect compile_fail
+
+		vertex ""
+			#version 310 es
+			precision highp float;
+
+
+
+			uniform UniformBlock
+			{
+				vec4 uniformMember;
+			} uniformBlock;
+
+			in vec4 UniformBlock;
+
+			void main()
+			{
+				gl_Position = uniformBlock.uniformMember;
+			}
+		""
+
+		fragment ""
+			#version 310 es
+			precision highp float;
+
+			layout(location=0) out vec4 o_color;
+
+			void main()
+			{
+				o_color = vec4(1.0);
+			}
+		""
+	end
+	case conflicting_in_and_block_name_fragment
+		version 310 es
+		expect compile_fail
+
+		vertex ""
+			#version 310 es
+			precision highp float;
+
+			in vec4 a_pos;
+
+			void main()
+			{
+				gl_Position = a_pos;
+			}
+		""
+
+		fragment ""
+			#version 310 es
+			precision highp float;
+
+			layout(location=0) out vec4 o_color;
+
+			uniform UniformBlock
+			{
+				vec4 uniformMember;
+			} uniformBlock;
+
+			in vec4 UniformBlock;
+
+			void main()
+			{
+				o_color = uniformBlock.uniformMember;
+			}
+		""
+	end
+	case conflicting_out_and_block_name_vertex
+		version 310 es
+		expect compile_fail
+
+		vertex ""
+			#version 310 es
+			precision highp float;
+
+
+
+			uniform UniformBlock
+			{
+				vec4 uniformMember;
+			} uniformBlock;
+
+			out vec4 UniformBlock;
+
+			void main()
+			{
+				gl_Position = uniformBlock.uniformMember;
+			}
+		""
+
+		fragment ""
+			#version 310 es
+			precision highp float;
+
+			layout(location=0) out vec4 o_color;
+
+			void main()
+			{
+				o_color = vec4(1.0);
+			}
+		""
+	end
+	case conflicting_out_and_block_name_fragment
+		version 310 es
+		expect compile_fail
+
+		vertex ""
+			#version 310 es
+			precision highp float;
+
+			in vec4 a_pos;
+
+			void main()
+			{
+				gl_Position = a_pos;
+			}
+		""
+
+		fragment ""
+			#version 310 es
+			precision highp float;
+
+			layout(location=0) out vec4 o_color;
+
+			uniform UniformBlock
+			{
+				vec4 uniformMember;
+			} uniformBlock;
+
+			out vec4 UniformBlock;
+
+			void main()
+			{
+				o_color = uniformBlock.uniformMember;
+			}
+		""
+	end
+	case matching_instance_and_block_name_vertex
+		version 310 es
+		expect compile_fail
+
+		vertex ""
+			#version 310 es
+			precision highp float;
+
+
+
+			uniform UniformBlock
+			{
+				vec4 uniformMember;
+			} UniformBlock;
+
+			void main()
+			{
+				gl_Position = UniformBlock.uniformMember;
+			}
+		""
+
+		fragment ""
+			#version 310 es
+			precision highp float;
+
+			layout(location=0) out vec4 o_color;
+
+			void main()
+			{
+				o_color = vec4(1.0);
+			}
+		""
+	end
+	case matching_instance_and_block_name_fragment
+		version 310 es
+		expect compile_fail
+
+		vertex ""
+			#version 310 es
+			precision highp float;
+
+			in vec4 a_pos;
+
+			void main()
+			{
+				gl_Position = a_pos;
+			}
+		""
+
+		fragment ""
+			#version 310 es
+			precision highp float;
+
+			layout(location=0) out vec4 o_color;
+
+			uniform UniformBlock
+			{
+				vec4 uniformMember;
+			} UniformBlock;
+
+			void main()
+			{
+				o_color = UniformBlock.uniformMember;
+			}
+		""
+	end
+	case reference_using_block_name_vertex
+		version 310 es
+		expect compile_fail
+
+		vertex ""
+			#version 310 es
+			precision highp float;
+
+
+
+			uniform UniformBlock
+			{
+				vec4 uniformMember;
+			} uniformBlock;
+
+			void main()
+			{
+				gl_Position = UniformBlock.uniformMember;
+			}
+		""
+
+		fragment ""
+			#version 310 es
+			precision highp float;
+
+			layout(location=0) out vec4 o_color;
+
+			void main()
+			{
+				o_color = vec4(1.0);
+			}
+		""
+	end
+	case reference_using_block_name_fragment
+		version 310 es
+		expect compile_fail
+
+		vertex ""
+			#version 310 es
+			precision highp float;
+
+			in vec4 a_pos;
+
+			void main()
+			{
+				gl_Position = a_pos;
+			}
+		""
+
+		fragment ""
+			#version 310 es
+			precision highp float;
+
+			layout(location=0) out vec4 o_color;
+
+			uniform UniformBlock
+			{
+				vec4 uniformMember;
+			} uniformBlock;
+
+			void main()
+			{
+				o_color = UniformBlock.uniformMember;
+			}
+		""
+	end
+	case empty_block_vertex
+		version 310 es
+		expect compile_fail
+
+		vertex ""
+			#version 310 es
+			precision highp float;
+
+
+
+			uniform UniformBlock
+			{
+			} uniformBlock;
+
+			void main()
+			{
+				gl_Position = vec4(0.0);
+			}
+		""
+
+		fragment ""
+			#version 310 es
+			precision highp float;
+
+			layout(location=0) out vec4 o_color;
+
+			void main()
+			{
+				o_color = vec4(1.0);
+			}
+		""
+	end
+	case empty_block_fragment
+		version 310 es
+		expect compile_fail
+
+		vertex ""
+			#version 310 es
+			precision highp float;
+
+			in vec4 a_pos;
+
+			void main()
+			{
+				gl_Position = a_pos;
+			}
+		""
+
+		fragment ""
+			#version 310 es
+			precision highp float;
+
+			layout(location=0) out vec4 o_color;
+
+			uniform UniformBlock
+			{
+			} uniformBlock;
+
+			void main()
+			{
+				o_color = vec4(0.0);
+			}
+		""
+	end
+	case empty_layout_vertex
+		version 310 es
+		expect compile_fail
+
+		vertex ""
+			#version 310 es
+			precision highp float;
+
+
+
+			layout() uniform UniformBlock
+			{
+				vec4 uniformMember;
+			} uniformBlock;
+
+			void main()
+			{
+				gl_Position = uniformBlock.uniformMember;
+			}
+		""
+
+		fragment ""
+			#version 310 es
+			precision highp float;
+
+			layout(location=0) out vec4 o_color;
+
+			void main()
+			{
+				o_color = vec4(1.0);
+			}
+		""
+	end
+	case empty_layout_fragment
+		version 310 es
+		expect compile_fail
+
+		vertex ""
+			#version 310 es
+			precision highp float;
+
+			in vec4 a_pos;
+
+			void main()
+			{
+				gl_Position = a_pos;
+			}
+		""
+
+		fragment ""
+			#version 310 es
+			precision highp float;
+
+			layout(location=0) out vec4 o_color;
+
+			layout() uniform UniformBlock
+			{
+				vec4 uniformMember;
+			} uniformBlock;
+
+			void main()
+			{
+				o_color = uniformBlock.uniformMember;
+			}
+		""
+	end
+	case empty_member_layout_vertex
+		version 310 es
+		expect compile_fail
+
+		vertex ""
+			#version 310 es
+			precision highp float;
+
+
+
+			uniform UniformBlock
+			{
+				layout() vec4 uniformMember;
+			} uniformBlock;
+
+			void main()
+			{
+				gl_Position = uniformBlock.uniformMember;
+			}
+		""
+
+		fragment ""
+			#version 310 es
+			precision highp float;
+
+			layout(location=0) out vec4 o_color;
+
+			void main()
+			{
+				o_color = vec4(1.0);
+			}
+		""
+	end
+	case empty_member_layout_fragment
+		version 310 es
+		expect compile_fail
+
+		vertex ""
+			#version 310 es
+			precision highp float;
+
+			in vec4 a_pos;
+
+			void main()
+			{
+				gl_Position = a_pos;
+			}
+		""
+
+		fragment ""
+			#version 310 es
+			precision highp float;
+
+			layout(location=0) out vec4 o_color;
+
+			uniform UniformBlock
+			{
+				layout() vec4 uniformMember;
+			} uniformBlock;
+
+			void main()
+			{
+				o_color = uniformBlock.uniformMember;
+			}
+		""
+	end
+	case empty_global_layout_vertex
+		version 310 es
+		expect compile_fail
+
+		vertex ""
+			#version 310 es
+			precision highp float;
+
+			layout() uniform;
+
+
+
+			uniform UniformBlock
+			{
+				vec4 uniformMember;
+			} uniformBlock;
+
+			void main()
+			{
+				gl_Position = uniformBlock.uniformMember;
+			}
+		""
+
+		fragment ""
+			#version 310 es
+			precision highp float;
+
+			layout(location=0) out vec4 o_color;
+
+			void main()
+			{
+				o_color = vec4(1.0);
+			}
+		""
+	end
+	case empty_global_layout_fragment
+		version 310 es
+		expect compile_fail
+
+		vertex ""
+			#version 310 es
+			precision highp float;
+
+			in vec4 a_pos;
+
+			void main()
+			{
+				gl_Position = a_pos;
+			}
+		""
+
+		fragment ""
+			#version 310 es
+			precision highp float;
+
+			layout() uniform;
+
+			layout(location=0) out vec4 o_color;
+
+			uniform UniformBlock
+			{
+				vec4 uniformMember;
+			} uniformBlock;
+
+			void main()
+			{
+				o_color = uniformBlock.uniformMember;
+			}
+		""
+	end
+	case structure_definition_vertex
+		version 310 es
+		expect compile_fail
+
+		vertex ""
+			#version 310 es
+			precision highp float;
+
+
+
+			uniform UniformBlock
+			{
+				struct A
+				{
+					vec4 uniformMember;
+				} a;
+			} uniformBlock;
+
+			void main()
+			{
+				gl_Position = uniformBlock.a.uniformMember;
+			}
+		""
+
+		fragment ""
+			#version 310 es
+			precision highp float;
+
+			layout(location=0) out vec4 o_color;
+
+			void main()
+			{
+				o_color = vec4(1.0);
+			}
+		""
+	end
+	case structure_definition_fragment
+		version 310 es
+		expect compile_fail
+
+		vertex ""
+			#version 310 es
+			precision highp float;
+
+			in vec4 a_pos;
+
+			void main()
+			{
+				gl_Position = a_pos;
+			}
+		""
+
+		fragment ""
+			#version 310 es
+			precision highp float;
+
+			layout(location=0) out vec4 o_color;
+
+			uniform UniformBlock
+			{
+				struct A
+				{
+					vec4 uniformMember;
+				} a;
+			} uniformBlock;
+
+			void main()
+			{
+				o_color = uniformBlock.a.uniformMember;
+			}
+		""
+	end
+	case member_layout_shared_vertex
+		version 310 es
+		expect compile_fail
+
+		vertex ""
+			#version 310 es
+			precision highp float;
+
+
+
+			uniform UniformBlock
+			{
+				layout(shared) vec4 uniformMember;
+			} uniformBlock;
+
+			void main()
+			{
+				gl_Position = uniformBlock.uniformMember;
+			}
+		""
+
+		fragment ""
+			#version 310 es
+			precision highp float;
+
+			layout(location=0) out vec4 o_color;
+
+			void main()
+			{
+				o_color = vec4(1.0);
+			}
+		""
+	end
+	case member_layout_shared_fragment
+		version 310 es
+		expect compile_fail
+
+		vertex ""
+			#version 310 es
+			precision highp float;
+
+			in vec4 a_pos;
+
+			void main()
+			{
+				gl_Position = a_pos;
+			}
+		""
+
+		fragment ""
+			#version 310 es
+			precision highp float;
+
+			layout(location=0) out vec4 o_color;
+
+			uniform UniformBlock
+			{
+				layout(shared) vec4 uniformMember;
+			} uniformBlock;
+
+			void main()
+			{
+				o_color = uniformBlock.uniformMember;
+			}
+		""
+	end
+	case member_layout_packed_vertex
+		version 310 es
+		expect compile_fail
+
+		vertex ""
+			#version 310 es
+			precision highp float;
+
+
+
+			uniform UniformBlock
+			{
+				layout(packed) vec4 uniformMember;
+			} uniformBlock;
+
+			void main()
+			{
+				gl_Position = uniformBlock.uniformMember;
+			}
+		""
+
+		fragment ""
+			#version 310 es
+			precision highp float;
+
+			layout(location=0) out vec4 o_color;
+
+			void main()
+			{
+				o_color = vec4(1.0);
+			}
+		""
+	end
+	case member_layout_packed_fragment
+		version 310 es
+		expect compile_fail
+
+		vertex ""
+			#version 310 es
+			precision highp float;
+
+			in vec4 a_pos;
+
+			void main()
+			{
+				gl_Position = a_pos;
+			}
+		""
+
+		fragment ""
+			#version 310 es
+			precision highp float;
+
+			layout(location=0) out vec4 o_color;
+
+			uniform UniformBlock
+			{
+				layout(packed) vec4 uniformMember;
+			} uniformBlock;
+
+			void main()
+			{
+				o_color = uniformBlock.uniformMember;
+			}
+		""
+	end
+	case member_layout_std140std430_vertex
+		version 310 es
+		expect compile_fail
+
+		vertex ""
+			#version 310 es
+			precision highp float;
+
+
+
+			uniform UniformBlock
+			{
+				layout(std140std430) vec4 uniformMember;
+			} uniformBlock;
+
+			void main()
+			{
+				gl_Position = uniformBlock.uniformMember;
+			}
+		""
+
+		fragment ""
+			#version 310 es
+			precision highp float;
+
+			layout(location=0) out vec4 o_color;
+
+			void main()
+			{
+				o_color = vec4(1.0);
+			}
+		""
+	end
+	case member_layout_std140std430_fragment
+		version 310 es
+		expect compile_fail
+
+		vertex ""
+			#version 310 es
+			precision highp float;
+
+			in vec4 a_pos;
+
+			void main()
+			{
+				gl_Position = a_pos;
+			}
+		""
+
+		fragment ""
+			#version 310 es
+			precision highp float;
+
+			layout(location=0) out vec4 o_color;
+
+			uniform UniformBlock
+			{
+				layout(std140std430) vec4 uniformMember;
+			} uniformBlock;
+
+			void main()
+			{
+				o_color = uniformBlock.uniformMember;
+			}
+		""
+	end
+	case missing_block_name_vertex
+		version 310 es
+		expect compile_fail
+
+		vertex ""
+			#version 310 es
+			precision highp float;
+
+
+
+			uniform
+			{
+				vec4 uniformMember;
+			} uniformBlock;
+
+			void main()
+			{
+				gl_Position = uniformBlock.uniformMember;
+			}
+		""
+
+		fragment ""
+			#version 310 es
+			precision highp float;
+
+			layout(location=0) out vec4 o_color;
+
+			void main()
+			{
+				o_color = vec4(1.0);
+			}
+		""
+	end
+	case missing_block_name_fragment
+		version 310 es
+		expect compile_fail
+
+		vertex ""
+			#version 310 es
+			precision highp float;
+
+			in vec4 a_pos;
+
+			void main()
+			{
+				gl_Position = a_pos;
+			}
+		""
+
+		fragment ""
+			#version 310 es
+			precision highp float;
+
+			layout(location=0) out vec4 o_color;
+
+			uniform
+			{
+				vec4 uniformMember;
+			} uniformBlock;
+
+			void main()
+			{
+				o_color = uniformBlock.uniformMember;
+			}
+		""
+	end
+	case invalid_number_block_name_vertex
+		version 310 es
+		expect compile_fail
+
+		vertex ""
+			#version 310 es
+			precision highp float;
+
+
+
+			uniform 0UniformBlock
+			{
+				vec4 uniformMember;
+			} uniformBlock;
+
+			void main()
+			{
+				gl_Position = uniformBlock.uniformMember;
+			}
+		""
+
+		fragment ""
+			#version 310 es
+			precision highp float;
+
+			layout(location=0) out vec4 o_color;
+
+			void main()
+			{
+				o_color = vec4(1.0);
+			}
+		""
+	end
+	case invalid_number_block_name_fragment
+		version 310 es
+		expect compile_fail
+
+		vertex ""
+			#version 310 es
+			precision highp float;
+
+			in vec4 a_pos;
+
+			void main()
+			{
+				gl_Position = a_pos;
+			}
+		""
+
+		fragment ""
+			#version 310 es
+			precision highp float;
+
+			layout(location=0) out vec4 o_color;
+
+			uniform 0UniformBlock
+			{
+				vec4 uniformMember;
+			} uniformBlock;
+
+			void main()
+			{
+				o_color = uniformBlock.uniformMember;
+			}
+		""
+	end
+	case invalid_identifier_block_name_vertex
+		version 310 es
+		expect compile_fail
+
+		vertex ""
+			#version 310 es
+			precision highp float;
+
+
+
+			uniform gl_UniformBlock
+			{
+				vec4 uniformMember;
+			} uniformBlock;
+
+			void main()
+			{
+				gl_Position = uniformBlock.uniformMember;
+			}
+		""
+
+		fragment ""
+			#version 310 es
+			precision highp float;
+
+			layout(location=0) out vec4 o_color;
+
+			void main()
+			{
+				o_color = vec4(1.0);
+			}
+		""
+	end
+	case invalid_identifier_block_name_fragment
+		version 310 es
+		expect compile_fail
+
+		vertex ""
+			#version 310 es
+			precision highp float;
+
+			in vec4 a_pos;
+
+			void main()
+			{
+				gl_Position = a_pos;
+			}
+		""
+
+		fragment ""
+			#version 310 es
+			precision highp float;
+
+			layout(location=0) out vec4 o_color;
+
+			uniform gl_UniformBlock
+			{
+				vec4 uniformMember;
+			} uniformBlock;
+
+			void main()
+			{
+				o_color = uniformBlock.uniformMember;
+			}
+		""
+	end
+	case invalid_hash_block_name_vertex
+		version 310 es
+		expect compile_fail
+
+		vertex ""
+			#version 310 es
+			precision highp float;
+
+
+
+			uniform #UniformBlock
+			{
+				vec4 uniformMember;
+			} uniformBlock;
+
+			void main()
+			{
+				gl_Position = uniformBlock.uniformMember;
+			}
+		""
+
+		fragment ""
+			#version 310 es
+			precision highp float;
+
+			layout(location=0) out vec4 o_color;
+
+			void main()
+			{
+				o_color = vec4(1.0);
+			}
+		""
+	end
+	case invalid_hash_block_name_fragment
+		version 310 es
+		expect compile_fail
+
+		vertex ""
+			#version 310 es
+			precision highp float;
+
+			in vec4 a_pos;
+
+			void main()
+			{
+				gl_Position = a_pos;
+			}
+		""
+
+		fragment ""
+			#version 310 es
+			precision highp float;
+
+			layout(location=0) out vec4 o_color;
+
+			uniform #UniformBlock
+			{
+				vec4 uniformMember;
+			} uniformBlock;
+
+			void main()
+			{
+				o_color = uniformBlock.uniformMember;
+			}
+		""
+	end
+	case invalid_dollar_block_name_vertex
+		version 310 es
+		expect compile_fail
+
+		vertex ""
+			#version 310 es
+			precision highp float;
+
+
+
+			uniform $UniformBlock
+			{
+				vec4 uniformMember;
+			} uniformBlock;
+
+			void main()
+			{
+				gl_Position = uniformBlock.uniformMember;
+			}
+		""
+
+		fragment ""
+			#version 310 es
+			precision highp float;
+
+			layout(location=0) out vec4 o_color;
+
+			void main()
+			{
+				o_color = vec4(1.0);
+			}
+		""
+	end
+	case invalid_dollar_block_name_fragment
+		version 310 es
+		expect compile_fail
+
+		vertex ""
+			#version 310 es
+			precision highp float;
+
+			in vec4 a_pos;
+
+			void main()
+			{
+				gl_Position = a_pos;
+			}
+		""
+
+		fragment ""
+			#version 310 es
+			precision highp float;
+
+			layout(location=0) out vec4 o_color;
+
+			uniform $UniformBlock
+			{
+				vec4 uniformMember;
+			} uniformBlock;
+
+			void main()
+			{
+				o_color = uniformBlock.uniformMember;
+			}
+		""
+	end
+	case too_long_block_name_vertex
+		version 310 es
+		expect compile_fail
+
+		vertex ""
+			#version 310 es
+			precision highp float;
+
+
+
+			// Total of 1025 characters
+			uniform aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+			{
+				vec4 uniformMember;
+			} uniformBlock;
+
+			void main()
+			{
+				gl_Position = uniformBlock.uniformMember;
+			}
+		""
+
+		fragment ""
+			#version 310 es
+			precision highp float;
+
+			layout(location=0) out vec4 o_color;
+
+			void main()
+			{
+				o_color = vec4(1.0);
+			}
+		""
+	end
+	case too_long_block_name_fragment
+		version 310 es
+		expect compile_fail
+
+		vertex ""
+			#version 310 es
+			precision highp float;
+
+			in vec4 a_pos;
+
+			void main()
+			{
+				gl_Position = a_pos;
+			}
+		""
+
+		fragment ""
+			#version 310 es
+			precision highp float;
+
+			layout(location=0) out vec4 o_color;
+
+			// Total of 1025 characters
+			uniform aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+			{
+				vec4 uniformMember;
+			} uniformBlock;
+
+			void main()
+			{
+				o_color = uniformBlock.uniformMember;
+			}
+		""
+	end
+	case invalid_number_instance_name_vertex
+		version 310 es
+		expect compile_fail
+
+		vertex ""
+			#version 310 es
+			precision highp float;
+
+
+
+			uniform UniformInstance
+			{
+				vec4 uniformMember;
+			} 0uniformBlock;
+
+			void main()
+			{
+				gl_Position = 0uniformBlock.uniformMember;
+			}
+		""
+
+		fragment ""
+			#version 310 es
+			precision highp float;
+
+			layout(location=0) out vec4 o_color;
+
+			void main()
+			{
+				o_color = vec4(1.0);
+			}
+		""
+	end
+	case invalid_number_instance_name_fragment
+		version 310 es
+		expect compile_fail
+
+		vertex ""
+			#version 310 es
+			precision highp float;
+
+			in vec4 a_pos;
+
+			void main()
+			{
+				gl_Position = a_pos;
+			}
+		""
+
+		fragment ""
+			#version 310 es
+			precision highp float;
+
+			layout(location=0) out vec4 o_color;
+
+			uniform UniformInstance
+			{
+				vec4 uniformMember;
+			} 0uniformBlock;
+
+			void main()
+			{
+				o_color = 0uniformBlock.uniformMember;
+			}
+		""
+	end
+	case invalid_identifier_instance_name_vertex
+		version 310 es
+		expect compile_fail
+
+		vertex ""
+			#version 310 es
+			precision highp float;
+
+
+
+			uniform UniformBlock
+			{
+				vec4 uniformMember;
+			} gl_uniformBlock;
+
+			void main()
+			{
+				gl_Position = gl_uniformBlock.uniformMember;
+			}
+		""
+
+		fragment ""
+			#version 310 es
+			precision highp float;
+
+			layout(location=0) out vec4 o_color;
+
+			void main()
+			{
+				o_color = vec4(1.0);
+			}
+		""
+	end
+	case invalid_identifier_instance_name_fragment
+		version 310 es
+		expect compile_fail
+
+		vertex ""
+			#version 310 es
+			precision highp float;
+
+			in vec4 a_pos;
+
+			void main()
+			{
+				gl_Position = a_pos;
+			}
+		""
+
+		fragment ""
+			#version 310 es
+			precision highp float;
+
+			layout(location=0) out vec4 o_color;
+
+			uniform UniformBlock
+			{
+				vec4 uniformMember;
+			} gl_uniformBlock;
+
+			void main()
+			{
+				o_color = gl_uniformBlock.uniformMember;
+			}
+		""
+	end
+	case invalid_hash_instance_name_vertex
+		version 310 es
+		expect compile_fail
+
+		vertex ""
+			#version 310 es
+			precision highp float;
+
+
+
+			uniform UniformInstance
+			{
+				vec4 uniformMember;
+			} #uniformBlock;
+
+			void main()
+			{
+				gl_Position = #uniformBlock.uniformMember;
+			}
+		""
+
+		fragment ""
+			#version 310 es
+			precision highp float;
+
+			layout(location=0) out vec4 o_color;
+
+			void main()
+			{
+				o_color = vec4(1.0);
+			}
+		""
+	end
+	case invalid_hash_instance_name_fragment
+		version 310 es
+		expect compile_fail
+
+		vertex ""
+			#version 310 es
+			precision highp float;
+
+			in vec4 a_pos;
+
+			void main()
+			{
+				gl_Position = a_pos;
+			}
+		""
+
+		fragment ""
+			#version 310 es
+			precision highp float;
+
+			layout(location=0) out vec4 o_color;
+
+			uniform UniformInstance
+			{
+				vec4 uniformMember;
+			} #uniformBlock;
+
+			void main()
+			{
+				o_color = #uniformBlock.uniformMember;
+			}
+		""
+	end
+	case invalid_dollar_instance_name_vertex
+		version 310 es
+		expect compile_fail
+
+		vertex ""
+			#version 310 es
+			precision highp float;
+
+
+
+			uniform UniformInstance
+			{
+				vec4 uniformMember;
+			} $uniformBlock;
+
+			void main()
+			{
+				gl_Position = $uniformBlock.uniformMember;
+			}
+		""
+
+		fragment ""
+			#version 310 es
+			precision highp float;
+
+			layout(location=0) out vec4 o_color;
+
+			void main()
+			{
+				o_color = vec4(1.0);
+			}
+		""
+	end
+	case invalid_dollar_instance_name_fragment
+		version 310 es
+		expect compile_fail
+
+		vertex ""
+			#version 310 es
+			precision highp float;
+
+			in vec4 a_pos;
+
+			void main()
+			{
+				gl_Position = a_pos;
+			}
+		""
+
+		fragment ""
+			#version 310 es
+			precision highp float;
+
+			layout(location=0) out vec4 o_color;
+
+			uniform UniformInstance
+			{
+				vec4 uniformMember;
+			} $uniformBlock;
+
+			void main()
+			{
+				o_color = $uniformBlock.uniformMember;
+			}
+		""
+	end
+	case double_underscore_block_name_vertex
+		version 310 es
+		expect compile_fail
+
+		vertex ""
+			#version 310 es
+			precision highp float;
+
+
+
+			uniform __
+			{
+				vec4 uniformMember;
+			} uniformBlock;
+
+			void main()
+			{
+				gl_Position = uniformBlock.uniformMember;
+			}
+		""
+
+		fragment ""
+			#version 310 es
+			precision highp float;
+
+			layout(location=0) out vec4 o_color;
+
+			void main()
+			{
+				o_color = vec4(1.0);
+			}
+		""
+	end
+	case double_underscore_block_name_fragment
+		version 310 es
+		expect compile_fail
+
+		vertex ""
+			#version 310 es
+			precision highp float;
+
+			in vec4 a_pos;
+
+			void main()
+			{
+				gl_Position = a_pos;
+			}
+		""
+
+		fragment ""
+			#version 310 es
+			precision highp float;
+
+			layout(location=0) out vec4 o_color;
+
+			uniform __
+			{
+				vec4 uniformMember;
+			} uniformBlock;
+
+			void main()
+			{
+				o_color = uniformBlock.uniformMember;
+			}
+		""
+	end
+	case double_underscore_instance_name_vertex
+		version 310 es
+		expect compile_fail
+
+		vertex ""
+			#version 310 es
+			precision highp float;
+
+
+
+			uniform UniformBlock
+			{
+				vec4 uniformMember;
+			} __;
+
+			void main()
+			{
+				gl_Position = __.uniformMember;
+			}
+		""
+
+		fragment ""
+			#version 310 es
+			precision highp float;
+
+			layout(location=0) out vec4 o_color;
+
+			void main()
+			{
+				o_color = vec4(1.0);
+			}
+		""
+	end
+	case double_underscore_instance_name_fragment
+		version 310 es
+		expect compile_fail
+
+		vertex ""
+			#version 310 es
+			precision highp float;
+
+			in vec4 a_pos;
+
+			void main()
+			{
+				gl_Position = a_pos;
+			}
+		""
+
+		fragment ""
+			#version 310 es
+			precision highp float;
+
+			layout(location=0) out vec4 o_color;
+
+			uniform UniformBlock
+			{
+				vec4 uniformMember;
+			} __;
+
+			void main()
+			{
+				o_color = __.uniformMember;
+			}
+		""
+	end
+	case repeated_block_vertex
+		version 310 es
+		expect compile_fail
+
+		vertex ""
+			#version 310 es
+			precision highp float;
+
+
+
+			uniform UniformBlock
+			{
+				vec4 uniformMember;
+			} uniformBlockA;
+
+			uniform UniformBlock
+			{
+				vec4 uniformMember;
+			} uniformBlockB;
+
+			void main()
+			{
+				gl_Position = uniformBlockA.uniformMember + uniformBlockB.uniformMember;
+			}
+		""
+
+		fragment ""
+			#version 310 es
+			precision highp float;
+
+			layout(location=0) out vec4 o_color;
+
+			void main()
+			{
+				o_color = vec4(1.0);
+			}
+		""
+	end
+	case repeated_block_fragment
+		version 310 es
+		expect compile_fail
+
+		vertex ""
+			#version 310 es
+			precision highp float;
+
+			in vec4 a_pos;
+
+			void main()
+			{
+				gl_Position = a_pos;
+			}
+		""
+
+		fragment ""
+			#version 310 es
+			precision highp float;
+
+			layout(location=0) out vec4 o_color;
+
+			uniform UniformBlock
+			{
+				vec4 uniformMember;
+			} uniformBlockA;
+
+			uniform UniformBlock
+			{
+				vec4 uniformMember;
+			} uniformBlockB;
+
+			void main()
+			{
+				o_color = uniformBlockA.uniformMember + uniformBlockB.uniformMember;
+			}
+		""
+	end
+	case repeated_block_no_instance_name_vertex
+		version 310 es
+		expect compile_fail
+
+		vertex ""
+			#version 310 es
+			precision highp float;
+
+
+
+			uniform UniformBlock
+			{
+				vec4 uniformMember;
+			} uniformBlock;
+
+			uniform UniformBlock
+			{
+				vec4 uniformMember;
+			};
+
+			void main()
+			{
+				gl_Position = uniformBlock.uniformMember + uniformMember;
+			}
+		""
+
+		fragment ""
+			#version 310 es
+			precision highp float;
+
+			layout(location=0) out vec4 o_color;
+
+			void main()
+			{
+				o_color = vec4(1.0);
+			}
+		""
+	end
+	case repeated_block_no_instance_name_fragment
+		version 310 es
+		expect compile_fail
+
+		vertex ""
+			#version 310 es
+			precision highp float;
+
+			in vec4 a_pos;
+
+			void main()
+			{
+				gl_Position = a_pos;
+			}
+		""
+
+		fragment ""
+			#version 310 es
+			precision highp float;
+
+			layout(location=0) out vec4 o_color;
+
+			uniform UniformBlock
+			{
+				vec4 uniformMember;
+			} uniformBlock;
+
+			uniform UniformBlock
+			{
+				vec4 uniformMember;
+			};
+
+			void main()
+			{
+				o_color = uniformBlock.uniformMember + uniformMember;
+			}
+		""
+	end
+	case layout_std430_vertex
+		version 310 es
+		expect compile_fail
+
+		vertex ""
+			#version 310 es
+			precision highp float;
+
+
+
+			layout(std430) uniform UniformBlock
+			{
+				vec4 uniformMember;
+			} uniformBlock;
+
+			void main()
+			{
+				gl_Position = uniformBlock.uniformMember;
+			}
+		""
+
+		fragment ""
+			#version 310 es
+			precision highp float;
+
+			layout(location=0) out vec4 o_color;
+
+			void main()
+			{
+				o_color = vec4(1.0);
+			}
+		""
+	end
+	case layout_std430_fragment
+		version 310 es
+		expect compile_fail
+
+		vertex ""
+			#version 310 es
+			precision highp float;
+
+			in vec4 a_pos;
+
+			void main()
+			{
+				gl_Position = a_pos;
+			}
+		""
+
+		fragment ""
+			#version 310 es
+			precision highp float;
+
+			layout(location=0) out vec4 o_color;
+
+			layout(std430) uniform UniformBlock
+			{
+				vec4 uniformMember;
+			} uniformBlock;
+
+			void main()
+			{
+				o_color = uniformBlock.uniformMember;
+			}
+		""
+	end
+	case global_layout_std430_vertex
+		version 310 es
+		expect compile_fail
+
+		vertex ""
+			#version 310 es
+			precision highp float;
+
+			layout(std430) uniform;
+
+
+
+			uniform UniformBlock
+			{
+				vec4 uniformMember;
+			} uniformBlock;
+
+			void main()
+			{
+				gl_Position = uniformBlock.uniformMember;
+			}
+		""
+
+		fragment ""
+			#version 310 es
+			precision highp float;
+
+			layout(location=0) out vec4 o_color;
+
+			void main()
+			{
+				o_color = vec4(1.0);
+			}
+		""
+	end
+	case global_layout_std430_fragment
+		version 310 es
+		expect compile_fail
+
+		vertex ""
+			#version 310 es
+			precision highp float;
+
+			in vec4 a_pos;
+
+			void main()
+			{
+				gl_Position = a_pos;
+			}
+		""
+
+		fragment ""
+			#version 310 es
+			precision highp float;
+
+			layout(std430) uniform;
+
+			layout(location=0) out vec4 o_color;
+
+			uniform UniformBlock
+			{
+				vec4 uniformMember;
+			} uniformBlock;
+
+			void main()
+			{
+				o_color = uniformBlock.uniformMember;
+			}
+		""
+	end
+
+end # invalid
diff --git a/external/fetch_sources.py b/external/fetch_sources.py
index 7d4c5c7..5f6a30f 100644
--- a/external/fetch_sources.py
+++ b/external/fetch_sources.py
@@ -93,9 +93,9 @@
 				  "zlib-1.2.8.tar.gz",
 				  "36658cb768a54c1d4dec43c3116c27ed893e88b02ecfcb44f2166f9c0b7f2a0d",
 				  "zlib"),
-	SourcePackage("ftp://ftp.simplesystems.org/pub/libpng/png/src/libpng16/libpng-1.6.16.tar.gz",
-				  "libpng-1.6.14.tar.gz",
-				  "02f96b6bad5a381d36d7ba7a5d9be3b06f7fe6c274da00707509c23592a073ad",
+	SourcePackage("ftp://ftp.simplesystems.org/pub/libpng/png/src/libpng16/libpng-1.6.17.tar.gz",
+				  "libpng-1.6.17.tar.gz",
+				  "a18233c99e1dc59a256180e6871d9305a42e91b3f98799b3ceb98e87e9ec5e31",
 				  "libpng",
 				  postExtract = postExtractLibpng),
 ]
diff --git a/framework/common/tcuCompressedTexture.cpp b/framework/common/tcuCompressedTexture.cpp
index 961bd90..0ea7f95 100644
--- a/framework/common/tcuCompressedTexture.cpp
+++ b/framework/common/tcuCompressedTexture.cpp
@@ -329,7 +329,10 @@
 {
 	const int numBits = (high-low) + 1;
 	DE_ASSERT(de::inRange(numBits, 1, 32));
-	return (src >> low) & ((1<<numBits)-1);
+	if (numBits < 32)
+		return (src >> low) & ((1u<<numBits)-1);
+	else
+		return (src >> low) & 0xFFFFFFFFu;
 }
 
 inline deUint8 extend4To8 (deUint8 src)
diff --git a/framework/common/tcuTexLookupVerifier.cpp b/framework/common/tcuTexLookupVerifier.cpp
index 83af974..89aa55b 100644
--- a/framework/common/tcuTexLookupVerifier.cpp
+++ b/framework/common/tcuTexLookupVerifier.cpp
@@ -2465,32 +2465,32 @@
 	return false;
 }
 
-bool isGatherResultValid (const TextureCubeView&		texture,
-								 const Sampler&				sampler,
-								 const LookupPrecision&		prec,
-								 const Vec3&				coord,
-								 int						componentNdx,
-								 const Vec4&				result)
+bool isGatherResultValid (const TextureCubeView&	texture,
+						  const Sampler&			sampler,
+						  const LookupPrecision&	prec,
+						  const Vec3&				coord,
+						  int						componentNdx,
+						  const Vec4&				result)
 {
 	return isCubeGatherResultValid(texture, sampler, prec, coord, componentNdx, result);
 }
 
 bool isGatherResultValid (const TextureCubeView&		texture,
-								 const Sampler&				sampler,
-								 const IntLookupPrecision&	prec,
-								 const Vec3&				coord,
-								 int						componentNdx,
-								 const IVec4&				result)
+						  const Sampler&				sampler,
+						  const IntLookupPrecision&		prec,
+						  const Vec3&					coord,
+						  int							componentNdx,
+						  const IVec4&					result)
 {
 	return isCubeGatherResultValid(texture, sampler, prec, coord, componentNdx, result);
 }
 
 bool isGatherResultValid (const TextureCubeView&		texture,
-								 const Sampler&				sampler,
-								 const IntLookupPrecision&	prec,
-								 const Vec3&				coord,
-								 int						componentNdx,
-								 const UVec4&				result)
+						  const Sampler&				sampler,
+						  const IntLookupPrecision&		prec,
+						  const Vec3&					coord,
+						  int							componentNdx,
+						  const UVec4&					result)
 {
 	return isCubeGatherResultValid(texture, sampler, prec, coord, componentNdx, result);
 }
diff --git a/framework/opengl/gluTexture.cpp b/framework/opengl/gluTexture.cpp
index 344a514..7ae0a3c 100644
--- a/framework/opengl/gluTexture.cpp
+++ b/framework/opengl/gluTexture.cpp
@@ -610,6 +610,7 @@
 
 Texture3D::Texture3D (const RenderContext& context, deUint32 format, deUint32 dataType, int width, int height, int depth)
 	: m_context			(context)
+	, m_isCompressed	(false)
 	, m_format			(format)
 	, m_refTexture		(mapGLTransferFormat(format, dataType), width, height, depth)
 	, m_glTexture		(0)
@@ -622,6 +623,7 @@
 
 Texture3D::Texture3D (const RenderContext& context, deUint32 sizedFormat, int width, int height, int depth)
 	: m_context			(context)
+	, m_isCompressed	(false)
 	, m_format			(sizedFormat)
 	, m_refTexture		(mapGLInternalFormat(sizedFormat), width, height, depth)
 	, m_glTexture		(0)
@@ -632,6 +634,36 @@
 	GLU_EXPECT_NO_ERROR(gl.getError(), "glGenTextures() failed");
 }
 
+Texture3D::Texture3D (const RenderContext&					context,
+					  const ContextInfo&					contextInfo,
+					  int									numLevels,
+					  const tcu::CompressedTexture*			levels,
+					  const tcu::TexDecompressionParams&	decompressionParams)
+	: m_context			(context)
+	, m_isCompressed	(true)
+	, m_format			(getGLFormat(levels[0].getFormat()))
+	, m_refTexture		(getUncompressedFormat(levels[0].getFormat()), levels[0].getWidth(), levels[0].getHeight(), levels[0].getDepth())
+	, m_glTexture		(0)
+{
+	const glw::Functions& gl = context.getFunctions();
+
+	if (!contextInfo.isCompressedTextureFormatSupported(m_format))
+		throw tcu::NotSupportedError("Compressed texture format not supported", "", __FILE__, __LINE__);
+
+	gl.genTextures(1, &m_glTexture);
+	GLU_EXPECT_NO_ERROR(gl.getError(), "glGenTextures() failed");
+
+	try
+	{
+		loadCompressed(numLevels, levels, decompressionParams);
+	}
+	catch (const std::exception&)
+	{
+		gl.deleteTextures(1, &m_glTexture);
+		throw;
+	}
+}
+
 Texture3D::~Texture3D (void)
 {
 	if (m_glTexture)
@@ -642,6 +674,8 @@
 {
 	const glw::Functions& gl = m_context.getFunctions();
 
+	DE_ASSERT(!m_isCompressed);
+
 	if (!gl.texImage3D)
 		throw tcu::NotSupportedError("glTexImage3D() is not supported");
 
@@ -666,6 +700,37 @@
 	GLU_EXPECT_NO_ERROR(gl.getError(), "Texture upload failed");
 }
 
+void Texture3D::loadCompressed (int numLevels, const tcu::CompressedTexture* levels, const tcu::TexDecompressionParams& decompressionParams)
+{
+	const glw::Functions&	gl					= m_context.getFunctions();
+	deUint32				compressedFormat	= getGLFormat(levels[0].getFormat());
+
+	if (!gl.compressedTexImage3D)
+		throw tcu::NotSupportedError("glCompressedTexImage3D() is not supported");
+
+	TCU_CHECK(m_glTexture);
+	gl.bindTexture(GL_TEXTURE_3D, m_glTexture);
+
+	for (int levelNdx = 0; levelNdx < numLevels; levelNdx++)
+	{
+		const tcu::CompressedTexture& level = levels[levelNdx];
+
+		// Decompress to reference texture.
+		m_refTexture.allocLevel(levelNdx);
+		tcu::PixelBufferAccess refLevelAccess = m_refTexture.getLevel(levelNdx);
+		TCU_CHECK(level.getWidth()	== refLevelAccess.getWidth() &&
+				  level.getHeight()	== refLevelAccess.getHeight() &&
+				  level.getDepth()	== refLevelAccess.getDepth());
+		level.decompress(refLevelAccess, decompressionParams);
+
+		// Upload to GL texture in compressed form.
+		gl.compressedTexImage3D(GL_TEXTURE_3D, levelNdx, compressedFormat,
+								level.getWidth(), level.getHeight(), level.getDepth(), 0 /* border */, level.getDataSize(), level.getData());
+	}
+
+	GLU_EXPECT_NO_ERROR(gl.getError(), "Texture upload failed");
+}
+
 // TextureCubeArray
 
 TextureCubeArray::TextureCubeArray (const RenderContext& context, deUint32 format, deUint32 dataType, int size, int numLayers)
diff --git a/framework/opengl/gluTexture.hpp b/framework/opengl/gluTexture.hpp
index 45de10c..1a8d7db 100644
--- a/framework/opengl/gluTexture.hpp
+++ b/framework/opengl/gluTexture.hpp
@@ -210,6 +210,7 @@
 public:
 								Texture3D			(const RenderContext& context, deUint32 format, deUint32 dataType, int width, int height, int depth);
 								Texture3D			(const RenderContext& context, deUint32 internalFormat, int width, int height, int depth);
+								Texture3D			(const RenderContext& context, const ContextInfo& contextInfo, int numLevels, const tcu::CompressedTexture* levels, const tcu::TexDecompressionParams& decompressionParams = tcu::TexDecompressionParams());
 								~Texture3D			(void);
 
 	void						upload				(void);
@@ -222,8 +223,11 @@
 								Texture3D			(const Texture3D& other); // Not allowed!
 	Texture3D&					operator=			(const Texture3D& other); // Not allowed!
 
+	void						loadCompressed		(int numLevels, const tcu::CompressedTexture* levels, const tcu::TexDecompressionParams& decompressionParams);
+
 	const RenderContext&		m_context;
 
+	bool						m_isCompressed;
 	deUint32					m_format;			//!< Internal format.
 
 	tcu::Texture3D				m_refTexture;
diff --git a/framework/opengl/gluTextureUtil.cpp b/framework/opengl/gluTextureUtil.cpp
index 2333487..d2903d3 100644
--- a/framework/opengl/gluTextureUtil.cpp
+++ b/framework/opengl/gluTextureUtil.cpp
@@ -84,6 +84,11 @@
 		case TextureFormat::DS:		format = GL_DEPTH_STENCIL;						break;
 		case TextureFormat::S:		format = GL_STENCIL_INDEX;						break;
 
+		case TextureFormat::BGRA:
+			DE_ASSERT(!isInt);
+			format = GL_BGRA;
+			break;
+
 		default:
 			DE_ASSERT(false);
 	}
diff --git a/framework/platform/android/tcuAndroidInternals.cpp b/framework/platform/android/tcuAndroidInternals.cpp
index d825b85..368f3e0 100644
--- a/framework/platform/android/tcuAndroidInternals.cpp
+++ b/framework/platform/android/tcuAndroidInternals.cpp
@@ -22,6 +22,8 @@
  *//*--------------------------------------------------------------------*/
 
 #include "tcuAndroidInternals.hpp"
+#include "deMemory.h"
+#include "deStringUtil.hpp"
 
 namespace tcu
 {
@@ -51,20 +53,200 @@
 	setFuncPtr(gb.getNativeBuffer,	m_library,	"_ZNK7android13GraphicBuffer15getNativeBufferEv");
 	setFuncPtr(gb.lock,				m_library,	"_ZN7android13GraphicBuffer4lockEjPPv");
 	setFuncPtr(gb.unlock,			m_library,	"_ZN7android13GraphicBuffer6unlockEv");
+	setFuncPtr(gb.initCheck,		m_library,	"_ZNK7android13GraphicBuffer9initCheckEv");
 }
 
 #define GRAPHICBUFFER_SIZE 1024 // Hopefully enough
 
+typedef void (*GenericFptr)();
+
+//! call constructor with 4 arguments
+template <typename RT, typename T1, typename T2, typename T3, typename T4>
+RT* callConstructor4 (GenericFptr fptr, void* memory, size_t memorySize, T1 param1, T2 param2, T3 param3, T4 param4)
+{
+	DE_UNREF(memorySize);
+
+#if (DE_CPU == DE_CPU_ARM)
+	// C1 constructors return pointer
+	typedef RT* (*ABIFptr)(void*, T1, T2, T3, T4);
+	(void)((ABIFptr)fptr)(memory, param1, param2, param3, param4);
+	return reinterpret_cast<RT*>(memory);
+#elif (DE_CPU == DE_CPU_ARM_64)
+	// C1 constructors return void
+	typedef void (*ABIFptr)(void*, T1, T2, T3, T4);
+	((ABIFptr)fptr)(memory, param1, param2, param3, param4);
+	return reinterpret_cast<RT*>(memory);
+#elif (DE_CPU == DE_CPU_X86)
+	// ctor returns void
+	typedef void (*ABIFptr)(void*, T1, T2, T3, T4);
+	((ABIFptr)fptr)(memory, param1, param2, param3, param4);
+	return reinterpret_cast<RT*>(memory);
+#elif (DE_CPU == DE_CPU_X86_64)
+	// ctor returns void
+	typedef void (*ABIFptr)(void*, T1, T2, T3, T4);
+	((ABIFptr)fptr)(memory, param1, param2, param3, param4);
+	return reinterpret_cast<RT*>(memory);
+#else
+	TCU_THROW(NotSupportedError, "ABI not supported");
+	return DE_NULL;
+#endif
+}
+
+template <typename T>
+void callDestructor (GenericFptr fptr, T* obj)
+{
+#if (DE_CPU == DE_CPU_ARM)
+	// D1 destructor returns ptr
+	typedef void* (*ABIFptr)(T* obj);
+	(void)((ABIFptr)fptr)(obj);
+#elif (DE_CPU == DE_CPU_ARM_64)
+	// D1 destructor returns void
+	typedef void (*ABIFptr)(T* obj);
+	((ABIFptr)fptr)(obj);
+#elif (DE_CPU == DE_CPU_X86)
+	// dtor returns void
+	typedef void (*ABIFptr)(T* obj);
+	((ABIFptr)fptr)(obj);
+#elif (DE_CPU == DE_CPU_X86_64)
+	// dtor returns void
+	typedef void (*ABIFptr)(T* obj);
+	((ABIFptr)fptr)(obj);
+#else
+	TCU_THROW(NotSupportedError, "ABI not supported");
+#endif
+}
+
+template<typename T1, typename T2>
+T1* pointerToOffset (T2* ptr, size_t bytes)
+{
+	return reinterpret_cast<T1*>((deUint8*)ptr + bytes);
+}
+
+static android::android_native_base_t* getAndroidNativeBase (android::GraphicBuffer* gb)
+{
+	// \note: assuming Itanium ABI
+	return pointerToOffset<android::android_native_base_t>(gb, 2 * DE_PTR_SIZE);
+}
+
+//! android_native_base_t::magic for ANativeWindowBuffer
+static deInt32 getExpectedNativeBufferVersion (void)
+{
+#if (DE_PTR_SIZE == 4)
+	return 96;
+#elif (DE_PTR_SIZE == 8)
+	return 168;
+#else
+#	error Invalid DE_PTR_SIZE
+#endif
+}
+
+//! access android_native_base_t::magic
+static deUint32 getNativeBaseMagic (android::android_native_base_t* base)
+{
+	return *pointerToOffset<deUint32>(base, 0);
+}
+
+//! access android_native_base_t::version
+static deUint32 getNativeBaseVersion (android::android_native_base_t* base)
+{
+	return *pointerToOffset<deInt32>(base, 4);
+}
+
+//! access android_native_base_t::incRef
+static NativeBaseFunctions::incRefFunc getNativeBaseIncRefFunc (android::android_native_base_t* base)
+{
+	return *pointerToOffset<NativeBaseFunctions::incRefFunc>(base, 8 + DE_PTR_SIZE*4);
+}
+
+//! access android_native_base_t::decRef
+static NativeBaseFunctions::decRefFunc getNativeBaseDecRefFunc (android::android_native_base_t* base)
+{
+	return *pointerToOffset<NativeBaseFunctions::decRefFunc>(base, 8 + DE_PTR_SIZE*5);
+}
+
+static android::GraphicBuffer* createGraphicBuffer (const GraphicBufferFunctions& functions, NativeBaseFunctions& baseFunctions, deUint32 w, deUint32 h, PixelFormat format, deUint32 usage)
+{
+	// \note: Hopefully uses the same allocator as libui
+	void* const memory = deMalloc(GRAPHICBUFFER_SIZE);
+	if (memory == DE_NULL)
+		TCU_THROW(ResourceError, "Could not alloc for GraphicBuffer");
+	else
+	{
+		try
+		{
+			android::GraphicBuffer* const			gb			= callConstructor4<android::GraphicBuffer, deUint32, deUint32, PixelFormat, deUint32>(functions.constructor,
+																																					  memory,
+																																					  GRAPHICBUFFER_SIZE,
+																																					  w,
+																																					  h,
+																																					  format,
+																																					  usage);
+			android::android_native_base_t* const	base		= getAndroidNativeBase(gb);
+			status_t								ctorStatus	= functions.initCheck(gb);
+
+			if (ctorStatus)
+			{
+				// ctor failed
+				callDestructor<android::GraphicBuffer>(functions.destructor, gb);
+				TCU_THROW(NotSupportedError, ("GraphicBuffer ctor failed, initCheck returned " + de::toString(ctorStatus)).c_str());
+			}
+
+			// check object layout
+			{
+				const deUint32 magic		= getNativeBaseMagic(base);
+				const deUint32 bufferMagic	= 0x5f626672u; // "_bfr"
+
+				if (magic != bufferMagic)
+					TCU_THROW(NotSupportedError, "GraphicBuffer layout unexpected");
+			}
+
+			// check object version
+			{
+				const deInt32 version			= getNativeBaseVersion(base);
+				const deInt32 expectedVersion	= getExpectedNativeBufferVersion();
+
+				if (version != expectedVersion)
+					TCU_THROW(NotSupportedError, "GraphicBuffer version unexpected");
+			}
+
+			// locate refcounting functions
+
+			if (!baseFunctions.incRef || !baseFunctions.decRef)
+			{
+				baseFunctions.incRef = getNativeBaseIncRefFunc(base);
+				baseFunctions.decRef = getNativeBaseDecRefFunc(base);
+			}
+
+			// take the initial reference and return
+			baseFunctions.incRef(base);
+			return gb;
+		}
+		catch (...)
+		{
+			deFree(memory);
+			throw;
+		}
+	}
+}
+
 GraphicBuffer::GraphicBuffer (const LibUI& lib, deUint32 width, deUint32 height, PixelFormat format, deUint32 usage)
 	: m_functions	(lib.getFunctions().graphicBuffer)
-	, m_memory		(GRAPHICBUFFER_SIZE) // vector<char> (new char[]) is max-aligned
-	, m_impl		(m_functions.constructor(&m_memory.front(), width, height, format, usage))
+	, m_impl		(DE_NULL)
 {
+	m_baseFunctions.incRef = DE_NULL;
+	m_baseFunctions.decRef = DE_NULL;
+
+	// \note createGraphicBuffer updates m_baseFunctions
+	m_impl = createGraphicBuffer(m_functions, m_baseFunctions, width, height, format, usage);
 }
 
 GraphicBuffer::~GraphicBuffer (void)
 {
-	m_functions.destructor(m_impl);
+	if (m_impl && m_baseFunctions.decRef)
+	{
+		m_baseFunctions.decRef(getAndroidNativeBase(m_impl));
+		m_impl = DE_NULL;
+	}
 }
 
 status_t GraphicBuffer::lock (deUint32 usage, void** vaddr)
diff --git a/framework/platform/android/tcuAndroidInternals.hpp b/framework/platform/android/tcuAndroidInternals.hpp
index e6754c6..1d7d231 100644
--- a/framework/platform/android/tcuAndroidInternals.hpp
+++ b/framework/platform/android/tcuAndroidInternals.hpp
@@ -35,6 +35,7 @@
 namespace android
 {
 class GraphicBuffer;
+class android_native_base_t;
 }
 
 namespace tcu
@@ -96,17 +97,28 @@
 // ui/GraphicBuffer.h
 struct GraphicBufferFunctions
 {
-	typedef android::GraphicBuffer*	(*constructorFunc)		(void* memory, deUint32 w, deUint32 h, PixelFormat format, deUint32 usage);
-	typedef void*					(*destructorFunc)		(android::GraphicBuffer* buffer);
+	typedef void					(*genericFunc)			();
+	typedef status_t				(*initCheckFunc)		(android::GraphicBuffer* buffer);
 	typedef status_t				(*lockFunc)				(android::GraphicBuffer* buffer, deUint32 usage, void** vaddr);
 	typedef status_t				(*unlockFunc)			(android::GraphicBuffer* buffer);
 	typedef ANativeWindowBuffer*	(*getNativeBufferFunc)	(const android::GraphicBuffer* buffer);
 
-	constructorFunc					constructor;
-	destructorFunc					destructor;
+	genericFunc						constructor;
+	genericFunc						destructor;
 	lockFunc						lock;
 	unlockFunc						unlock;
 	getNativeBufferFunc				getNativeBuffer;
+	initCheckFunc					initCheck;
+};
+
+// system/window.h
+struct NativeBaseFunctions
+{
+	typedef void	(*incRefFunc)			(android::android_native_base_t* base);
+	typedef void	(*decRefFunc)			(android::android_native_base_t* base);
+
+	incRefFunc		incRef;
+	decRefFunc		decRef;
 };
 
 struct LibUIFunctions
@@ -166,7 +178,7 @@
 
 private:
 	const GraphicBufferFunctions&	m_functions;
-	std::vector<deUint8>			m_memory;
+	NativeBaseFunctions				m_baseFunctions;
 	android::GraphicBuffer*			m_impl;
 };
 
diff --git a/modules/egl/teglAndroidUtil.cpp b/modules/egl/teglAndroidUtil.cpp
index e79b58e..64cbe9b 100644
--- a/modules/egl/teglAndroidUtil.cpp
+++ b/modules/egl/teglAndroidUtil.cpp
@@ -51,9 +51,9 @@
 
 #if (DE_OS != DE_OS_ANDROID)
 
-MovePtr<ImageSource> createAndroidNativeImageSource	(GLenum)
+MovePtr<ImageSource> createAndroidNativeImageSource	(GLenum format)
 {
-	return createUnsupportedImageSource("Not Android platform");
+	return createUnsupportedImageSource("Not Android platform", format);
 }
 
 #else // DE_OS == DE_OS_ANDROID
@@ -105,6 +105,7 @@
 	MovePtr<ClientBuffer>	createBuffer 				(const glw::Functions&, Texture2D*) const;
 	string					getRequiredExtension		(void) const { return "EGL_ANDROID_image_native_buffer"; }
 	EGLImageKHR				createImage					(const Library& egl, EGLDisplay dpy, EGLContext ctx, EGLClientBuffer clientBuffer) const;
+	GLenum					getFormat					(void) const { return m_format; }
 
 protected:
 	GLenum					m_format;
@@ -158,7 +159,7 @@
 	}
 	catch (std::runtime_error& exc)
 	{
-		return createUnsupportedImageSource(string("Android native buffers unsupported: ") + exc.what());
+		return createUnsupportedImageSource(string("Android native buffers unsupported: ") + exc.what(), format);
 	}
 }
 
diff --git a/modules/egl/teglCreateContextExtTests.cpp b/modules/egl/teglCreateContextExtTests.cpp
index 3eba619..17eb2aa 100644
--- a/modules/egl/teglCreateContextExtTests.cpp
+++ b/modules/egl/teglCreateContextExtTests.cpp
@@ -1139,13 +1139,9 @@
 		// OpenGL ES 2.x
 		{ "gles_20", "Create OpenGL ES 2.0 context", EGL_OPENGL_ES_API, EGL_OPENGL_ES2_BIT,
 			{ EGL_CONTEXT_MAJOR_VERSION_KHR, 2, EGL_CONTEXT_MINOR_VERSION_KHR, 0, EGL_NONE } },
-		{ "robust_gles_20", "Create robust OpenGL ES 2.0 context", EGL_OPENGL_ES_API, EGL_OPENGL_ES2_BIT,
-			{ EGL_CONTEXT_MAJOR_VERSION_KHR, 2, EGL_CONTEXT_MINOR_VERSION_KHR, 0, EGL_CONTEXT_FLAGS_KHR, EGL_CONTEXT_OPENGL_ROBUST_ACCESS_BIT_KHR, EGL_NONE } },
 		// OpenGL ES 3.x
 		{ "gles_30", "Create OpenGL ES 3.0 context", EGL_OPENGL_ES_API, EGL_OPENGL_ES3_BIT_KHR,
 			{ EGL_CONTEXT_MAJOR_VERSION_KHR, 3, EGL_CONTEXT_MINOR_VERSION_KHR, 0, EGL_NONE} },
-		{ "robust_gles_30", "Create OpenGL ES 3.0 context", EGL_OPENGL_ES_API, EGL_OPENGL_ES3_BIT_KHR,
-			{ EGL_CONTEXT_MAJOR_VERSION_KHR, 3, EGL_CONTEXT_MINOR_VERSION_KHR, 0, EGL_CONTEXT_FLAGS_KHR, EGL_CONTEXT_OPENGL_ROBUST_ACCESS_BIT_KHR, EGL_NONE } },
 #if 0
 		// \todo [mika] Not supported by glw
 		// \note [mika] Should we really test 1.x?
diff --git a/modules/egl/teglImageFormatTests.cpp b/modules/egl/teglImageFormatTests.cpp
index 1e06500..8cfc2da 100644
--- a/modules/egl/teglImageFormatTests.cpp
+++ b/modules/egl/teglImageFormatTests.cpp
@@ -181,6 +181,7 @@
 								Create					(MovePtr<ImageSource> imgSource) : m_imgSource(imgSource) {}
 		string					getRequiredExtension	(void) const { return m_imgSource->getRequiredExtension(); }
 		bool					invokeGLES2				(GLES2ImageApi& api, MovePtr<UniqueImage>& image, tcu::Texture2D& ref) const;
+		glw::GLenum				getFormat				(void) const { return m_imgSource->getFormat(); }
 
 	private:
 		UniquePtr<ImageSource>	m_imgSource;
@@ -209,6 +210,7 @@
 	public:
 							ModifyTexSubImage		(GLenum format, GLenum type) : m_format(format), m_type(type) {}
 		bool				invokeGLES2				(GLES2ImageApi& api, MovePtr<UniqueImage>& image, tcu::Texture2D& ref) const;
+		GLenum				getFormat				(void) const { return m_format; }
 
 	private:
 		GLenum				m_format;
@@ -1117,6 +1119,63 @@
 	m_modifyActions.add("renderbuffer_clear_stencil",	MovePtr<Action>(new GLES2ImageApi::ModifyRenderbufferClearStencil(78)));
 }
 
+bool isCompatibleFormats (GLenum createFormat, GLenum modifyFormat)
+{
+	switch (createFormat)
+	{
+		case GL_RGB:
+		case GL_RGB8:
+		case GL_RGB565:
+			if (modifyFormat == GL_RGB
+				|| modifyFormat == GL_RGB8
+				|| modifyFormat == GL_RGB565)
+				return true;
+			else
+				return false;
+
+		case GL_RGBA:
+		case GL_RGBA4:
+		case GL_RGBA8:
+		case GL_RGB5_A1:
+			if (modifyFormat == GL_RGBA
+				|| modifyFormat == GL_RGBA8
+				|| modifyFormat == GL_RGBA4
+				|| modifyFormat == GL_RGB5_A1)
+				return true;
+			else
+				return false;
+
+		case GL_DEPTH_COMPONENT16:
+		case GL_STENCIL_INDEX8:
+			return false;
+
+		default:
+			DE_ASSERT(false);
+			return false;
+	}
+}
+
+bool isCompatibleCreateAndModifyActions (const Action& create, const Action& modify)
+{
+	if (const GLES2ImageApi::Create* gles2Create = dynamic_cast<const GLES2ImageApi::Create*>(&create))
+	{
+		const GLenum createFormat = gles2Create->getFormat();
+
+		if (const GLES2ImageApi::ModifyTexSubImage* gles2TexSubImageModify = dynamic_cast<const GLES2ImageApi::ModifyTexSubImage*>(&modify))
+		{
+			const GLenum modifyFormat  = gles2TexSubImageModify->getFormat();
+
+			return isCompatibleFormats(createFormat, modifyFormat);
+		}
+
+		return true;
+	}
+	else
+		DE_ASSERT(false);
+
+	return false;
+}
+
 void ModifyTests::init (void)
 {
 	addCreateTexture2DActions("tex_");
@@ -1131,6 +1190,10 @@
 		for (int modifyNdx = 0; modifyNdx < m_modifyActions.size(); modifyNdx++)
 		{
 			LabeledAction& modifyAction = m_modifyActions[modifyNdx];
+
+			if (!isCompatibleCreateAndModifyActions(*createAction.action, *modifyAction.action))
+				continue;
+
 			TestSpec spec;
 			spec.name = createAction.label + "_" + modifyAction.label;
 			spec.desc = "gles2_tex_sub_image";
diff --git a/modules/egl/teglImageUtil.cpp b/modules/egl/teglImageUtil.cpp
index f4b5dbf..badb9ab 100644
--- a/modules/egl/teglImageUtil.cpp
+++ b/modules/egl/teglImageUtil.cpp
@@ -180,6 +180,7 @@
 public:
 							TextureImageSource	(GLenum format, GLenum type, bool useTexLevel0) : m_format(format), m_type(type), m_useTexLevel0(useTexLevel0) {}
 	MovePtr<ClientBuffer>	createBuffer		(const glw::Functions& gl, Texture2D* reference) const;
+	GLenum					getFormat			(void) const { return m_format; }
 
 protected:
 	AttribMap				getCreateAttribs	(void) const;
@@ -304,6 +305,7 @@
 
 	string					getRequiredExtension	(void) const 	{ return "EGL_KHR_gl_renderbuffer_image"; }
 	MovePtr<ClientBuffer>	createBuffer			(const glw::Functions& gl, Texture2D* reference) const;
+	GLenum					getFormat				(void) const { return m_format; }
 
 protected:
 	EGLenum					getSource				(void) const	{ return EGL_GL_RENDERBUFFER_KHR; }
@@ -397,13 +399,15 @@
 class UnsupportedImageSource : public ImageSource
 {
 public:
-							UnsupportedImageSource	(const string& message) : m_message(message) {}
+							UnsupportedImageSource	(const string& message, GLenum format) : m_message(message), m_format(format) {}
 	string					getRequiredExtension	(void) const { fail(); return ""; }
 	MovePtr<ClientBuffer>	createBuffer			(const glw::Functions&, tcu::Texture2D*) const { fail(); return de::MovePtr<ClientBuffer>(); }
 	EGLImageKHR				createImage				(const Library& egl, EGLDisplay dpy, EGLContext ctx, EGLClientBuffer clientBuffer) const;
+	GLenum					getFormat				(void) const { return m_format; }
 
 private:
 	const string			m_message;
+	GLenum					m_format;
 
 	void					fail					(void) const { TCU_THROW(NotSupportedError, m_message.c_str()); }
 };
@@ -427,9 +431,9 @@
 	return MovePtr<ImageSource>(new RenderbufferImageSource(format));
 }
 
-MovePtr<ImageSource> createUnsupportedImageSource (const string& message)
+MovePtr<ImageSource> createUnsupportedImageSource (const string& message, GLenum format)
 {
-	return MovePtr<ImageSource>(new UnsupportedImageSource(message));
+	return MovePtr<ImageSource>(new UnsupportedImageSource(message, format));
 }
 
 } // Image
diff --git a/modules/egl/teglImageUtil.hpp b/modules/egl/teglImageUtil.hpp
index 7a2723c..aeb6669 100644
--- a/modules/egl/teglImageUtil.hpp
+++ b/modules/egl/teglImageUtil.hpp
@@ -74,11 +74,12 @@
 	virtual std::string					getRequiredExtension(void) const = 0;
 	virtual de::MovePtr<ClientBuffer>	createBuffer		(const glw::Functions& gl, tcu::Texture2D* reference = DE_NULL) const = 0;
 	virtual eglw::EGLImageKHR			createImage			(const eglw::Library& egl, eglw::EGLDisplay dpy, eglw::EGLContext ctx, eglw::EGLClientBuffer clientBuffer) const = 0;
+	virtual glw::GLenum					getFormat			(void) const = 0;
 };
 
 de::MovePtr<ImageSource> createTextureImageSource			(eglw::EGLenum source, glw::GLenum format, glw::GLenum type, bool useTexLevel0 = false);
 de::MovePtr<ImageSource> createRenderbufferImageSource		(glw::GLenum format);
-de::MovePtr<ImageSource> createUnsupportedImageSource		(const std::string& message);
+de::MovePtr<ImageSource> createUnsupportedImageSource		(const std::string& message, glw::GLenum format);
 
 } // Image
 } // egl
diff --git a/modules/egl/teglNegativeApiTests.cpp b/modules/egl/teglNegativeApiTests.cpp
index 3503c86..98e3f94 100644
--- a/modules/egl/teglNegativeApiTests.cpp
+++ b/modules/egl/teglNegativeApiTests.cpp
@@ -681,18 +681,6 @@
 			expectError(EGL_BAD_CONFIG);
 
 			log << TestLog::EndSection;
-
-			log << TestLog::Section("Test3", "EGL_BAD_NATIVE_WINDOW may be generated if native_window is not a valid native window");
-
-			// Any window-capable config.
-			EGLConfig windowConfig;
-			if (getConfig(&windowConfig, FilterList() << surfaceBits<EGL_WINDOW_BIT>))
-			{
-				expectNoSurface(eglCreateWindowSurface(display, windowConfig, DE_NULL, s_emptyAttribList));
-				expectError(EGL_BAD_NATIVE_WINDOW);
-			}
-
-			log << TestLog::EndSection;
 		});
 
 	TEGL_ADD_API_CASE(destroy_context, "eglDestroyContext() negative tests",
diff --git a/modules/egl/teglRenderTests.cpp b/modules/egl/teglRenderTests.cpp
index 19a970b..81a32d7 100644
--- a/modules/egl/teglRenderTests.cpp
+++ b/modules/egl/teglRenderTests.cpp
@@ -125,6 +125,22 @@
 	int				stencilRef;
 };
 
+static bool isANarrowScreenSpaceTriangle (const tcu::Vec4& p0, const tcu::Vec4& p1, const tcu::Vec4& p2)
+{
+	// to clip space
+	const tcu::Vec2	csp0 				= p0.swizzle(0, 1) / p0.w();
+	const tcu::Vec2	csp1 				= p1.swizzle(0, 1) / p1.w();
+	const tcu::Vec2	csp2 				= p2.swizzle(0, 1) / p2.w();
+
+	const tcu::Vec2	e01					= (csp1 - csp0);
+	const tcu::Vec2	e02					= (csp2 - csp0);
+
+	const float		minimumVisibleArea	= 0.4f; // must cover at least 10% of the surface
+	const float		visibleArea			= de::abs(e01.x() * e02.y() - e02.x() * e01.y()) * 0.5f;
+
+	return visibleArea < minimumVisibleArea;
+}
+
 void randomizeDrawOp (de::Random& rnd, DrawPrimitiveOp& drawOp)
 {
 	const int	minStencilRef	= 0;
@@ -173,6 +189,34 @@
 				color.z()		= rnd.getFloat(minRGB, maxRGB);
 				color.w()		= rnd.getFloat(minAlpha, maxAlpha);
 			}
+
+			// avoid generating narrow triangles
+			{
+				const int	maxAttempts	= 40;
+				int			numAttempts	= 0;
+				tcu::Vec4&	p0			= drawOp.positions[triNdx*3 + 0];
+				tcu::Vec4&	p1			= drawOp.positions[triNdx*3 + 1];
+				tcu::Vec4&	p2			= drawOp.positions[triNdx*3 + 2];
+
+				while (isANarrowScreenSpaceTriangle(p0, p1, p2))
+				{
+					p1.x()	= cx + rnd.getFloat(-maxTriOffset, maxTriOffset);
+					p1.y()	= cy + rnd.getFloat(-maxTriOffset, maxTriOffset);
+					p1.z()	= rnd.getFloat(minDepth, maxDepth);
+					p1.w()	= 1.0f;
+
+					p2.x()	= cx + rnd.getFloat(-maxTriOffset, maxTriOffset);
+					p2.y()	= cy + rnd.getFloat(-maxTriOffset, maxTriOffset);
+					p2.z()	= rnd.getFloat(minDepth, maxDepth);
+					p2.w()	= 1.0f;
+
+					if (++numAttempts > maxAttempts)
+					{
+						DE_ASSERT(false);
+						break;
+					}
+				}
+			}
 		}
 	}
 	else
@@ -535,6 +579,8 @@
 			DE_ASSERT(false);
 	}
 
+	gl.disable(GL_DITHER);
+
 	gl.vertexAttribPointer(gles2Program.getPositionLoc(), 4, GL_FLOAT, GL_FALSE, 0, &drawOp.positions[0]);
 	gl.vertexAttribPointer(gles2Program.getColorLoc(), 4, GL_FLOAT, GL_FALSE, 0, &drawOp.colors[0]);
 
diff --git a/modules/gles3/functional/CMakeLists.txt b/modules/gles3/functional/CMakeLists.txt
index 7705dfb..1adc70e 100644
--- a/modules/gles3/functional/CMakeLists.txt
+++ b/modules/gles3/functional/CMakeLists.txt
@@ -13,6 +13,8 @@
 	es3fBufferWriteTests.hpp
 	es3fColorClearTest.cpp
 	es3fColorClearTest.hpp
+	es3fDefaultVertexArrayObjectTests.cpp
+	es3fDefaultVertexArrayObjectTests.hpp
 	es3fDefaultVertexAttributeTests.cpp
 	es3fDefaultVertexAttributeTests.hpp
 	es3fDepthStencilClearTests.cpp
diff --git a/modules/gles3/functional/es3fDefaultVertexArrayObjectTests.cpp b/modules/gles3/functional/es3fDefaultVertexArrayObjectTests.cpp
new file mode 100644
index 0000000..5ee8786
--- /dev/null
+++ b/modules/gles3/functional/es3fDefaultVertexArrayObjectTests.cpp
@@ -0,0 +1,85 @@
+/*-------------------------------------------------------------------------
+ * drawElements Quality Program OpenGL ES 3.0 Module
+ * -------------------------------------------------
+ *
+ * Copyright 2015 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ *//*!
+ * \file
+ * \brief Default vertex array tests
+ *//*--------------------------------------------------------------------*/
+
+#include "es3fDefaultVertexArrayObjectTests.hpp"
+
+#include "gluCallLogWrapper.hpp"
+#include "gluRenderContext.hpp"
+
+namespace deqp
+{
+namespace gles3
+{
+namespace Functional
+{
+namespace
+{
+
+class VertexAttributeDivisorCase : public TestCase
+{
+public:
+					VertexAttributeDivisorCase	(Context& context, const char* name, const char* description);
+	IterateResult	iterate						(void);
+};
+
+VertexAttributeDivisorCase::VertexAttributeDivisorCase (Context& context, const char* name, const char* description)
+	: TestCase(context, name, description)
+{
+}
+
+VertexAttributeDivisorCase::IterateResult VertexAttributeDivisorCase::iterate (void)
+{
+	glu::CallLogWrapper gl(m_context.getRenderContext().getFunctions(), m_testCtx.getLog());
+
+	m_testCtx.getLog()	<< tcu::TestLog::Message
+						<< "Using VertexAttribDivisor with default VAO.\n"
+						<< "Expecting no error."
+						<< tcu::TestLog::EndMessage;
+
+	gl.enableLogging(true);
+	gl.glBindVertexArray(0);
+
+	// Using vertexAttribDivisor with default vao is an error in ES 3.1, but not
+	// in ES 3.0. See Khronos bug 13564 for details.
+	gl.glVertexAttribDivisor(0, 3);
+	GLU_EXPECT_NO_ERROR(gl.glGetError(), "VertexAttribDivisor");
+
+	m_testCtx.setTestResult(QP_TEST_RESULT_PASS, "Pass");
+	return STOP;
+}
+
+} // anonymous
+
+DefaultVertexArrayObjectTests::DefaultVertexArrayObjectTests (Context& context)
+	: TestCaseGroup(context, "default_vertex_array_object", "Default vertex array object")
+{
+}
+
+void DefaultVertexArrayObjectTests::init (void)
+{
+	addChild(new VertexAttributeDivisorCase(m_context, "vertex_attrib_divisor", "Use VertexAttribDivisor with default VAO"));
+}
+
+} // Functional
+} // gles3
+} // deqp
diff --git a/modules/gles3/functional/es3fDefaultVertexArrayObjectTests.hpp b/modules/gles3/functional/es3fDefaultVertexArrayObjectTests.hpp
new file mode 100644
index 0000000..ab3eeb2
--- /dev/null
+++ b/modules/gles3/functional/es3fDefaultVertexArrayObjectTests.hpp
@@ -0,0 +1,53 @@
+#ifndef _ES3FDEFAULTVERTEXARRAYOBJECTTESTS_HPP
+#define _ES3FDEFAULTVERTEXARRAYOBJECTTESTS_HPP
+/*-------------------------------------------------------------------------
+ * drawElements Quality Program OpenGL ES 3.0 Module
+ * -------------------------------------------------
+ *
+ * Copyright 2015 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ *//*!
+ * \file
+ * \brief Default vertex array tests
+ *//*--------------------------------------------------------------------*/
+
+#include "tcuDefs.hpp"
+#include "tes3TestCase.hpp"
+
+namespace deqp
+{
+namespace gles3
+{
+namespace Functional
+{
+
+class DefaultVertexArrayObjectTests : public TestCaseGroup
+{
+public:
+										DefaultVertexArrayObjectTests	(Context& context);
+	virtual								~DefaultVertexArrayObjectTests	(void) {}
+
+	virtual void						init							(void);
+
+private:
+										DefaultVertexArrayObjectTests	(const DefaultVertexArrayObjectTests& other);
+	DefaultVertexArrayObjectTests&		operator=						(const DefaultVertexArrayObjectTests& other);
+};
+
+} // Functional
+} // gles3
+} // deqp
+
+#endif // _ES3FDEFAULTVERTEXARRAYOBJECTTESTS_HPP
diff --git a/modules/gles3/functional/es3fFunctionalTests.cpp b/modules/gles3/functional/es3fFunctionalTests.cpp
index e987fc4..6f6f308 100644
--- a/modules/gles3/functional/es3fFunctionalTests.cpp
+++ b/modules/gles3/functional/es3fFunctionalTests.cpp
@@ -58,6 +58,7 @@
 #include "es3fDefaultVertexAttributeTests.hpp"
 #include "es3fScissorTests.hpp"
 #include "es3fLifetimeTests.hpp"
+#include "es3fDefaultVertexArrayObjectTests.hpp"
 
 // Shader tests
 #include "es3fShaderApiTests.hpp"
@@ -369,42 +370,43 @@
 
 void FunctionalTests::init (void)
 {
-	addChild(new PrerequisiteTests			(m_context));
-	addChild(new ImplementationLimitTests	(m_context));
-	addChild(new ColorClearTest				(m_context));
-	addChild(new DepthStencilClearTests		(m_context));
-	addChild(new BufferTests				(m_context));
-	addChild(new ShaderTests				(m_context));
-	addChild(new TextureTests				(m_context));
-	addChild(new FragmentOpTests			(m_context));
-	addChild(new FboTests					(m_context));
-	addChild(new VertexArrayTestGroup		(m_context));
-	addChild(new UniformBlockTests			(m_context));
-	addChild(new UniformApiTests			(m_context));
-	addChild(createAttributeLocationTests	(m_context));
-	addChild(new FragmentOutputTests		(m_context));
-	addChild(new SamplerObjectTests			(m_context));
-	addChild(new PixelBufferObjectTests		(m_context));
-	addChild(new RasterizationTests			(m_context));
-	addChild(new OcclusionQueryTests		(m_context));
-	addChild(new VertexArrayObjectTestGroup	(m_context));
-	addChild(new PrimitiveRestartTests		(m_context));
-	addChild(new InstancedRenderingTests	(m_context));
-	addChild(new RasterizerDiscardTests		(m_context));
-	addChild(new TransformFeedbackTests		(m_context));
-	addChild(new SyncTests					(m_context));
-	addChild(new ShaderApiTests				(m_context));
-	addChild(new NegativeApiTestGroup		(m_context));
-	addChild(new MultisampleTests			(m_context));
-	addChild(new ReadPixelsTests			(m_context));
-	addChild(new DitheringTests				(m_context));
-	addChild(new StateQueryTests			(m_context));
-	addChild(new ClippingTests				(m_context));
-	addChild(new PolygonOffsetTests			(m_context));
-	addChild(new DrawTests					(m_context));
-	addChild(new FlushFinishTests			(m_context));
-	addChild(new DefaultVertexAttributeTests(m_context));
-	addChild(createLifetimeTests			(m_context));
+	addChild(new PrerequisiteTests				(m_context));
+	addChild(new ImplementationLimitTests		(m_context));
+	addChild(new ColorClearTest					(m_context));
+	addChild(new DepthStencilClearTests			(m_context));
+	addChild(new BufferTests					(m_context));
+	addChild(new ShaderTests					(m_context));
+	addChild(new TextureTests					(m_context));
+	addChild(new FragmentOpTests				(m_context));
+	addChild(new FboTests						(m_context));
+	addChild(new VertexArrayTestGroup			(m_context));
+	addChild(new UniformBlockTests				(m_context));
+	addChild(new UniformApiTests				(m_context));
+	addChild(createAttributeLocationTests		(m_context));
+	addChild(new FragmentOutputTests			(m_context));
+	addChild(new SamplerObjectTests				(m_context));
+	addChild(new PixelBufferObjectTests			(m_context));
+	addChild(new RasterizationTests				(m_context));
+	addChild(new OcclusionQueryTests			(m_context));
+	addChild(new VertexArrayObjectTestGroup		(m_context));
+	addChild(new PrimitiveRestartTests			(m_context));
+	addChild(new InstancedRenderingTests		(m_context));
+	addChild(new RasterizerDiscardTests			(m_context));
+	addChild(new TransformFeedbackTests			(m_context));
+	addChild(new SyncTests						(m_context));
+	addChild(new ShaderApiTests					(m_context));
+	addChild(new NegativeApiTestGroup			(m_context));
+	addChild(new MultisampleTests				(m_context));
+	addChild(new ReadPixelsTests				(m_context));
+	addChild(new DitheringTests					(m_context));
+	addChild(new StateQueryTests				(m_context));
+	addChild(new ClippingTests					(m_context));
+	addChild(new PolygonOffsetTests				(m_context));
+	addChild(new DrawTests						(m_context));
+	addChild(new FlushFinishTests				(m_context));
+	addChild(new DefaultVertexAttributeTests	(m_context));
+	addChild(createLifetimeTests				(m_context));
+	addChild(new DefaultVertexArrayObjectTests	(m_context));
 }
 
 } // Functional
diff --git a/modules/gles3/functional/es3fNegativeShaderApiTests.cpp b/modules/gles3/functional/es3fNegativeShaderApiTests.cpp
index 81b5fe7..cd3fe1d 100644
--- a/modules/gles3/functional/es3fNegativeShaderApiTests.cpp
+++ b/modules/gles3/functional/es3fNegativeShaderApiTests.cpp
@@ -511,7 +511,7 @@
 		});
 	ES3F_ADD_API_CASE(get_sampler_parameteriv, "Invalid glGetSamplerParameteriv() usage",
 		{
-			int				params;
+			int				params	= -1;
 			GLuint			sampler;
 			glGenSamplers	(1, &sampler);
 
@@ -529,7 +529,7 @@
 		});
 	ES3F_ADD_API_CASE(get_sampler_parameterfv, "Invalid glGetSamplerParameterfv() usage",
 		{
-			float			params;
+			float			params	= 0.0f;
 			GLuint			sampler;
 			glGenSamplers	(1, &sampler);
 
@@ -564,7 +564,7 @@
 		});
 	ES3F_ADD_API_CASE(sampler_parameteriv, "Invalid glSamplerParameteriv() usage",
 		{
-			int				params;
+			int				params	= -1;
 			GLuint			sampler;
 			glGenSamplers	(1, &sampler);
 
@@ -601,7 +601,7 @@
 		});
 	ES3F_ADD_API_CASE(sampler_parameterfv, "Invalid glSamplerParameterfv() usage",
 		{
-			float			params;
+			float			params	= 0.0f;
 			GLuint			sampler;
 			glGenSamplers	(1, &sampler);
 
diff --git a/modules/gles3/functional/es3fNegativeStateApiTests.cpp b/modules/gles3/functional/es3fNegativeStateApiTests.cpp
index 958f523..4254507 100644
--- a/modules/gles3/functional/es3fNegativeStateApiTests.cpp
+++ b/modules/gles3/functional/es3fNegativeStateApiTests.cpp
@@ -233,10 +233,10 @@
 		});
 	ES3F_ADD_API_CASE(get_shader_info_log, "Invalid glGetShaderInfoLog() usage",
 		{
-			GLuint shader	= glCreateShader(GL_VERTEX_SHADER);
-			GLuint program	= glCreateProgram();
-			GLsizei length[1];
-			char infoLog[128];
+			GLuint shader		= glCreateShader(GL_VERTEX_SHADER);
+			GLuint program		= glCreateProgram();
+			GLsizei length[1]	= { 0 };
+			char infoLog[128]	= { 0 };
 
 			m_log << TestLog::Section("", "GL_INVALID_VALUE is generated if shader is not a value generated by OpenGL.");
 			glGetShaderInfoLog(-1, 128, &length[0], &infoLog[0]);
@@ -279,8 +279,8 @@
 		});
 	ES3F_ADD_API_CASE(get_shader_source, "Invalid glGetShaderSource() usage",
 		{
-			GLsizei length[1];
-			char source[1];
+			GLsizei length[1]	= { 0 };
+			char source[1]		= { 0 };
 			GLuint program	= glCreateProgram();
 			GLuint shader	= glCreateShader(GL_VERTEX_SHADER);
 
@@ -331,10 +331,10 @@
 		});
 	ES3F_ADD_API_CASE(get_program_info_log, "Invalid glGetProgramInfoLog() usage",
 		{
-			GLuint program	= glCreateProgram();
-			GLuint shader	= glCreateShader(GL_VERTEX_SHADER);
-			GLsizei length[1];
-			char infoLog[1];
+			GLuint program		= glCreateProgram();
+			GLuint shader		= glCreateShader(GL_VERTEX_SHADER);
+			GLsizei length[1]	= { 0 };
+			char infoLog[1]		= { 0 };
 
 			m_log << TestLog::Section("", "GL_INVALID_VALUE is generated if program is not a value generated by OpenGL.");
 			glGetProgramInfoLog (-1, 1, &length[0], &infoLog[0]);
@@ -359,7 +359,7 @@
 
 	ES3F_ADD_API_CASE(get_tex_parameterfv, "Invalid glGetTexParameterfv() usage",
 		{
-			GLfloat params[1];
+			GLfloat params[1] = { 0.0f };
 
 			m_log << TestLog::Section("", "GL_INVALID_ENUM is generated if target or pname is not an accepted value.");
 			glGetTexParameterfv (-1, GL_TEXTURE_MAG_FILTER, &params[0]);
@@ -372,7 +372,7 @@
 		});
 	ES3F_ADD_API_CASE(get_tex_parameteriv, "Invalid glGetTexParameteriv() usage",
 		{
-			GLint params[1];
+			GLint params[1] = { 0 };
 
 			m_log << TestLog::Section("", "GL_INVALID_ENUM is generated if target or pname is not an accepted value.");
 			glGetTexParameteriv (-1, GL_TEXTURE_MAG_FILTER, &params[0]);
@@ -394,7 +394,7 @@
 
 			GLuint shader		= glCreateShader(GL_VERTEX_SHADER);
 			GLuint programEmpty = glCreateProgram();
-			GLfloat params[4];
+			GLfloat params[4]	= { 0.0f };
 
 			m_log << TestLog::Section("", "GL_INVALID_VALUE is generated if program is not a value generated by OpenGL.");
 			glGetUniformfv (-1, unif, &params[0]);
@@ -430,7 +430,7 @@
 
 			GLuint shader		= glCreateShader(GL_VERTEX_SHADER);
 			GLuint programEmpty = glCreateProgram();
-			GLint params[4];
+			GLint params[4]		= { 0 };
 
 			m_log << TestLog::Section("", "GL_INVALID_VALUE is generated if program is not a value generated by OpenGL.");
 			glGetUniformiv (-1, unif, &params[0]);
@@ -466,7 +466,7 @@
 
 			GLuint shader		= glCreateShader(GL_VERTEX_SHADER);
 			GLuint programEmpty = glCreateProgram();
-			GLuint params[4];
+			GLuint params[4]	= { 0 };
 
 			m_log << TestLog::Section("", "GL_INVALID_VALUE is generated if program is not a value generated by OpenGL.");
 			glGetUniformuiv (-1, unif, &params[0]);
diff --git a/modules/gles3/functional/es3fNegativeTextureApiTests.cpp b/modules/gles3/functional/es3fNegativeTextureApiTests.cpp
index 4d74c14..e1361ef 100644
--- a/modules/gles3/functional/es3fNegativeTextureApiTests.cpp
+++ b/modules/gles3/functional/es3fNegativeTextureApiTests.cpp
@@ -1986,9 +1986,10 @@
 			expectError(GL_INVALID_ENUM);
 			m_log << TestLog::EndSection;
 
-			m_log << TestLog::Section("", "GL_INVALID_VALUE is generated if internalFormat is not one of the accepted resolution and format symbolic constants.");
+			m_log << TestLog::Section("", "GL_INVALID_VALUE is generated if internalFormat is not one of the accepted resolution and format symbolic constants "
+										  "or GL_INVALID_OPERATION is generated if internalformat, format and type are not compatible.");
 			glTexImage3D(GL_TEXTURE_3D, 0, 0, 1, 1, 1, 0, GL_RGBA, GL_UNSIGNED_BYTE, 0);
-			expectError(GL_INVALID_VALUE);
+			expectError(GL_INVALID_VALUE, GL_INVALID_OPERATION);
 			m_log << TestLog::EndSection;
 
 			m_log << TestLog::Section("", "GL_INVALID_OPERATION is generated if target is GL_TEXTURE_3D and format is GL_DEPTH_COMPONENT, or GL_DEPTH_STENCIL.");
@@ -2833,7 +2834,7 @@
 			glBindTexture	(GL_TEXTURE_2D, texture);
 
 			m_log << TestLog::Section("", "GL_INVALID_OPERATION is generated if the texture object currently bound to target already has GL_TEXTURE_IMMUTABLE_FORMAT set to GL_TRUE.");
-			deInt32			immutable;
+			deInt32			immutable	= -1;
 			glGetTexParameteriv(GL_TEXTURE_2D, GL_TEXTURE_IMMUTABLE_FORMAT, &immutable);
 			m_log << TestLog::Message << "// GL_TEXTURE_IMMUTABLE_FORMAT = " << ((immutable != 0) ? "GL_TRUE" : "GL_FALSE") << TestLog::EndMessage;
 			glTexStorage2D	(GL_TEXTURE_2D, 1, GL_RGBA8, 16, 16);
@@ -2923,7 +2924,7 @@
 			glBindTexture	(GL_TEXTURE_3D, texture);
 
 			m_log << TestLog::Section("", "GL_INVALID_OPERATION is generated if the texture object currently bound to target already has GL_TEXTURE_IMMUTABLE_FORMAT set to GL_TRUE.");
-			deInt32			immutable;
+			deInt32			immutable	= -1;
 			glGetTexParameteriv(GL_TEXTURE_3D, GL_TEXTURE_IMMUTABLE_FORMAT, &immutable);
 			m_log << TestLog::Message << "// GL_TEXTURE_IMMUTABLE_FORMAT = " << ((immutable != 0) ? "GL_TRUE" : "GL_FALSE") << TestLog::EndMessage;
 			glTexStorage3D	(GL_TEXTURE_3D, 1, GL_RGBA8, 4, 4, 4);
diff --git a/modules/gles3/scripts/gen-uniform-blocks.py b/modules/gles3/scripts/gen-uniform-blocks.py
index 5353213..24a4e8b 100644
--- a/modules/gles3/scripts/gen-uniform-blocks.py
+++ b/modules/gles3/scripts/gen-uniform-blocks.py
@@ -687,7 +687,7 @@
 	${{OUTPUT}} = uniformBlock.uniformMember;
 }"""[1:]
 
-invalidCharacterBlockNameShaderTemplate = """
+invalidNumberBlockNameShaderTemplate = """
 #version 300 es
 precision highp float;
 
@@ -703,6 +703,38 @@
 	${{OUTPUT}} = uniformBlock.uniformMember;
 }"""[1:]
 
+invalidHashBlockNameShaderTemplate = """
+#version 300 es
+precision highp float;
+
+${{OUTPUT_DECLARATION}}
+
+uniform #UniformBlock
+{
+	vec4 uniformMember;
+} uniformBlock;
+
+void main()
+{
+	${{OUTPUT}} = uniformBlock.uniformMember;
+}"""[1:]
+
+invalidDollarBlockNameShaderTemplate = """
+#version 300 es
+precision highp float;
+
+${{OUTPUT_DECLARATION}}
+
+uniform $UniformBlock
+{
+	vec4 uniformMember;
+} uniformBlock;
+
+void main()
+{
+	${{OUTPUT}} = uniformBlock.uniformMember;
+}"""[1:]
+
 invalidIdentifierBlockNameShaderTemplate = """
 #version 300 es
 precision highp float;
@@ -736,7 +768,7 @@
 	${{OUTPUT}} = uniformBlock.uniformMember;
 }""")[1:]
 
-invalidCharacterInstanceNameShaderTemplate = """
+invalidNumberInstanceNameShaderTemplate = """
 #version 300 es
 precision highp float;
 
@@ -752,6 +784,38 @@
 	${{OUTPUT}} = 0uniformBlock.uniformMember;
 }"""[1:]
 
+invalidHashInstanceNameShaderTemplate = """
+#version 300 es
+precision highp float;
+
+${{OUTPUT_DECLARATION}}
+
+uniform UniformInstance
+{
+	vec4 uniformMember;
+} #uniformBlock;
+
+void main()
+{
+	${{OUTPUT}} = #uniformBlock.uniformMember;
+}"""[1:]
+
+invalidDollarInstanceNameShaderTemplate = """
+#version 300 es
+precision highp float;
+
+${{OUTPUT_DECLARATION}}
+
+uniform UniformInstance
+{
+	vec4 uniformMember;
+} $uniformBlock;
+
+void main()
+{
+	${{OUTPUT}} = $uniformBlock.uniformMember;
+}"""[1:]
+
 invalidIdentifierInstanceNameShaderTemplate = """
 #version 300 es
 precision highp float;
@@ -837,10 +901,14 @@
 			+ sum([createCases("member_layout_%s" % qualifier, invalidMemberLayoutShaderTemplate % qualifier, False)
 					for qualifier in ["shared", "packed", "std140"]], [])
 			+ createCases("missing_block_name", missingBlockNameShaderTemplate, False)
-			+ createCases("invalid_character_block_name", invalidCharacterBlockNameShaderTemplate, False)
+			+ createCases("invalid_number_block_name", invalidNumberBlockNameShaderTemplate, False)
+			+ createCases("invalid_hash_block_name", invalidHashBlockNameShaderTemplate, False)
+			+ createCases("invalid_dollar_block_name", invalidDollarBlockNameShaderTemplate, False)
 			+ createCases("invalid_identifier_block_name", invalidIdentifierBlockNameShaderTemplate, False)
 			+ createCases("too_long_block_name", tooLongIdentifierBlockNameShaderTemplate, False)
-			+ createCases("invalid_character_instance_name", invalidCharacterInstanceNameShaderTemplate, False)
+			+ createCases("invalid_number_instance_name", invalidNumberInstanceNameShaderTemplate, False)
+			+ createCases("invalid_hash_instance_name", invalidDollarInstanceNameShaderTemplate, False)
+			+ createCases("invalid_dollar_instance_name", invalidDollarInstanceNameShaderTemplate, False)
 			+ createCases("invalid_identifier_instance_name", invalidIdentifierInstanceNameShaderTemplate, False)
 			+ createCases("double_underscore_block_name", doubleUnderscoreIdentifierBlockNameShaderTemplate, False)
 			+ createCases("double_underscore_instance_name", doubleUnderscoreIdentifierInstanceNameShaderTemplate, False)
diff --git a/modules/gles31/functional/CMakeLists.txt b/modules/gles31/functional/CMakeLists.txt
index a4240f1..699664a 100644
--- a/modules/gles31/functional/CMakeLists.txt
+++ b/modules/gles31/functional/CMakeLists.txt
@@ -11,6 +11,10 @@
 	es31fComputeShaderBuiltinVarTests.hpp
 	es31fFunctionalTests.cpp
 	es31fFunctionalTests.hpp
+	es31fDebugTests.cpp
+	es31fDebugTests.hpp
+	es31fDefaultVertexArrayObjectTests.cpp
+	es31fDefaultVertexArrayObjectTests.hpp
 	es31fDrawTests.cpp
 	es31fDrawTests.hpp
 	es31fGeometryShaderTests.cpp
@@ -123,8 +127,6 @@
 	es31fTessellationGeometryInteractionTests.hpp
 	es31fUniformBlockTests.cpp
 	es31fUniformBlockTests.hpp
-	es31fDebugTests.cpp
-	es31fDebugTests.hpp
 	es31fFboNoAttachmentTests.cpp
 	es31fFboNoAttachmentTests.hpp
 	es31fNegativeTestShared.cpp
diff --git a/modules/gles31/functional/es31fDefaultVertexArrayObjectTests.cpp b/modules/gles31/functional/es31fDefaultVertexArrayObjectTests.cpp
new file mode 100644
index 0000000..b9cf3b8
--- /dev/null
+++ b/modules/gles31/functional/es31fDefaultVertexArrayObjectTests.cpp
@@ -0,0 +1,92 @@
+/*-------------------------------------------------------------------------
+ * drawElements Quality Program OpenGL ES 3.1 Module
+ * -------------------------------------------------
+ *
+ * Copyright 2015 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ *//*!
+ * \file
+ * \brief Default vertex array tests
+ *//*--------------------------------------------------------------------*/
+
+#include "es31fDefaultVertexArrayObjectTests.hpp"
+
+#include "gluCallLogWrapper.hpp"
+#include "gluRenderContext.hpp"
+
+#include "glwEnums.hpp"
+
+namespace deqp
+{
+namespace gles31
+{
+namespace Functional
+{
+namespace
+{
+
+class VertexAttributeDivisorCase : public TestCase
+{
+public:
+					VertexAttributeDivisorCase	(Context& context, const char* name, const char* description);
+	IterateResult	iterate						(void);
+};
+
+VertexAttributeDivisorCase::VertexAttributeDivisorCase (Context& context, const char* name, const char* description)
+	: TestCase(context, name, description)
+{
+}
+
+VertexAttributeDivisorCase::IterateResult VertexAttributeDivisorCase::iterate (void)
+{
+	glu::CallLogWrapper gl		(m_context.getRenderContext().getFunctions(), m_testCtx.getLog());
+	deUint32			error;
+
+	m_testCtx.getLog()	<< tcu::TestLog::Message
+						<< "Using VertexAttribDivisor with default VAO.\n"
+						<< "Expecting INVALID_OPERATION."
+						<< tcu::TestLog::EndMessage;
+
+	gl.enableLogging(true);
+	gl.glBindVertexArray(0);
+
+	// Using vertexAttribDivisor with default vao is an error in ES 3.1, but not
+	// in ES 3.0. See Khronos bug 13564 for details.
+	gl.glVertexAttribDivisor(0, 3);
+	error = gl.glGetError();
+
+	if (error == GL_INVALID_OPERATION)
+		m_testCtx.setTestResult(QP_TEST_RESULT_PASS, "Pass");
+	else
+		m_testCtx.setTestResult(QP_TEST_RESULT_FAIL, "Incorrect error value");
+
+	return STOP;
+}
+
+} // anonymous
+
+DefaultVertexArrayObjectTests::DefaultVertexArrayObjectTests (Context& context)
+	: TestCaseGroup(context, "default_vertex_array_object", "Default vertex array object")
+{
+}
+
+void DefaultVertexArrayObjectTests::init (void)
+{
+	addChild(new VertexAttributeDivisorCase(m_context, "vertex_attrib_divisor", "Use VertexAttribDivisor with default VAO"));
+}
+
+} // Functional
+} // gles31
+} // deqp
diff --git a/modules/gles31/functional/es31fDefaultVertexArrayObjectTests.hpp b/modules/gles31/functional/es31fDefaultVertexArrayObjectTests.hpp
new file mode 100644
index 0000000..5d9872d
--- /dev/null
+++ b/modules/gles31/functional/es31fDefaultVertexArrayObjectTests.hpp
@@ -0,0 +1,53 @@
+#ifndef _ES31FDEFAULTVERTEXARRAYOBJECTTESTS_HPP
+#define _ES31FDEFAULTVERTEXARRAYOBJECTTESTS_HPP
+/*-------------------------------------------------------------------------
+ * drawElements Quality Program OpenGL ES 3.1 Module
+ * -------------------------------------------------
+ *
+ * Copyright 2015 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ *//*!
+ * \file
+ * \brief Default vertex array tests
+ *//*--------------------------------------------------------------------*/
+
+#include "tcuDefs.hpp"
+#include "tes31TestCase.hpp"
+
+namespace deqp
+{
+namespace gles31
+{
+namespace Functional
+{
+
+class DefaultVertexArrayObjectTests : public TestCaseGroup
+{
+public:
+										DefaultVertexArrayObjectTests	(Context& context);
+	virtual								~DefaultVertexArrayObjectTests	(void) {}
+
+	virtual void						init							(void);
+
+private:
+										DefaultVertexArrayObjectTests	(const DefaultVertexArrayObjectTests& other);
+	DefaultVertexArrayObjectTests&		operator=						(const DefaultVertexArrayObjectTests& other);
+};
+
+} // Functional
+} // gles31
+} // deqp
+
+#endif // _ES31FDEFAULTVERTEXARRAYOBJECTTESTS_HPP
diff --git a/modules/gles31/functional/es31fFunctionalTests.cpp b/modules/gles31/functional/es31fFunctionalTests.cpp
index 5b99d2e..303415d 100644
--- a/modules/gles31/functional/es31fFunctionalTests.cpp
+++ b/modules/gles31/functional/es31fFunctionalTests.cpp
@@ -86,6 +86,7 @@
 #include "es31fAndroidExtensionPackES31ATests.hpp"
 #include "es31fCopyImageTests.hpp"
 #include "es31fDrawBuffersIndexedTests.hpp"
+#include "es31fDefaultVertexArrayObjectTests.hpp"
 
 namespace deqp
 {
@@ -195,6 +196,7 @@
 		addChild(new ShaderBuiltinConstantTests			(m_context));
 		addChild(new ShaderHelperInvocationTests		(m_context));
 		addChild(new ShaderLibraryTest					(m_context, "implicit_conversions", "GL_EXT_shader_implicit_conversions Tests"));
+		addChild(new ShaderLibraryTest					(m_context, "uniform_block", "Uniform block tests"));
 	}
 };
 
@@ -331,6 +333,7 @@
 	addChild(new AndroidExtensionPackES31ATests			(m_context));
 	addChild(createCopyImageTests						(m_context));
 	addChild(createDrawBuffersIndexedTests				(m_context));
+	addChild(new DefaultVertexArrayObjectTests			(m_context));
 }
 
 } // Functional
diff --git a/modules/gles31/functional/es31fVertexAttributeBindingStateQueryTests.cpp b/modules/gles31/functional/es31fVertexAttributeBindingStateQueryTests.cpp
index 21d5bf3..309123c 100644
--- a/modules/gles31/functional/es31fVertexAttributeBindingStateQueryTests.cpp
+++ b/modules/gles31/functional/es31fVertexAttributeBindingStateQueryTests.cpp
@@ -578,9 +578,11 @@
 void MixedVertexBindingDivisorCase::test (tcu::ResultCollector& result)
 {
 	glu::CallLogWrapper gl					(m_context.getRenderContext().getFunctions(), m_testCtx.getLog());
+	glu::VertexArray	vao					(m_context.getRenderContext());
 
 	gl.enableLogging(true);
 
+	gl.glBindVertexArray(*vao);
 	gl.glVertexAttribDivisor(1, 4);
 	verifyStateIndexedInteger(result, gl, GL_VERTEX_BINDING_DIVISOR, 1, 4, m_verifier);
 }
diff --git a/modules/gles31/scripts/gen-uniform-blocks.py b/modules/gles31/scripts/gen-uniform-blocks.py
new file mode 100644
index 0000000..56a21f9
--- /dev/null
+++ b/modules/gles31/scripts/gen-uniform-blocks.py
@@ -0,0 +1,926 @@
+from genutil import *
+
+allCases = []
+
+VERTEX = "VERTEX"
+FRAGMENT = "FRAGMENT"
+
+CASE_FRAGMENT_SHADER_TEMPLATE = """
+case ${{NAME}}
+	version 310 es
+	expect ${{EXPECT}}
+
+	vertex ""
+		#version 310 es
+		precision highp float;
+
+		in vec4 a_pos;
+
+		void main()
+		{
+			gl_Position = a_pos;
+		}
+	""
+
+	fragment ""
+		${{SOURCE}}
+	""
+end"""[1:]
+
+CASE_VERTEX_SHADER_TEMPLATE = """
+case ${{NAME}}
+	version 310 es
+	expect ${{EXPECT}}
+
+	vertex ""
+		${{SOURCE}}
+	""
+
+	fragment ""
+		#version 310 es
+		precision highp float;
+
+		layout(location=0) out vec4 o_color;
+
+		void main()
+		{
+			o_color = vec4(1.0);
+		}
+	""
+end"""[1:]
+
+class UniformBlockCase(ShaderCase):
+	def __init__(self, name, shaderType, source, valid):
+		self.name = name
+		self.shaderType = shaderType
+		self.source = source
+		self.valid = valid
+
+	def __str__(self):
+		if self.shaderType == FRAGMENT:
+			sourceParams = {
+				"OUTPUT":				"o_color",
+				"OUTPUT_DECLARATION":	"layout(location=0) out vec4 o_color;"
+			}
+
+			source = fillTemplate(self.source, sourceParams)
+
+			testCaseParams = {
+				"NAME":		self.name,
+				"SOURCE":	source,
+				"EXPECT":	("build_successful" if self.valid else "compile_fail")
+			}
+
+			return fillTemplate(CASE_FRAGMENT_SHADER_TEMPLATE, testCaseParams)
+		elif self.shaderType == VERTEX:
+			sourceParams = {
+				"OUTPUT":				"gl_Position",
+				"OUTPUT_DECLARATION":	""
+			}
+
+			source = fillTemplate(self.source, sourceParams)
+
+			testCaseParams = {
+				"NAME":		self.name,
+				"SOURCE":	source,
+				"EXPECT":	("build_successful" if self.valid else "compile_fail")
+			}
+
+			return fillTemplate(CASE_VERTEX_SHADER_TEMPLATE, testCaseParams)
+
+		assert False
+
+def createCases(name, source, valid):
+	return [UniformBlockCase(name + "_vertex", VERTEX, source, valid),
+			UniformBlockCase(name + "_fragment", FRAGMENT, source, valid)]
+
+repeatShaderTemplate = """
+#version 310 es
+precision highp float;
+
+${{OUTPUT_DECLARATION}}
+
+uniform UniformBlock
+{
+	uniform vec4 uniformMember;
+} uniformBlock;
+
+void main()
+{
+	${{OUTPUT}} = uniformBlock.uniformMember;
+}"""[1:]
+
+layoutQualifierShaderTemplate = """
+#version 310 es
+precision highp float;
+
+${{OUTPUT_DECLARATION}}
+
+layout(%s) uniform UniformBlock
+{
+	vec4 uniformMember;
+} uniformBlock;
+
+void main()
+{
+	${{OUTPUT}} = uniformBlock.uniformMember;
+}"""[1:]
+
+layoutGlobalQualifierShaderTemplate = """
+#version 310 es
+precision highp float;
+
+layout(%s) uniform;
+
+${{OUTPUT_DECLARATION}}
+
+uniform UniformBlock
+{
+	vec4 uniformMember;
+} uniformBlock;
+
+void main()
+{
+	${{OUTPUT}} = uniformBlock.uniformMember;
+}"""[1:]
+
+layoutMemberQualifierShaderTemplate = """
+#version 310 es
+precision highp float;
+
+${{OUTPUT_DECLARATION}}
+
+uniform UniformBlock
+{
+	layout(%s) mat4 uniformMember;
+} uniformBlock;
+
+void main()
+{
+	${{OUTPUT}} = uniformBlock.uniformMember[0];
+}"""[1:]
+
+layoutMemberVec4QualifierShaderTemplate = """
+#version 310 es
+precision highp float;
+
+${{OUTPUT_DECLARATION}}
+
+uniform UniformBlock
+{
+	layout(%s) vec4 uniformMember;
+} uniformBlock;
+
+void main()
+{
+	${{OUTPUT}} = uniformBlock.uniformMember;
+}"""[1:]
+
+noInstanceNameShaderTemplate = """
+#version 310 es
+precision highp float;
+
+${{OUTPUT_DECLARATION}}
+
+uniform UniformBlock
+{
+	vec4 uniformMember;
+};
+
+void main()
+{
+	${{OUTPUT}} = uniformMember;
+}"""[1:]
+
+sameVariableAndInstanceNameShaderTemplate = """
+#version 310 es
+precision highp float;
+
+${{OUTPUT_DECLARATION}}
+
+uniform UniformBlock
+{
+	vec4 uniformMember;
+} uniformBlock;
+
+void main()
+{
+	vec4 uniformBlock = vec4(0.0);
+	${{OUTPUT}} = uniformBlock;
+}"""[1:]
+
+sameVariableAndBlockNameShaderTemplate = """
+#version 310 es
+precision highp float;
+
+${{OUTPUT_DECLARATION}}
+
+uniform UniformBlock
+{
+	vec4 uniformMember;
+} uniformBlock;
+
+void main()
+{
+	vec4 UniformBlock = vec4(0.0);
+	${{OUTPUT}} = UniformBlock + uniformBlock.uniformMember;
+}"""[1:]
+
+repeatedBlockShaderTemplate = """
+#version 310 es
+precision highp float;
+
+${{OUTPUT_DECLARATION}}
+
+uniform UniformBlock
+{
+	vec4 uniformMember;
+} uniformBlockA;
+
+uniform UniformBlock
+{
+	vec4 uniformMember;
+} uniformBlockB;
+
+void main()
+{
+	${{OUTPUT}} = uniformBlockA.uniformMember + uniformBlockB.uniformMember;
+}"""[1:]
+
+repeatedBlockNoInstanceNameShaderTemplate = """
+#version 310 es
+precision highp float;
+
+${{OUTPUT_DECLARATION}}
+
+uniform UniformBlock
+{
+	vec4 uniformMember;
+} uniformBlock;
+
+uniform UniformBlock
+{
+	vec4 uniformMember;
+};
+
+void main()
+{
+	${{OUTPUT}} = uniformBlock.uniformMember + uniformMember;
+}"""[1:]
+
+structMemberShaderTemplate = """
+#version 310 es
+precision highp float;
+
+${{OUTPUT_DECLARATION}}
+
+struct Struct
+{
+	vec4 uniformMember;
+};
+
+uniform UniformBlock
+{
+	Struct st;
+} uniformBlock;
+
+void main()
+{
+	${{OUTPUT}} = uniformBlock.st.uniformMember;
+}"""[1:]
+
+layoutStructMemberQualifierShaderTemplate = """
+#version 310 es
+precision highp float;
+
+${{OUTPUT_DECLARATION}}
+
+struct Struct
+{
+	vec4 uniformMember;
+};
+
+uniform UniformBlock
+{
+	layout(%s) Struct st;
+} uniformBlock;
+
+void main()
+{
+	${{OUTPUT}} = uniformBlock.st.uniformMember;
+}"""[1:]
+
+longIdentifierBlockNameShaderTemplate = ("""
+#version 310 es
+precision highp float;
+
+${{OUTPUT_DECLARATION}}
+
+// Total of 1024 characters
+uniform """ + ("a" * 1024) + """
+{
+	vec4 uniformMember;
+} uniformBlock;
+
+void main()
+{
+	${{OUTPUT}} = uniformBlock.uniformMember;
+}""")[1:]
+
+longIdentifierInstanceNameShaderTemplate = ("""
+#version 310 es
+precision highp float;
+
+${{OUTPUT_DECLARATION}}
+
+uniform UniformBlock
+{
+	vec4 uniformMember;
+} """ + ("a" * 1024) + """;
+// Total of 1024 characters
+
+void main()
+{
+	${{OUTPUT}} = """ + ("a" * 1024) + """.uniformMember;
+}""")[1:]
+
+underscoreIdentifierInstanceNameShaderTemplate = ("""
+#version 310 es
+precision highp float;
+
+${{OUTPUT_DECLARATION}}
+
+uniform UniformBlock
+{
+	vec4 uniformMember;
+} _;
+
+void main()
+{
+	${{OUTPUT}} = _.uniformMember;
+}""")[1:]
+
+underscoreIdentifierBlockNameShaderTemplate = ("""
+#version 310 es
+precision highp float;
+
+${{OUTPUT_DECLARATION}}
+
+uniform _
+{
+	vec4 uniformMember;
+} uniformBlock;
+
+void main()
+{
+	${{OUTPUT}} = uniformBlock.uniformMember;
+}""")[1:]
+
+validCases = (createCases("repeat_interface_qualifier", repeatShaderTemplate, True)
+			+ sum([createCases("layout_%s" % qualifier, layoutQualifierShaderTemplate % qualifier, True)
+						for qualifier in ["shared", "packed", "std140", "row_major", "column_major"]], [])
+			+ createCases("layout_all", layoutQualifierShaderTemplate % "shared, packed, std140, row_major, column_major", True)
+			+ createCases("layout_all_8_times", layoutQualifierShaderTemplate % str.join(", ", ["shared", "packed", "std140", "row_major", "column_major"] * 8), True)
+			+ sum([createCases("global_layout_%s" % qualifier, layoutGlobalQualifierShaderTemplate % qualifier, True)
+						for qualifier in ["shared", "packed", "std140", "row_major", "column_major"]], [])
+			+ createCases("global_layout_all", layoutGlobalQualifierShaderTemplate % "shared, packed, std140, row_major, column_major", True)
+			+ createCases("global_layout_all_8_times", layoutGlobalQualifierShaderTemplate % str.join(", ", ["shared", "packed", "std140", "row_major", "column_major"] * 8), True)
+			+ sum([createCases("member_layout_%s" % qualifier, layoutMemberQualifierShaderTemplate % qualifier, True)
+						for qualifier in ["row_major", "column_major"]], [])
+			+ sum([createCases("member_layout_%s_vec4" % qualifier, layoutMemberVec4QualifierShaderTemplate % qualifier, True)
+						for qualifier in ["row_major", "column_major"]], [])
+			+ createCases("member_layout_all", layoutMemberQualifierShaderTemplate % "row_major, column_major", True)
+			+ createCases("member_layout_all_8_times", layoutMemberQualifierShaderTemplate % str.join(", ", ["row_major", "column_major"] * 8), True)
+			+ createCases("no_instance_name", noInstanceNameShaderTemplate, True)
+			+ createCases("same_variable_and_block_name", sameVariableAndBlockNameShaderTemplate, True)
+			+ createCases("same_variable_and_instance_name", sameVariableAndInstanceNameShaderTemplate, True)
+			+ createCases("struct_member", structMemberShaderTemplate, True)
+			+ sum([createCases("struct_member_layout_%s" % qualifier, layoutStructMemberQualifierShaderTemplate % qualifier, True)
+						for qualifier in ["row_major", "column_major"]], [])
+			+ createCases("struct_member_layout_all", layoutStructMemberQualifierShaderTemplate % "row_major, column_major", True)
+			+ createCases("struct_member_layout_all_8_times", layoutStructMemberQualifierShaderTemplate % str.join(", ", ["row_major", "column_major"] * 8), True)
+			+ createCases("long_block_name", longIdentifierBlockNameShaderTemplate, True)
+			+ createCases("long_instance_name", longIdentifierInstanceNameShaderTemplate, True)
+			+ createCases("underscore_block_name", underscoreIdentifierBlockNameShaderTemplate, True)
+			+ createCases("underscore_instance_name", underscoreIdentifierInstanceNameShaderTemplate, True))
+
+invalidMemberInterfaceQualifierShaderTemplate = """
+#version 310 es
+precision highp float;
+
+${{OUTPUT_DECLARATION}}
+
+uniform UniformBlock
+{
+	%s vec4 uniformMember;
+} uniformBlock;
+
+void main()
+{
+	${{OUTPUT}} = uniformBlock.uniformMember;
+}"""[1:]
+
+conflictingInstanceNamesShaderTemplate = """
+#version 310 es
+precision highp float;
+
+${{OUTPUT_DECLARATION}}
+
+uniform UniformBlockA
+{
+	vec4 uniformMember;
+} uniformBlock;
+
+uniform UniformBlockB
+{
+	vec4 uniformMember;
+} uniformBlock;
+
+void main()
+{
+	${{OUTPUT}} = uniformBlock.uniformMember;
+}"""[1:]
+
+conflictingFunctionAndInstanceNameShaderTemplate = """
+#version 310 es
+precision highp float;
+
+${{OUTPUT_DECLARATION}}
+
+uniform UniformBlock
+{
+	vec4 uniformMember;
+} uniformBlock;
+
+float uniformBlock (float x)
+{
+	return x;
+}
+
+void main()
+{
+	${{OUTPUT}} = uniformBlock.uniformMember;
+}"""[1:]
+
+conflictingFunctionAndBlockNameShaderTemplate = """
+#version 310 es
+precision highp float;
+
+${{OUTPUT_DECLARATION}}
+
+uniform UniformBlock
+{
+	vec4 uniformMember;
+} uniformBlock;
+
+float UniformBlock (float x)
+{
+	return x;
+}
+
+void main()
+{
+	${{OUTPUT}} = uniformBlock.uniformMember;
+}"""[1:]
+
+conflictingVariableAndInstanceNameShaderTemplate = """
+#version 310 es
+precision highp float;
+
+${{OUTPUT_DECLARATION}}
+
+uniform UniformBlock
+{
+	vec4 uniformMember;
+} uniformBlock;
+
+%s vec4 uniformBlock;
+
+void main()
+{
+	${{OUTPUT}} = uniformBlock.uniformMember;
+}"""[1:]
+
+conflictingVariableAndBlockNameShaderTemplate = """
+#version 310 es
+precision highp float;
+
+${{OUTPUT_DECLARATION}}
+
+uniform UniformBlock
+{
+	vec4 uniformMember;
+} uniformBlock;
+
+%s vec4 UniformBlock;
+
+void main()
+{
+	${{OUTPUT}} = uniformBlock.uniformMember;
+}"""[1:]
+
+
+matchingInstanceAndBlockNameShaderTemplate = """
+#version 310 es
+precision highp float;
+
+${{OUTPUT_DECLARATION}}
+
+uniform UniformBlock
+{
+	vec4 uniformMember;
+} UniformBlock;
+
+void main()
+{
+	${{OUTPUT}} = UniformBlock.uniformMember;
+}"""[1:]
+
+referenceUsingBlockNameShaderTemplate = """
+#version 310 es
+precision highp float;
+
+${{OUTPUT_DECLARATION}}
+
+uniform UniformBlock
+{
+	vec4 uniformMember;
+} uniformBlock;
+
+void main()
+{
+	${{OUTPUT}} = UniformBlock.uniformMember;
+}"""[1:]
+
+emptyBlockShaderTemplate = """
+#version 310 es
+precision highp float;
+
+${{OUTPUT_DECLARATION}}
+
+uniform UniformBlock
+{
+} uniformBlock;
+
+void main()
+{
+	${{OUTPUT}} = vec4(0.0);
+}"""[1:]
+
+emptyLayoutShaderTemplate = """
+#version 310 es
+precision highp float;
+
+${{OUTPUT_DECLARATION}}
+
+layout() uniform UniformBlock
+{
+	vec4 uniformMember;
+} uniformBlock;
+
+void main()
+{
+	${{OUTPUT}} = uniformBlock.uniformMember;
+}"""[1:]
+
+emptyGlobalLayoutShaderTemplate = """
+#version 310 es
+precision highp float;
+
+layout() uniform;
+
+${{OUTPUT_DECLARATION}}
+
+uniform UniformBlock
+{
+	vec4 uniformMember;
+} uniformBlock;
+
+void main()
+{
+	${{OUTPUT}} = uniformBlock.uniformMember;
+}"""[1:]
+
+emptyMemberLayoutShaderTemplate = """
+#version 310 es
+precision highp float;
+
+${{OUTPUT_DECLARATION}}
+
+uniform UniformBlock
+{
+	layout() vec4 uniformMember;
+} uniformBlock;
+
+void main()
+{
+	${{OUTPUT}} = uniformBlock.uniformMember;
+}"""[1:]
+
+invalidMemberLayoutShaderTemplate = """
+#version 310 es
+precision highp float;
+
+${{OUTPUT_DECLARATION}}
+
+uniform UniformBlock
+{
+	layout(%s) vec4 uniformMember;
+} uniformBlock;
+
+void main()
+{
+	${{OUTPUT}} = uniformBlock.uniformMember;
+}"""[1:]
+
+structureDefinitionShaderTemplate = """
+#version 310 es
+precision highp float;
+
+${{OUTPUT_DECLARATION}}
+
+uniform UniformBlock
+{
+	struct A
+	{
+		vec4 uniformMember;
+	} a;
+} uniformBlock;
+
+void main()
+{
+	${{OUTPUT}} = uniformBlock.a.uniformMember;
+}"""[1:]
+
+samplerShaderTemplate = """
+#version 310 es
+precision highp float;
+
+${{OUTPUT_DECLARATION}}
+
+uniform UniformBlock
+{
+	sampler2D sampler;
+	vec4 uniformMember;
+} uniformBlock;
+
+void main()
+{
+	${{OUTPUT}} = uniformBlock.uniformMember;
+}"""[1:]
+
+missingBlockNameShaderTemplate = """
+#version 310 es
+precision highp float;
+
+${{OUTPUT_DECLARATION}}
+
+uniform
+{
+	vec4 uniformMember;
+} uniformBlock;
+
+void main()
+{
+	${{OUTPUT}} = uniformBlock.uniformMember;
+}"""[1:]
+
+invalidNumberBlockNameShaderTemplate = """
+#version 310 es
+precision highp float;
+
+${{OUTPUT_DECLARATION}}
+
+uniform 0UniformBlock
+{
+	vec4 uniformMember;
+} uniformBlock;
+
+void main()
+{
+	${{OUTPUT}} = uniformBlock.uniformMember;
+}"""[1:]
+
+invalidHashBlockNameShaderTemplate = """
+#version 310 es
+precision highp float;
+
+${{OUTPUT_DECLARATION}}
+
+uniform #UniformBlock
+{
+	vec4 uniformMember;
+} uniformBlock;
+
+void main()
+{
+	${{OUTPUT}} = uniformBlock.uniformMember;
+}"""[1:]
+
+invalidDollarBlockNameShaderTemplate = """
+#version 310 es
+precision highp float;
+
+${{OUTPUT_DECLARATION}}
+
+uniform $UniformBlock
+{
+	vec4 uniformMember;
+} uniformBlock;
+
+void main()
+{
+	${{OUTPUT}} = uniformBlock.uniformMember;
+}"""[1:]
+
+invalidIdentifierBlockNameShaderTemplate = """
+#version 310 es
+precision highp float;
+
+${{OUTPUT_DECLARATION}}
+
+uniform gl_UniformBlock
+{
+	vec4 uniformMember;
+} uniformBlock;
+
+void main()
+{
+	${{OUTPUT}} = uniformBlock.uniformMember;
+}"""[1:]
+
+tooLongIdentifierBlockNameShaderTemplate = ("""
+#version 310 es
+precision highp float;
+
+${{OUTPUT_DECLARATION}}
+
+// Total of 1025 characters
+uniform """ + ("a" * 1025) + """
+{
+	vec4 uniformMember;
+} uniformBlock;
+
+void main()
+{
+	${{OUTPUT}} = uniformBlock.uniformMember;
+}""")[1:]
+
+invalidNumberInstanceNameShaderTemplate = """
+#version 310 es
+precision highp float;
+
+${{OUTPUT_DECLARATION}}
+
+uniform UniformInstance
+{
+	vec4 uniformMember;
+} 0uniformBlock;
+
+void main()
+{
+	${{OUTPUT}} = 0uniformBlock.uniformMember;
+}"""[1:]
+
+invalidHashInstanceNameShaderTemplate = """
+#version 310 es
+precision highp float;
+
+${{OUTPUT_DECLARATION}}
+
+uniform UniformInstance
+{
+	vec4 uniformMember;
+} #uniformBlock;
+
+void main()
+{
+	${{OUTPUT}} = #uniformBlock.uniformMember;
+}"""[1:]
+
+invalidDollarInstanceNameShaderTemplate = """
+#version 310 es
+precision highp float;
+
+${{OUTPUT_DECLARATION}}
+
+uniform UniformInstance
+{
+	vec4 uniformMember;
+} $uniformBlock;
+
+void main()
+{
+	${{OUTPUT}} = $uniformBlock.uniformMember;
+}"""[1:]
+
+invalidIdentifierInstanceNameShaderTemplate = """
+#version 310 es
+precision highp float;
+
+${{OUTPUT_DECLARATION}}
+
+uniform UniformBlock
+{
+	vec4 uniformMember;
+} gl_uniformBlock;
+
+void main()
+{
+	${{OUTPUT}} = gl_uniformBlock.uniformMember;
+}"""[1:]
+
+tooLongIdentifierInstanceNameShaderTemplate = ("""
+#version 310 es
+precision highp float;
+
+${{OUTPUT_DECLARATION}}
+
+uniform UniformBlock
+{
+	vec4 uniformMember;
+} """ + ("a" * 1025) + """;
+// Total of 1025 characters
+
+void main()
+{
+	${{OUTPUT}} = """ + ("a" * 1025) + """.uniformMember;
+}""")[1:]
+
+doubleUnderscoreIdentifierInstanceNameShaderTemplate = ("""
+#version 310 es
+precision highp float;
+
+${{OUTPUT_DECLARATION}}
+
+uniform UniformBlock
+{
+	vec4 uniformMember;
+} __;
+
+void main()
+{
+	${{OUTPUT}} = __.uniformMember;
+}""")[1:]
+
+doubleUnderscoreIdentifierBlockNameShaderTemplate = ("""
+#version 310 es
+precision highp float;
+
+${{OUTPUT_DECLARATION}}
+
+uniform __
+{
+	vec4 uniformMember;
+} uniformBlock;
+
+void main()
+{
+	${{OUTPUT}} = uniformBlock.uniformMember;
+}""")[1:]
+
+invalidCases = (
+			sum([createCases("member_%s_interface_qualifier" % qualifier, invalidMemberInterfaceQualifierShaderTemplate % qualifier, False)
+					for qualifier in ["in", "out", "buffer", "attribute", "varying"]], [])
+			+ createCases("conflicting_instance_names", conflictingInstanceNamesShaderTemplate, False)
+			+ createCases("conflicting_function_and_instance_name", conflictingFunctionAndInstanceNameShaderTemplate, False)
+			+ createCases("conflicting_function_and_block_name", conflictingFunctionAndBlockNameShaderTemplate, False)
+			+ sum([createCases("conflicting_%s_and_instance_name" % qualifier, conflictingVariableAndInstanceNameShaderTemplate % qualifier, False)
+					for qualifier in ["uniform", "in", "out"]], [])
+			+ sum([createCases("conflicting_%s_and_block_name" % qualifier, conflictingVariableAndBlockNameShaderTemplate % qualifier, False)
+					for qualifier in ["uniform", "in", "out"]], [])
+			+ createCases("matching_instance_and_block_name", matchingInstanceAndBlockNameShaderTemplate, False)
+			+ createCases("reference_using_block_name", referenceUsingBlockNameShaderTemplate, False)
+			+ createCases("empty_block", emptyBlockShaderTemplate, False)
+			+ createCases("empty_layout", emptyLayoutShaderTemplate, False)
+			+ createCases("empty_member_layout", emptyMemberLayoutShaderTemplate, False)
+			+ createCases("empty_global_layout", emptyGlobalLayoutShaderTemplate, False)
+			+ createCases("structure_definition", structureDefinitionShaderTemplate, False)
+			+ sum([createCases("member_layout_%s" % qualifier, invalidMemberLayoutShaderTemplate % qualifier, False)
+					for qualifier in ["shared", "packed", "std140" "std430",]], [])
+			+ createCases("missing_block_name", missingBlockNameShaderTemplate, False)
+			+ createCases("invalid_number_block_name", invalidNumberBlockNameShaderTemplate, False)
+			+ createCases("invalid_identifier_block_name", invalidIdentifierBlockNameShaderTemplate, False)
+			+ createCases("invalid_hash_block_name", invalidHashBlockNameShaderTemplate, False)
+			+ createCases("invalid_dollar_block_name", invalidDollarBlockNameShaderTemplate, False)
+			+ createCases("too_long_block_name", tooLongIdentifierBlockNameShaderTemplate, False)
+			+ createCases("invalid_number_instance_name", invalidNumberInstanceNameShaderTemplate, False)
+			+ createCases("invalid_identifier_instance_name", invalidIdentifierInstanceNameShaderTemplate, False)
+			+ createCases("invalid_hash_instance_name", invalidHashInstanceNameShaderTemplate, False)
+			+ createCases("invalid_dollar_instance_name", invalidDollarInstanceNameShaderTemplate, False)
+			+ createCases("double_underscore_block_name", doubleUnderscoreIdentifierBlockNameShaderTemplate, False)
+			+ createCases("double_underscore_instance_name", doubleUnderscoreIdentifierInstanceNameShaderTemplate, False)
+			+ createCases("repeated_block", repeatedBlockShaderTemplate, False)
+			+ createCases("repeated_block_no_instance_name", repeatedBlockNoInstanceNameShaderTemplate, False)
+			+ sum([createCases("layout_%s" % qualifier, layoutQualifierShaderTemplate % qualifier, False)
+						for qualifier in ["std430"]], [])
+			+ sum([createCases("global_layout_%s" % qualifier, layoutGlobalQualifierShaderTemplate % qualifier, False)
+						for qualifier in ["std430"]], [])
+		)
+
+allCases.append(CaseGroup("valid", "Valid uniform interface block syntax tests.", validCases))
+allCases.append(CaseGroup("invalid", "Invalid uniform interface block syntax tests.", invalidCases))
+
+if __name__ == "__main__":
+	print "Generating shader case files."
+	writeAllCases("uniform_block.test", allCases)
diff --git a/modules/glshared/glsTextureTestUtil.cpp b/modules/glshared/glsTextureTestUtil.cpp
index c87188f..328104e 100644
--- a/modules/glshared/glsTextureTestUtil.cpp
+++ b/modules/glshared/glsTextureTestUtil.cpp
@@ -181,15 +181,6 @@
 	return triangleInterpolate(v.x(), v.y(), v.z(), x, y);
 }
 
-inline float triQuadInterpolate (float x, float y, const tcu::Vec4& quad)
-{
-	// \note Top left fill rule.
-	if (x + y < 1.0f)
-		return triangleInterpolate(quad.x(), quad.y(), quad.z(), x, y);
-	else
-		return triangleInterpolate(quad.w(), quad.z(), quad.y(), 1.0f-x, 1.0f-y);
-}
-
 SurfaceAccess::SurfaceAccess (tcu::Surface& surface, const tcu::PixelFormat& colorFmt, int x, int y, int width, int height)
 	: m_surface		(&surface)
 	, m_colorMask	(getColorMask(colorFmt))
@@ -1169,10 +1160,10 @@
 			case PROGRAM_2D_ARRAY_SHADOW:	sampler = "sampler2DArrayShadow";	lookup = "vec4(texture(u_sampler, vec4(v_texCoord, u_ref)), 0.0, 0.0, 1.0)";			break;
 			case PROGRAM_3D_FLOAT:			sampler = "sampler3D";				lookup = "texture(u_sampler, v_texCoord)";												break;
 			case PROGRAM_3D_INT:			sampler = "isampler3D";				lookup = "vec4(texture(u_sampler, v_texCoord))";										break;
-			case PROGRAM_3D_UINT:			sampler =" usampler3D";				lookup = "vec4(texture(u_sampler, v_texCoord))";										break;
+			case PROGRAM_3D_UINT:			sampler = "usampler3D";				lookup = "vec4(texture(u_sampler, v_texCoord))";										break;
 			case PROGRAM_3D_FLOAT_BIAS:		sampler = "sampler3D";				lookup = "texture(u_sampler, v_texCoord, u_bias)";										break;
 			case PROGRAM_3D_INT_BIAS:		sampler = "isampler3D";				lookup = "vec4(texture(u_sampler, v_texCoord, u_bias))";								break;
-			case PROGRAM_3D_UINT_BIAS:		sampler =" usampler3D";				lookup = "vec4(texture(u_sampler, v_texCoord, u_bias))";								break;
+			case PROGRAM_3D_UINT_BIAS:		sampler = "usampler3D";				lookup = "vec4(texture(u_sampler, v_texCoord, u_bias))";								break;
 			case PROGRAM_CUBE_ARRAY_FLOAT:	sampler = "samplerCubeArray";		lookup = "texture(u_sampler, v_texCoord)";												break;
 			case PROGRAM_CUBE_ARRAY_INT:	sampler = "isamplerCubeArray";		lookup = "vec4(texture(u_sampler, v_texCoord))";										break;
 			case PROGRAM_CUBE_ARRAY_UINT:	sampler = "usamplerCubeArray";		lookup = "vec4(texture(u_sampler, v_texCoord))";										break;
diff --git a/scripts/build_android_mustpass.py b/scripts/build_android_mustpass.py
index 0d1b3bf..b39fd2e 100644
--- a/scripts/build_android_mustpass.py
+++ b/scripts/build_android_mustpass.py
@@ -428,7 +428,12 @@
 					  filters		= MASTER_GLES2_COMMON_FILTERS),
 	])
 
-MASTER_GLES3_COMMON_FILTERS		= [include("gles3-master.txt"), exclude("gles3-hw-issues.txt"), exclude("gles3-test-issues.txt")]
+MASTER_GLES3_COMMON_FILTERS		= [
+		include("gles3-master.txt"),
+		exclude("gles3-hw-issues.txt"),
+		exclude("gles3-test-issues.txt"),
+		exclude("gles3-spec-issues.txt")
+	]
 MASTER_GLES3_PKG				= Package(module = GLES3_MODULE, configurations = [
 		# Master
 		Configuration(name			= "master",
@@ -473,7 +478,12 @@
 					  filters		= MASTER_GLES3_COMMON_FILTERS + [include("gles3-pixelformat.txt")]),
 	])
 
-MASTER_GLES31_COMMON_FILTERS	= [include("gles31-master.txt"), exclude("gles31-hw-issues.txt"), exclude("gles31-test-issues.txt")]
+MASTER_GLES31_COMMON_FILTERS	= [
+		include("gles31-master.txt"),
+		exclude("gles31-hw-issues.txt"),
+		exclude("gles31-test-issues.txt"),
+		exclude("gles31-spec-issues.txt"),
+	]
 MASTER_GLES31_PKG				= Package(module = GLES31_MODULE, configurations = [
 		# Master
 		Configuration(name			= "master",