VK_KHR_maintenance2: View block-compressed formats
authorArkadiusz Sarwa <arkadiusz.sarwa@mobica.com>
Fri, 9 Jun 2017 15:58:01 +0000 (17:58 +0200)
committerAlexander Galazin <Alexander.Galazin@arm.com>
Thu, 31 Aug 2017 18:19:15 +0000 (14:19 -0400)
Add tests:
 * dEQP-VK.image.texel_view_compatible.compute.image_load.*
 * dEQP-VK.image.texel_view_compatible.compute.texel_fetch.*
 * dEQP-VK.image.texel_view_compatible.compute.texture.*
 * dEQP-VK.image.texel_view_compatible.compute.image_store.*
 * dEQP-VK.image.texel_view_compatible.graphic.attachment_read.*
 * dEQP-VK.image.texel_view_compatible.graphic.attachment_write.*
 * dEQP-VK.image.texel_view_compatible.graphic.texture_read.*
 * dEQP-VK.image.texel_view_compatible.graphic.texture_write.*

Components: Vulkan

VK-GL-CTS issue: 124

Change-Id: I8f12778e764144198dab603dbef72257faed0503
(cherry picked from commit 52af60c002b457dbc09044dc2e88ccee9cb59555)

Android.mk
android/cts/master/vk-master.txt
external/vulkancts/modules/vulkan/image/CMakeLists.txt
external/vulkancts/modules/vulkan/image/vktImageCompressionTranscodingSupport.cpp [new file with mode: 0644]
external/vulkancts/modules/vulkan/image/vktImageCompressionTranscodingSupport.hpp [new file with mode: 0644]
external/vulkancts/modules/vulkan/image/vktImageTests.cpp
external/vulkancts/modules/vulkan/image/vktImageTestsUtil.cpp
external/vulkancts/modules/vulkan/image/vktImageTestsUtil.hpp
external/vulkancts/mustpass/1.0.2/vk-default.txt

index 666c3ef..0e97e3b 100644 (file)
@@ -778,6 +778,7 @@ LOCAL_SRC_FILES := \
        external/vulkancts/modules/vulkan/geometry/vktGeometryTestsUtil.cpp \
        external/vulkancts/modules/vulkan/geometry/vktGeometryVaryingGeometryShaderTests.cpp \
        external/vulkancts/modules/vulkan/image/vktImageAtomicOperationTests.cpp \
+       external/vulkancts/modules/vulkan/image/vktImageCompressionTranscodingSupport.cpp \
        external/vulkancts/modules/vulkan/image/vktImageLoadStoreTests.cpp \
        external/vulkancts/modules/vulkan/image/vktImageLoadStoreUtil.cpp \
        external/vulkancts/modules/vulkan/image/vktImageMultisampleLoadStoreTests.cpp \
index 98d2903..acd2c31 100644 (file)
@@ -173230,6 +173230,1974 @@ dEQP-VK.image.atomic_operations.exchange.cube_array.r32ui_end_result
 dEQP-VK.image.atomic_operations.exchange.cube_array.r32ui_intermediate_values
 dEQP-VK.image.atomic_operations.exchange.cube_array.r32i_end_result
 dEQP-VK.image.atomic_operations.exchange.cube_array.r32i_intermediate_values
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc1_rgb_unorm_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc1_rgb_unorm_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc1_rgb_unorm_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc1_rgb_unorm_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc1_rgb_unorm_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc1_rgb_unorm_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc1_rgb_unorm_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc1_rgb_unorm_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc1_rgb_unorm_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc1_rgb_unorm_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc1_rgb_srgb_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc1_rgb_srgb_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc1_rgb_srgb_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc1_rgb_srgb_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc1_rgb_srgb_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc1_rgb_srgb_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc1_rgb_srgb_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc1_rgb_srgb_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc1_rgb_srgb_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc1_rgb_srgb_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc1_rgba_unorm_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc1_rgba_unorm_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc1_rgba_unorm_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc1_rgba_unorm_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc1_rgba_unorm_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc1_rgba_unorm_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc1_rgba_unorm_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc1_rgba_unorm_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc1_rgba_unorm_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc1_rgba_unorm_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc1_rgba_srgb_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc1_rgba_srgb_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc1_rgba_srgb_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc1_rgba_srgb_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc1_rgba_srgb_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc1_rgba_srgb_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc1_rgba_srgb_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc1_rgba_srgb_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc1_rgba_srgb_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc1_rgba_srgb_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc4_unorm_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc4_unorm_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc4_unorm_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc4_unorm_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc4_unorm_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc4_unorm_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc4_unorm_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc4_unorm_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc4_unorm_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc4_unorm_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc4_snorm_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc4_snorm_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc4_snorm_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc4_snorm_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc4_snorm_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc4_snorm_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc4_snorm_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc4_snorm_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc4_snorm_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc4_snorm_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_load.etc2_r8g8b8_unorm_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.compute.image_load.etc2_r8g8b8_unorm_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.compute.image_load.etc2_r8g8b8_unorm_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.compute.image_load.etc2_r8g8b8_unorm_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.compute.image_load.etc2_r8g8b8_unorm_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.compute.image_load.etc2_r8g8b8_unorm_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.compute.image_load.etc2_r8g8b8_unorm_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_load.etc2_r8g8b8_unorm_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_load.etc2_r8g8b8_unorm_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_load.etc2_r8g8b8_unorm_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_load.etc2_r8g8b8_srgb_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.compute.image_load.etc2_r8g8b8_srgb_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.compute.image_load.etc2_r8g8b8_srgb_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.compute.image_load.etc2_r8g8b8_srgb_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.compute.image_load.etc2_r8g8b8_srgb_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.compute.image_load.etc2_r8g8b8_srgb_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.compute.image_load.etc2_r8g8b8_srgb_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_load.etc2_r8g8b8_srgb_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_load.etc2_r8g8b8_srgb_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_load.etc2_r8g8b8_srgb_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_load.etc2_r8g8b8a1_unorm_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.compute.image_load.etc2_r8g8b8a1_unorm_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.compute.image_load.etc2_r8g8b8a1_unorm_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.compute.image_load.etc2_r8g8b8a1_unorm_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.compute.image_load.etc2_r8g8b8a1_unorm_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.compute.image_load.etc2_r8g8b8a1_unorm_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.compute.image_load.etc2_r8g8b8a1_unorm_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_load.etc2_r8g8b8a1_unorm_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_load.etc2_r8g8b8a1_unorm_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_load.etc2_r8g8b8a1_unorm_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_load.etc2_r8g8b8a1_srgb_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.compute.image_load.etc2_r8g8b8a1_srgb_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.compute.image_load.etc2_r8g8b8a1_srgb_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.compute.image_load.etc2_r8g8b8a1_srgb_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.compute.image_load.etc2_r8g8b8a1_srgb_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.compute.image_load.etc2_r8g8b8a1_srgb_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.compute.image_load.etc2_r8g8b8a1_srgb_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_load.etc2_r8g8b8a1_srgb_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_load.etc2_r8g8b8a1_srgb_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_load.etc2_r8g8b8a1_srgb_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_load.eac_r11_unorm_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.compute.image_load.eac_r11_unorm_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.compute.image_load.eac_r11_unorm_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.compute.image_load.eac_r11_unorm_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.compute.image_load.eac_r11_unorm_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.compute.image_load.eac_r11_unorm_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.compute.image_load.eac_r11_unorm_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_load.eac_r11_unorm_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_load.eac_r11_unorm_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_load.eac_r11_unorm_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_load.eac_r11_snorm_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.compute.image_load.eac_r11_snorm_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.compute.image_load.eac_r11_snorm_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.compute.image_load.eac_r11_snorm_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.compute.image_load.eac_r11_snorm_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.compute.image_load.eac_r11_snorm_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.compute.image_load.eac_r11_snorm_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_load.eac_r11_snorm_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_load.eac_r11_snorm_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_load.eac_r11_snorm_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc2_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc2_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc2_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc2_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc2_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc2_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc3_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc3_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc3_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc3_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc3_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc3_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc5_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc5_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc5_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc5_snorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc5_snorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc5_snorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc6h_ufloat_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc6h_ufloat_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc6h_ufloat_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc6h_sfloat_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc6h_sfloat_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc6h_sfloat_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc7_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc7_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc7_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc7_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc7_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc7_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_load.etc2_r8g8b8a8_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_load.etc2_r8g8b8a8_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_load.etc2_r8g8b8a8_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_load.etc2_r8g8b8a8_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_load.etc2_r8g8b8a8_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_load.etc2_r8g8b8a8_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_load.eac_r11g11_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_load.eac_r11g11_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_load.eac_r11g11_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_load.eac_r11g11_snorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_load.eac_r11g11_snorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_load.eac_r11g11_snorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_4x4_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_4x4_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_4x4_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_4x4_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_4x4_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_4x4_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_5x4_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_5x4_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_5x4_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_5x4_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_5x4_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_5x4_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_5x5_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_5x5_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_5x5_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_5x5_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_5x5_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_5x5_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_6x5_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_6x5_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_6x5_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_6x5_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_6x5_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_6x5_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_6x6_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_6x6_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_6x6_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_6x6_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_6x6_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_6x6_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_8x5_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_8x5_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_8x5_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_8x5_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_8x5_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_8x5_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_8x6_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_8x6_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_8x6_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_8x6_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_8x6_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_8x6_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_8x8_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_8x8_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_8x8_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_8x8_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_8x8_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_8x8_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_10x5_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_10x5_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_10x5_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_10x5_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_10x5_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_10x5_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_10x6_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_10x6_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_10x6_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_10x6_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_10x6_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_10x6_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_10x8_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_10x8_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_10x8_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_10x8_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_10x8_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_10x8_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_10x10_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_10x10_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_10x10_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_10x10_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_10x10_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_10x10_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_12x10_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_12x10_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_12x10_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_12x10_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_12x10_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_12x10_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_12x12_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_12x12_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_12x12_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_12x12_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_12x12_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_12x12_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc1_rgb_unorm_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc1_rgb_unorm_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc1_rgb_unorm_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc1_rgb_unorm_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc1_rgb_unorm_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc1_rgb_unorm_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc1_rgb_unorm_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc1_rgb_unorm_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc1_rgb_unorm_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc1_rgb_unorm_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc1_rgb_srgb_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc1_rgb_srgb_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc1_rgb_srgb_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc1_rgb_srgb_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc1_rgb_srgb_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc1_rgb_srgb_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc1_rgb_srgb_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc1_rgb_srgb_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc1_rgb_srgb_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc1_rgb_srgb_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc1_rgba_unorm_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc1_rgba_unorm_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc1_rgba_unorm_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc1_rgba_unorm_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc1_rgba_unorm_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc1_rgba_unorm_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc1_rgba_unorm_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc1_rgba_unorm_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc1_rgba_unorm_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc1_rgba_unorm_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc1_rgba_srgb_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc1_rgba_srgb_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc1_rgba_srgb_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc1_rgba_srgb_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc1_rgba_srgb_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc1_rgba_srgb_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc1_rgba_srgb_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc1_rgba_srgb_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc1_rgba_srgb_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc1_rgba_srgb_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc4_unorm_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc4_unorm_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc4_unorm_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc4_unorm_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc4_unorm_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc4_unorm_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc4_unorm_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc4_unorm_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc4_unorm_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc4_unorm_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc4_snorm_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc4_snorm_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc4_snorm_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc4_snorm_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc4_snorm_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc4_snorm_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc4_snorm_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc4_snorm_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc4_snorm_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc4_snorm_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.etc2_r8g8b8_unorm_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.etc2_r8g8b8_unorm_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.etc2_r8g8b8_unorm_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.etc2_r8g8b8_unorm_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.etc2_r8g8b8_unorm_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.etc2_r8g8b8_unorm_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.etc2_r8g8b8_unorm_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.etc2_r8g8b8_unorm_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.etc2_r8g8b8_unorm_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.etc2_r8g8b8_unorm_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.etc2_r8g8b8_srgb_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.etc2_r8g8b8_srgb_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.etc2_r8g8b8_srgb_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.etc2_r8g8b8_srgb_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.etc2_r8g8b8_srgb_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.etc2_r8g8b8_srgb_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.etc2_r8g8b8_srgb_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.etc2_r8g8b8_srgb_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.etc2_r8g8b8_srgb_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.etc2_r8g8b8_srgb_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.etc2_r8g8b8a1_unorm_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.etc2_r8g8b8a1_unorm_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.etc2_r8g8b8a1_unorm_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.etc2_r8g8b8a1_unorm_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.etc2_r8g8b8a1_unorm_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.etc2_r8g8b8a1_unorm_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.etc2_r8g8b8a1_unorm_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.etc2_r8g8b8a1_unorm_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.etc2_r8g8b8a1_unorm_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.etc2_r8g8b8a1_unorm_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.etc2_r8g8b8a1_srgb_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.etc2_r8g8b8a1_srgb_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.etc2_r8g8b8a1_srgb_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.etc2_r8g8b8a1_srgb_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.etc2_r8g8b8a1_srgb_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.etc2_r8g8b8a1_srgb_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.etc2_r8g8b8a1_srgb_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.etc2_r8g8b8a1_srgb_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.etc2_r8g8b8a1_srgb_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.etc2_r8g8b8a1_srgb_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.eac_r11_unorm_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.eac_r11_unorm_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.eac_r11_unorm_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.eac_r11_unorm_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.eac_r11_unorm_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.eac_r11_unorm_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.eac_r11_unorm_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.eac_r11_unorm_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.eac_r11_unorm_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.eac_r11_unorm_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.eac_r11_snorm_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.eac_r11_snorm_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.eac_r11_snorm_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.eac_r11_snorm_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.eac_r11_snorm_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.eac_r11_snorm_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.eac_r11_snorm_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.eac_r11_snorm_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.eac_r11_snorm_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.eac_r11_snorm_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc2_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc2_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc2_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc2_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc2_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc2_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc3_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc3_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc3_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc3_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc3_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc3_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc5_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc5_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc5_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc5_snorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc5_snorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc5_snorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc6h_ufloat_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc6h_ufloat_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc6h_ufloat_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc6h_sfloat_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc6h_sfloat_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc6h_sfloat_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc7_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc7_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc7_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc7_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc7_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc7_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.etc2_r8g8b8a8_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.etc2_r8g8b8a8_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.etc2_r8g8b8a8_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.etc2_r8g8b8a8_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.etc2_r8g8b8a8_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.etc2_r8g8b8a8_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.eac_r11g11_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.eac_r11g11_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.eac_r11g11_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.eac_r11g11_snorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.eac_r11g11_snorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.eac_r11g11_snorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_4x4_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_4x4_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_4x4_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_4x4_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_4x4_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_4x4_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_5x4_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_5x4_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_5x4_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_5x4_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_5x4_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_5x4_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_5x5_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_5x5_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_5x5_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_5x5_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_5x5_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_5x5_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_6x5_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_6x5_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_6x5_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_6x5_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_6x5_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_6x5_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_6x6_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_6x6_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_6x6_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_6x6_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_6x6_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_6x6_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_8x5_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_8x5_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_8x5_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_8x5_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_8x5_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_8x5_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_8x6_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_8x6_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_8x6_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_8x6_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_8x6_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_8x6_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_8x8_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_8x8_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_8x8_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_8x8_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_8x8_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_8x8_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_10x5_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_10x5_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_10x5_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_10x5_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_10x5_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_10x5_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_10x6_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_10x6_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_10x6_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_10x6_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_10x6_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_10x6_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_10x8_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_10x8_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_10x8_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_10x8_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_10x8_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_10x8_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_10x10_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_10x10_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_10x10_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_10x10_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_10x10_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_10x10_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_12x10_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_12x10_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_12x10_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_12x10_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_12x10_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_12x10_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_12x12_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_12x12_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_12x12_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_12x12_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_12x12_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_12x12_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texture.bc1_rgb_unorm_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.compute.texture.bc1_rgb_unorm_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.compute.texture.bc1_rgb_unorm_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.compute.texture.bc1_rgb_unorm_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.compute.texture.bc1_rgb_unorm_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.compute.texture.bc1_rgb_unorm_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.compute.texture.bc1_rgb_unorm_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texture.bc1_rgb_unorm_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.compute.texture.bc1_rgb_unorm_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.compute.texture.bc1_rgb_unorm_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texture.bc1_rgb_srgb_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.compute.texture.bc1_rgb_srgb_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.compute.texture.bc1_rgb_srgb_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.compute.texture.bc1_rgb_srgb_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.compute.texture.bc1_rgb_srgb_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.compute.texture.bc1_rgb_srgb_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.compute.texture.bc1_rgb_srgb_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texture.bc1_rgb_srgb_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.compute.texture.bc1_rgb_srgb_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.compute.texture.bc1_rgb_srgb_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texture.bc1_rgba_unorm_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.compute.texture.bc1_rgba_unorm_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.compute.texture.bc1_rgba_unorm_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.compute.texture.bc1_rgba_unorm_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.compute.texture.bc1_rgba_unorm_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.compute.texture.bc1_rgba_unorm_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.compute.texture.bc1_rgba_unorm_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texture.bc1_rgba_unorm_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.compute.texture.bc1_rgba_unorm_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.compute.texture.bc1_rgba_unorm_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texture.bc1_rgba_srgb_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.compute.texture.bc1_rgba_srgb_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.compute.texture.bc1_rgba_srgb_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.compute.texture.bc1_rgba_srgb_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.compute.texture.bc1_rgba_srgb_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.compute.texture.bc1_rgba_srgb_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.compute.texture.bc1_rgba_srgb_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texture.bc1_rgba_srgb_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.compute.texture.bc1_rgba_srgb_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.compute.texture.bc1_rgba_srgb_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texture.bc4_unorm_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.compute.texture.bc4_unorm_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.compute.texture.bc4_unorm_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.compute.texture.bc4_unorm_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.compute.texture.bc4_unorm_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.compute.texture.bc4_unorm_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.compute.texture.bc4_unorm_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texture.bc4_unorm_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.compute.texture.bc4_unorm_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.compute.texture.bc4_unorm_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texture.bc4_snorm_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.compute.texture.bc4_snorm_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.compute.texture.bc4_snorm_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.compute.texture.bc4_snorm_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.compute.texture.bc4_snorm_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.compute.texture.bc4_snorm_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.compute.texture.bc4_snorm_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texture.bc4_snorm_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.compute.texture.bc4_snorm_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.compute.texture.bc4_snorm_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texture.etc2_r8g8b8_unorm_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.compute.texture.etc2_r8g8b8_unorm_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.compute.texture.etc2_r8g8b8_unorm_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.compute.texture.etc2_r8g8b8_unorm_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.compute.texture.etc2_r8g8b8_unorm_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.compute.texture.etc2_r8g8b8_unorm_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.compute.texture.etc2_r8g8b8_unorm_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texture.etc2_r8g8b8_unorm_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.compute.texture.etc2_r8g8b8_unorm_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.compute.texture.etc2_r8g8b8_unorm_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texture.etc2_r8g8b8_srgb_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.compute.texture.etc2_r8g8b8_srgb_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.compute.texture.etc2_r8g8b8_srgb_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.compute.texture.etc2_r8g8b8_srgb_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.compute.texture.etc2_r8g8b8_srgb_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.compute.texture.etc2_r8g8b8_srgb_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.compute.texture.etc2_r8g8b8_srgb_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texture.etc2_r8g8b8_srgb_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.compute.texture.etc2_r8g8b8_srgb_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.compute.texture.etc2_r8g8b8_srgb_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texture.etc2_r8g8b8a1_unorm_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.compute.texture.etc2_r8g8b8a1_unorm_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.compute.texture.etc2_r8g8b8a1_unorm_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.compute.texture.etc2_r8g8b8a1_unorm_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.compute.texture.etc2_r8g8b8a1_unorm_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.compute.texture.etc2_r8g8b8a1_unorm_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.compute.texture.etc2_r8g8b8a1_unorm_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texture.etc2_r8g8b8a1_unorm_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.compute.texture.etc2_r8g8b8a1_unorm_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.compute.texture.etc2_r8g8b8a1_unorm_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texture.etc2_r8g8b8a1_srgb_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.compute.texture.etc2_r8g8b8a1_srgb_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.compute.texture.etc2_r8g8b8a1_srgb_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.compute.texture.etc2_r8g8b8a1_srgb_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.compute.texture.etc2_r8g8b8a1_srgb_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.compute.texture.etc2_r8g8b8a1_srgb_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.compute.texture.etc2_r8g8b8a1_srgb_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texture.etc2_r8g8b8a1_srgb_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.compute.texture.etc2_r8g8b8a1_srgb_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.compute.texture.etc2_r8g8b8a1_srgb_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texture.eac_r11_unorm_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.compute.texture.eac_r11_unorm_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.compute.texture.eac_r11_unorm_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.compute.texture.eac_r11_unorm_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.compute.texture.eac_r11_unorm_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.compute.texture.eac_r11_unorm_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.compute.texture.eac_r11_unorm_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texture.eac_r11_unorm_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.compute.texture.eac_r11_unorm_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.compute.texture.eac_r11_unorm_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texture.eac_r11_snorm_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.compute.texture.eac_r11_snorm_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.compute.texture.eac_r11_snorm_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.compute.texture.eac_r11_snorm_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.compute.texture.eac_r11_snorm_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.compute.texture.eac_r11_snorm_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.compute.texture.eac_r11_snorm_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texture.eac_r11_snorm_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.compute.texture.eac_r11_snorm_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.compute.texture.eac_r11_snorm_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texture.bc2_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texture.bc2_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texture.bc2_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texture.bc2_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texture.bc2_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texture.bc2_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texture.bc3_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texture.bc3_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texture.bc3_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texture.bc3_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texture.bc3_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texture.bc3_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texture.bc5_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texture.bc5_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texture.bc5_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texture.bc5_snorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texture.bc5_snorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texture.bc5_snorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texture.bc6h_ufloat_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texture.bc6h_ufloat_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texture.bc6h_ufloat_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texture.bc6h_sfloat_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texture.bc6h_sfloat_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texture.bc6h_sfloat_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texture.bc7_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texture.bc7_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texture.bc7_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texture.bc7_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texture.bc7_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texture.bc7_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texture.etc2_r8g8b8a8_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texture.etc2_r8g8b8a8_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texture.etc2_r8g8b8a8_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texture.etc2_r8g8b8a8_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texture.etc2_r8g8b8a8_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texture.etc2_r8g8b8a8_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texture.eac_r11g11_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texture.eac_r11g11_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texture.eac_r11g11_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texture.eac_r11g11_snorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texture.eac_r11g11_snorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texture.eac_r11g11_snorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_4x4_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_4x4_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_4x4_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_4x4_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_4x4_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_4x4_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_5x4_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_5x4_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_5x4_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_5x4_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_5x4_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_5x4_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_5x5_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_5x5_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_5x5_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_5x5_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_5x5_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_5x5_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_6x5_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_6x5_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_6x5_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_6x5_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_6x5_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_6x5_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_6x6_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_6x6_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_6x6_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_6x6_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_6x6_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_6x6_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_8x5_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_8x5_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_8x5_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_8x5_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_8x5_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_8x5_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_8x6_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_8x6_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_8x6_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_8x6_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_8x6_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_8x6_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_8x8_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_8x8_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_8x8_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_8x8_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_8x8_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_8x8_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_10x5_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_10x5_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_10x5_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_10x5_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_10x5_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_10x5_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_10x6_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_10x6_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_10x6_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_10x6_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_10x6_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_10x6_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_10x8_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_10x8_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_10x8_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_10x8_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_10x8_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_10x8_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_10x10_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_10x10_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_10x10_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_10x10_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_10x10_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_10x10_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_12x10_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_12x10_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_12x10_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_12x10_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_12x10_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_12x10_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_12x12_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_12x12_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_12x12_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_12x12_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_12x12_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_12x12_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc1_rgb_unorm_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc1_rgb_unorm_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc1_rgb_unorm_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc1_rgb_unorm_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc1_rgb_unorm_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc1_rgb_unorm_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc1_rgb_unorm_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc1_rgb_unorm_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc1_rgb_unorm_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc1_rgb_unorm_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc1_rgb_srgb_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc1_rgb_srgb_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc1_rgb_srgb_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc1_rgb_srgb_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc1_rgb_srgb_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc1_rgb_srgb_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc1_rgb_srgb_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc1_rgb_srgb_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc1_rgb_srgb_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc1_rgb_srgb_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc1_rgba_unorm_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc1_rgba_unorm_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc1_rgba_unorm_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc1_rgba_unorm_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc1_rgba_unorm_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc1_rgba_unorm_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc1_rgba_unorm_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc1_rgba_unorm_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc1_rgba_unorm_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc1_rgba_unorm_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc1_rgba_srgb_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc1_rgba_srgb_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc1_rgba_srgb_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc1_rgba_srgb_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc1_rgba_srgb_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc1_rgba_srgb_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc1_rgba_srgb_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc1_rgba_srgb_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc1_rgba_srgb_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc1_rgba_srgb_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc4_unorm_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc4_unorm_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc4_unorm_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc4_unorm_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc4_unorm_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc4_unorm_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc4_unorm_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc4_unorm_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc4_unorm_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc4_unorm_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc4_snorm_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc4_snorm_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc4_snorm_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc4_snorm_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc4_snorm_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc4_snorm_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc4_snorm_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc4_snorm_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc4_snorm_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc4_snorm_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_store.etc2_r8g8b8_unorm_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.compute.image_store.etc2_r8g8b8_unorm_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.compute.image_store.etc2_r8g8b8_unorm_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.compute.image_store.etc2_r8g8b8_unorm_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.compute.image_store.etc2_r8g8b8_unorm_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.compute.image_store.etc2_r8g8b8_unorm_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.compute.image_store.etc2_r8g8b8_unorm_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_store.etc2_r8g8b8_unorm_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_store.etc2_r8g8b8_unorm_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_store.etc2_r8g8b8_unorm_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_store.etc2_r8g8b8_srgb_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.compute.image_store.etc2_r8g8b8_srgb_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.compute.image_store.etc2_r8g8b8_srgb_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.compute.image_store.etc2_r8g8b8_srgb_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.compute.image_store.etc2_r8g8b8_srgb_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.compute.image_store.etc2_r8g8b8_srgb_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.compute.image_store.etc2_r8g8b8_srgb_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_store.etc2_r8g8b8_srgb_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_store.etc2_r8g8b8_srgb_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_store.etc2_r8g8b8_srgb_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_store.etc2_r8g8b8a1_unorm_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.compute.image_store.etc2_r8g8b8a1_unorm_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.compute.image_store.etc2_r8g8b8a1_unorm_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.compute.image_store.etc2_r8g8b8a1_unorm_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.compute.image_store.etc2_r8g8b8a1_unorm_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.compute.image_store.etc2_r8g8b8a1_unorm_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.compute.image_store.etc2_r8g8b8a1_unorm_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_store.etc2_r8g8b8a1_unorm_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_store.etc2_r8g8b8a1_unorm_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_store.etc2_r8g8b8a1_unorm_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_store.etc2_r8g8b8a1_srgb_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.compute.image_store.etc2_r8g8b8a1_srgb_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.compute.image_store.etc2_r8g8b8a1_srgb_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.compute.image_store.etc2_r8g8b8a1_srgb_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.compute.image_store.etc2_r8g8b8a1_srgb_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.compute.image_store.etc2_r8g8b8a1_srgb_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.compute.image_store.etc2_r8g8b8a1_srgb_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_store.etc2_r8g8b8a1_srgb_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_store.etc2_r8g8b8a1_srgb_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_store.etc2_r8g8b8a1_srgb_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_store.eac_r11_unorm_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.compute.image_store.eac_r11_unorm_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.compute.image_store.eac_r11_unorm_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.compute.image_store.eac_r11_unorm_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.compute.image_store.eac_r11_unorm_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.compute.image_store.eac_r11_unorm_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.compute.image_store.eac_r11_unorm_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_store.eac_r11_unorm_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_store.eac_r11_unorm_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_store.eac_r11_unorm_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_store.eac_r11_snorm_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.compute.image_store.eac_r11_snorm_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.compute.image_store.eac_r11_snorm_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.compute.image_store.eac_r11_snorm_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.compute.image_store.eac_r11_snorm_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.compute.image_store.eac_r11_snorm_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.compute.image_store.eac_r11_snorm_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_store.eac_r11_snorm_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_store.eac_r11_snorm_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_store.eac_r11_snorm_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc2_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc2_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc2_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc2_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc2_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc2_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc3_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc3_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc3_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc3_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc3_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc3_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc5_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc5_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc5_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc5_snorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc5_snorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc5_snorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc6h_ufloat_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc6h_ufloat_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc6h_ufloat_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc6h_sfloat_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc6h_sfloat_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc6h_sfloat_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc7_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc7_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc7_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc7_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc7_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc7_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_store.etc2_r8g8b8a8_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_store.etc2_r8g8b8a8_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_store.etc2_r8g8b8a8_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_store.etc2_r8g8b8a8_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_store.etc2_r8g8b8a8_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_store.etc2_r8g8b8a8_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_store.eac_r11g11_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_store.eac_r11g11_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_store.eac_r11g11_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_store.eac_r11g11_snorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_store.eac_r11g11_snorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_store.eac_r11g11_snorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_4x4_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_4x4_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_4x4_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_4x4_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_4x4_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_4x4_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_5x4_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_5x4_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_5x4_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_5x4_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_5x4_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_5x4_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_5x5_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_5x5_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_5x5_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_5x5_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_5x5_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_5x5_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_6x5_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_6x5_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_6x5_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_6x5_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_6x5_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_6x5_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_6x6_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_6x6_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_6x6_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_6x6_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_6x6_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_6x6_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_8x5_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_8x5_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_8x5_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_8x5_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_8x5_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_8x5_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_8x6_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_8x6_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_8x6_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_8x6_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_8x6_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_8x6_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_8x8_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_8x8_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_8x8_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_8x8_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_8x8_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_8x8_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_10x5_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_10x5_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_10x5_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_10x5_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_10x5_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_10x5_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_10x6_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_10x6_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_10x6_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_10x6_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_10x6_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_10x6_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_10x8_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_10x8_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_10x8_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_10x8_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_10x8_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_10x8_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_10x10_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_10x10_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_10x10_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_10x10_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_10x10_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_10x10_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_12x10_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_12x10_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_12x10_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_12x10_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_12x10_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_12x10_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_12x12_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_12x12_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_12x12_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_12x12_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_12x12_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_12x12_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc1_rgb_unorm_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc1_rgb_unorm_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc1_rgb_unorm_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc1_rgb_unorm_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc1_rgb_unorm_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc1_rgb_unorm_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc1_rgb_unorm_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc1_rgb_unorm_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc1_rgb_unorm_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc1_rgb_unorm_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc1_rgb_srgb_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc1_rgb_srgb_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc1_rgb_srgb_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc1_rgb_srgb_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc1_rgb_srgb_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc1_rgb_srgb_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc1_rgb_srgb_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc1_rgb_srgb_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc1_rgb_srgb_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc1_rgb_srgb_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc1_rgba_unorm_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc1_rgba_unorm_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc1_rgba_unorm_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc1_rgba_unorm_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc1_rgba_unorm_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc1_rgba_unorm_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc1_rgba_unorm_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc1_rgba_unorm_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc1_rgba_unorm_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc1_rgba_unorm_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc1_rgba_srgb_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc1_rgba_srgb_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc1_rgba_srgb_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc1_rgba_srgb_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc1_rgba_srgb_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc1_rgba_srgb_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc1_rgba_srgb_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc1_rgba_srgb_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc1_rgba_srgb_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc1_rgba_srgb_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc4_unorm_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc4_unorm_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc4_unorm_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc4_unorm_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc4_unorm_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc4_unorm_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc4_unorm_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc4_unorm_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc4_unorm_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc4_unorm_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc4_snorm_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc4_snorm_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc4_snorm_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc4_snorm_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc4_snorm_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc4_snorm_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc4_snorm_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc4_snorm_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc4_snorm_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc4_snorm_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.etc2_r8g8b8_unorm_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.etc2_r8g8b8_unorm_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.etc2_r8g8b8_unorm_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.etc2_r8g8b8_unorm_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.etc2_r8g8b8_unorm_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.etc2_r8g8b8_unorm_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.etc2_r8g8b8_unorm_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.etc2_r8g8b8_unorm_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.etc2_r8g8b8_unorm_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.etc2_r8g8b8_unorm_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.etc2_r8g8b8_srgb_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.etc2_r8g8b8_srgb_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.etc2_r8g8b8_srgb_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.etc2_r8g8b8_srgb_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.etc2_r8g8b8_srgb_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.etc2_r8g8b8_srgb_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.etc2_r8g8b8_srgb_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.etc2_r8g8b8_srgb_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.etc2_r8g8b8_srgb_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.etc2_r8g8b8_srgb_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.etc2_r8g8b8a1_unorm_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.etc2_r8g8b8a1_unorm_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.etc2_r8g8b8a1_unorm_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.etc2_r8g8b8a1_unorm_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.etc2_r8g8b8a1_unorm_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.etc2_r8g8b8a1_unorm_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.etc2_r8g8b8a1_unorm_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.etc2_r8g8b8a1_unorm_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.etc2_r8g8b8a1_unorm_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.etc2_r8g8b8a1_unorm_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.etc2_r8g8b8a1_srgb_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.etc2_r8g8b8a1_srgb_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.etc2_r8g8b8a1_srgb_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.etc2_r8g8b8a1_srgb_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.etc2_r8g8b8a1_srgb_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.etc2_r8g8b8a1_srgb_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.etc2_r8g8b8a1_srgb_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.etc2_r8g8b8a1_srgb_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.etc2_r8g8b8a1_srgb_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.etc2_r8g8b8a1_srgb_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.eac_r11_unorm_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.eac_r11_unorm_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.eac_r11_unorm_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.eac_r11_unorm_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.eac_r11_unorm_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.eac_r11_unorm_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.eac_r11_unorm_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.eac_r11_unorm_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.eac_r11_unorm_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.eac_r11_unorm_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.eac_r11_snorm_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.eac_r11_snorm_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.eac_r11_snorm_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.eac_r11_snorm_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.eac_r11_snorm_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.eac_r11_snorm_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.eac_r11_snorm_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.eac_r11_snorm_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.eac_r11_snorm_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.eac_r11_snorm_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc2_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc2_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc2_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc2_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc2_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc2_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc3_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc3_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc3_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc3_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc3_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc3_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc5_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc5_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc5_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc5_snorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc5_snorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc5_snorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc6h_ufloat_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc6h_ufloat_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc6h_ufloat_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc6h_sfloat_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc6h_sfloat_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc6h_sfloat_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc7_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc7_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc7_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc7_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc7_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc7_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.etc2_r8g8b8a8_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.etc2_r8g8b8a8_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.etc2_r8g8b8a8_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.etc2_r8g8b8a8_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.etc2_r8g8b8a8_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.etc2_r8g8b8a8_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.eac_r11g11_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.eac_r11g11_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.eac_r11g11_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.eac_r11g11_snorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.eac_r11g11_snorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.eac_r11g11_snorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_4x4_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_4x4_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_4x4_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_4x4_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_4x4_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_4x4_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_5x4_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_5x4_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_5x4_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_5x4_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_5x4_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_5x4_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_5x5_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_5x5_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_5x5_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_5x5_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_5x5_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_5x5_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_6x5_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_6x5_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_6x5_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_6x5_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_6x5_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_6x5_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_6x6_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_6x6_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_6x6_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_6x6_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_6x6_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_6x6_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_8x5_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_8x5_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_8x5_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_8x5_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_8x5_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_8x5_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_8x6_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_8x6_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_8x6_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_8x6_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_8x6_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_8x6_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_8x8_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_8x8_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_8x8_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_8x8_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_8x8_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_8x8_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_10x5_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_10x5_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_10x5_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_10x5_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_10x5_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_10x5_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_10x6_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_10x6_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_10x6_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_10x6_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_10x6_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_10x6_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_10x8_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_10x8_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_10x8_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_10x8_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_10x8_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_10x8_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_10x10_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_10x10_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_10x10_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_10x10_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_10x10_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_10x10_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_12x10_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_12x10_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_12x10_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_12x10_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_12x10_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_12x10_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_12x12_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_12x12_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_12x12_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_12x12_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_12x12_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_12x12_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc1_rgb_unorm_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc1_rgb_unorm_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc1_rgb_unorm_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc1_rgb_unorm_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc1_rgb_unorm_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc1_rgb_unorm_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc1_rgb_unorm_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc1_rgb_unorm_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc1_rgb_unorm_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc1_rgb_unorm_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc1_rgb_srgb_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc1_rgb_srgb_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc1_rgb_srgb_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc1_rgb_srgb_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc1_rgb_srgb_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc1_rgb_srgb_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc1_rgb_srgb_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc1_rgb_srgb_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc1_rgb_srgb_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc1_rgb_srgb_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc1_rgba_unorm_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc1_rgba_unorm_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc1_rgba_unorm_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc1_rgba_unorm_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc1_rgba_unorm_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc1_rgba_unorm_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc1_rgba_unorm_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc1_rgba_unorm_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc1_rgba_unorm_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc1_rgba_unorm_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc1_rgba_srgb_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc1_rgba_srgb_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc1_rgba_srgb_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc1_rgba_srgb_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc1_rgba_srgb_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc1_rgba_srgb_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc1_rgba_srgb_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc1_rgba_srgb_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc1_rgba_srgb_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc1_rgba_srgb_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc4_unorm_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc4_unorm_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc4_unorm_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc4_unorm_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc4_unorm_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc4_unorm_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc4_unorm_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc4_unorm_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc4_unorm_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc4_unorm_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc4_snorm_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc4_snorm_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc4_snorm_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc4_snorm_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc4_snorm_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc4_snorm_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc4_snorm_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc4_snorm_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc4_snorm_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc4_snorm_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.etc2_r8g8b8_unorm_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.etc2_r8g8b8_unorm_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.etc2_r8g8b8_unorm_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.etc2_r8g8b8_unorm_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.etc2_r8g8b8_unorm_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.etc2_r8g8b8_unorm_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.etc2_r8g8b8_unorm_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.etc2_r8g8b8_unorm_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.etc2_r8g8b8_unorm_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.etc2_r8g8b8_unorm_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.etc2_r8g8b8_srgb_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.etc2_r8g8b8_srgb_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.etc2_r8g8b8_srgb_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.etc2_r8g8b8_srgb_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.etc2_r8g8b8_srgb_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.etc2_r8g8b8_srgb_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.etc2_r8g8b8_srgb_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.etc2_r8g8b8_srgb_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.etc2_r8g8b8_srgb_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.etc2_r8g8b8_srgb_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.etc2_r8g8b8a1_unorm_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.etc2_r8g8b8a1_unorm_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.etc2_r8g8b8a1_unorm_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.etc2_r8g8b8a1_unorm_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.etc2_r8g8b8a1_unorm_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.etc2_r8g8b8a1_unorm_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.etc2_r8g8b8a1_unorm_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.etc2_r8g8b8a1_unorm_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.etc2_r8g8b8a1_unorm_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.etc2_r8g8b8a1_unorm_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.etc2_r8g8b8a1_srgb_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.etc2_r8g8b8a1_srgb_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.etc2_r8g8b8a1_srgb_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.etc2_r8g8b8a1_srgb_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.etc2_r8g8b8a1_srgb_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.etc2_r8g8b8a1_srgb_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.etc2_r8g8b8a1_srgb_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.etc2_r8g8b8a1_srgb_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.etc2_r8g8b8a1_srgb_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.etc2_r8g8b8a1_srgb_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.eac_r11_unorm_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.eac_r11_unorm_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.eac_r11_unorm_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.eac_r11_unorm_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.eac_r11_unorm_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.eac_r11_unorm_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.eac_r11_unorm_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.eac_r11_unorm_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.eac_r11_unorm_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.eac_r11_unorm_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.eac_r11_snorm_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.eac_r11_snorm_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.eac_r11_snorm_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.eac_r11_snorm_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.eac_r11_snorm_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.eac_r11_snorm_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.eac_r11_snorm_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.eac_r11_snorm_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.eac_r11_snorm_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.eac_r11_snorm_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc2_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc2_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc2_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc2_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc2_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc2_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc3_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc3_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc3_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc3_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc3_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc3_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc5_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc5_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc5_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc5_snorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc5_snorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc5_snorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc6h_ufloat_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc6h_ufloat_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc6h_ufloat_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc6h_sfloat_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc6h_sfloat_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc6h_sfloat_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc7_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc7_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc7_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc7_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc7_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc7_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.etc2_r8g8b8a8_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.etc2_r8g8b8a8_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.etc2_r8g8b8a8_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.etc2_r8g8b8a8_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.etc2_r8g8b8a8_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.etc2_r8g8b8a8_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.eac_r11g11_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.eac_r11g11_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.eac_r11g11_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.eac_r11g11_snorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.eac_r11g11_snorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.eac_r11g11_snorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_4x4_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_4x4_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_4x4_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_4x4_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_4x4_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_4x4_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_5x4_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_5x4_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_5x4_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_5x4_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_5x4_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_5x4_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_5x5_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_5x5_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_5x5_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_5x5_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_5x5_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_5x5_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_6x5_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_6x5_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_6x5_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_6x5_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_6x5_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_6x5_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_6x6_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_6x6_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_6x6_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_6x6_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_6x6_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_6x6_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_8x5_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_8x5_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_8x5_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_8x5_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_8x5_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_8x5_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_8x6_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_8x6_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_8x6_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_8x6_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_8x6_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_8x6_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_8x8_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_8x8_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_8x8_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_8x8_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_8x8_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_8x8_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_10x5_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_10x5_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_10x5_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_10x5_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_10x5_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_10x5_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_10x6_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_10x6_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_10x6_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_10x6_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_10x6_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_10x6_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_10x8_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_10x8_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_10x8_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_10x8_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_10x8_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_10x8_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_10x10_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_10x10_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_10x10_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_10x10_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_10x10_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_10x10_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_12x10_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_12x10_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_12x10_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_12x10_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_12x10_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_12x10_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_12x12_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_12x12_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_12x12_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_12x12_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_12x12_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_12x12_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc1_rgb_unorm_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc1_rgb_unorm_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc1_rgb_unorm_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc1_rgb_unorm_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc1_rgb_unorm_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc1_rgb_unorm_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc1_rgb_unorm_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc1_rgb_unorm_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc1_rgb_unorm_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc1_rgb_unorm_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc1_rgb_srgb_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc1_rgb_srgb_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc1_rgb_srgb_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc1_rgb_srgb_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc1_rgb_srgb_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc1_rgb_srgb_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc1_rgb_srgb_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc1_rgb_srgb_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc1_rgb_srgb_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc1_rgb_srgb_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc1_rgba_unorm_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc1_rgba_unorm_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc1_rgba_unorm_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc1_rgba_unorm_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc1_rgba_unorm_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc1_rgba_unorm_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc1_rgba_unorm_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc1_rgba_unorm_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc1_rgba_unorm_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc1_rgba_unorm_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc1_rgba_srgb_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc1_rgba_srgb_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc1_rgba_srgb_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc1_rgba_srgb_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc1_rgba_srgb_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc1_rgba_srgb_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc1_rgba_srgb_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc1_rgba_srgb_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc1_rgba_srgb_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc1_rgba_srgb_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc4_unorm_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc4_unorm_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc4_unorm_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc4_unorm_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc4_unorm_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc4_unorm_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc4_unorm_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc4_unorm_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc4_unorm_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc4_unorm_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc4_snorm_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc4_snorm_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc4_snorm_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc4_snorm_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc4_snorm_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc4_snorm_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc4_snorm_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc4_snorm_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc4_snorm_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc4_snorm_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.etc2_r8g8b8_unorm_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.etc2_r8g8b8_unorm_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.etc2_r8g8b8_unorm_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.etc2_r8g8b8_unorm_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.etc2_r8g8b8_unorm_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.etc2_r8g8b8_unorm_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.etc2_r8g8b8_unorm_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.etc2_r8g8b8_unorm_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.etc2_r8g8b8_unorm_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.etc2_r8g8b8_unorm_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.etc2_r8g8b8_srgb_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.etc2_r8g8b8_srgb_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.etc2_r8g8b8_srgb_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.etc2_r8g8b8_srgb_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.etc2_r8g8b8_srgb_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.etc2_r8g8b8_srgb_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.etc2_r8g8b8_srgb_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.etc2_r8g8b8_srgb_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.etc2_r8g8b8_srgb_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.etc2_r8g8b8_srgb_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.etc2_r8g8b8a1_unorm_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.etc2_r8g8b8a1_unorm_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.etc2_r8g8b8a1_unorm_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.etc2_r8g8b8a1_unorm_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.etc2_r8g8b8a1_unorm_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.etc2_r8g8b8a1_unorm_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.etc2_r8g8b8a1_unorm_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.etc2_r8g8b8a1_unorm_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.etc2_r8g8b8a1_unorm_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.etc2_r8g8b8a1_unorm_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.etc2_r8g8b8a1_srgb_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.etc2_r8g8b8a1_srgb_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.etc2_r8g8b8a1_srgb_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.etc2_r8g8b8a1_srgb_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.etc2_r8g8b8a1_srgb_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.etc2_r8g8b8a1_srgb_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.etc2_r8g8b8a1_srgb_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.etc2_r8g8b8a1_srgb_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.etc2_r8g8b8a1_srgb_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.etc2_r8g8b8a1_srgb_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.eac_r11_unorm_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.eac_r11_unorm_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.eac_r11_unorm_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.eac_r11_unorm_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.eac_r11_unorm_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.eac_r11_unorm_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.eac_r11_unorm_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.eac_r11_unorm_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.eac_r11_unorm_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.eac_r11_unorm_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.eac_r11_snorm_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.eac_r11_snorm_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.eac_r11_snorm_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.eac_r11_snorm_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.eac_r11_snorm_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.eac_r11_snorm_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.eac_r11_snorm_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.eac_r11_snorm_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.eac_r11_snorm_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.eac_r11_snorm_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc2_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc2_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc2_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc2_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc2_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc2_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc3_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc3_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc3_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc3_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc3_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc3_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc5_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc5_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc5_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc5_snorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc5_snorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc5_snorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc6h_ufloat_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc6h_ufloat_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc6h_ufloat_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc6h_sfloat_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc6h_sfloat_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc6h_sfloat_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc7_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc7_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc7_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc7_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc7_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc7_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.etc2_r8g8b8a8_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.etc2_r8g8b8a8_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.etc2_r8g8b8a8_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.etc2_r8g8b8a8_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.etc2_r8g8b8a8_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.etc2_r8g8b8a8_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.eac_r11g11_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.eac_r11g11_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.eac_r11g11_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.eac_r11g11_snorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.eac_r11g11_snorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.eac_r11g11_snorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_4x4_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_4x4_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_4x4_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_4x4_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_4x4_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_4x4_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_5x4_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_5x4_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_5x4_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_5x4_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_5x4_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_5x4_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_5x5_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_5x5_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_5x5_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_5x5_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_5x5_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_5x5_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_6x5_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_6x5_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_6x5_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_6x5_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_6x5_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_6x5_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_6x6_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_6x6_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_6x6_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_6x6_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_6x6_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_6x6_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_8x5_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_8x5_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_8x5_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_8x5_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_8x5_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_8x5_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_8x6_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_8x6_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_8x6_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_8x6_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_8x6_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_8x6_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_8x8_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_8x8_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_8x8_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_8x8_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_8x8_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_8x8_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_10x5_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_10x5_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_10x5_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_10x5_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_10x5_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_10x5_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_10x6_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_10x6_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_10x6_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_10x6_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_10x6_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_10x6_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_10x8_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_10x8_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_10x8_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_10x8_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_10x8_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_10x8_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_10x10_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_10x10_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_10x10_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_10x10_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_10x10_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_10x10_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_12x10_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_12x10_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_12x10_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_12x10_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_12x10_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_12x10_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_12x12_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_12x12_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_12x12_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_12x12_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_12x12_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_12x12_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc1_rgb_unorm_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc1_rgb_unorm_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc1_rgb_unorm_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc1_rgb_unorm_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc1_rgb_unorm_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc1_rgb_unorm_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc1_rgb_unorm_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc1_rgb_unorm_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc1_rgb_unorm_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc1_rgb_unorm_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc1_rgb_srgb_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc1_rgb_srgb_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc1_rgb_srgb_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc1_rgb_srgb_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc1_rgb_srgb_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc1_rgb_srgb_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc1_rgb_srgb_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc1_rgb_srgb_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc1_rgb_srgb_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc1_rgb_srgb_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc1_rgba_unorm_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc1_rgba_unorm_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc1_rgba_unorm_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc1_rgba_unorm_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc1_rgba_unorm_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc1_rgba_unorm_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc1_rgba_unorm_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc1_rgba_unorm_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc1_rgba_unorm_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc1_rgba_unorm_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc1_rgba_srgb_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc1_rgba_srgb_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc1_rgba_srgb_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc1_rgba_srgb_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc1_rgba_srgb_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc1_rgba_srgb_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc1_rgba_srgb_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc1_rgba_srgb_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc1_rgba_srgb_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc1_rgba_srgb_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc4_unorm_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc4_unorm_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc4_unorm_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc4_unorm_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc4_unorm_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc4_unorm_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc4_unorm_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc4_unorm_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc4_unorm_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc4_unorm_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc4_snorm_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc4_snorm_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc4_snorm_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc4_snorm_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc4_snorm_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc4_snorm_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc4_snorm_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc4_snorm_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc4_snorm_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc4_snorm_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.etc2_r8g8b8_unorm_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.etc2_r8g8b8_unorm_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.etc2_r8g8b8_unorm_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.etc2_r8g8b8_unorm_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.etc2_r8g8b8_unorm_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.etc2_r8g8b8_unorm_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.etc2_r8g8b8_unorm_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.etc2_r8g8b8_unorm_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.etc2_r8g8b8_unorm_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.etc2_r8g8b8_unorm_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.etc2_r8g8b8_srgb_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.etc2_r8g8b8_srgb_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.etc2_r8g8b8_srgb_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.etc2_r8g8b8_srgb_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.etc2_r8g8b8_srgb_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.etc2_r8g8b8_srgb_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.etc2_r8g8b8_srgb_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.etc2_r8g8b8_srgb_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.etc2_r8g8b8_srgb_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.etc2_r8g8b8_srgb_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.etc2_r8g8b8a1_unorm_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.etc2_r8g8b8a1_unorm_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.etc2_r8g8b8a1_unorm_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.etc2_r8g8b8a1_unorm_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.etc2_r8g8b8a1_unorm_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.etc2_r8g8b8a1_unorm_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.etc2_r8g8b8a1_unorm_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.etc2_r8g8b8a1_unorm_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.etc2_r8g8b8a1_unorm_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.etc2_r8g8b8a1_unorm_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.etc2_r8g8b8a1_srgb_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.etc2_r8g8b8a1_srgb_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.etc2_r8g8b8a1_srgb_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.etc2_r8g8b8a1_srgb_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.etc2_r8g8b8a1_srgb_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.etc2_r8g8b8a1_srgb_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.etc2_r8g8b8a1_srgb_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.etc2_r8g8b8a1_srgb_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.etc2_r8g8b8a1_srgb_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.etc2_r8g8b8a1_srgb_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.eac_r11_unorm_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.eac_r11_unorm_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.eac_r11_unorm_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.eac_r11_unorm_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.eac_r11_unorm_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.eac_r11_unorm_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.eac_r11_unorm_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.eac_r11_unorm_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.eac_r11_unorm_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.eac_r11_unorm_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.eac_r11_snorm_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.eac_r11_snorm_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.eac_r11_snorm_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.eac_r11_snorm_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.eac_r11_snorm_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.eac_r11_snorm_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.eac_r11_snorm_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.eac_r11_snorm_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.eac_r11_snorm_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.eac_r11_snorm_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc2_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc2_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc2_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc2_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc2_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc2_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc3_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc3_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc3_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc3_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc3_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc3_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc5_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc5_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc5_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc5_snorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc5_snorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc5_snorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc6h_ufloat_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc6h_ufloat_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc6h_ufloat_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc6h_sfloat_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc6h_sfloat_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc6h_sfloat_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc7_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc7_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc7_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc7_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc7_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc7_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.etc2_r8g8b8a8_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.etc2_r8g8b8a8_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.etc2_r8g8b8a8_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.etc2_r8g8b8a8_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.etc2_r8g8b8a8_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.etc2_r8g8b8a8_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.eac_r11g11_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.eac_r11g11_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.eac_r11g11_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.eac_r11g11_snorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.eac_r11g11_snorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.eac_r11g11_snorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_4x4_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_4x4_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_4x4_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_4x4_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_4x4_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_4x4_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_5x4_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_5x4_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_5x4_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_5x4_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_5x4_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_5x4_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_5x5_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_5x5_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_5x5_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_5x5_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_5x5_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_5x5_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_6x5_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_6x5_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_6x5_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_6x5_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_6x5_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_6x5_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_6x6_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_6x6_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_6x6_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_6x6_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_6x6_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_6x6_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_8x5_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_8x5_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_8x5_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_8x5_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_8x5_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_8x5_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_8x6_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_8x6_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_8x6_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_8x6_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_8x6_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_8x6_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_8x8_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_8x8_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_8x8_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_8x8_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_8x8_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_8x8_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_10x5_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_10x5_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_10x5_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_10x5_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_10x5_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_10x5_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_10x6_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_10x6_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_10x6_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_10x6_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_10x6_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_10x6_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_10x8_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_10x8_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_10x8_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_10x8_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_10x8_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_10x8_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_10x10_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_10x10_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_10x10_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_10x10_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_10x10_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_10x10_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_12x10_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_12x10_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_12x10_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_12x10_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_12x10_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_12x10_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_12x12_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_12x12_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_12x12_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_12x12_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_12x12_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_12x12_srgb_block.r32g32b32a32_sfloat
 dEQP-VK.wsi.android.surface.create
 dEQP-VK.wsi.android.surface.create_custom_allocator
 dEQP-VK.wsi.android.surface.create_simulate_oom
index cafca7c..8e26830 100644 (file)
@@ -17,6 +17,8 @@ set(DEQP_VK_IMAGE_SRCS
        vktImageTexture.hpp
        vktImageMultisampleLoadStoreTests.cpp
        vktImageMultisampleLoadStoreTests.hpp
+       vktImageCompressionTranscodingSupport.cpp
+       vktImageCompressionTranscodingSupport.hpp
        vktImageLoadStoreUtil.cpp
        vktImageLoadStoreUtil.hpp
        )
diff --git a/external/vulkancts/modules/vulkan/image/vktImageCompressionTranscodingSupport.cpp b/external/vulkancts/modules/vulkan/image/vktImageCompressionTranscodingSupport.cpp
new file mode 100644 (file)
index 0000000..9e335cb
--- /dev/null
@@ -0,0 +1,2245 @@
+/*------------------------------------------------------------------------
+ * Vulkan Conformance Tests
+ * ------------------------
+ *
+ * Copyright (c) 2017 The Khronos Group Inc.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ *//*!
+ * \file  vktImageCompressionTranscodingSupport.cpp
+ * \brief Compression transcoding support
+ *//*--------------------------------------------------------------------*/
+
+#include "vktImageCompressionTranscodingSupport.hpp"
+
+#include "deUniquePtr.hpp"
+#include "deStringUtil.hpp"
+#include "deSharedPtr.hpp"
+#include "deRandom.hpp"
+
+#include "vktTestCaseUtil.hpp"
+#include "vkPrograms.hpp"
+#include "vkImageUtil.hpp"
+#include "vktImageTestsUtil.hpp"
+#include "vkBuilderUtil.hpp"
+#include "vkRef.hpp"
+#include "vkRefUtil.hpp"
+#include "vkTypeUtil.hpp"
+#include "vkQueryUtil.hpp"
+
+#include "tcuTextureUtil.hpp"
+#include "tcuTexture.hpp"
+#include "tcuCompressedTexture.hpp"
+#include "tcuVectorType.hpp"
+#include "tcuResource.hpp"
+#include "tcuImageIO.hpp"
+#include "tcuImageCompare.hpp"
+#include "tcuTestLog.hpp"
+#include "tcuRGBA.hpp"
+#include "tcuSurface.hpp"
+
+#include <vector>
+#include <iomanip>
+
+using namespace vk;
+namespace vkt
+{
+namespace image
+{
+namespace
+{
+using std::string;
+using std::vector;
+using tcu::TestContext;
+using tcu::TestStatus;
+using tcu::UVec3;
+using tcu::CompressedTexFormat;
+using tcu::CompressedTexture;
+using tcu::Resource;
+using tcu::Archive;
+using de::MovePtr;
+using de::SharedPtr;
+using de::Random;
+
+typedef SharedPtr<MovePtr<Image> >             ImageSp;
+typedef SharedPtr<Move<VkImageView> >  ImageViewSp;
+
+enum ShaderType
+{
+       SHADER_TYPE_COMPUTE,
+       SHADER_TYPE_FRAGMENT,
+       SHADER_TYPE_LAST
+};
+
+enum Operation
+{
+       OPERATION_IMAGE_LOAD,
+       OPERATION_TEXEL_FETCH,
+       OPERATION_TEXTURE,
+       OPERATION_IMAGE_STORE,
+       OPERATION_ATTACHMENT_READ,
+       OPERATION_ATTACHMENT_WRITE,
+       OPERATION_TEXTURE_READ,
+       OPERATION_TEXTURE_WRITE,
+       OPERATION_LAST
+};
+
+struct TestParameters
+{
+       Operation                       operation;
+       ShaderType                      shader;
+       UVec3                           size;
+       ImageType                       imageType;
+       VkFormat                        formatCompressed;
+       VkFormat                        formatUncompressed;
+       deUint32                        imagesCount;
+       VkImageUsageFlags       compressedImageUsage;
+       VkImageUsageFlags       uncompressedImageUsage;
+       bool                            useMipmaps;
+       VkFormat                        formatForVerify;
+};
+
+template<typename T>
+inline SharedPtr<Move<T> > makeVkSharedPtr (Move<T> move)
+{
+       return SharedPtr<Move<T> >(new vk::Move<T>(move));
+}
+
+template<typename T>
+inline SharedPtr<MovePtr<T> > makeVkSharedPtr (MovePtr<T> movePtr)
+{
+       return SharedPtr<MovePtr<T> >(new MovePtr<T>(movePtr));
+}
+
+class BasicTranscodingTestInstance : public TestInstance
+{
+public:
+                                                       BasicTranscodingTestInstance    (Context&                               contex,
+                                                                                                                        const TestParameters&  parameters);
+       virtual TestStatus              iterate                                                 (void) = 0;
+protected:
+       void                                    generateData                                    (deUint8*                               toFill,
+                                                                                                                        size_t                                 size,
+                                                                                                                        const VkFormat                 format = VK_FORMAT_UNDEFINED);
+       const TestParameters    m_parameters;
+};
+
+BasicTranscodingTestInstance::BasicTranscodingTestInstance (Context& context, const TestParameters& parameters)
+       : TestInstance  (context)
+       , m_parameters  (parameters)
+{
+}
+
+void BasicTranscodingTestInstance::generateData (deUint8* toFill, size_t size, const VkFormat format)
+{
+       const deUint8 pattern[] =
+       {
+               // 64-bit values
+               0x11, 0x11, 0x11, 0x11, 0x22, 0x22, 0x22, 0x22,
+               0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+               0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01,
+               0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00,
+               0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00,
+               0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
+               0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF,
+               0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0x00,
+               0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0x00, 0x00,
+               0x00, 0x00, 0x00, 0x00, 0xFF, 0x00, 0x00, 0x00,
+               0x7F, 0xF0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,         // Positive infinity
+               0xFF, 0xF0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,         // Negative infinity
+               0x7F, 0xF0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01,         // Start of a signalling NaN (NANS)
+               0x7F, 0xF7, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,         // End of a signalling NaN (NANS)
+               0xFF, 0xF0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01,         // Start of a signalling NaN (NANS)
+               0xFF, 0xF7, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,         // End of a signalling NaN (NANS)
+               0x7F, 0xF8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,         // Start of a quiet NaN (NANQ)
+               0x7F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,         // End of of a quiet NaN (NANQ)
+               0xFF, 0xF8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,         // Start of a quiet NaN (NANQ)
+               0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,         // End of a quiet NaN (NANQ)
+               // 32-bit values
+               0x7F, 0x80, 0x00, 0x00,                                                         // Positive infinity
+               0xFF, 0x80, 0x00, 0x00,                                                         // Negative infinity
+               0x7F, 0x80, 0x00, 0x01,                                                         // Start of a signalling NaN (NANS)
+               0x7F, 0xBF, 0xFF, 0xFF,                                                         // End of a signalling NaN (NANS)
+               0xFF, 0x80, 0x00, 0x01,                                                         // Start of a signalling NaN (NANS)
+               0xFF, 0xBF, 0xFF, 0xFF,                                                         // End of a signalling NaN (NANS)
+               0x7F, 0xC0, 0x00, 0x00,                                                         // Start of a quiet NaN (NANQ)
+               0x7F, 0xFF, 0xFF, 0xFF,                                                         // End of of a quiet NaN (NANQ)
+               0xFF, 0xC0, 0x00, 0x00,                                                         // Start of a quiet NaN (NANQ)
+               0xFF, 0xFF, 0xFF, 0xFF,                                                         // End of a quiet NaN (NANQ)
+               0xAA, 0xAA, 0xAA, 0xAA,
+               0x55, 0x55, 0x55, 0x55,
+       };
+
+       deUint8*        start           = toFill;
+       size_t          sizeToRnd       = size;
+
+       // Pattern part
+       if (size >= 2 * sizeof(pattern))
+       {
+               // Rotated pattern
+               for (size_t i = 0; i < sizeof(pattern); i++)
+                       start[sizeof(pattern) - i - 1] = pattern[i];
+
+               start           += sizeof(pattern);
+               sizeToRnd       -= sizeof(pattern);
+
+               // Direct pattern
+               deMemcpy(start, pattern, sizeof(pattern));
+
+               start           += sizeof(pattern);
+               sizeToRnd       -= sizeof(pattern);
+       }
+
+       // Random part
+       {
+               DE_ASSERT(sizeToRnd % sizeof(deUint32) == 0);
+
+               deUint32*       start32         = reinterpret_cast<deUint32*>(start);
+               size_t          sizeToRnd32     = sizeToRnd / sizeof(deUint32);
+               Random          rnd                     (static_cast<deUint32>(format));
+
+               for (size_t i = 0; i < sizeToRnd32; i++)
+                       start32[i] = rnd.getUint32();
+       }
+
+       {
+               // Remove certain values that may not be preserved based on the uncompressed view format
+               if (isSnormFormat(m_parameters.formatUncompressed))
+               {
+                       for (size_t i = 0; i < size; i += 2)
+                       {
+                               // SNORM fix: due to write operation in SNORM format
+                               // replaces 0x00 0x80 to 0x01 0x80
+                               if (toFill[i] == 0x00 && toFill[i+1] == 0x80)
+                                       toFill[i+1] = 0x81;
+                       }
+               }
+               else if (isFloatFormat(m_parameters.formatUncompressed))
+               {
+                       tcu::TextureFormat textureFormat = mapVkFormat(m_parameters.formatUncompressed);
+
+                       if (textureFormat.type == tcu::TextureFormat::HALF_FLOAT)
+                       {
+                               for (size_t i = 0; i < size; i += 2)
+                               {
+                                       // HALF_FLOAT fix: remove INF and NaN
+                                       if ((toFill[i+1] & 0x7C) == 0x7C)
+                                               toFill[i+1] = 0x00;
+                               }
+                       }
+                       else if (textureFormat.type == tcu::TextureFormat::FLOAT)
+                       {
+                               for (size_t i = 0; i < size; i += 4)
+                               {
+                                       // HALF_FLOAT fix: remove INF and NaN
+                                       if ((toFill[i+1] & 0x7C) == 0x7C)
+                                               toFill[i+1] = 0x00;
+                               }
+
+                               for (size_t i = 0; i < size; i += 4)
+                               {
+                                       // FLOAT fix: remove INF, NaN, and denorm
+                                       // Little endian fix
+                                       if (((toFill[i+3] & 0x7F) == 0x7F && (toFill[i+2] & 0x80) == 0x80) || ((toFill[i+3] & 0x7F) == 0x00 && (toFill[i+2] & 0x80) == 0x00))
+                                               toFill[i+3] = 0x01;
+                                       // Big endian fix
+                                       if (((toFill[i+0] & 0x7F) == 0x7F && (toFill[i+1] & 0x80) == 0x80) || ((toFill[i+0] & 0x7F) == 0x00 && (toFill[i+1] & 0x80) == 0x00))
+                                               toFill[i+0] = 0x01;
+                               }
+                       }
+               }
+       }
+}
+
+class BasicComputeTestInstance : public BasicTranscodingTestInstance
+{
+public:
+                                       BasicComputeTestInstance        (Context&                                                       contex,
+                                                                                               const TestParameters&                           parameters);
+       TestStatus              iterate                                         (void);
+protected:
+       void                    copyDataToImage                         (const VkCommandBuffer&                         cmdBuffer,
+                                                                                                const VkImage&                                         compressed,
+                                                                                                const VkImageCreateInfo&                       imageInfo);
+       virtual void    executeShader                           (const VkCommandBuffer&                         cmdBuffer,
+                                                                                                const VkDescriptorSetLayout&           descriptorSetLayout,
+                                                                                                const VkDescriptorPool&                        descriptorPool,
+                                                                                                const vector<ImageSp>&                         images,
+                                                                                                const vector<ImageViewSp>&                     imageViews);
+       bool                    copyResultAndCompare            (const VkCommandBuffer&                         cmdBuffer,
+                                                                                                const VkImage&                                         uncompressed);
+       void                    descriptorSetUpdate                     (VkDescriptorSet                                        descriptorSet,
+                                                                                                const VkDescriptorImageInfo*           descriptorImageInfos);
+       void                    createImageInfos                        (VkImageCreateInfo*                                     imageInfos);
+       bool                    decompressImage                         (const VkCommandBuffer&                         cmdBuffer,
+                                                                                                const VkImage&                                         uncompressed,
+                                                                                                const VkImage&                                         compressed,
+                                                                                                const VkExtent3D&                                      extentunCompressed);
+       vector<deUint8> m_data;
+};
+
+BasicComputeTestInstance::BasicComputeTestInstance (Context& context, const TestParameters& parameters)
+       :BasicTranscodingTestInstance   (context, parameters)
+       ,m_data                                                 (static_cast<size_t>(getCompressedImageSizeInBytes(parameters.formatCompressed, parameters.size)))
+{
+       generateData (&m_data[0], m_data.size(), m_parameters.formatCompressed);
+}
+
+TestStatus BasicComputeTestInstance::iterate (void)
+{
+       const DeviceInterface&                                  vk                                      = m_context.getDeviceInterface();
+       const VkDevice                                                  device                          = m_context.getDevice();
+       const deUint32                                                  queueFamilyIndex        = m_context.getUniversalQueueFamilyIndex();
+       Allocator&                                                              allocator                       = m_context.getDefaultAllocator();
+
+       Move<VkDescriptorSetLayout>                             descriptorSetLayout;
+       Move<VkDescriptorPool>                                  descriptorPool;
+
+       vector<ImageSp>                                                 images;
+       vector<VkImageCreateInfo>                               imagesInfo                      (m_parameters.imagesCount);
+       createImageInfos(&imagesInfo[0]);
+       vector<ImageViewSp>                                             imageViews                      (m_parameters.imagesCount);
+       images.resize(m_parameters.imagesCount);
+       const deUint32                                                  compressedNdx           = 0u;
+       const deUint32                                                  uncompressedNdx         = m_parameters.imagesCount - 1u;
+
+       {
+               DescriptorSetLayoutBuilder      descriptorSetLayoutBuilder;
+               DescriptorPoolBuilder           descriptorPoolBuilder;
+
+               for (deUint32 imageNdx = 0; imageNdx < m_parameters.imagesCount; ++imageNdx)
+               {
+                       images[imageNdx] = makeVkSharedPtr(MovePtr<Image>(new Image(vk, device, allocator, imagesInfo[imageNdx], MemoryRequirement::Any)));
+                       if (compressedNdx == imageNdx)
+                       {
+                               const VkImageViewUsageCreateInfoKHR     imageViewUsageCreateInfoKHR     =
+                               {
+                                       VK_STRUCTURE_TYPE_IMAGE_VIEW_USAGE_CREATE_INFO_KHR,     //VkStructureType               sType;
+                                       DE_NULL,                                                                                        //const void*                   pNext;
+                                       m_parameters.compressedImageUsage,                                      //VkImageUsageFlags             usage;
+                               };
+                               imageViews[imageNdx] = makeVkSharedPtr(makeImageView(vk, device, **images[imageNdx]->get(), mapImageViewType(m_parameters.imageType), m_parameters.formatUncompressed,
+                                               makeImageSubresourceRange(VK_IMAGE_ASPECT_COLOR_BIT, 0u, imagesInfo[imageNdx].extent.depth, 0u, imagesInfo[imageNdx].arrayLayers), &imageViewUsageCreateInfoKHR));
+                       }
+                       else
+                       {
+                               imageViews[imageNdx] = makeVkSharedPtr(makeImageView(vk, device, **images[imageNdx]->get(), mapImageViewType(m_parameters.imageType), m_parameters.formatUncompressed,
+                                                                               makeImageSubresourceRange(VK_IMAGE_ASPECT_COLOR_BIT, 0u, imagesInfo[imageNdx].extent.depth, 0u, imagesInfo[imageNdx].arrayLayers)));
+                       }
+                       switch(m_parameters.operation)
+                       {
+                               case OPERATION_IMAGE_LOAD:
+                               case OPERATION_IMAGE_STORE:
+                                       descriptorSetLayoutBuilder.addSingleBinding(VK_DESCRIPTOR_TYPE_STORAGE_IMAGE, VK_SHADER_STAGE_COMPUTE_BIT);
+                                       descriptorPoolBuilder.addType(VK_DESCRIPTOR_TYPE_STORAGE_IMAGE, imagesInfo[imageNdx].arrayLayers);
+                                       break;
+                               case OPERATION_TEXEL_FETCH:
+                               case OPERATION_TEXTURE:
+                                       descriptorSetLayoutBuilder.addSingleBinding((compressedNdx == imageNdx) ? VK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER : VK_DESCRIPTOR_TYPE_STORAGE_IMAGE, VK_SHADER_STAGE_COMPUTE_BIT);
+                                       descriptorPoolBuilder.addType((compressedNdx == imageNdx) ? VK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER : VK_DESCRIPTOR_TYPE_STORAGE_IMAGE, imagesInfo[imageNdx].arrayLayers);
+                                       break;
+                               default:
+                                       DE_ASSERT(false);
+                                       break;
+                       }
+               }
+               descriptorSetLayout     = descriptorSetLayoutBuilder.build(vk, device);
+               descriptorPool          = descriptorPoolBuilder.build(vk, device, VK_DESCRIPTOR_POOL_CREATE_FREE_DESCRIPTOR_SET_BIT, imagesInfo[0].arrayLayers);
+       }
+
+       const Unique<VkCommandPool>                             cmdPool                         (createCommandPool(vk, device, VK_COMMAND_POOL_CREATE_RESET_COMMAND_BUFFER_BIT, queueFamilyIndex));
+       const Unique<VkCommandBuffer>                   cmdBuffer                       (allocateCommandBuffer(vk, device, *cmdPool, VK_COMMAND_BUFFER_LEVEL_PRIMARY));
+
+       switch(m_parameters.operation)
+       {
+               case OPERATION_IMAGE_LOAD:
+               case OPERATION_TEXEL_FETCH:
+               case OPERATION_TEXTURE:
+                       copyDataToImage(*cmdBuffer, **images[compressedNdx]->get(), imagesInfo[compressedNdx]);
+                       break;
+               case OPERATION_IMAGE_STORE:
+                       copyDataToImage(*cmdBuffer, **images[1]->get(), imagesInfo[1]);
+                       break;
+               default:
+                       DE_ASSERT(false);
+                       break;
+       }
+       executeShader(*cmdBuffer, *descriptorSetLayout, *descriptorPool, images, imageViews);
+
+       if (copyResultAndCompare(*cmdBuffer, **images[uncompressedNdx]->get()) &&
+               decompressImage(*cmdBuffer, **images[uncompressedNdx]->get(), **images[compressedNdx]->get(), imagesInfo[uncompressedNdx].extent))
+       {
+               return TestStatus::pass("Pass");
+       }
+       return TestStatus::fail("Fail");
+}
+
+void BasicComputeTestInstance::copyDataToImage (const VkCommandBuffer& cmdBuffer, const VkImage& compressed, const VkImageCreateInfo& imageInfo)
+{
+       const DeviceInterface&          vk                      = m_context.getDeviceInterface();
+       const VkDevice                          device          = m_context.getDevice();
+       const VkQueue                           queue           = m_context.getUniversalQueue();
+       Allocator&                                      allocator       = m_context.getDefaultAllocator();
+
+       Buffer                                          imageBuffer     (vk, device, allocator,
+                                                                                               makeBufferCreateInfo(m_data.size(), VK_BUFFER_USAGE_TRANSFER_SRC_BIT),
+                                                                                               MemoryRequirement::HostVisible);
+       {
+               const Allocation& alloc = imageBuffer.getAllocation();
+               deMemcpy(alloc.getHostPtr(), &m_data[0], m_data.size());
+               flushMappedMemoryRange(vk, device, alloc.getMemory(), alloc.getOffset(), m_data.size());
+       }
+
+       beginCommandBuffer(vk, cmdBuffer);
+       {
+               const VkImageSubresourceRange   subresourceRange                =
+               {
+                       VK_IMAGE_ASPECT_COLOR_BIT,                                                                                      //VkImageAspectFlags    aspectMask
+                       0u,                                                                                                                                     //deUint32                              baseMipLevel
+                       1u,                                                                                                                                     //deUint32                              levelCount
+                       0u,                                                                                                                                     //deUint32                              baseArrayLayer
+                       1                                                                                                                                       //deUint32                              layerCount
+               };
+
+               const VkImageMemoryBarrier              preCopyImageBarrier             = makeImageMemoryBarrier(
+                                                                                                                                       0u, VK_ACCESS_TRANSFER_WRITE_BIT,
+                                                                                                                                       VK_IMAGE_LAYOUT_UNDEFINED, VK_IMAGE_LAYOUT_TRANSFER_DST_OPTIMAL,
+                                                                                                                                       compressed, subresourceRange);
+
+               const VkBufferMemoryBarrier             FlushHostCopyBarrier    = makeBufferMemoryBarrier(
+                                                                                                                                       VK_ACCESS_HOST_WRITE_BIT, VK_ACCESS_TRANSFER_READ_BIT,
+                                                                                                                                       imageBuffer.get(), 0ull, m_data.size());
+
+               vk.cmdPipelineBarrier(cmdBuffer, VK_PIPELINE_STAGE_TOP_OF_PIPE_BIT, VK_PIPELINE_STAGE_TRANSFER_BIT,
+                               (VkDependencyFlags)0, 0, (const VkMemoryBarrier*)DE_NULL, 1u, &FlushHostCopyBarrier, 1u, &preCopyImageBarrier);
+
+               const VkBufferImageCopy                 copyRegion                              =
+               {
+                       0ull,                                                                                                                           //      VkDeviceSize                            bufferOffset;
+                       0u,                                                                                                                                     //      deUint32                                        bufferRowLength;
+                       0u,                                                                                                                                     //      deUint32                                        bufferImageHeight;
+                       makeImageSubresourceLayers(VK_IMAGE_ASPECT_COLOR_BIT, 0u, 0u, 1u),      //      VkImageSubresourceLayers        imageSubresource;
+                       makeOffset3D(0, 0, 0),                                                                                          //      VkOffset3D                                      imageOffset;
+                       imageInfo.extent,                                                                                                       //      VkExtent3D                                      imageExtent;
+               };
+
+               vk.cmdCopyBufferToImage(cmdBuffer, imageBuffer.get(), compressed, VK_IMAGE_LAYOUT_TRANSFER_DST_OPTIMAL, 1u, &copyRegion);
+       }
+       endCommandBuffer(vk, cmdBuffer);
+       submitCommandsAndWait(vk, device, queue, cmdBuffer);
+}
+
+void BasicComputeTestInstance::executeShader (const VkCommandBuffer&           cmdBuffer,
+                                                                                         const VkDescriptorSetLayout&  descriptorSetLayout,
+                                                                                         const VkDescriptorPool&               descriptorPool,
+                                                                                         const vector<ImageSp>&                images,
+                                                                                         const vector<ImageViewSp>&    imageViews)
+{
+       const DeviceInterface&                  vk                                              = m_context.getDeviceInterface();
+       const VkDevice                                  device                                  = m_context.getDevice();
+       const VkQueue                                   queue                                   = m_context.getUniversalQueue();
+       const Unique<VkShaderModule>    shaderModule                    (createShaderModule(vk, device, m_context.getBinaryCollection().get("comp"), 0));
+       Move<VkDescriptorSet>                   descriptorSet                   = makeDescriptorSet(vk, device, descriptorPool, descriptorSetLayout);
+       const Unique<VkPipelineLayout>  pipelineLayout                  (makePipelineLayout(vk, device, descriptorSetLayout));
+       const Unique<VkPipeline>                pipeline                                (makeComputePipeline(vk, device, *pipelineLayout, *shaderModule));
+       const UVec3                                             extentUncompressed              = getCompressedImageResolutionInBlocks(m_parameters.formatCompressed, m_parameters.size);
+       Move<VkSampler>                                 sampler;
+       {
+               const vk::VkSamplerCreateInfo createInfo =
+               {
+                       vk::VK_STRUCTURE_TYPE_SAMPLER_CREATE_INFO,      //VkStructureType               sType;
+                       DE_NULL,                                                                        //const void*                   pNext;
+                       0u,                                                                                     //VkSamplerCreateFlags  flags;
+                       VK_FILTER_NEAREST,                                                      //VkFilter                              magFilter;
+                       VK_FILTER_NEAREST,                                                      //VkFilter                              minFilter;
+                       VK_SAMPLER_MIPMAP_MODE_NEAREST,                         //VkSamplerMipmapMode   mipmapMode;
+                       VK_SAMPLER_ADDRESS_MODE_CLAMP_TO_EDGE,          //VkSamplerAddressMode  addressModeU;
+                       VK_SAMPLER_ADDRESS_MODE_CLAMP_TO_EDGE,          //VkSamplerAddressMode  addressModeV;
+                       VK_SAMPLER_ADDRESS_MODE_CLAMP_TO_EDGE,          //VkSamplerAddressMode  addressModeW;
+                       0.0f,                                                                           //float                                 mipLodBias;
+                       VK_FALSE,                                                                       //VkBool32                              anisotropyEnable;
+                       1.0f,                                                                           //float                                 maxAnisotropy;
+                       VK_TRUE,                                                                        //VkBool32                              compareEnable;
+                       VK_COMPARE_OP_EQUAL,                                            //VkCompareOp                   compareOp;
+                       0.0f,                                                                           //float                                 minLod;
+                       0.0f,                                                                           //float                                 maxLod;
+                       VK_BORDER_COLOR_FLOAT_TRANSPARENT_BLACK,        //VkBorderColor                 borderColor;
+                       VK_TRUE,                                                                        //VkBool32                              unnormalizedCoordinates;
+               };
+               sampler = vk::createSampler(vk, device, &createInfo);
+       }
+
+       vector<VkDescriptorImageInfo>   descriptorImageInfos    (m_parameters.imagesCount);
+       for (deUint32 bindingNdx = 0; bindingNdx < m_parameters.imagesCount; ++bindingNdx)
+               descriptorImageInfos[bindingNdx] = makeDescriptorImageInfo(*sampler, **imageViews[bindingNdx], VK_IMAGE_LAYOUT_GENERAL);
+
+       beginCommandBuffer(vk, cmdBuffer);
+       {
+               const VkImageSubresourceRange   subresourceRange                        =
+               {
+                       VK_IMAGE_ASPECT_COLOR_BIT,                                      //VkImageAspectFlags    aspectMask
+                       0u,                                                                                     //deUint32                              baseMipLevel
+                       1u,                                                                                     //deUint32                              levelCount
+                       0u,                                                                                     //deUint32                              baseArrayLayer
+                       1u                                                                                      //deUint32                              layerCount
+               };
+
+               vk.cmdBindPipeline(cmdBuffer, VK_PIPELINE_BIND_POINT_COMPUTE, *pipeline);
+
+               const VkImageMemoryBarrier              preShaderImageBarriers[]        =
+               {
+                       makeImageMemoryBarrier(
+                               VK_ACCESS_TRANSFER_WRITE_BIT, VK_ACCESS_SHADER_READ_BIT,
+                               VK_IMAGE_LAYOUT_TRANSFER_DST_OPTIMAL, VK_IMAGE_LAYOUT_GENERAL,
+                               **images[0]->get(), subresourceRange),
+
+                       makeImageMemoryBarrier(
+                               VK_ACCESS_TRANSFER_WRITE_BIT, VK_ACCESS_SHADER_WRITE_BIT,
+                               VK_IMAGE_LAYOUT_UNDEFINED, VK_IMAGE_LAYOUT_GENERAL,
+                               **images[1]->get(), subresourceRange)
+               };
+
+               vk.cmdPipelineBarrier(cmdBuffer, VK_PIPELINE_STAGE_TRANSFER_BIT, VK_PIPELINE_STAGE_COMPUTE_SHADER_BIT,
+                       (VkDependencyFlags)0, 0, (const VkMemoryBarrier*)DE_NULL, 0u, (const VkBufferMemoryBarrier*)DE_NULL,
+                       DE_LENGTH_OF_ARRAY(preShaderImageBarriers), preShaderImageBarriers);
+
+               descriptorSetUpdate (*descriptorSet, &descriptorImageInfos[0]);
+
+               vk.cmdBindDescriptorSets(cmdBuffer, VK_PIPELINE_BIND_POINT_COMPUTE, *pipelineLayout, 0u, 1u, &descriptorSet.get(), 0u, DE_NULL);
+               vk.cmdDispatch(cmdBuffer, extentUncompressed.x(), extentUncompressed.y(), extentUncompressed.z());
+       }
+       endCommandBuffer(vk, cmdBuffer);
+       submitCommandsAndWait(vk, device, queue, cmdBuffer);
+}
+
+bool BasicComputeTestInstance::copyResultAndCompare (const VkCommandBuffer& cmdBuffer, const VkImage& uncompressed)
+{
+       const DeviceInterface&  vk                                      = m_context.getDeviceInterface();
+       const VkQueue                   queue                           = m_context.getUniversalQueue();
+       const VkDevice                  device                          = m_context.getDevice();
+       Allocator&                              allocator                       = m_context.getDefaultAllocator();
+       const UVec3                             extentUncompressed      = getCompressedImageResolutionInBlocks(m_parameters.formatCompressed, m_parameters.size);
+
+       vk::VkDeviceSize                imageResultSize         = getImageSizeBytes (tcu::IVec3(extentUncompressed.x(), extentUncompressed.y(), extentUncompressed.z()), m_parameters.formatUncompressed);
+       Buffer                                  imageBufferResult       (vk, device, allocator,
+                                                                                                       makeBufferCreateInfo(imageResultSize, VK_BUFFER_USAGE_TRANSFER_DST_BIT),
+                                                                                                       MemoryRequirement::HostVisible);
+
+       beginCommandBuffer(vk, cmdBuffer);
+       {
+               const VkImageSubresourceRange   subresourceRange        =
+               {
+                       VK_IMAGE_ASPECT_COLOR_BIT,                                                                                      //VkImageAspectFlags    aspectMask
+                       0u,                                                                                                                                     //deUint32                              baseMipLevel
+                       1u,                                                                                                                                     //deUint32                              levelCount
+                       0u,                                                                                                                                     //deUint32                              baseArrayLayer
+                       1u                                                                                                                                      //deUint32                              layerCount
+               };
+
+               const VkBufferImageCopy                 copyRegion                      =
+               {
+                       0ull,                                                                                                                           //      VkDeviceSize                            bufferOffset;
+                       0u,                                                                                                                                     //      deUint32                                        bufferRowLength;
+                       0u,                                                                                                                                     //      deUint32                                        bufferImageHeight;
+                       makeImageSubresourceLayers(VK_IMAGE_ASPECT_COLOR_BIT, 0u, 0u, 1u),      //      VkImageSubresourceLayers        imageSubresource;
+                       makeOffset3D(0, 0, 0),                                                                                          //      VkOffset3D                                      imageOffset;
+                       makeExtent3D(extentUncompressed),                                                                       //      VkExtent3D                                      imageExtent;
+               };
+
+               const VkImageMemoryBarrier prepareForTransferBarrier = makeImageMemoryBarrier(
+                                                                                                                               VK_ACCESS_SHADER_WRITE_BIT, VK_ACCESS_TRANSFER_READ_BIT,
+                                                                                                                               VK_IMAGE_LAYOUT_GENERAL, VK_IMAGE_LAYOUT_TRANSFER_SRC_OPTIMAL,
+                                                                                                                               uncompressed, subresourceRange);
+
+               const VkBufferMemoryBarrier copyBarrier = makeBufferMemoryBarrier(
+                                                                                                       VK_ACCESS_TRANSFER_WRITE_BIT, VK_ACCESS_HOST_READ_BIT,
+                                                                                                       imageBufferResult.get(), 0ull, imageResultSize);
+
+               vk.cmdPipelineBarrier(cmdBuffer, VK_PIPELINE_STAGE_COMPUTE_SHADER_BIT, VK_PIPELINE_STAGE_TRANSFER_BIT, (VkDependencyFlags)0, 0, (const VkMemoryBarrier*)DE_NULL, 0, (const VkBufferMemoryBarrier*)DE_NULL, 1, &prepareForTransferBarrier);
+               vk.cmdCopyImageToBuffer(cmdBuffer, uncompressed, VK_IMAGE_LAYOUT_TRANSFER_SRC_OPTIMAL, imageBufferResult.get(), 1u, &copyRegion);
+               vk.cmdPipelineBarrier(cmdBuffer, VK_PIPELINE_STAGE_TRANSFER_BIT, VK_PIPELINE_STAGE_HOST_BIT, (VkDependencyFlags)0, 0, (const VkMemoryBarrier*)DE_NULL, 1, &copyBarrier, 0, (const VkImageMemoryBarrier*)DE_NULL);
+       }
+       endCommandBuffer(vk, cmdBuffer);
+       submitCommandsAndWait(vk, device, queue, cmdBuffer);
+
+       const Allocation& allocResult = imageBufferResult.getAllocation();
+       invalidateMappedMemoryRange(vk, device, allocResult.getMemory(), allocResult.getOffset(), imageResultSize);
+
+       if (deMemCmp(allocResult.getHostPtr(), &m_data[0], (size_t)imageResultSize) == 0)
+               return true;
+       return false;
+}
+
+void BasicComputeTestInstance::descriptorSetUpdate (VkDescriptorSet descriptorSet, const VkDescriptorImageInfo* descriptorImageInfos)
+{
+       const DeviceInterface&          vk              = m_context.getDeviceInterface();
+       const VkDevice                          device  = m_context.getDevice();
+       DescriptorSetUpdateBuilder      descriptorSetUpdateBuilder;
+
+       switch(m_parameters.operation)
+       {
+               case OPERATION_IMAGE_LOAD:
+               case OPERATION_IMAGE_STORE:
+               {
+                       for (deUint32 bindingNdx = 0; bindingNdx < m_parameters.imagesCount; ++bindingNdx)
+                               descriptorSetUpdateBuilder.writeSingle(descriptorSet, DescriptorSetUpdateBuilder::Location::binding(bindingNdx), VK_DESCRIPTOR_TYPE_STORAGE_IMAGE, &descriptorImageInfos[bindingNdx]);
+
+                       break;
+               }
+
+               case OPERATION_TEXEL_FETCH:
+               case OPERATION_TEXTURE:
+               {
+                       for (deUint32 bindingNdx = 0; bindingNdx < m_parameters.imagesCount; ++bindingNdx)
+                       {
+                               descriptorSetUpdateBuilder.writeSingle(descriptorSet, DescriptorSetUpdateBuilder::Location::binding(bindingNdx),
+                                       bindingNdx == 0 ? VK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER : VK_DESCRIPTOR_TYPE_STORAGE_IMAGE, &descriptorImageInfos[bindingNdx]);
+                       }
+                       break;
+               }
+
+               default:
+                       DE_ASSERT(false);
+       }
+       descriptorSetUpdateBuilder.update(vk, device);
+}
+
+void BasicComputeTestInstance::createImageInfos (VkImageCreateInfo* imageInfos)
+{
+       const VkExtent3D                        extentUncompressed      = makeExtent3D(getCompressedImageResolutionInBlocks(m_parameters.formatCompressed, m_parameters.size));
+       const VkExtent3D                        extentCompressed        = makeExtent3D(getLayerSize(m_parameters.imageType, m_parameters.size));
+       const deUint32                          arrayLayers                     = getNumLayers(m_parameters.imageType, m_parameters.size);
+       const VkImageType                       imageType                       = mapImageType(m_parameters.imageType);
+
+       const VkImageCreateInfo compressedInfo =
+       {
+               VK_STRUCTURE_TYPE_IMAGE_CREATE_INFO,                                    // VkStructureType                      sType;
+               DE_NULL,                                                                                                // const void*                          pNext;
+               VK_IMAGE_CREATE_MUTABLE_FORMAT_BIT |
+               VK_IMAGE_CREATE_BLOCK_TEXEL_VIEW_COMPATIBLE_BIT_KHR |
+               VK_IMAGE_CREATE_EXTENDED_USAGE_BIT_KHR,                                 // VkImageCreateFlags           flags;
+               imageType,                                                                                              // VkImageType                          imageType;
+               m_parameters.formatCompressed,                                                  // VkFormat                                     format;
+               extentCompressed,                                                                               // VkExtent3D                           extent;
+               1u,                                                                                                             // deUint32                                     mipLevels;
+               arrayLayers,                                                                                    // deUint32                                     arrayLayers;
+               VK_SAMPLE_COUNT_1_BIT,                                                                  // VkSampleCountFlagBits        samples;
+               VK_IMAGE_TILING_OPTIMAL,                                                                // VkImageTiling                        tiling;
+               VK_IMAGE_USAGE_SAMPLED_BIT |
+               VK_IMAGE_USAGE_STORAGE_BIT |
+               VK_IMAGE_USAGE_TRANSFER_SRC_BIT |
+               VK_IMAGE_USAGE_TRANSFER_DST_BIT,                                                // VkImageUsageFlags            usage;
+               VK_SHARING_MODE_EXCLUSIVE,                                                              // VkSharingMode                        sharingMode;
+               0u,                                                                                                             // deUint32                                     queueFamilyIndexCount;
+               DE_NULL,                                                                                                // const deUint32*                      pQueueFamilyIndices;
+               VK_IMAGE_LAYOUT_UNDEFINED,                                                              // VkImageLayout                        initialLayout;
+       };
+       imageInfos[0] = compressedInfo;
+
+       for (size_t ndx = 1; ndx < m_parameters.imagesCount; ++ndx)
+       {
+               const VkImageCreateInfo uncompressedInfo =
+               {
+                       VK_STRUCTURE_TYPE_IMAGE_CREATE_INFO,                            // VkStructureType                      sType;
+                       DE_NULL,                                                                                        // const void*                          pNext;
+                       0u,                                                                                                     // VkImageCreateFlags           flags;
+                       imageType,                                                                                      // VkImageType                          imageType;
+                       m_parameters.formatUncompressed,                                        // VkFormat                                     format;
+                       extentUncompressed,                                                                     // VkExtent3D                           extent;
+                       1u,                                                                                                     // deUint32                                     mipLevels;
+                       arrayLayers,                                                                            // deUint32                                     arrayLayers;
+                       VK_SAMPLE_COUNT_1_BIT,                                                          // VkSampleCountFlagBits        samples;
+                       VK_IMAGE_TILING_OPTIMAL,                                                        // VkImageTiling                        tiling;
+                       m_parameters.uncompressedImageUsage |
+                       VK_IMAGE_USAGE_SAMPLED_BIT,                                                     // VkImageUsageFlags            usage;
+                       VK_SHARING_MODE_EXCLUSIVE,                                                      // VkSharingMode                        sharingMode;
+                       0u,                                                                                                     // deUint32                                     queueFamilyIndexCount;
+                       DE_NULL,                                                                                        // const deUint32*                      pQueueFamilyIndices;
+                       VK_IMAGE_LAYOUT_UNDEFINED,                                                      // VkImageLayout                        initialLayout;
+               };
+               imageInfos[ndx] = uncompressedInfo;
+       }
+}
+
+bool BasicComputeTestInstance::decompressImage (const VkCommandBuffer& cmdBuffer, const VkImage& uncompressed, const VkImage& compressed, const VkExtent3D& extentunCompressed)
+{
+       const DeviceInterface&                          vk                                                      = m_context.getDeviceInterface();
+       const VkDevice                                          device                                          = m_context.getDevice();
+       const VkQueue                                           queue                                           = m_context.getUniversalQueue();
+       Allocator&                                                      allocator                                       = m_context.getDefaultAllocator();
+       const Unique<VkShaderModule>            shaderModule                            (createShaderModule(vk, device, m_context.getBinaryCollection().get("decompress"), 0));
+       const VkImageCreateInfo                         decompressedImageInfo           =
+       {
+               VK_STRUCTURE_TYPE_IMAGE_CREATE_INFO,                                                            // VkStructureType                      sType;
+               DE_NULL,                                                                                                                        // const void*                          pNext;
+               0u,                                                                                                                                     // VkImageCreateFlags           flags;
+               VK_IMAGE_TYPE_2D,                                                                                                       // VkImageType                          imageType;
+               VK_FORMAT_R8G8B8A8_UNORM,                                                                                       // VkFormat                                     format;
+               makeExtent3D(m_parameters.size),                                                                        // VkExtent3D                           extent;
+               1u,                                                                                                                                     // deUint32                                     mipLevels;
+               1u,                                                                                                                                     // deUint32                                     arrayLayers;
+               VK_SAMPLE_COUNT_1_BIT,                                                                                          // VkSampleCountFlagBits        samples;
+               VK_IMAGE_TILING_OPTIMAL,                                                                                        // VkImageTiling                        tiling;
+               VK_IMAGE_USAGE_SAMPLED_BIT |
+               VK_IMAGE_USAGE_STORAGE_BIT |
+               VK_IMAGE_USAGE_TRANSFER_SRC_BIT |
+               VK_IMAGE_USAGE_TRANSFER_DST_BIT,                                                                        // VkImageUsageFlags            usage;
+               VK_SHARING_MODE_EXCLUSIVE,                                                                                      // VkSharingMode                        sharingMode;
+               0u,                                                                                                                                     // deUint32                                     queueFamilyIndexCount;
+               DE_NULL,                                                                                                                        // const deUint32*                      pQueueFamilyIndices;
+               VK_IMAGE_LAYOUT_UNDEFINED,                                                                                      // VkImageLayout                        initialLayout;
+       };
+       const VkImageCreateInfo                         compressedImageInfo                     =
+       {
+               VK_STRUCTURE_TYPE_IMAGE_CREATE_INFO,                                                            // VkStructureType                      sType;
+               DE_NULL,                                                                                                                        // const void*                          pNext;
+               0u,                                                                                                                                     // VkImageCreateFlags           flags;
+               VK_IMAGE_TYPE_2D,                                                                                                       // VkImageType                          imageType;
+               m_parameters.formatCompressed,                                                                          // VkFormat                                     format;
+               makeExtent3D(m_parameters.size),                                                                        // VkExtent3D                           extent;
+               1u,                                                                                                                                     // deUint32                                     mipLevels;
+               1u,                                                                                                                                     // deUint32                                     arrayLayers;
+               VK_SAMPLE_COUNT_1_BIT,                                                                                          // VkSampleCountFlagBits        samples;
+               VK_IMAGE_TILING_OPTIMAL,                                                                                        // VkImageTiling                        tiling;
+               VK_IMAGE_USAGE_SAMPLED_BIT |
+               VK_IMAGE_USAGE_TRANSFER_DST_BIT,                                                                        // VkImageUsageFlags            usage;
+               VK_SHARING_MODE_EXCLUSIVE,                                                                                      // VkSharingMode                        sharingMode;
+               0u,                                                                                                                                     // deUint32                                     queueFamilyIndexCount;
+               DE_NULL,                                                                                                                        // const deUint32*                      pQueueFamilyIndices;
+               VK_IMAGE_LAYOUT_UNDEFINED,                                                                                      // VkImageLayout                        initialLayout;
+       };
+       const VkImageUsageFlags                         compressedViewUsageFlags        = VK_IMAGE_USAGE_SAMPLED_BIT | VK_IMAGE_USAGE_TRANSFER_SRC_BIT | VK_IMAGE_USAGE_TRANSFER_DST_BIT;
+       const VkImageViewUsageCreateInfoKHR     compressedViewUsageCI           =
+       {
+               VK_STRUCTURE_TYPE_IMAGE_VIEW_USAGE_CREATE_INFO_KHR,                                     //VkStructureType               sType;
+               DE_NULL,                                                                                                                        //const void*                   pNext;
+               compressedViewUsageFlags,                                                                                       //VkImageUsageFlags             usage;
+       };
+       Image                                                           resultImage                                     (vk, device, allocator, decompressedImageInfo, MemoryRequirement::Any);
+       Image                                                           referenceImage                          (vk, device, allocator, decompressedImageInfo, MemoryRequirement::Any);
+       Image                                                           uncompressedImage                       (vk, device, allocator, compressedImageInfo, MemoryRequirement::Any);
+       Move<VkImageView>                                       resultView                                      = makeImageView(vk, device, resultImage.get(), mapImageViewType(m_parameters.imageType), decompressedImageInfo.format,
+                                                                                                                                               makeImageSubresourceRange(VK_IMAGE_ASPECT_COLOR_BIT, 0u, decompressedImageInfo.extent.depth, 0u, decompressedImageInfo.arrayLayers));
+       Move<VkImageView>                                       referenceView                           = makeImageView(vk, device, referenceImage.get(), mapImageViewType(m_parameters.imageType), decompressedImageInfo.format,
+                                                                                                                                               makeImageSubresourceRange(VK_IMAGE_ASPECT_COLOR_BIT, 0u, decompressedImageInfo.extent.depth, 0u, decompressedImageInfo.arrayLayers));
+       Move<VkImageView>                                       uncompressedView                        = makeImageView(vk, device, uncompressedImage.get(), mapImageViewType(m_parameters.imageType), m_parameters.formatCompressed,
+                                                                                                                                               makeImageSubresourceRange(VK_IMAGE_ASPECT_COLOR_BIT, 0u, compressedImageInfo.extent.depth, 0u, compressedImageInfo.arrayLayers));
+       Move<VkImageView>                                       compressedView                          = makeImageView(vk, device, compressed, mapImageViewType(m_parameters.imageType), m_parameters.formatCompressed,
+                                                                                                                                               makeImageSubresourceRange(VK_IMAGE_ASPECT_COLOR_BIT, 0u, compressedImageInfo.extent.depth, 0u, compressedImageInfo.arrayLayers), &compressedViewUsageCI);
+       Move<VkDescriptorSetLayout>                     descriptorSetLayout                     = DescriptorSetLayoutBuilder()
+                                                                                                                                               .addSingleBinding(VK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER, VK_SHADER_STAGE_COMPUTE_BIT)
+                                                                                                                                               .addSingleBinding(VK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER, VK_SHADER_STAGE_COMPUTE_BIT)
+                                                                                                                                               .addSingleBinding(VK_DESCRIPTOR_TYPE_STORAGE_IMAGE, VK_SHADER_STAGE_COMPUTE_BIT)
+                                                                                                                                               .addSingleBinding(VK_DESCRIPTOR_TYPE_STORAGE_IMAGE, VK_SHADER_STAGE_COMPUTE_BIT)
+                                                                                                                                               .build(vk, device);
+       Move<VkDescriptorPool>                          descriptorPool                          = DescriptorPoolBuilder()
+                                                                                                                                               .addType(VK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER, decompressedImageInfo.arrayLayers)
+                                                                                                                                               .addType(VK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER, decompressedImageInfo.arrayLayers)
+                                                                                                                                               .addType(VK_DESCRIPTOR_TYPE_STORAGE_IMAGE, decompressedImageInfo.arrayLayers)
+                                                                                                                                               .addType(VK_DESCRIPTOR_TYPE_STORAGE_IMAGE, decompressedImageInfo.arrayLayers)
+                                                                                                                                               .build(vk, device, VK_DESCRIPTOR_POOL_CREATE_FREE_DESCRIPTOR_SET_BIT, decompressedImageInfo.arrayLayers);
+
+       Move<VkDescriptorSet>                           descriptorSet                           = makeDescriptorSet(vk, device, *descriptorPool, *descriptorSetLayout);
+       const Unique<VkPipelineLayout>          pipelineLayout                          (makePipelineLayout(vk, device, *descriptorSetLayout));
+       const Unique<VkPipeline>                        pipeline                                        (makeComputePipeline(vk, device, *pipelineLayout, *shaderModule));
+       const VkDeviceSize                                      bufferSize                                      = getImageSizeBytes(tcu::IVec3((int)m_parameters.size.x(), (int)m_parameters.size.y(), (int)m_parameters.size.z()), VK_FORMAT_R8G8B8A8_UNORM);
+       Buffer                                                          resultBuffer                            (vk, device, allocator,
+                                                                                                                                               makeBufferCreateInfo(bufferSize, VK_BUFFER_USAGE_TRANSFER_DST_BIT), MemoryRequirement::HostVisible);
+       Buffer                                                          referenceBuffer                         (vk, device, allocator,
+                                                                                                                                               makeBufferCreateInfo(bufferSize, VK_BUFFER_USAGE_TRANSFER_DST_BIT), MemoryRequirement::HostVisible);
+       Buffer                                                          transferBuffer                          (vk, device, allocator,
+                                                                                                                                               makeBufferCreateInfo(m_data.size(), VK_BUFFER_USAGE_TRANSFER_SRC_BIT | VK_BUFFER_USAGE_TRANSFER_DST_BIT), MemoryRequirement::HostVisible);
+       Move<VkSampler>                                         sampler;
+       {
+               const vk::VkSamplerCreateInfo createInfo =
+               {
+                       vk::VK_STRUCTURE_TYPE_SAMPLER_CREATE_INFO,                                              //VkStructureType               sType;
+                       DE_NULL,                                                                                                                //const void*                   pNext;
+                       0u,                                                                                                                             //VkSamplerCreateFlags  flags;
+                       VK_FILTER_NEAREST,                                                                                              //VkFilter                              magFilter;
+                       VK_FILTER_NEAREST,                                                                                              //VkFilter                              minFilter;
+                       VK_SAMPLER_MIPMAP_MODE_NEAREST,                                                                 //VkSamplerMipmapMode   mipmapMode;
+                       VK_SAMPLER_ADDRESS_MODE_CLAMP_TO_EDGE,                                                  //VkSamplerAddressMode  addressModeU;
+                       VK_SAMPLER_ADDRESS_MODE_CLAMP_TO_EDGE,                                                  //VkSamplerAddressMode  addressModeV;
+                       VK_SAMPLER_ADDRESS_MODE_CLAMP_TO_EDGE,                                                  //VkSamplerAddressMode  addressModeW;
+                       0.0f,                                                                                                                   //float                                 mipLodBias;
+                       VK_FALSE,                                                                                                               //VkBool32                              anisotropyEnable;
+                       1.0f,                                                                                                                   //float                                 maxAnisotropy;
+                       VK_TRUE,                                                                                                                //VkBool32                              compareEnable;
+                       VK_COMPARE_OP_EQUAL,                                                                                    //VkCompareOp                   compareOp;
+                       0.0f,                                                                                                                   //float                                 minLod;
+                       0.0f,                                                                                                                   //float                                 maxLod;
+                       VK_BORDER_COLOR_FLOAT_TRANSPARENT_BLACK,                                                //VkBorderColor                 borderColor;
+                       VK_TRUE,                                                                                                                //VkBool32                              unnormalizedCoordinates;
+               };
+               sampler = vk::createSampler(vk, device, &createInfo);
+       }
+
+       VkDescriptorImageInfo                   descriptorImageInfos[]  =
+       {
+               makeDescriptorImageInfo(*sampler,       *uncompressedView,      VK_IMAGE_LAYOUT_GENERAL),
+               makeDescriptorImageInfo(*sampler,       *compressedView,        VK_IMAGE_LAYOUT_GENERAL),
+               makeDescriptorImageInfo(DE_NULL,        *resultView,            VK_IMAGE_LAYOUT_GENERAL),
+               makeDescriptorImageInfo(DE_NULL,        *referenceView,         VK_IMAGE_LAYOUT_GENERAL)
+       };
+       DescriptorSetUpdateBuilder()
+               .writeSingle(descriptorSet.get(), DescriptorSetUpdateBuilder::Location::binding(0), VK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER, &descriptorImageInfos[0])
+               .writeSingle(descriptorSet.get(), DescriptorSetUpdateBuilder::Location::binding(1), VK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER, &descriptorImageInfos[1])
+               .writeSingle(descriptorSet.get(), DescriptorSetUpdateBuilder::Location::binding(2), VK_DESCRIPTOR_TYPE_STORAGE_IMAGE, &descriptorImageInfos[2])
+               .writeSingle(descriptorSet.get(), DescriptorSetUpdateBuilder::Location::binding(3), VK_DESCRIPTOR_TYPE_STORAGE_IMAGE, &descriptorImageInfos[3])
+               .update(vk, device);
+
+
+       beginCommandBuffer(vk, cmdBuffer);
+       {
+               const VkImageSubresourceRange   subresourceRange        =
+               {
+                       VK_IMAGE_ASPECT_COLOR_BIT,                                                                                      //VkImageAspectFlags                    aspectMask
+                       0u,                                                                                                                                     //deUint32                                              baseMipLevel
+                       1u,                                                                                                                                     //deUint32                                              levelCount
+                       0u,                                                                                                                                     //deUint32                                              baseArrayLayer
+                       1                                                                                                                                       //deUint32                                              layerCount
+               };
+
+               const VkBufferImageCopy                 copyRegion                      =
+               {
+                       0ull,                                                                                                                           //      VkDeviceSize                            bufferOffset;
+                       0u,                                                                                                                                     //      deUint32                                        bufferRowLength;
+                       0u,                                                                                                                                     //      deUint32                                        bufferImageHeight;
+                       makeImageSubresourceLayers(VK_IMAGE_ASPECT_COLOR_BIT, 0u, 0u, 1u),      //      VkImageSubresourceLayers        imageSubresource;
+                       makeOffset3D(0, 0, 0),                                                                                          //      VkOffset3D                                      imageOffset;
+                       decompressedImageInfo.extent,                                                                           //      VkExtent3D                                      imageExtent;
+               };
+
+               const VkBufferImageCopy                 compressedCopyRegion                    =
+               {
+                       0ull,                                                                                                                           //      VkDeviceSize                            bufferOffset;
+                       0u,                                                                                                                                     //      deUint32                                        bufferRowLength;
+                       0u,                                                                                                                                     //      deUint32                                        bufferImageHeight;
+                       makeImageSubresourceLayers(VK_IMAGE_ASPECT_COLOR_BIT, 0u, 0u, 1u),      //      VkImageSubresourceLayers        imageSubresource;
+                       makeOffset3D(0, 0, 0),                                                                                          //      VkOffset3D                                      imageOffset;
+                       extentunCompressed,                                                                                                     //      VkExtent3D                                      imageExtent;
+               };
+
+               {
+                       const VkBufferMemoryBarrier             preCopyBufferBarriers   = makeBufferMemoryBarrier(0u, VK_ACCESS_TRANSFER_WRITE_BIT,
+                                                                                                                                               transferBuffer.get(), 0ull, m_data.size());
+
+                       vk.cmdPipelineBarrier(cmdBuffer, VK_PIPELINE_STAGE_TOP_OF_PIPE_BIT, VK_PIPELINE_STAGE_TRANSFER_BIT,
+                               (VkDependencyFlags)0, 0, (const VkMemoryBarrier*)DE_NULL, 1u, &preCopyBufferBarriers, 0u, (const VkImageMemoryBarrier*)DE_NULL);
+               }
+
+               vk.cmdCopyImageToBuffer(cmdBuffer, uncompressed, VK_IMAGE_LAYOUT_TRANSFER_SRC_OPTIMAL, transferBuffer.get(), 1u, &compressedCopyRegion);
+
+               {
+                       const VkBufferMemoryBarrier             postCopyBufferBarriers  = makeBufferMemoryBarrier(VK_ACCESS_TRANSFER_WRITE_BIT, VK_ACCESS_TRANSFER_READ_BIT,
+                                                                                                                                               transferBuffer.get(), 0ull, m_data.size());
+
+                       const VkImageMemoryBarrier              preCopyImageBarriers    = makeImageMemoryBarrier(0u, VK_ACCESS_TRANSFER_WRITE_BIT,
+                                                                                                                                               VK_IMAGE_LAYOUT_UNDEFINED, VK_IMAGE_LAYOUT_TRANSFER_DST_OPTIMAL, uncompressedImage.get(), subresourceRange);
+
+                       vk.cmdPipelineBarrier(cmdBuffer, VK_PIPELINE_STAGE_TRANSFER_BIT, VK_PIPELINE_STAGE_TRANSFER_BIT,
+                               (VkDependencyFlags)0, 0, (const VkMemoryBarrier*)DE_NULL, 1u, &postCopyBufferBarriers, 1u, &preCopyImageBarriers);
+               }
+
+               vk.cmdCopyBufferToImage(cmdBuffer, transferBuffer.get(), uncompressedImage.get(), VK_IMAGE_LAYOUT_TRANSFER_DST_OPTIMAL, 1u, &copyRegion);
+
+               vk.cmdBindPipeline(cmdBuffer, VK_PIPELINE_BIND_POINT_COMPUTE, *pipeline);
+               vk.cmdBindDescriptorSets(cmdBuffer, VK_PIPELINE_BIND_POINT_COMPUTE, *pipelineLayout, 0u, 1u, &descriptorSet.get(), 0u, DE_NULL);
+
+               {
+                       const VkImageMemoryBarrier              preShaderImageBarriers[]        =
+                       {
+                               makeImageMemoryBarrier(VK_ACCESS_TRANSFER_WRITE_BIT, VK_ACCESS_SHADER_READ_BIT,
+                                       VK_IMAGE_LAYOUT_TRANSFER_DST_OPTIMAL, VK_IMAGE_LAYOUT_GENERAL,
+                                       uncompressedImage.get(), subresourceRange),
+
+                               makeImageMemoryBarrier(0u, VK_ACCESS_SHADER_WRITE_BIT,
+                                       VK_IMAGE_LAYOUT_UNDEFINED, VK_IMAGE_LAYOUT_GENERAL,
+                                       resultImage.get(), subresourceRange),
+
+                               makeImageMemoryBarrier(0u, VK_ACCESS_SHADER_WRITE_BIT,
+                                       VK_IMAGE_LAYOUT_UNDEFINED, VK_IMAGE_LAYOUT_GENERAL,
+                                       referenceImage.get(), subresourceRange)
+                       };
+
+                       vk.cmdPipelineBarrier(cmdBuffer, VK_PIPELINE_STAGE_TRANSFER_BIT, VK_PIPELINE_STAGE_COMPUTE_SHADER_BIT,
+                               (VkDependencyFlags)0, 0, (const VkMemoryBarrier*)DE_NULL, 0u, (const VkBufferMemoryBarrier*)DE_NULL,
+                               DE_LENGTH_OF_ARRAY(preShaderImageBarriers), preShaderImageBarriers);
+               }
+
+               vk.cmdDispatch(cmdBuffer, m_parameters.size.x(), m_parameters.size.y(), m_parameters.size.z());
+
+               {
+                       const VkImageMemoryBarrier              postShaderImageBarriers[]       =
+                       {
+                               makeImageMemoryBarrier(VK_ACCESS_SHADER_WRITE_BIT, VK_ACCESS_TRANSFER_READ_BIT,
+                               VK_IMAGE_LAYOUT_GENERAL, VK_IMAGE_LAYOUT_TRANSFER_SRC_OPTIMAL,
+                               resultImage.get(), subresourceRange),
+
+                               makeImageMemoryBarrier(VK_ACCESS_SHADER_WRITE_BIT, VK_ACCESS_TRANSFER_READ_BIT,
+                                       VK_IMAGE_LAYOUT_GENERAL, VK_IMAGE_LAYOUT_TRANSFER_SRC_OPTIMAL,
+                                       referenceImage.get(), subresourceRange)
+                       };
+
+                        const VkBufferMemoryBarrier            preCopyBufferBarrier[]          =
+                       {
+                               makeBufferMemoryBarrier( 0, VK_BUFFER_USAGE_TRANSFER_DST_BIT,
+                                       resultBuffer.get(), 0ull, bufferSize),
+
+                               makeBufferMemoryBarrier( 0, VK_BUFFER_USAGE_TRANSFER_DST_BIT,
+                                       referenceBuffer.get(), 0ull, bufferSize),
+                       };
+
+                       vk.cmdPipelineBarrier(cmdBuffer, VK_PIPELINE_STAGE_COMPUTE_SHADER_BIT, VK_PIPELINE_STAGE_TRANSFER_BIT,
+                               (VkDependencyFlags)0, 0, (const VkMemoryBarrier*)DE_NULL, DE_LENGTH_OF_ARRAY(preCopyBufferBarrier), preCopyBufferBarrier,
+                               DE_LENGTH_OF_ARRAY(postShaderImageBarriers), postShaderImageBarriers);
+               }
+               vk.cmdCopyImageToBuffer(cmdBuffer, resultImage.get(), VK_IMAGE_LAYOUT_TRANSFER_SRC_OPTIMAL, resultBuffer.get(), 1u, &copyRegion);
+               vk.cmdCopyImageToBuffer(cmdBuffer, referenceImage.get(), VK_IMAGE_LAYOUT_TRANSFER_SRC_OPTIMAL, referenceBuffer.get(), 1u, &copyRegion);
+       }
+       endCommandBuffer(vk, cmdBuffer);
+       submitCommandsAndWait(vk, device, queue, cmdBuffer);
+
+       const Allocation&               resultAlloc             = resultBuffer.getAllocation();
+       const Allocation&               referenceAlloc  = referenceBuffer.getAllocation();
+       invalidateMappedMemoryRange(vk, device, resultAlloc.getMemory(), resultAlloc.getOffset(), bufferSize);
+       invalidateMappedMemoryRange(vk, device, referenceAlloc.getMemory(), referenceAlloc.getOffset(), bufferSize);
+
+       tcu::ConstPixelBufferAccess     resultPixels            (mapVkFormat(decompressedImageInfo.format), decompressedImageInfo.extent.width, decompressedImageInfo.extent.height, decompressedImageInfo.extent.depth, resultAlloc.getHostPtr());
+       tcu::ConstPixelBufferAccess     referencePixels         (mapVkFormat(decompressedImageInfo.format), decompressedImageInfo.extent.width, decompressedImageInfo.extent.height, decompressedImageInfo.extent.depth, referenceAlloc.getHostPtr());
+
+       return tcu::fuzzyCompare(m_context.getTestContext().getLog(), "ImageComparison", "Image Comparison", resultPixels, referencePixels, 0.001f, tcu::COMPARE_LOG_EVERYTHING);
+}
+
+
+class ImageStoreComputeTestInstance : public BasicComputeTestInstance
+{
+public:
+                                       ImageStoreComputeTestInstance   (Context& contex, const TestParameters& parameters);
+protected:
+       virtual void    executeShader           (const VkCommandBuffer&                 cmdBuffer,
+                                                                                const VkDescriptorSetLayout&   descriptorSetLayout,
+                                                                                const VkDescriptorPool&                descriptorPool,
+                                                                                const vector<ImageSp>&                 images,
+                                                                                const vector<ImageViewSp>&             imageViews);
+private:
+};
+
+ImageStoreComputeTestInstance::ImageStoreComputeTestInstance (Context& contex, const TestParameters& parameters)
+       :BasicComputeTestInstance       (contex, parameters)
+{
+}
+
+void ImageStoreComputeTestInstance::executeShader (const VkCommandBuffer&              cmdBuffer,
+                                                                                                  const VkDescriptorSetLayout& descriptorSetLayout,
+                                                                                                  const VkDescriptorPool&              descriptorPool,
+                                                                                                  const vector<ImageSp>&               images,
+                                                                                                  const vector<ImageViewSp>&   imageViews)
+{
+       const DeviceInterface&                  vk                                              = m_context.getDeviceInterface();
+       const VkDevice                                  device                                  = m_context.getDevice();
+       const VkQueue                                   queue                                   = m_context.getUniversalQueue();
+       const Unique<VkShaderModule>    shaderModule                    (createShaderModule(vk, device, m_context.getBinaryCollection().get("comp"), 0));
+       Move<VkDescriptorSet>                   descriptorSet                   = makeDescriptorSet(vk, device, descriptorPool, descriptorSetLayout);
+       const Unique<VkPipelineLayout>  pipelineLayout                  (makePipelineLayout(vk, device, descriptorSetLayout));
+       const Unique<VkPipeline>                pipeline                                (makeComputePipeline(vk, device, *pipelineLayout, *shaderModule));
+       const UVec3                                             extentUncompressed              = getCompressedImageResolutionInBlocks(m_parameters.formatCompressed, m_parameters.size);
+
+       vector<VkDescriptorImageInfo>   descriptorImageInfos    (m_parameters.imagesCount);
+       for (deUint32 bindingNdx = 0; bindingNdx < m_parameters.imagesCount; ++bindingNdx)
+               descriptorImageInfos[bindingNdx] = makeDescriptorImageInfo(DE_NULL, **imageViews[bindingNdx], VK_IMAGE_LAYOUT_GENERAL);
+
+       beginCommandBuffer(vk, cmdBuffer);
+       {
+               const VkImageSubresourceRange   subresourceRange                =
+               {
+                       VK_IMAGE_ASPECT_COLOR_BIT,              //VkImageAspectFlags    aspectMask
+                       0u,                                                             //deUint32                              baseMipLevel
+                       1u,                                                             //deUint32                              levelCount
+                       0u,                                                             //deUint32                              baseArrayLayer
+                       1u                                                              //deUint32                              layerCount
+               };
+
+               const VkImageMemoryBarrier              preShaderImageBarriers[]        =
+               {
+                       makeImageMemoryBarrier(
+                       VK_ACCESS_TRANSFER_WRITE_BIT, VK_ACCESS_SHADER_WRITE_BIT | VK_ACCESS_SHADER_READ_BIT,
+                       VK_IMAGE_LAYOUT_UNDEFINED, VK_IMAGE_LAYOUT_GENERAL,
+                       **images[0]->get(), subresourceRange),
+
+                       makeImageMemoryBarrier(
+                       VK_ACCESS_TRANSFER_WRITE_BIT, VK_ACCESS_SHADER_READ_BIT,
+                       VK_IMAGE_LAYOUT_TRANSFER_DST_OPTIMAL, VK_IMAGE_LAYOUT_GENERAL,
+                       **images[1]->get(), subresourceRange),
+
+                       makeImageMemoryBarrier(
+                       VK_ACCESS_TRANSFER_WRITE_BIT, VK_ACCESS_SHADER_WRITE_BIT,
+                       VK_IMAGE_LAYOUT_UNDEFINED, VK_IMAGE_LAYOUT_GENERAL,
+                       **images[2]->get(), subresourceRange)
+               };
+
+               vk.cmdPipelineBarrier(cmdBuffer, VK_PIPELINE_STAGE_TRANSFER_BIT, VK_PIPELINE_STAGE_COMPUTE_SHADER_BIT,
+                       (VkDependencyFlags)0, 0, (const VkMemoryBarrier*)DE_NULL, 0u, (const VkBufferMemoryBarrier*)DE_NULL,
+                       DE_LENGTH_OF_ARRAY(preShaderImageBarriers), preShaderImageBarriers);
+
+               vk.cmdBindPipeline(cmdBuffer, VK_PIPELINE_BIND_POINT_COMPUTE, *pipeline);
+               descriptorSetUpdate (*descriptorSet, &descriptorImageInfos[0]);
+
+               vk.cmdBindDescriptorSets(cmdBuffer, VK_PIPELINE_BIND_POINT_COMPUTE, *pipelineLayout, 0u, 1u, &descriptorSet.get(), 0u, DE_NULL);
+
+               vk.cmdDispatch(cmdBuffer, extentUncompressed.x(), extentUncompressed.y(), extentUncompressed.z());
+       }
+       endCommandBuffer(vk, cmdBuffer);
+       submitCommandsAndWait(vk, device, queue, cmdBuffer);
+}
+
+class GraphicsAttachmentsTestInstance : public BasicTranscodingTestInstance
+{
+public:
+                                                                       GraphicsAttachmentsTestInstance (Context& context, const TestParameters& parameters);
+       virtual TestStatus                              iterate                                                 (void);
+
+protected:
+       virtual bool                                    isWriteToCompressedOperation    ();
+       VkImageCreateInfo                               makeCreateImageInfo                             (VkFormat format, ImageType type, const UVec3& size, VkImageUsageFlags usageFlags, const VkImageCreateFlags* createFlags);
+       VkImageViewUsageCreateInfoKHR   makeImageViewUsageCreateInfo    (VkImageUsageFlags imageUsageFlags);
+       VkDeviceSize                                    getCompressedImageData                  (const VkFormat format, const UVec3& size, std::vector<deUint8>& data);
+       VkDeviceSize                                    getUncompressedImageData                (const VkFormat format, const UVec3& size, std::vector<deUint8>& data);
+       virtual void                                    transcode                                               (std::vector<deUint8>& srcData, std::vector<deUint8>& dstData, de::MovePtr<Image>& outputImage);
+       bool                                                    compareAndLog                                   (const void* reference, const void* result, size_t size);
+       bool                                                    verifyDecompression                             (const std::vector<deUint8>& refCompressedData, const de::MovePtr<Image>& resCompressedImage);
+
+       deUint32                                                m_arrayLayers;
+       UVec3                                                   m_layerSize;
+};
+
+GraphicsAttachmentsTestInstance::GraphicsAttachmentsTestInstance (Context& context, const TestParameters& parameters)
+       : BasicTranscodingTestInstance(context, parameters)
+       , m_arrayLayers(getNumLayers(m_parameters.imageType, m_parameters.size))
+       , m_layerSize(getLayerSize(m_parameters.imageType, m_parameters.size))
+{
+}
+
+TestStatus GraphicsAttachmentsTestInstance::iterate (void)
+{
+       std::vector<deUint8>    srcData;
+       std::vector<deUint8>    dstData;
+       de::MovePtr<Image>              outputImage;
+
+       transcode(srcData, dstData, outputImage);
+
+       DE_ASSERT(srcData.size() > 0 && srcData.size() == dstData.size());
+
+       if (!compareAndLog(&srcData[0], &dstData[0], srcData.size()))
+               return TestStatus::fail("Output differs from input");
+
+       // Verify by sampling
+       if (isWriteToCompressedOperation())
+               if (!verifyDecompression(srcData, outputImage))
+                       return TestStatus::fail("Decompressed images difference detected");
+
+       return TestStatus::pass("Pass");
+}
+
+void GraphicsAttachmentsTestInstance::transcode (std::vector<deUint8>& srcData, std::vector<deUint8>& dstData, de::MovePtr<Image>& outputImage)
+{
+       const DeviceInterface&                                  vk                                              = m_context.getDeviceInterface();
+       const VkDevice                                                  device                                  = m_context.getDevice();
+       const deUint32                                                  queueFamilyIndex                = m_context.getUniversalQueueFamilyIndex();
+       const VkQueue                                                   queue                                   = m_context.getUniversalQueue();
+       Allocator&                                                              allocator                               = m_context.getDefaultAllocator();
+
+       const deUint32                                                  levelCount                              = m_layerSize[2];
+       const VkImageSubresourceRange                   subresourceRange                = makeImageSubresourceRange(VK_IMAGE_ASPECT_COLOR_BIT, 0u, levelCount, 0u, m_arrayLayers);
+       const VkImageCreateFlags*                               imgCreateFlagsOverride  = DE_NULL;
+       const VkImageViewUsageCreateInfoKHR             imageViewUsageKHR               = makeImageViewUsageCreateInfo(m_parameters.compressedImageUsage);
+       const VkImageViewUsageCreateInfoKHR*    imageViewUsageKHRNull   = (VkImageViewUsageCreateInfoKHR*)DE_NULL;
+
+       const UVec3                                                             compressedImageRes              = m_parameters.size;
+       const UVec3                                                             uncompressedImageRes    = getCompressedImageResolutionInBlocks(m_parameters.formatCompressed, m_parameters.size);
+
+       const VkFormat                                                  srcFormat                               = (m_parameters.operation == OPERATION_ATTACHMENT_READ)  ? m_parameters.formatCompressed :
+                                                                                                                                         (m_parameters.operation == OPERATION_ATTACHMENT_WRITE) ? m_parameters.formatUncompressed :
+                                                                                                                                         VK_FORMAT_UNDEFINED;
+       const UVec3                                                             srcImageResolution              = (m_parameters.operation == OPERATION_ATTACHMENT_READ)  ? compressedImageRes :
+                                                                                                                                         (m_parameters.operation == OPERATION_ATTACHMENT_WRITE) ? uncompressedImageRes :
+                                                                                                                                         UVec3(0, 0, 0);
+       const VkDeviceSize                                              srcImageSizeInBytes             = (m_parameters.operation == OPERATION_ATTACHMENT_READ)  ? getCompressedImageData(srcFormat, srcImageResolution, srcData) :
+                                                                                                                                         (m_parameters.operation == OPERATION_ATTACHMENT_WRITE) ? getUncompressedImageData(srcFormat, srcImageResolution, srcData) :
+                                                                                                                                         0;
+       const VkImageUsageFlags                                 srcImageUsageFlags              = (m_parameters.operation == OPERATION_ATTACHMENT_READ)  ? m_parameters.compressedImageUsage :
+                                                                                                                                         (m_parameters.operation == OPERATION_ATTACHMENT_WRITE) ? m_parameters.uncompressedImageUsage :
+                                                                                                                                         0;
+       const VkImageViewUsageCreateInfoKHR*    srcImageViewUsageKHR    = (m_parameters.operation == OPERATION_ATTACHMENT_READ)  ? &imageViewUsageKHR :
+                                                                                                                                         (m_parameters.operation == OPERATION_ATTACHMENT_WRITE) ? imageViewUsageKHRNull :
+                                                                                                                                         imageViewUsageKHRNull;
+
+       const VkFormat                                                  dstFormat                               = (m_parameters.operation == OPERATION_ATTACHMENT_READ)  ? m_parameters.formatUncompressed :
+                                                                                                                                         (m_parameters.operation == OPERATION_ATTACHMENT_WRITE) ? m_parameters.formatCompressed :
+                                                                                                                                         VK_FORMAT_UNDEFINED;
+       const UVec3                                                             dstImageResolution              = (m_parameters.operation == OPERATION_ATTACHMENT_READ)  ? uncompressedImageRes :
+                                                                                                                                         (m_parameters.operation == OPERATION_ATTACHMENT_WRITE) ? compressedImageRes :
+                                                                                                                                         UVec3(0, 0, 0);
+       const VkDeviceSize                                              dstImageSizeInBytes             = (m_parameters.operation == OPERATION_ATTACHMENT_READ)  ? getUncompressedImageSizeInBytes(dstFormat, dstImageResolution) :
+                                                                                                                                         (m_parameters.operation == OPERATION_ATTACHMENT_WRITE) ? getCompressedImageSizeInBytes(dstFormat, dstImageResolution) :
+                                                                                                                                         0;
+       const VkImageUsageFlags                                 dstImageUsageFlags              = (m_parameters.operation == OPERATION_ATTACHMENT_READ)  ? m_parameters.uncompressedImageUsage :
+                                                                                                                                         (m_parameters.operation == OPERATION_ATTACHMENT_WRITE) ? m_parameters.compressedImageUsage :
+                                                                                                                                         0;
+       const VkImageViewUsageCreateInfoKHR*    dstImageViewUsageKHR    = (m_parameters.operation == OPERATION_ATTACHMENT_READ)  ? imageViewUsageKHRNull :
+                                                                                                                                         (m_parameters.operation == OPERATION_ATTACHMENT_WRITE) ? &imageViewUsageKHR :
+                                                                                                                                         imageViewUsageKHRNull;
+
+       const std::vector<tcu::Vec4>                    vertexArray                             = createFullscreenQuad();
+       const deUint32                                                  vertexCount                             = static_cast<deUint32>(vertexArray.size());
+       const size_t                                                    vertexBufferSizeInBytes = vertexCount * sizeof(vertexArray[0]);
+       const MovePtr<Buffer>                                   vertexBuffer                    = MovePtr<Buffer>(new Buffer(vk, device, allocator, makeBufferCreateInfo(vertexBufferSizeInBytes, VK_BUFFER_USAGE_VERTEX_BUFFER_BIT), MemoryRequirement::HostVisible));
+       const Allocation&                                               vertexBufferAlloc               = vertexBuffer->getAllocation();
+       const VkDeviceSize                                              vertexBufferOffset[]    = { 0 };
+
+       const VkBufferCreateInfo                                srcImageBufferInfo              (makeBufferCreateInfo(srcImageSizeInBytes, VK_BUFFER_USAGE_TRANSFER_SRC_BIT));
+       const MovePtr<Buffer>                                   srcImageBuffer                  = MovePtr<Buffer>(new Buffer(vk, device, allocator, srcImageBufferInfo, MemoryRequirement::HostVisible));
+
+       const VkImageCreateInfo                                 srcImageCreateInfo              = makeCreateImageInfo(srcFormat, m_parameters.imageType, srcImageResolution, srcImageUsageFlags, imgCreateFlagsOverride);
+       const MovePtr<Image>                                    srcImage                                (new Image(vk, device, allocator, srcImageCreateInfo, MemoryRequirement::Any));
+       Move<VkImageView>                                               srcImageView                    (makeImageView(vk, device, srcImage->get(), mapImageViewType(m_parameters.imageType), m_parameters.formatUncompressed, subresourceRange, srcImageViewUsageKHR));
+
+       const VkImageCreateInfo                                 dstImageCreateInfo              = makeCreateImageInfo(dstFormat, m_parameters.imageType, dstImageResolution, dstImageUsageFlags, imgCreateFlagsOverride);
+       de::MovePtr<Image>                                              dstImage                                (new Image(vk, device, allocator, dstImageCreateInfo, MemoryRequirement::Any));
+       Move<VkImageView>                                               dstImageView                    (makeImageView(vk, device, dstImage->get(), mapImageViewType(m_parameters.imageType), m_parameters.formatUncompressed, subresourceRange, dstImageViewUsageKHR));
+
+       const VkBufferCreateInfo                                dstImageBufferInfo              (makeBufferCreateInfo(dstImageSizeInBytes, VK_BUFFER_USAGE_TRANSFER_DST_BIT));
+       MovePtr<Buffer>                                                 dstImageBuffer                  = MovePtr<Buffer>(new Buffer(vk, device, allocator, dstImageBufferInfo, MemoryRequirement::HostVisible));
+
+       const Unique<VkShaderModule>                    vertShaderModule                (createShaderModule(vk, device, m_context.getBinaryCollection().get("vert"), 0));
+       const Unique<VkShaderModule>                    fragShaderModule                (createShaderModule(vk, device, m_context.getBinaryCollection().get("frag"), 0));
+
+       const Unique<VkRenderPass>                              renderPass                              (makeRenderPass(vk, device, m_parameters.formatUncompressed, m_parameters.formatUncompressed));
+
+       const Move<VkDescriptorSetLayout>               descriptorSetLayout             (DescriptorSetLayoutBuilder()
+                                                                                                                                               .addSingleBinding(VK_DESCRIPTOR_TYPE_INPUT_ATTACHMENT, VK_SHADER_STAGE_FRAGMENT_BIT)
+                                                                                                                                               .build(vk, device));
+       const Move<VkDescriptorPool>                    descriptorPool                  (DescriptorPoolBuilder()
+                                                                                                                                               .addType(VK_DESCRIPTOR_TYPE_INPUT_ATTACHMENT, m_arrayLayers)
+                                                                                                                                               .build(vk, device, VK_DESCRIPTOR_POOL_CREATE_FREE_DESCRIPTOR_SET_BIT, m_arrayLayers));
+       const Move<VkDescriptorSet>                             descriptorSet                   (makeDescriptorSet(vk, device, *descriptorPool, *descriptorSetLayout));
+       const VkDescriptorImageInfo                             descriptorSrcImageInfo  (makeDescriptorImageInfo(DE_NULL, *srcImageView, VK_IMAGE_LAYOUT_GENERAL));
+
+       const VkExtent2D                                                renderSize                              (makeExtent2D(uncompressedImageRes[0], uncompressedImageRes[1]));
+       const Unique<VkPipelineLayout>                  pipelineLayout                  (makePipelineLayout(vk, device, *descriptorSetLayout));
+       const Unique<VkPipeline>                                pipeline                                (makeGraphicsPipeline(vk, device, *pipelineLayout, *renderPass, *vertShaderModule, *fragShaderModule, renderSize, 1u));
+       const Unique<VkCommandPool>                             cmdPool                                 (createCommandPool(vk, device, VK_COMMAND_POOL_RESET_RELEASE_RESOURCES_BIT, queueFamilyIndex));
+       const Unique<VkCommandBuffer>                   cmdBuffer                               (allocateCommandBuffer(vk, device, *cmdPool, VK_COMMAND_BUFFER_LEVEL_PRIMARY));
+
+       const VkBufferImageCopy                                 srcCopyRegion                   = makeBufferImageCopy(srcImageResolution[0], srcImageResolution[1]);
+       const VkBufferMemoryBarrier                             srcCopyBufferBarrierPre = makeBufferMemoryBarrier(VK_ACCESS_HOST_WRITE_BIT, VK_ACCESS_TRANSFER_READ_BIT, srcImageBuffer->get(), 0ull, srcImageSizeInBytes);
+       const VkImageMemoryBarrier                              srcCopyImageBarrierPre  = makeImageMemoryBarrier(0u, VK_ACCESS_TRANSFER_WRITE_BIT, VK_IMAGE_LAYOUT_UNDEFINED, VK_IMAGE_LAYOUT_TRANSFER_DST_OPTIMAL, srcImage->get(), subresourceRange);
+       const VkImageMemoryBarrier                              srcCopyImageBarrierPost = makeImageMemoryBarrier(VK_ACCESS_TRANSFER_WRITE_BIT, VK_ACCESS_SHADER_READ_BIT, VK_IMAGE_LAYOUT_TRANSFER_DST_OPTIMAL, VK_IMAGE_LAYOUT_GENERAL, srcImage->get(), subresourceRange);
+       const VkBufferImageCopy                                 dstCopyRegion                   = makeBufferImageCopy(dstImageResolution[0], dstImageResolution[1]);
+
+       const VkImageView                                               attachmentBindInfos[]   = { *srcImageView, *dstImageView };
+       const Move<VkFramebuffer>                               framebuffer                             (makeFramebuffer(vk, device, *renderPass, DE_LENGTH_OF_ARRAY(attachmentBindInfos), attachmentBindInfos, renderSize, m_arrayLayers));
+
+       DE_ASSERT(srcImageSizeInBytes == dstImageSizeInBytes);
+
+       // Upload vertex data
+       deMemcpy(vertexBufferAlloc.getHostPtr(), &vertexArray[0], vertexBufferSizeInBytes);
+       flushMappedMemoryRange(vk, device, vertexBufferAlloc.getMemory(), vertexBufferAlloc.getOffset(), vertexBufferSizeInBytes);
+
+       // Upload source image data
+       const Allocation& alloc = srcImageBuffer->getAllocation();
+       deMemcpy(alloc.getHostPtr(), &srcData[0], (size_t)srcImageSizeInBytes);
+       flushMappedMemoryRange(vk, device, alloc.getMemory(), alloc.getOffset(), srcImageSizeInBytes);
+
+       beginCommandBuffer(vk, *cmdBuffer);
+       vk.cmdBindPipeline(*cmdBuffer, VK_PIPELINE_BIND_POINT_GRAPHICS, *pipeline);
+
+       //Copy buffer to image
+       vk.cmdPipelineBarrier(*cmdBuffer, VK_PIPELINE_STAGE_TOP_OF_PIPE_BIT, VK_PIPELINE_STAGE_TRANSFER_BIT, (VkDependencyFlags)0, 0, (const VkMemoryBarrier*)DE_NULL, 1u, &srcCopyBufferBarrierPre, 1u, &srcCopyImageBarrierPre);
+       vk.cmdCopyBufferToImage(*cmdBuffer, srcImageBuffer->get(), srcImage->get(), VK_IMAGE_LAYOUT_TRANSFER_DST_OPTIMAL, 1u, &srcCopyRegion);
+       vk.cmdPipelineBarrier(*cmdBuffer, VK_PIPELINE_STAGE_TRANSFER_BIT, VK_PIPELINE_STAGE_TOP_OF_PIPE_BIT, (VkDependencyFlags)0, 0, (const VkMemoryBarrier*)DE_NULL, 0, (const VkBufferMemoryBarrier*)DE_NULL, 1u, &srcCopyImageBarrierPost);
+
+       beginRenderPass(vk, *cmdBuffer, *renderPass, *framebuffer, renderSize);
+
+       for (deUint32 layerNdx = 0; layerNdx < m_arrayLayers; ++layerNdx)
+       {
+               DescriptorSetUpdateBuilder()
+                       .writeSingle(*descriptorSet, DescriptorSetUpdateBuilder::Location::binding(0u), VK_DESCRIPTOR_TYPE_INPUT_ATTACHMENT, &descriptorSrcImageInfo)
+                       .update(vk, device);
+
+               vk.cmdBindDescriptorSets(*cmdBuffer, VK_PIPELINE_BIND_POINT_GRAPHICS, *pipelineLayout, 0u, 1u, &descriptorSet.get(), 0u, DE_NULL);
+               vk.cmdBindVertexBuffers(*cmdBuffer, 0, 1, &vertexBuffer->get(), vertexBufferOffset);
+               vk.cmdDraw(*cmdBuffer, vertexCount, 1, 0, 0);
+       }
+
+       vk.cmdEndRenderPass(*cmdBuffer);
+
+       const VkImageMemoryBarrier prepareForTransferBarrier = makeImageMemoryBarrier(
+               VK_ACCESS_COLOR_ATTACHMENT_WRITE_BIT, VK_ACCESS_TRANSFER_READ_BIT,
+               VK_IMAGE_LAYOUT_COLOR_ATTACHMENT_OPTIMAL, VK_IMAGE_LAYOUT_GENERAL,
+               dstImage->get(), subresourceRange);
+
+       const VkBufferMemoryBarrier copyBarrier = makeBufferMemoryBarrier(
+               VK_ACCESS_TRANSFER_WRITE_BIT, VK_ACCESS_HOST_READ_BIT,
+               dstImageBuffer->get(), 0ull, dstImageSizeInBytes);
+
+       vk.cmdPipelineBarrier(*cmdBuffer, VK_PIPELINE_STAGE_COLOR_ATTACHMENT_OUTPUT_BIT, VK_PIPELINE_STAGE_TRANSFER_BIT, (VkDependencyFlags)0, 0, (const VkMemoryBarrier*)DE_NULL, 0, (const VkBufferMemoryBarrier*)DE_NULL, 1, &prepareForTransferBarrier);
+       vk.cmdCopyImageToBuffer(*cmdBuffer, dstImage->get(), VK_IMAGE_LAYOUT_GENERAL, dstImageBuffer->get(), 1u, &dstCopyRegion);
+       vk.cmdPipelineBarrier(*cmdBuffer, VK_PIPELINE_STAGE_TRANSFER_BIT, VK_PIPELINE_STAGE_HOST_BIT, (VkDependencyFlags)0, 0, (const VkMemoryBarrier*)DE_NULL, 1, &copyBarrier, 0, (const VkImageMemoryBarrier*)DE_NULL);
+
+       endCommandBuffer(vk, *cmdBuffer);
+
+       submitCommandsAndWait(vk, device, queue, *cmdBuffer);
+
+       const Allocation& dstImageBufferAlloc = dstImageBuffer->getAllocation();
+       invalidateMappedMemoryRange(vk, device, dstImageBufferAlloc.getMemory(), dstImageBufferAlloc.getOffset(), dstImageSizeInBytes);
+       dstData.resize((size_t)dstImageSizeInBytes);
+       deMemcpy(&dstData[0], dstImageBufferAlloc.getHostPtr(), (size_t)dstImageSizeInBytes);
+
+       outputImage = dstImage;
+}
+
+bool GraphicsAttachmentsTestInstance::isWriteToCompressedOperation ()
+{
+       return (m_parameters.operation == OPERATION_ATTACHMENT_WRITE);
+}
+
+VkImageCreateInfo GraphicsAttachmentsTestInstance::makeCreateImageInfo (VkFormat format, ImageType type, const UVec3& size, VkImageUsageFlags usageFlags, const VkImageCreateFlags* createFlags)
+{
+       const VkImageType                       imageType                               = mapImageType(type);
+       const VkImageCreateFlags        imageCreateFlagsBase    = VK_IMAGE_CREATE_MUTABLE_FORMAT_BIT;
+       const VkImageCreateFlags        imageCreateFlagsAddOn   = isCompressedFormat(format) ? VK_IMAGE_CREATE_BLOCK_TEXEL_VIEW_COMPATIBLE_BIT_KHR | VK_IMAGE_CREATE_EXTENDED_USAGE_BIT_KHR : 0;
+       const VkImageCreateFlags        imageCreateFlags                = (createFlags != DE_NULL) ? *createFlags : (imageCreateFlagsBase | imageCreateFlagsAddOn);
+
+       const VkImageCreateInfo createImageInfo =
+       {
+               VK_STRUCTURE_TYPE_IMAGE_CREATE_INFO,                    // VkStructureType                      sType;
+               DE_NULL,                                                                                // const void*                          pNext;
+               imageCreateFlags,                                                               // VkImageCreateFlags           flags;
+               imageType,                                                                              // VkImageType                          imageType;
+               format,                                                                                 // VkFormat                                     format;
+               makeExtent3D(getLayerSize(type, size)),                 // VkExtent3D                           extent;
+               1u,                                                                                             // deUint32                                     mipLevels;
+               1u,                                                                                             // deUint32                                     arrayLayers;
+               VK_SAMPLE_COUNT_1_BIT,                                                  // VkSampleCountFlagBits        samples;
+               VK_IMAGE_TILING_OPTIMAL,                                                // VkImageTiling                        tiling;
+               usageFlags,                                                                             // VkImageUsageFlags            usage;
+               VK_SHARING_MODE_EXCLUSIVE,                                              // VkSharingMode                        sharingMode;
+               0u,                                                                                             // deUint32                                     queueFamilyIndexCount;
+               DE_NULL,                                                                                // const deUint32*                      pQueueFamilyIndices;
+               VK_IMAGE_LAYOUT_UNDEFINED,                                              // VkImageLayout                        initialLayout;
+       };
+
+       return createImageInfo;
+}
+
+VkImageViewUsageCreateInfoKHR GraphicsAttachmentsTestInstance::makeImageViewUsageCreateInfo (VkImageUsageFlags imageUsageFlags)
+{
+       VkImageViewUsageCreateInfoKHR imageViewUsageCreateInfoKHR =
+       {
+               VK_STRUCTURE_TYPE_IMAGE_VIEW_USAGE_CREATE_INFO_KHR,     //VkStructureType               sType;
+               DE_NULL,                                                                                        //const void*                   pNext;
+               imageUsageFlags,                                                                        //VkImageUsageFlags             usage;
+       };
+
+       return imageViewUsageCreateInfoKHR;
+}
+
+VkDeviceSize GraphicsAttachmentsTestInstance::getCompressedImageData (const VkFormat format, const UVec3& size, std::vector<deUint8>& data)
+{
+       VkDeviceSize    sizeBytes       = getCompressedImageSizeInBytes(format, size);
+
+       data.resize((size_t)sizeBytes);
+       generateData(&data[0], data.size(), format);
+
+       return sizeBytes;
+}
+
+VkDeviceSize GraphicsAttachmentsTestInstance::getUncompressedImageData (const VkFormat format, const UVec3& size, std::vector<deUint8>& data)
+{
+       tcu::IVec3                              sizeAsIVec3     = tcu::IVec3(static_cast<int>(size[0]), static_cast<int>(size[1]), static_cast<int>(size[2]));
+       VkDeviceSize                    sizeBytes       = getImageSizeBytes(sizeAsIVec3, format);
+
+       data.resize((size_t)sizeBytes);
+       generateData(&data[0], data.size(), format);
+
+       return sizeBytes;
+}
+
+bool GraphicsAttachmentsTestInstance::compareAndLog (const void* reference, const void* result, size_t size)
+{
+       tcu::TestLog&   log                     = m_context.getTestContext().getLog();
+
+       const deUint64* ref64   = reinterpret_cast<const deUint64*>(reference);
+       const deUint64* res64   = reinterpret_cast<const deUint64*>(result);
+       const size_t    sizew   = size / sizeof(deUint64);
+       bool                    equal   = true;
+
+       DE_ASSERT(size % sizeof(deUint64) == 0);
+
+       for (deUint32 ndx = 0u; ndx < static_cast<deUint32>(sizew); ndx++)
+       {
+               if (ref64[ndx] != res64[ndx])
+               {
+                       std::stringstream str;
+
+                       str     << "Difference begins near byte " << ndx * sizeof(deUint64) << "."
+                               << " reference value: 0x" << std::hex << std::setw(2ull * sizeof(deUint64)) << std::setfill('0') << ref64[ndx]
+                               << " result value: 0x" << std::hex << std::setw(2ull * sizeof(deUint64)) << std::setfill('0') << res64[ndx];
+
+                       log.writeMessage(str.str().c_str());
+
+                       equal = false;
+
+                       break;
+               }
+       }
+
+       return equal;
+}
+
+bool GraphicsAttachmentsTestInstance::verifyDecompression (const std::vector<deUint8>& refCompressedData, const de::MovePtr<Image>& resCompressedImage)
+{
+       const DeviceInterface&                          vk                                                      = m_context.getDeviceInterface();
+       const VkDevice                                          device                                          = m_context.getDevice();
+       const deUint32                                          queueFamilyIndex                        = m_context.getUniversalQueueFamilyIndex();
+       const VkQueue                                           queue                                           = m_context.getUniversalQueue();
+       Allocator&                                                      allocator                                       = m_context.getDefaultAllocator();
+
+       const deUint32                                          levelCount                                      = m_layerSize[2];
+       const VkImageSubresourceRange           subresourceRange                        = makeImageSubresourceRange(VK_IMAGE_ASPECT_COLOR_BIT, 0u, levelCount, 0u, m_arrayLayers);
+
+       const VkDeviceSize                                      dstBufferSize                           = getUncompressedImageSizeInBytes(m_parameters.formatForVerify, m_parameters.size);
+       const VkImageUsageFlags                         refSrcImageUsageFlags           = VK_IMAGE_USAGE_SAMPLED_BIT | VK_IMAGE_USAGE_TRANSFER_SRC_BIT | VK_IMAGE_USAGE_TRANSFER_DST_BIT;
+
+       const std::vector<tcu::Vec4>            vertexArray                                     = createFullscreenQuad();
+       const deUint32                                          vertexCount                                     = static_cast<deUint32>(vertexArray.size());
+       const size_t                                            vertexBufferSizeInBytes         = vertexCount * sizeof(vertexArray[0]);
+       const MovePtr<Buffer>                           vertexBuffer                            (new Buffer(vk, device, allocator, makeBufferCreateInfo(vertexBufferSizeInBytes, VK_BUFFER_USAGE_VERTEX_BUFFER_BIT), MemoryRequirement::HostVisible));
+       const Allocation&                                       vertexBufferAlloc                       = vertexBuffer->getAllocation();
+       const VkDeviceSize                                      vertexBufferOffset[]            = { 0 };
+
+       const VkBufferCreateInfo                        refSrcImageBufferInfo           (makeBufferCreateInfo(refCompressedData.size(), VK_BUFFER_USAGE_TRANSFER_SRC_BIT));
+       const MovePtr<Buffer>                           refSrcImageBuffer                       = MovePtr<Buffer>(new Buffer(vk, device, allocator, refSrcImageBufferInfo, MemoryRequirement::HostVisible));
+
+       const VkImageCreateFlags                        refSrcImageCreateFlags          = 0;
+       const VkImageCreateInfo                         refSrcImageCreateInfo           = makeCreateImageInfo(m_parameters.formatCompressed, m_parameters.imageType, m_parameters.size, refSrcImageUsageFlags, &refSrcImageCreateFlags);
+       const MovePtr<Image>                            refSrcImage                                     (new Image(vk, device, allocator, refSrcImageCreateInfo, MemoryRequirement::Any));
+       Move<VkImageView>                                       refSrcImageView                         (makeImageView(vk, device, refSrcImage->get(), mapImageViewType(m_parameters.imageType), m_parameters.formatCompressed, subresourceRange));
+
+       const VkImageUsageFlags                         resSrcImageUsageFlags           = VK_IMAGE_USAGE_SAMPLED_BIT | VK_IMAGE_USAGE_TRANSFER_SRC_BIT | VK_IMAGE_USAGE_TRANSFER_DST_BIT;
+       const VkImageViewUsageCreateInfoKHR     resSrcImageViewUsageKHR         = makeImageViewUsageCreateInfo(resSrcImageUsageFlags);
+       Move<VkImageView>                                       resSrcImageView                         (makeImageView(vk, device, resCompressedImage->get(), mapImageViewType(m_parameters.imageType), m_parameters.formatCompressed, subresourceRange, &resSrcImageViewUsageKHR));
+
+       const VkImageCreateFlags                        refDstImageCreateFlags          = 0;
+       const VkImageUsageFlags                         refDstImageUsageFlags           = VK_IMAGE_USAGE_STORAGE_BIT | VK_IMAGE_USAGE_TRANSFER_DST_BIT | VK_IMAGE_USAGE_TRANSFER_SRC_BIT;
+       const VkImageCreateInfo                         refDstImageCreateInfo           = makeCreateImageInfo(m_parameters.formatForVerify, m_parameters.imageType, m_parameters.size, refDstImageUsageFlags, &refDstImageCreateFlags);
+       const MovePtr<Image>                            refDstImage                                     (new Image(vk, device, allocator, refDstImageCreateInfo, MemoryRequirement::Any));
+       const Move<VkImageView>                         refDstImageView                         (makeImageView(vk, device, refDstImage->get(), mapImageViewType(m_parameters.imageType), m_parameters.formatForVerify, subresourceRange));
+       const VkImageMemoryBarrier                      refDstCopyImageBarrier          = makeImageMemoryBarrier(0u, VK_ACCESS_SHADER_READ_BIT, VK_IMAGE_LAYOUT_UNDEFINED, VK_IMAGE_LAYOUT_GENERAL, refDstImage->get(), subresourceRange);
+       const VkBufferCreateInfo                        refDstBufferInfo                        (makeBufferCreateInfo(dstBufferSize, VK_BUFFER_USAGE_TRANSFER_DST_BIT));
+       const MovePtr<Buffer>                           refDstBuffer                            = MovePtr<Buffer>(new Buffer(vk, device, allocator, refDstBufferInfo, MemoryRequirement::HostVisible));
+
+       const VkImageCreateFlags                        resDstImageCreateFlags          = 0;
+       const VkImageUsageFlags                         resDstImageUsageFlags           = VK_IMAGE_USAGE_STORAGE_BIT | VK_IMAGE_USAGE_TRANSFER_DST_BIT | VK_IMAGE_USAGE_TRANSFER_SRC_BIT;
+       const VkImageCreateInfo                         resDstImageCreateInfo           = makeCreateImageInfo(m_parameters.formatForVerify, m_parameters.imageType, m_parameters.size, resDstImageUsageFlags, &resDstImageCreateFlags);
+       const MovePtr<Image>                            resDstImage                                     (new Image(vk, device, allocator, resDstImageCreateInfo, MemoryRequirement::Any));
+       const Move<VkImageView>                         resDstImageView                         (makeImageView(vk, device, resDstImage->get(), mapImageViewType(m_parameters.imageType), m_parameters.formatForVerify, subresourceRange));
+       const VkImageMemoryBarrier                      resDstCopyImageBarrier          = makeImageMemoryBarrier(0u, VK_ACCESS_SHADER_READ_BIT, VK_IMAGE_LAYOUT_UNDEFINED, VK_IMAGE_LAYOUT_GENERAL, resDstImage->get(), subresourceRange);
+       const VkBufferCreateInfo                        resDstBufferInfo                        (makeBufferCreateInfo(dstBufferSize, VK_BUFFER_USAGE_TRANSFER_DST_BIT));
+       const MovePtr<Buffer>                           resDstBuffer                            = MovePtr<Buffer>(new Buffer(vk, device, allocator, resDstBufferInfo, MemoryRequirement::HostVisible));
+
+       const Unique<VkShaderModule>            vertShaderModule                        (createShaderModule(vk, device, m_context.getBinaryCollection().get("vert"), 0));
+       const Unique<VkShaderModule>            fragShaderModule                        (createShaderModule(vk, device, m_context.getBinaryCollection().get("frag_verify"), 0));
+
+       const Unique<VkRenderPass>                      renderPass                                      (makeRenderPass(vk, device));
+
+       const Move<VkDescriptorSetLayout>       descriptorSetLayout                     (DescriptorSetLayoutBuilder()
+                                                                                                                                               .addSingleBinding(VK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER, VK_SHADER_STAGE_FRAGMENT_BIT)
+                                                                                                                                               .addSingleBinding(VK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER, VK_SHADER_STAGE_FRAGMENT_BIT)
+                                                                                                                                               .addSingleBinding(VK_DESCRIPTOR_TYPE_STORAGE_IMAGE, VK_SHADER_STAGE_FRAGMENT_BIT)
+                                                                                                                                               .addSingleBinding(VK_DESCRIPTOR_TYPE_STORAGE_IMAGE, VK_SHADER_STAGE_FRAGMENT_BIT)
+                                                                                                                                               .build(vk, device));
+       const Move<VkDescriptorPool>            descriptorPool                          (DescriptorPoolBuilder()
+                                                                                                                                               .addType(VK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER, m_arrayLayers)
+                                                                                                                                               .addType(VK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER, m_arrayLayers)
+                                                                                                                                               .addType(VK_DESCRIPTOR_TYPE_STORAGE_IMAGE, m_arrayLayers)
+                                                                                                                                               .addType(VK_DESCRIPTOR_TYPE_STORAGE_IMAGE, m_arrayLayers)
+                                                                                                                                               .build(vk, device, VK_DESCRIPTOR_POOL_CREATE_FREE_DESCRIPTOR_SET_BIT, m_arrayLayers));
+       const Move<VkDescriptorSet>                     descriptorSet                           (makeDescriptorSet(vk, device, *descriptorPool, *descriptorSetLayout));
+       const VkSamplerCreateInfo                       refSrcSamplerInfo                       (makeSamplerCreateInfo());
+       const Move<VkSampler>                           refSrcSampler                           = vk::createSampler(vk, device, &refSrcSamplerInfo);
+       const VkSamplerCreateInfo                       resSrcSamplerInfo                       (makeSamplerCreateInfo());
+       const Move<VkSampler>                           resSrcSampler                           = vk::createSampler(vk, device, &resSrcSamplerInfo);
+       const VkDescriptorImageInfo                     descriptorRefSrcImage           (makeDescriptorImageInfo(*refSrcSampler, *refSrcImageView, VK_IMAGE_LAYOUT_GENERAL));
+       const VkDescriptorImageInfo                     descriptorResSrcImage           (makeDescriptorImageInfo(*resSrcSampler, *resSrcImageView, VK_IMAGE_LAYOUT_GENERAL));
+       const VkDescriptorImageInfo                     descriptorRefDstImage           (makeDescriptorImageInfo(DE_NULL, *refDstImageView, VK_IMAGE_LAYOUT_GENERAL));
+       const VkDescriptorImageInfo                     descriptorResDstImage           (makeDescriptorImageInfo(DE_NULL, *resDstImageView, VK_IMAGE_LAYOUT_GENERAL));
+
+       const VkExtent2D                                        renderSize                                      (makeExtent2D(m_parameters.size.x(), m_parameters.size.y()));
+       const Unique<VkPipelineLayout>          pipelineLayout                          (makePipelineLayout(vk, device, *descriptorSetLayout));
+       const Unique<VkPipeline>                        pipeline                                        (makeGraphicsPipeline(vk, device, *pipelineLayout, *renderPass, *vertShaderModule, *fragShaderModule, renderSize, 0u));
+       const Unique<VkCommandPool>                     cmdPool                                         (createCommandPool(vk, device, VK_COMMAND_POOL_RESET_RELEASE_RESOURCES_BIT, queueFamilyIndex));
+       const Unique<VkCommandBuffer>           cmdBuffer                                       (allocateCommandBuffer(vk, device, *cmdPool, VK_COMMAND_BUFFER_LEVEL_PRIMARY));
+
+       const VkBufferImageCopy                         copyRegion                                      = makeBufferImageCopy(m_parameters.size.x(), m_parameters.size.y());
+       const VkBufferMemoryBarrier                     refSrcCopyBufferBarrier         = makeBufferMemoryBarrier(VK_ACCESS_HOST_WRITE_BIT, VK_ACCESS_TRANSFER_READ_BIT, refSrcImageBuffer->get(), 0ull, refCompressedData.size());
+       const VkImageMemoryBarrier                      refSrcCopyImageBarrier          = makeImageMemoryBarrier(0u, VK_ACCESS_TRANSFER_WRITE_BIT, VK_IMAGE_LAYOUT_UNDEFINED, VK_IMAGE_LAYOUT_GENERAL, refSrcImage->get(), subresourceRange);
+       const VkImageMemoryBarrier                      refSrcCopyImageBarrierPost      = makeImageMemoryBarrier(VK_ACCESS_TRANSFER_WRITE_BIT, VK_ACCESS_SHADER_READ_BIT, VK_IMAGE_LAYOUT_GENERAL, VK_IMAGE_LAYOUT_GENERAL, refSrcImage->get(), subresourceRange);
+
+       const Move<VkFramebuffer>                       framebuffer                                     (makeFramebuffer(vk, device, *renderPass, 0, DE_NULL, renderSize, m_arrayLayers));
+
+       // Upload vertex data
+       deMemcpy(vertexBufferAlloc.getHostPtr(), &vertexArray[0], vertexBufferSizeInBytes);
+       flushMappedMemoryRange(vk, device, vertexBufferAlloc.getMemory(), vertexBufferAlloc.getOffset(), vertexBufferSizeInBytes);
+
+       // Upload source image data
+       {
+               const Allocation& refSrcImageBufferAlloc = refSrcImageBuffer->getAllocation();
+               deMemcpy(refSrcImageBufferAlloc.getHostPtr(), &refCompressedData[0], refCompressedData.size());
+               flushMappedMemoryRange(vk, device, refSrcImageBufferAlloc.getMemory(), refSrcImageBufferAlloc.getOffset(), refCompressedData.size());
+       }
+
+       beginCommandBuffer(vk, *cmdBuffer);
+       vk.cmdBindPipeline(*cmdBuffer, VK_PIPELINE_BIND_POINT_GRAPHICS, *pipeline);
+
+       //Copy buffer to image
+       vk.cmdPipelineBarrier(*cmdBuffer, VK_PIPELINE_STAGE_TOP_OF_PIPE_BIT, VK_PIPELINE_STAGE_TRANSFER_BIT, (VkDependencyFlags)0, 0, (const VkMemoryBarrier*)DE_NULL, 1u, &refSrcCopyBufferBarrier, 1u, &refSrcCopyImageBarrier);
+       vk.cmdCopyBufferToImage(*cmdBuffer, refSrcImageBuffer->get(), refSrcImage->get(), VK_IMAGE_LAYOUT_GENERAL, 1u, &copyRegion);
+       vk.cmdPipelineBarrier(*cmdBuffer, VK_PIPELINE_STAGE_TRANSFER_BIT, VK_PIPELINE_STAGE_TOP_OF_PIPE_BIT, (VkDependencyFlags)0, 0, (const VkMemoryBarrier*)DE_NULL, 0, DE_NULL, 1u, &refSrcCopyImageBarrierPost);
+
+       // Make reference and result images readable
+       vk.cmdPipelineBarrier(*cmdBuffer, VK_PIPELINE_STAGE_TOP_OF_PIPE_BIT, VK_PIPELINE_STAGE_FRAGMENT_SHADER_BIT, (VkDependencyFlags)0, 0, (const VkMemoryBarrier*)DE_NULL, 0u, DE_NULL, 1u, &refDstCopyImageBarrier);
+       vk.cmdPipelineBarrier(*cmdBuffer, VK_PIPELINE_STAGE_TOP_OF_PIPE_BIT, VK_PIPELINE_STAGE_FRAGMENT_SHADER_BIT, (VkDependencyFlags)0, 0, (const VkMemoryBarrier*)DE_NULL, 0u, DE_NULL, 1u, &resDstCopyImageBarrier);
+
+       beginRenderPass(vk, *cmdBuffer, *renderPass, *framebuffer, renderSize);
+       for (deUint32 layerNdx = 0; layerNdx < m_arrayLayers; ++layerNdx)
+       {
+               DescriptorSetUpdateBuilder()
+                       .writeSingle(*descriptorSet, DescriptorSetUpdateBuilder::Location::binding(0u), VK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER, &descriptorRefSrcImage)
+                       .writeSingle(*descriptorSet, DescriptorSetUpdateBuilder::Location::binding(1u), VK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER, &descriptorResSrcImage)
+                       .writeSingle(*descriptorSet, DescriptorSetUpdateBuilder::Location::binding(2u), VK_DESCRIPTOR_TYPE_STORAGE_IMAGE, &descriptorRefDstImage)
+                       .writeSingle(*descriptorSet, DescriptorSetUpdateBuilder::Location::binding(3u), VK_DESCRIPTOR_TYPE_STORAGE_IMAGE, &descriptorResDstImage)
+                       .update(vk, device);
+
+               vk.cmdBindDescriptorSets(*cmdBuffer, VK_PIPELINE_BIND_POINT_GRAPHICS, *pipelineLayout, 0u, 1u, &descriptorSet.get(), 0u, DE_NULL);
+               vk.cmdBindVertexBuffers(*cmdBuffer, 0, 1, &vertexBuffer->get(), vertexBufferOffset);
+               vk.cmdDraw(*cmdBuffer, vertexCount, 1, 0, 0);
+       }
+       vk.cmdEndRenderPass(*cmdBuffer);
+
+       // Decompress reference image
+       {
+               const VkImageMemoryBarrier refDstImageBarrier = makeImageMemoryBarrier(
+                       VK_ACCESS_SHADER_WRITE_BIT, VK_ACCESS_TRANSFER_READ_BIT,
+                       VK_IMAGE_LAYOUT_GENERAL, VK_IMAGE_LAYOUT_GENERAL,
+                       refDstImage->get(), subresourceRange);
+
+               const VkBufferMemoryBarrier refDstBufferBarrier = makeBufferMemoryBarrier(
+                       VK_ACCESS_TRANSFER_WRITE_BIT, VK_ACCESS_HOST_READ_BIT,
+                       refDstBuffer->get(), 0ull, dstBufferSize);
+
+               vk.cmdPipelineBarrier(*cmdBuffer, VK_PIPELINE_STAGE_FRAGMENT_SHADER_BIT, VK_PIPELINE_STAGE_TRANSFER_BIT, (VkDependencyFlags)0, 0, (const VkMemoryBarrier*)DE_NULL, 0, (const VkBufferMemoryBarrier*)DE_NULL, 1, &refDstImageBarrier);
+               vk.cmdCopyImageToBuffer(*cmdBuffer, refDstImage->get(), VK_IMAGE_LAYOUT_GENERAL, refDstBuffer->get(), 1u, &copyRegion);
+               vk.cmdPipelineBarrier(*cmdBuffer, VK_PIPELINE_STAGE_TRANSFER_BIT, VK_PIPELINE_STAGE_HOST_BIT, (VkDependencyFlags)0, 0, (const VkMemoryBarrier*)DE_NULL, 1, &refDstBufferBarrier, 0, (const VkImageMemoryBarrier*)DE_NULL);
+       }
+
+       // Decompress result image
+       {
+               const VkImageMemoryBarrier resDstImageBarrier = makeImageMemoryBarrier(
+                       VK_ACCESS_SHADER_WRITE_BIT, VK_ACCESS_TRANSFER_READ_BIT,
+                       VK_IMAGE_LAYOUT_GENERAL, VK_IMAGE_LAYOUT_GENERAL,
+                       resDstImage->get(), subresourceRange);
+
+               const VkBufferMemoryBarrier resDstBufferBarrier = makeBufferMemoryBarrier(
+                       VK_ACCESS_TRANSFER_WRITE_BIT, VK_ACCESS_HOST_READ_BIT,
+                       resDstBuffer->get(), 0ull, dstBufferSize);
+
+               vk.cmdPipelineBarrier(*cmdBuffer, VK_PIPELINE_STAGE_FRAGMENT_SHADER_BIT, VK_PIPELINE_STAGE_TRANSFER_BIT, (VkDependencyFlags)0, 0, (const VkMemoryBarrier*)DE_NULL, 0, (const VkBufferMemoryBarrier*)DE_NULL, 1, &resDstImageBarrier);
+               vk.cmdCopyImageToBuffer(*cmdBuffer, resDstImage->get(), VK_IMAGE_LAYOUT_GENERAL, resDstBuffer->get(), 1u, &copyRegion);
+               vk.cmdPipelineBarrier(*cmdBuffer, VK_PIPELINE_STAGE_TRANSFER_BIT, VK_PIPELINE_STAGE_HOST_BIT, (VkDependencyFlags)0, 0, (const VkMemoryBarrier*)DE_NULL, 1, &resDstBufferBarrier, 0, (const VkImageMemoryBarrier*)DE_NULL);
+       }
+
+       endCommandBuffer(vk, *cmdBuffer);
+
+       submitCommandsAndWait(vk, device, queue, *cmdBuffer);
+
+       // Compare decompressed pixel data in reference and result images
+       {
+               const Allocation&       refDstBufferAlloc       = refDstBuffer->getAllocation();
+               invalidateMappedMemoryRange(vk, device, refDstBufferAlloc.getMemory(), refDstBufferAlloc.getOffset(), dstBufferSize);
+
+               const Allocation&       resDstBufferAlloc       = resDstBuffer->getAllocation();
+               invalidateMappedMemoryRange(vk, device, resDstBufferAlloc.getMemory(), resDstBufferAlloc.getOffset(), dstBufferSize);
+
+               return compareAndLog(refDstBufferAlloc.getHostPtr(), resDstBufferAlloc.getHostPtr(), (size_t)dstBufferSize);
+       }
+}
+
+
+class GraphicsTextureTestInstance : public GraphicsAttachmentsTestInstance
+{
+public:
+                                               GraphicsTextureTestInstance             (Context& context, const TestParameters& parameters);
+
+protected:
+       virtual bool            isWriteToCompressedOperation    ();
+       void                            transcode                                               (std::vector<deUint8>& srcData, std::vector<deUint8>& dstData, de::MovePtr<Image>& outputImage);
+};
+
+GraphicsTextureTestInstance::GraphicsTextureTestInstance (Context& context, const TestParameters& parameters)
+       : GraphicsAttachmentsTestInstance(context, parameters)
+{
+}
+
+bool GraphicsTextureTestInstance::isWriteToCompressedOperation ()
+{
+       return (m_parameters.operation == OPERATION_TEXTURE_WRITE);
+}
+
+void GraphicsTextureTestInstance::transcode (std::vector<deUint8>& srcData, std::vector<deUint8>& dstData, de::MovePtr<Image>& outputImage)
+{
+       const DeviceInterface&                                  vk                                              = m_context.getDeviceInterface();
+       const VkDevice                                                  device                                  = m_context.getDevice();
+       const deUint32                                                  queueFamilyIndex                = m_context.getUniversalQueueFamilyIndex();
+       const VkQueue                                                   queue                                   = m_context.getUniversalQueue();
+       Allocator&                                                              allocator                               = m_context.getDefaultAllocator();
+
+       const deUint32                                                  levelCount                              = m_layerSize[2];
+       const VkImageSubresourceRange                   subresourceRange                = makeImageSubresourceRange(VK_IMAGE_ASPECT_COLOR_BIT, 0u, levelCount, 0u, m_arrayLayers);
+       const UVec3                                                             compressedImageRes              = m_parameters.size;
+       const UVec3                                                             uncompressedImageRes    = getCompressedImageResolutionInBlocks(m_parameters.formatCompressed, m_parameters.size);
+       const VkImageCreateFlags*                               imgCreateFlagsOverride  = DE_NULL;
+       const VkImageViewUsageCreateInfoKHR             imageViewUsageKHR               = makeImageViewUsageCreateInfo(m_parameters.compressedImageUsage);
+       const VkImageViewUsageCreateInfoKHR*    imageViewUsageKHRNull   = (VkImageViewUsageCreateInfoKHR*)DE_NULL;
+
+       const VkFormat                                                  srcFormat                               = (m_parameters.operation == OPERATION_TEXTURE_READ)  ? m_parameters.formatCompressed :
+                                                                                                                                         (m_parameters.operation == OPERATION_TEXTURE_WRITE) ? m_parameters.formatUncompressed :
+                                                                                                                                         VK_FORMAT_UNDEFINED;
+       const UVec3                                                             srcImageResolution              = (m_parameters.operation == OPERATION_TEXTURE_READ)  ? compressedImageRes :
+                                                                                                                                         (m_parameters.operation == OPERATION_TEXTURE_WRITE) ? uncompressedImageRes :
+                                                                                                                                         UVec3(0, 0, 0);
+       const VkDeviceSize                                              srcImageSizeInBytes             = (m_parameters.operation == OPERATION_TEXTURE_READ)  ? getCompressedImageData(srcFormat, srcImageResolution, srcData) :
+                                                                                                                                         (m_parameters.operation == OPERATION_TEXTURE_WRITE) ? getUncompressedImageData(srcFormat, srcImageResolution, srcData) :
+                                                                                                                                         0;
+       const VkImageUsageFlags                                 srcImageUsageFlags              = (m_parameters.operation == OPERATION_TEXTURE_READ)  ? m_parameters.compressedImageUsage :
+                                                                                                                                         (m_parameters.operation == OPERATION_TEXTURE_WRITE) ? m_parameters.uncompressedImageUsage :
+                                                                                                                                         0;
+       const VkImageViewUsageCreateInfoKHR*    srcImageViewUsageKHR    = (m_parameters.operation == OPERATION_TEXTURE_READ)  ? &imageViewUsageKHR :
+                                                                                                                                         (m_parameters.operation == OPERATION_TEXTURE_WRITE) ? imageViewUsageKHRNull :
+                                                                                                                                         imageViewUsageKHRNull;
+
+       const VkFormat                                                  dstFormat                               = (m_parameters.operation == OPERATION_TEXTURE_READ)  ? m_parameters.formatUncompressed :
+                                                                                                                                         (m_parameters.operation == OPERATION_TEXTURE_WRITE) ? m_parameters.formatCompressed :
+                                                                                                                                         VK_FORMAT_UNDEFINED;
+       const UVec3                                                             dstImageResolution              = (m_parameters.operation == OPERATION_TEXTURE_READ)  ? uncompressedImageRes :
+                                                                                                                                         (m_parameters.operation == OPERATION_TEXTURE_WRITE) ? compressedImageRes :
+                                                                                                                                         UVec3(0, 0, 0);
+       const VkDeviceSize                                              dstImageSizeInBytes             = (m_parameters.operation == OPERATION_TEXTURE_READ)  ? getUncompressedImageSizeInBytes(dstFormat, dstImageResolution) :
+                                                                                                                                         (m_parameters.operation == OPERATION_TEXTURE_WRITE) ? getCompressedImageSizeInBytes(dstFormat, dstImageResolution) :
+                                                                                                                                         0;
+       const VkImageUsageFlags                                 dstImageUsageFlags              = (m_parameters.operation == OPERATION_TEXTURE_READ)  ? m_parameters.uncompressedImageUsage :
+                                                                                                                                         (m_parameters.operation == OPERATION_TEXTURE_WRITE) ? m_parameters.compressedImageUsage :
+                                                                                                                                         0;
+       const VkImageViewUsageCreateInfoKHR*    dstImageViewUsageKHR    = (m_parameters.operation == OPERATION_TEXTURE_READ)  ? imageViewUsageKHRNull :
+                                                                                                                                         (m_parameters.operation == OPERATION_TEXTURE_WRITE) ? &imageViewUsageKHR :
+                                                                                                                                         imageViewUsageKHRNull;
+
+       const std::vector<tcu::Vec4>                    vertexArray                             = createFullscreenQuad();
+       const deUint32                                                  vertexCount                             = static_cast<deUint32>(vertexArray.size());
+       const size_t                                                    vertexBufferSizeInBytes = vertexCount * sizeof(vertexArray[0]);
+       const MovePtr<Buffer>                                   vertexBuffer                    = MovePtr<Buffer>(new Buffer(vk, device, allocator, makeBufferCreateInfo(vertexBufferSizeInBytes, VK_BUFFER_USAGE_VERTEX_BUFFER_BIT), MemoryRequirement::HostVisible));
+       const Allocation&                                               vertexBufferAlloc               = vertexBuffer->getAllocation();
+       const VkDeviceSize                                              vertexBufferOffset[]    = { 0 };
+
+       const VkBufferCreateInfo                                srcImageBufferInfo              (makeBufferCreateInfo(srcImageSizeInBytes, VK_BUFFER_USAGE_TRANSFER_SRC_BIT));
+       const MovePtr<Buffer>                                   srcImageBuffer                  = MovePtr<Buffer>(new Buffer(vk, device, allocator, srcImageBufferInfo, MemoryRequirement::HostVisible));
+
+       const VkImageCreateInfo                                 srcImageCreateInfo              = makeCreateImageInfo(srcFormat, m_parameters.imageType, srcImageResolution, srcImageUsageFlags, imgCreateFlagsOverride);
+       const MovePtr<Image>                                    srcImage                                (new Image(vk, device, allocator, srcImageCreateInfo, MemoryRequirement::Any));
+       Move<VkImageView>                                               srcImageView                    (makeImageView(vk, device, srcImage->get(), mapImageViewType(m_parameters.imageType), m_parameters.formatUncompressed, subresourceRange, srcImageViewUsageKHR));
+
+       const VkImageCreateInfo                                 dstImageCreateInfo              = makeCreateImageInfo(dstFormat, m_parameters.imageType, dstImageResolution, dstImageUsageFlags, imgCreateFlagsOverride);
+       de::MovePtr<Image>                                              dstImage                                (new Image(vk, device, allocator, dstImageCreateInfo, MemoryRequirement::Any));
+       Move<VkImageView>                                               dstImageView                    (makeImageView(vk, device, dstImage->get(), mapImageViewType(m_parameters.imageType), m_parameters.formatUncompressed, subresourceRange, dstImageViewUsageKHR));
+       const VkImageMemoryBarrier                              dstCopyImageBarrier             = makeImageMemoryBarrier(0u, VK_ACCESS_SHADER_READ_BIT, VK_IMAGE_LAYOUT_UNDEFINED, VK_IMAGE_LAYOUT_GENERAL, dstImage->get(), subresourceRange);
+
+       const VkBufferCreateInfo                                dstImageBufferInfo              (makeBufferCreateInfo(dstImageSizeInBytes, VK_BUFFER_USAGE_TRANSFER_DST_BIT));
+       MovePtr<Buffer>                                                 dstImageBuffer                  = MovePtr<Buffer>(new Buffer(vk, device, allocator, dstImageBufferInfo, MemoryRequirement::HostVisible));
+
+       const Unique<VkShaderModule>                    vertShaderModule                (createShaderModule(vk, device, m_context.getBinaryCollection().get("vert"), 0));
+       const Unique<VkShaderModule>                    fragShaderModule                (createShaderModule(vk, device, m_context.getBinaryCollection().get("frag"), 0));
+
+       const Unique<VkRenderPass>                              renderPass                              (makeRenderPass(vk, device));
+
+       const Move<VkDescriptorSetLayout>               descriptorSetLayout             (DescriptorSetLayoutBuilder()
+                                                                                                                                               .addSingleBinding(VK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER, VK_SHADER_STAGE_FRAGMENT_BIT)
+                                                                                                                                               .addSingleBinding(VK_DESCRIPTOR_TYPE_STORAGE_IMAGE, VK_SHADER_STAGE_FRAGMENT_BIT)
+                                                                                                                                               .build(vk, device));
+       const Move<VkDescriptorPool>                    descriptorPool                  (DescriptorPoolBuilder()
+                                                                                                                                               .addType(VK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER, m_arrayLayers)
+                                                                                                                                               .addType(VK_DESCRIPTOR_TYPE_STORAGE_IMAGE, m_arrayLayers)
+                                                                                                                                               .build(vk, device, VK_DESCRIPTOR_POOL_CREATE_FREE_DESCRIPTOR_SET_BIT, m_arrayLayers));
+       const Move<VkDescriptorSet>                             descriptorSet                   (makeDescriptorSet(vk, device, *descriptorPool, *descriptorSetLayout));
+       const VkSamplerCreateInfo                               srcSamplerInfo                  (makeSamplerCreateInfo());
+       const Move<VkSampler>                                   srcSampler                              = vk::createSampler(vk, device, &srcSamplerInfo);
+       const VkDescriptorImageInfo                             descriptorSrcImage              (makeDescriptorImageInfo(*srcSampler, *srcImageView, VK_IMAGE_LAYOUT_GENERAL));
+       const VkDescriptorImageInfo                             descriptorDstImage              (makeDescriptorImageInfo(DE_NULL, *dstImageView, VK_IMAGE_LAYOUT_GENERAL));
+
+       const VkExtent2D                                                renderSize                              (makeExtent2D(uncompressedImageRes[0], uncompressedImageRes[1]));
+       const Unique<VkPipelineLayout>                  pipelineLayout                  (makePipelineLayout(vk, device, *descriptorSetLayout));
+       const Unique<VkPipeline>                                pipeline                                (makeGraphicsPipeline(vk, device, *pipelineLayout, *renderPass, *vertShaderModule, *fragShaderModule, renderSize, 0u));
+       const Unique<VkCommandPool>                             cmdPool                                 (createCommandPool(vk, device, VK_COMMAND_POOL_RESET_RELEASE_RESOURCES_BIT, queueFamilyIndex));
+       const Unique<VkCommandBuffer>                   cmdBuffer                               (allocateCommandBuffer(vk, device, *cmdPool, VK_COMMAND_BUFFER_LEVEL_PRIMARY));
+
+       const VkBufferImageCopy                                 srcCopyRegion                   = makeBufferImageCopy(srcImageResolution[0], srcImageResolution[1]);
+       const VkBufferMemoryBarrier                             srcCopyBufferBarrier    = makeBufferMemoryBarrier(VK_ACCESS_HOST_WRITE_BIT, VK_ACCESS_TRANSFER_READ_BIT, srcImageBuffer->get(), 0ull, srcImageSizeInBytes);
+       const VkImageMemoryBarrier                              srcCopyImageBarrier             = makeImageMemoryBarrier(0u, VK_ACCESS_TRANSFER_WRITE_BIT, VK_IMAGE_LAYOUT_UNDEFINED, VK_IMAGE_LAYOUT_GENERAL, srcImage->get(), subresourceRange);
+       const VkImageMemoryBarrier                              srcCopyImageBarrierPost = makeImageMemoryBarrier(VK_ACCESS_TRANSFER_WRITE_BIT, VK_ACCESS_SHADER_READ_BIT, VK_IMAGE_LAYOUT_GENERAL, VK_IMAGE_LAYOUT_GENERAL, srcImage->get(), subresourceRange);
+
+       const VkBufferImageCopy                                 dstCopyRegion                   = makeBufferImageCopy(dstImageResolution[0], dstImageResolution[1]);
+
+       const VkExtent2D                                                framebufferSize                 (makeExtent2D(dstImageResolution[0], dstImageResolution[1]));
+       const Move<VkFramebuffer>                               framebuffer                             (makeFramebuffer(vk, device, *renderPass, 0, DE_NULL, framebufferSize, m_arrayLayers));
+
+       DE_ASSERT(srcImageSizeInBytes == dstImageSizeInBytes);
+
+       // Upload vertex data
+       deMemcpy(vertexBufferAlloc.getHostPtr(), &vertexArray[0], vertexBufferSizeInBytes);
+       flushMappedMemoryRange(vk, device, vertexBufferAlloc.getMemory(), vertexBufferAlloc.getOffset(), vertexBufferSizeInBytes);
+
+       // Upload source image data
+       const Allocation& alloc = srcImageBuffer->getAllocation();
+       deMemcpy(alloc.getHostPtr(), &srcData[0], (size_t)srcImageSizeInBytes);
+       flushMappedMemoryRange(vk, device, alloc.getMemory(), alloc.getOffset(), srcImageSizeInBytes);
+
+       beginCommandBuffer(vk, *cmdBuffer);
+       vk.cmdBindPipeline(*cmdBuffer, VK_PIPELINE_BIND_POINT_GRAPHICS, *pipeline);
+
+       //Copy buffer to image
+       vk.cmdPipelineBarrier(*cmdBuffer, VK_PIPELINE_STAGE_TOP_OF_PIPE_BIT, VK_PIPELINE_STAGE_TRANSFER_BIT, (VkDependencyFlags)0, 0, (const VkMemoryBarrier*)DE_NULL, 1u, &srcCopyBufferBarrier, 1u, &srcCopyImageBarrier);
+       vk.cmdCopyBufferToImage(*cmdBuffer, srcImageBuffer->get(), srcImage->get(), VK_IMAGE_LAYOUT_GENERAL, 1u, &srcCopyRegion);
+       vk.cmdPipelineBarrier(*cmdBuffer, VK_PIPELINE_STAGE_TRANSFER_BIT, VK_PIPELINE_STAGE_FRAGMENT_SHADER_BIT, (VkDependencyFlags)0, 0, (const VkMemoryBarrier*)DE_NULL, 0, (const VkBufferMemoryBarrier*)DE_NULL, 1u, &srcCopyImageBarrierPost);
+
+       // Make source image readable
+       vk.cmdPipelineBarrier(*cmdBuffer, VK_PIPELINE_STAGE_TOP_OF_PIPE_BIT, VK_PIPELINE_STAGE_FRAGMENT_SHADER_BIT, (VkDependencyFlags)0, 0, (const VkMemoryBarrier*)DE_NULL, 0u, DE_NULL, 1u, &dstCopyImageBarrier);
+
+       beginRenderPass(vk, *cmdBuffer, *renderPass, *framebuffer, renderSize);
+
+       for (deUint32 layerNdx = 0; layerNdx < m_arrayLayers; ++layerNdx)
+       {
+               DescriptorSetUpdateBuilder()
+                       .writeSingle(*descriptorSet, DescriptorSetUpdateBuilder::Location::binding(0u), VK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER, &descriptorSrcImage)
+                       .writeSingle(*descriptorSet, DescriptorSetUpdateBuilder::Location::binding(1u), VK_DESCRIPTOR_TYPE_STORAGE_IMAGE, &descriptorDstImage)
+                       .update(vk, device);
+
+               vk.cmdBindDescriptorSets(*cmdBuffer, VK_PIPELINE_BIND_POINT_GRAPHICS, *pipelineLayout, 0u, 1u, &descriptorSet.get(), 0u, DE_NULL);
+               vk.cmdBindVertexBuffers(*cmdBuffer, 0, 1, &vertexBuffer->get(), vertexBufferOffset);
+               vk.cmdDraw(*cmdBuffer, vertexCount, 1, 0, 0);
+       }
+
+       vk.cmdEndRenderPass(*cmdBuffer);
+
+       const VkImageMemoryBarrier prepareForTransferBarrier = makeImageMemoryBarrier(
+               VK_ACCESS_SHADER_WRITE_BIT, VK_ACCESS_TRANSFER_READ_BIT,
+               VK_IMAGE_LAYOUT_GENERAL, VK_IMAGE_LAYOUT_GENERAL,
+               dstImage->get(), subresourceRange);
+
+       const VkBufferMemoryBarrier copyBarrier = makeBufferMemoryBarrier(
+               VK_ACCESS_TRANSFER_WRITE_BIT, VK_ACCESS_HOST_READ_BIT,
+               dstImageBuffer->get(), 0ull, dstImageSizeInBytes);
+
+       vk.cmdPipelineBarrier(*cmdBuffer, VK_PIPELINE_STAGE_FRAGMENT_SHADER_BIT, VK_PIPELINE_STAGE_TRANSFER_BIT, (VkDependencyFlags)0, 0, (const VkMemoryBarrier*)DE_NULL, 0, (const VkBufferMemoryBarrier*)DE_NULL, 1, &prepareForTransferBarrier);
+       vk.cmdCopyImageToBuffer(*cmdBuffer, dstImage->get(), VK_IMAGE_LAYOUT_GENERAL, dstImageBuffer->get(), 1u, &dstCopyRegion);
+       vk.cmdPipelineBarrier(*cmdBuffer, VK_PIPELINE_STAGE_TRANSFER_BIT, VK_PIPELINE_STAGE_HOST_BIT, (VkDependencyFlags)0, 0, (const VkMemoryBarrier*)DE_NULL, 1, &copyBarrier, 0, (const VkImageMemoryBarrier*)DE_NULL);
+
+       endCommandBuffer(vk, *cmdBuffer);
+
+       submitCommandsAndWait(vk, device, queue, *cmdBuffer);
+
+       const Allocation& dstImageBufferAlloc = dstImageBuffer->getAllocation();
+       invalidateMappedMemoryRange(vk, device, dstImageBufferAlloc.getMemory(), dstImageBufferAlloc.getOffset(), dstImageSizeInBytes);
+       dstData.resize((size_t)dstImageSizeInBytes);
+       deMemcpy(&dstData[0], dstImageBufferAlloc.getHostPtr(), (size_t)dstImageSizeInBytes);
+
+       outputImage = dstImage;
+}
+
+
+class TexelViewCompatibleCase : public TestCase
+{
+public:
+                                                       TexelViewCompatibleCase         (TestContext&                           testCtx,
+                                                                                                                const std::string&                     name,
+                                                                                                                const std::string&                     desc,
+                                                                                                                const TestParameters&          parameters);
+       void                                    initPrograms                            (SourceCollections&                     programCollection) const;
+       TestInstance*                   createInstance                          (Context&                                       context) const;
+protected:
+       const TestParameters    m_parameters;
+};
+
+TexelViewCompatibleCase::TexelViewCompatibleCase (TestContext& testCtx, const std::string& name, const std::string& desc, const TestParameters& parameters)
+       : TestCase                              (testCtx, name, desc)
+       , m_parameters                  (parameters)
+{
+}
+
+void TexelViewCompatibleCase::initPrograms (vk::SourceCollections&     programCollection) const
+{
+       switch (m_parameters.shader)
+       {
+               case SHADER_TYPE_COMPUTE:
+               {
+                       const std::string       imageTypeStr            = getShaderImageType(mapVkFormat(m_parameters.formatUncompressed), m_parameters.imageType);
+                       const std::string       formatQualifierStr      = getShaderImageFormatQualifier(mapVkFormat(m_parameters.formatUncompressed));
+                       std::ostringstream      src;
+                       std::ostringstream      src_decompress;
+
+                       src << glu::getGLSLVersionDeclaration(glu::GLSL_VERSION_450) << "\n"
+                               << "layout (local_size_x = 1, local_size_y = 1, local_size_z = 1) in;\n\n";
+                       src_decompress << src.str();
+
+                       switch(m_parameters.operation)
+                       {
+                               case OPERATION_IMAGE_LOAD:
+                               {
+                                       src << "layout (binding = 0, "<<formatQualifierStr<<") readonly uniform "<<imageTypeStr<<" u_image0;\n"
+                                               << "layout (binding = 1, "<<formatQualifierStr<<") writeonly uniform "<<imageTypeStr<<" u_image1;\n\n"
+                                               << "void main (void)\n"
+                                               << "{\n"
+                                               << "    ivec2 pos = ivec2(gl_GlobalInvocationID.xy);\n"
+                                               << "    imageStore(u_image1, pos, imageLoad(u_image0, pos));\n"
+                                               << "}\n";
+
+                                       break;
+                               }
+
+                               case OPERATION_TEXEL_FETCH:
+                               {
+                                       src << "layout (binding = 0) uniform "<<getGlslSamplerType(mapVkFormat(m_parameters.formatUncompressed), mapImageViewType(m_parameters.imageType))<<" u_image0;\n"
+                                               << "layout (binding = 1, "<<formatQualifierStr<<") writeonly uniform "<<imageTypeStr<<" u_image1;\n\n"
+                                               << "void main (void)\n"
+                                               << "{\n"
+                                               << "    ivec3 pos = ivec3(gl_GlobalInvocationID.xyz);\n"
+                                               << "    imageStore(u_image1, pos.xy, texelFetch(u_image0, pos.xy, pos.z));\n"
+                                               << "}\n";
+
+                                       break;
+                               }
+
+                               case OPERATION_TEXTURE:
+                               {
+                                       src << "layout (binding = 0) uniform "<<getGlslSamplerType(mapVkFormat(m_parameters.formatUncompressed), mapImageViewType(m_parameters.imageType))<<" u_image0;\n"
+                                               << "layout (binding = 1, "<<formatQualifierStr<<") writeonly uniform "<<imageTypeStr<<" u_image1;\n\n"
+                                               << "void main (void)\n"
+                                               << "{\n"
+                                               << "    ivec2 pos = ivec2(gl_GlobalInvocationID.xy);\n"
+                                               << "    imageStore(u_image1, pos, texture(u_image0, pos));\n"
+                                               << "}\n";
+
+                                       break;
+                               }
+
+                               case OPERATION_IMAGE_STORE:
+                               {
+                                       src << "layout (binding = 0, "<<formatQualifierStr<<") uniform "<<imageTypeStr<<"           u_image0;\n"
+                                               << "layout (binding = 1, "<<formatQualifierStr<<") readonly uniform "<<imageTypeStr<<"  u_image1;\n"
+                                               << "layout (binding = 2, "<<formatQualifierStr<<") writeonly uniform "<<imageTypeStr<<" u_image2;\n\n"
+                                               << "void main (void)\n"
+                                               << "{\n"
+                                               << "    ivec2 pos = ivec2(gl_GlobalInvocationID.xy);\n"
+                                               << "    imageStore(u_image0, pos, imageLoad(u_image1, pos));\n"
+                                               << "    imageStore(u_image2, pos, imageLoad(u_image0, pos));\n"
+                                               << "}\n";
+
+                                       break;
+                               }
+
+                               default:
+                                       DE_ASSERT(false);
+                       }
+
+                       src_decompress  << "layout (binding = 0) uniform "<<getGlslSamplerType(mapVkFormat(m_parameters.formatUncompressed), mapImageViewType(m_parameters.imageType))<<" compressed_result;\n"
+                                                       << "layout (binding = 1) uniform "<<getGlslSamplerType(mapVkFormat(m_parameters.formatUncompressed), mapImageViewType(m_parameters.imageType))<<" compressed_reference;\n"
+                                                       << "layout (binding = 2, "<<formatQualifierStr<<") writeonly uniform "<<imageTypeStr<<" decompressed_result;\n"
+                                                       << "layout (binding = 3, "<<formatQualifierStr<<") writeonly uniform "<<imageTypeStr<<" decompressed_reference;\n\n"
+                                                       << "void main (void)\n"
+                                                       << "{\n"
+                                                       << "    ivec2 pos = ivec2(gl_GlobalInvocationID.xy);\n"
+                                                       << "    imageStore(decompressed_result, pos, texture(compressed_result, pos));\n"
+                                                       << "    imageStore(decompressed_reference, pos, texture(compressed_reference, pos));\n"
+                                                       << "}\n";
+                       programCollection.glslSources.add("comp") << glu::ComputeSource(src.str());
+                       programCollection.glslSources.add("decompress") << glu::ComputeSource(src_decompress.str());
+
+                       break;
+               }
+
+               case SHADER_TYPE_FRAGMENT:
+               {
+                       DE_ASSERT(m_parameters.size[0] > 0);
+                       DE_ASSERT(m_parameters.size[1] > 0);
+
+                       // Vertex shader
+                       {
+                               std::ostringstream src;
+                               src << glu::getGLSLVersionDeclaration(glu::GLSL_VERSION_450) << "\n\n"
+                                       << "layout(location = 0) in vec4 v_in_position;\n"
+                                       << "\n"
+                                       << "void main (void)\n"
+                                       << "{\n"
+                                       << "    gl_Position = v_in_position;\n"
+                                       << "}\n";
+
+                               programCollection.glslSources.add("vert") << glu::VertexSource(src.str());
+                       }
+
+                       // Fragment shader
+                       {
+                               switch(m_parameters.operation)
+                               {
+                                       case OPERATION_ATTACHMENT_READ:
+                                       case OPERATION_ATTACHMENT_WRITE:
+                                       {
+                                               std::ostringstream      src;
+
+                                               const std::string       dstTypeStr      = getGlslFormatType(m_parameters.formatUncompressed);
+                                               const std::string       srcTypeStr      = getGlslInputFormatType(m_parameters.formatUncompressed);
+
+                                               src << glu::getGLSLVersionDeclaration(glu::GLSL_VERSION_450) << "\n\n"
+                                                       << "precision highp int;\n"
+                                                       << "precision highp float;\n"
+                                                       << "\n"
+                                                       << "layout (location = 0) out highp " << dstTypeStr << " o_color;\n"
+                                                       << "layout (input_attachment_index = 0, set = 0, binding = 0) uniform highp " << srcTypeStr << " inputImage1;\n"
+                                                       << "\n"
+                                                       << "void main (void)\n"
+                                                       << "{\n"
+                                                       << "    o_color = " << dstTypeStr << "(subpassLoad(inputImage1));\n"
+                                                       << "}\n";
+
+                                               programCollection.glslSources.add("frag") << glu::FragmentSource(src.str());
+
+                                               break;
+                                       }
+
+                                       case OPERATION_TEXTURE_READ:
+                                       case OPERATION_TEXTURE_WRITE:
+                                       {
+                                               std::ostringstream      src;
+
+                                               const std::string       srcSamplerTypeStr               = getGlslSamplerType(mapVkFormat(m_parameters.formatUncompressed), mapImageViewType(m_parameters.imageType));
+                                               const std::string       dstImageTypeStr                 = getShaderImageType(mapVkFormat(m_parameters.formatUncompressed), m_parameters.imageType);
+                                               const std::string       dstFormatQualifierStr   = getShaderImageFormatQualifier(mapVkFormat(m_parameters.formatUncompressed));
+                                               const UVec3                     uncompressedImageRes    = getCompressedImageResolutionInBlocks(m_parameters.formatCompressed, m_parameters.size);
+
+                                               src << glu::getGLSLVersionDeclaration(glu::GLSL_VERSION_450) << "\n\n"
+                                                       << "layout (binding = 0) uniform " << srcSamplerTypeStr << " u_imageIn;\n"
+                                                       << "layout (binding = 1, " << dstFormatQualifierStr << ") writeonly uniform " << dstImageTypeStr << " u_imageOut;\n"
+                                                       << "\n"
+                                                       << "void main (void)\n"
+                                                       << "{\n"
+                                                       << "    const ivec2 out_pos = ivec2(gl_FragCoord.xy);\n"
+                                                       << "    const ivec2 pixels_resolution = ivec2(" << uncompressedImageRes[0] - 1 << ", " << uncompressedImageRes[1] - 1 << ");\n"
+                                                       << "    const vec2 in_pos = vec2(out_pos) / vec2(pixels_resolution);\n"
+                                                       << "    imageStore(u_imageOut, out_pos, texture(u_imageIn, in_pos));\n"
+                                                       << "}\n";
+
+                                               programCollection.glslSources.add("frag") << glu::FragmentSource(src.str());
+
+                                               break;
+                                       }
+
+                                       default:
+                                               DE_ASSERT(false);
+                               }
+                       }
+
+                       // Verification fragment shader
+                       {
+                               switch(m_parameters.operation)
+                               {
+                                       case OPERATION_ATTACHMENT_WRITE:
+                                       case OPERATION_TEXTURE_WRITE:
+                                       {
+                                               std::ostringstream      src;
+
+                                               const std::string       samplerType                     = getGlslSamplerType(mapVkFormat(m_parameters.formatForVerify), mapImageViewType(m_parameters.imageType));
+                                               const std::string       imageTypeStr            = getShaderImageType(mapVkFormat(m_parameters.formatForVerify), m_parameters.imageType);
+                                               const std::string       formatQualifierStr      = getShaderImageFormatQualifier(mapVkFormat(m_parameters.formatForVerify));
+
+                                               src << glu::getGLSLVersionDeclaration(glu::GLSL_VERSION_450) << "\n\n"
+                                                       << "layout (binding = 0) uniform " << samplerType << " u_imageIn0;\n"
+                                                       << "layout (binding = 1) uniform " << samplerType << " u_imageIn1;\n"
+                                                       << "layout (binding = 2, " << formatQualifierStr << ") writeonly uniform " << imageTypeStr << " u_imageOut0;\n"
+                                                       << "layout (binding = 3, " << formatQualifierStr << ") writeonly uniform " << imageTypeStr << " u_imageOut1;\n"
+                                                       << "\n"
+                                                       << "void main (void)\n"
+                                                       << "{\n"
+                                                       << "    const ivec2 out_pos = ivec2(gl_FragCoord.xy);\n"
+                                                       << "    const ivec2 pixels_resolution = ivec2(" << m_parameters.size[0] - 1 << ", " << m_parameters.size[1] - 1 << ");\n"
+                                                       << "    const vec2 in_pos = vec2(out_pos) / vec2(pixels_resolution);\n"
+                                                       << "    imageStore(u_imageOut0, out_pos, texture(u_imageIn0, in_pos));\n"
+                                                       << "    imageStore(u_imageOut1, out_pos, texture(u_imageIn1, in_pos));\n"
+                                                       << "}\n";
+
+                                               programCollection.glslSources.add("frag_verify") << glu::FragmentSource(src.str());
+
+                                               break;
+                                       }
+
+                                       case OPERATION_ATTACHMENT_READ:
+                                       case OPERATION_TEXTURE_READ:
+                                               // Read operations do not have sampling verification
+                                               break;
+
+                                       default:
+                                               DE_ASSERT(false);
+                               }
+                       }
+
+                       break;
+               }
+
+               default:
+                       DE_ASSERT(false);
+       }
+}
+
+TestInstance* TexelViewCompatibleCase::createInstance (Context& context) const
+{
+       const VkPhysicalDevice                  physicalDevice                  = context.getPhysicalDevice();
+       const InstanceInterface&                vk                                              = context.getInstanceInterface();
+
+       DE_ASSERT(getNumLayers(m_parameters.imageType, m_parameters.size)     == 1u);
+       DE_ASSERT(getLayerSize(m_parameters.imageType, m_parameters.size).z() == 1u);
+       DE_ASSERT(getLayerSize(m_parameters.imageType, m_parameters.size).x() >  0u);
+       DE_ASSERT(getLayerSize(m_parameters.imageType, m_parameters.size).y() >  0u);
+
+       if (std::find(context.getDeviceExtensions().begin(), context.getDeviceExtensions().end(), "VK_KHR_maintenance2") == context.getDeviceExtensions().end())
+               TCU_THROW(NotSupportedError, "Extension VK_KHR_maintenance2 not supported");
+
+       {
+               VkImageFormatProperties imageFormatProperties;
+
+               if (VK_ERROR_FORMAT_NOT_SUPPORTED == vk.getPhysicalDeviceImageFormatProperties(physicalDevice, m_parameters.formatUncompressed,
+                                                                                               mapImageType(m_parameters.imageType), VK_IMAGE_TILING_OPTIMAL,
+                                                                                               m_parameters.uncompressedImageUsage, 0u, &imageFormatProperties))
+                       TCU_THROW(NotSupportedError, "Operation not supported with this image format");
+
+               if (VK_ERROR_FORMAT_NOT_SUPPORTED == vk.getPhysicalDeviceImageFormatProperties(physicalDevice, m_parameters.formatCompressed,
+                                                                                               mapImageType(m_parameters.imageType), VK_IMAGE_TILING_OPTIMAL,
+                                                                                               VK_IMAGE_USAGE_SAMPLED_BIT | VK_IMAGE_USAGE_TRANSFER_SRC_BIT | VK_IMAGE_USAGE_TRANSFER_DST_BIT,
+                                                                                               VK_IMAGE_CREATE_BLOCK_TEXEL_VIEW_COMPATIBLE_BIT_KHR | VK_IMAGE_CREATE_MUTABLE_FORMAT_BIT | VK_IMAGE_CREATE_EXTENDED_USAGE_BIT_KHR,
+                                                                                               &imageFormatProperties))
+                       TCU_THROW(NotSupportedError, "Operation not supported with this image format");
+       }
+
+       {
+               const VkPhysicalDeviceFeatures  physicalDeviceFeatures  = getPhysicalDeviceFeatures (vk, physicalDevice);
+
+               if (deInRange32(m_parameters.formatCompressed, VK_FORMAT_BC1_RGB_UNORM_BLOCK, VK_FORMAT_BC7_SRGB_BLOCK) &&
+                       !physicalDeviceFeatures.textureCompressionBC)
+                       TCU_THROW(NotSupportedError, "textureCompressionBC not supported");
+
+               if (deInRange32(m_parameters.formatCompressed, VK_FORMAT_ETC2_R8G8B8_UNORM_BLOCK, VK_FORMAT_EAC_R11G11_SNORM_BLOCK) &&
+                       !physicalDeviceFeatures.textureCompressionETC2)
+                       TCU_THROW(NotSupportedError, "textureCompressionETC2 not supported");
+
+               if (deInRange32(m_parameters.formatCompressed, VK_FORMAT_ASTC_4x4_UNORM_BLOCK, VK_FORMAT_ASTC_12x12_SRGB_BLOCK) &&
+                       !physicalDeviceFeatures.textureCompressionASTC_LDR)
+                       TCU_THROW(NotSupportedError, "textureCompressionASTC_LDR not supported");
+       }
+
+       switch (m_parameters.shader)
+       {
+               case SHADER_TYPE_COMPUTE:
+               {
+                       switch (m_parameters.operation)
+                       {
+                               case OPERATION_IMAGE_LOAD:
+                               case OPERATION_TEXEL_FETCH:
+                               case OPERATION_TEXTURE:
+                                       return new BasicComputeTestInstance(context, m_parameters);
+                               case OPERATION_IMAGE_STORE:
+                                       return new ImageStoreComputeTestInstance(context, m_parameters);
+                               default:
+                                       TCU_THROW(InternalError, "Impossible");
+                       }
+               }
+
+               case SHADER_TYPE_FRAGMENT:
+               {
+                       switch (m_parameters.operation)
+                       {
+                               case OPERATION_ATTACHMENT_READ:
+                               case OPERATION_ATTACHMENT_WRITE:
+                                       return new GraphicsAttachmentsTestInstance(context, m_parameters);
+
+                               case OPERATION_TEXTURE_READ:
+                               case OPERATION_TEXTURE_WRITE:
+                                       return new GraphicsTextureTestInstance(context, m_parameters);
+
+                               default:
+                                       TCU_THROW(InternalError, "Impossible");
+                       }
+               }
+
+               default:
+                       TCU_THROW(InternalError, "Impossible");
+       }
+}
+
+} // anonymous ns
+
+
+tcu::TestCaseGroup* createImageCompressionTranscodingTests (tcu::TestContext& testCtx)
+{
+       MovePtr<tcu::TestCaseGroup>     texelViewCompatibleTests                                                (new tcu::TestCaseGroup(testCtx, "texel_view_compatible", "Texel view compatible cases"));
+
+       struct FormatsArray
+       {
+               const VkFormat* formats;
+               deUint32                count;
+       };
+
+       const std::string                       pipelineName[SHADER_TYPE_LAST]                                  =
+       {
+               "compute",
+               "graphic",
+       };
+
+       const std::string                       operationName[OPERATION_LAST]                                   =
+       {
+               "image_load",
+               "texel_fetch",
+               "texture",
+               "image_store",
+               "attachment_read",
+               "attachment_write",
+               "texture_read",
+               "texture_write",
+       };
+
+       const VkImageUsageFlags         baseImageUsageFlagSet                                                   = VK_IMAGE_USAGE_TRANSFER_SRC_BIT | VK_IMAGE_USAGE_TRANSFER_DST_BIT;
+       const VkImageUsageFlags         compressedImageUsageFlags[OPERATION_LAST]               =
+       {
+               baseImageUsageFlagSet | static_cast<VkImageUsageFlagBits>(VK_IMAGE_USAGE_STORAGE_BIT),                                                                                  // "image_load"
+               baseImageUsageFlagSet | static_cast<VkImageUsageFlagBits>(VK_IMAGE_USAGE_SAMPLED_BIT | VK_IMAGE_USAGE_STORAGE_BIT),                             // "texel_fetch"
+               baseImageUsageFlagSet | static_cast<VkImageUsageFlagBits>(VK_IMAGE_USAGE_SAMPLED_BIT | VK_IMAGE_USAGE_STORAGE_BIT),                             // "texture"
+               baseImageUsageFlagSet | static_cast<VkImageUsageFlagBits>(VK_IMAGE_USAGE_SAMPLED_BIT | VK_IMAGE_USAGE_STORAGE_BIT),                             // "image_store"
+               baseImageUsageFlagSet | static_cast<VkImageUsageFlagBits>(VK_IMAGE_USAGE_INPUT_ATTACHMENT_BIT | VK_IMAGE_USAGE_SAMPLED_BIT),    // "attachment_read"
+               baseImageUsageFlagSet | static_cast<VkImageUsageFlagBits>(VK_IMAGE_USAGE_COLOR_ATTACHMENT_BIT | VK_IMAGE_USAGE_SAMPLED_BIT),    // "attachment_write"
+               baseImageUsageFlagSet | static_cast<VkImageUsageFlagBits>(VK_IMAGE_USAGE_SAMPLED_BIT),                                                                                  // "texture_read"
+               baseImageUsageFlagSet | static_cast<VkImageUsageFlagBits>(VK_IMAGE_USAGE_SAMPLED_BIT | VK_IMAGE_USAGE_STORAGE_BIT),                             // "texture_write"
+       };
+
+       const VkImageUsageFlags         uncompressedImageUsageFlags[OPERATION_LAST]             =
+       {
+               baseImageUsageFlagSet | static_cast<VkImageUsageFlagBits>(VK_IMAGE_USAGE_STORAGE_BIT),                                                                                  //"image_load"
+               baseImageUsageFlagSet | static_cast<VkImageUsageFlagBits>(VK_IMAGE_USAGE_SAMPLED_BIT | VK_IMAGE_USAGE_STORAGE_BIT),                             //"texel_fetch"
+               baseImageUsageFlagSet | static_cast<VkImageUsageFlagBits>(VK_IMAGE_USAGE_SAMPLED_BIT | VK_IMAGE_USAGE_STORAGE_BIT),                             //"texture"
+               baseImageUsageFlagSet | static_cast<VkImageUsageFlagBits>(VK_IMAGE_USAGE_SAMPLED_BIT | VK_IMAGE_USAGE_STORAGE_BIT),                             //"image_store"
+               baseImageUsageFlagSet | static_cast<VkImageUsageFlagBits>(VK_IMAGE_USAGE_COLOR_ATTACHMENT_BIT | VK_IMAGE_USAGE_SAMPLED_BIT),    //"attachment_read"
+               baseImageUsageFlagSet | static_cast<VkImageUsageFlagBits>(VK_IMAGE_USAGE_INPUT_ATTACHMENT_BIT),                                                                 //"attachment_write"
+               baseImageUsageFlagSet | static_cast<VkImageUsageFlagBits>(VK_IMAGE_USAGE_STORAGE_BIT | VK_IMAGE_USAGE_SAMPLED_BIT),                             //"texture_read"
+               baseImageUsageFlagSet | static_cast<VkImageUsageFlagBits>(VK_IMAGE_USAGE_SAMPLED_BIT),                                                                                  //"texture_write"
+       };
+
+       const VkFormat                          compressedFormats64bit[]                                                =
+       {
+               VK_FORMAT_BC1_RGB_UNORM_BLOCK,
+               VK_FORMAT_BC1_RGB_SRGB_BLOCK,
+               VK_FORMAT_BC1_RGBA_UNORM_BLOCK,
+               VK_FORMAT_BC1_RGBA_SRGB_BLOCK,
+               VK_FORMAT_BC4_UNORM_BLOCK,
+               VK_FORMAT_BC4_SNORM_BLOCK,
+               VK_FORMAT_ETC2_R8G8B8_UNORM_BLOCK,
+               VK_FORMAT_ETC2_R8G8B8_SRGB_BLOCK,
+               VK_FORMAT_ETC2_R8G8B8A1_UNORM_BLOCK,
+               VK_FORMAT_ETC2_R8G8B8A1_SRGB_BLOCK,
+               VK_FORMAT_EAC_R11_UNORM_BLOCK,
+               VK_FORMAT_EAC_R11_SNORM_BLOCK,
+       };
+
+       const VkFormat                          compressedFormats128bit[]                                               =
+       {
+               VK_FORMAT_BC2_UNORM_BLOCK,
+               VK_FORMAT_BC2_SRGB_BLOCK,
+               VK_FORMAT_BC3_UNORM_BLOCK,
+               VK_FORMAT_BC3_SRGB_BLOCK,
+               VK_FORMAT_BC5_UNORM_BLOCK,
+               VK_FORMAT_BC5_SNORM_BLOCK,
+               VK_FORMAT_BC6H_UFLOAT_BLOCK,
+               VK_FORMAT_BC6H_SFLOAT_BLOCK,
+               VK_FORMAT_BC7_UNORM_BLOCK,
+               VK_FORMAT_BC7_SRGB_BLOCK,
+               VK_FORMAT_ETC2_R8G8B8A8_UNORM_BLOCK,
+               VK_FORMAT_ETC2_R8G8B8A8_SRGB_BLOCK,
+               VK_FORMAT_EAC_R11G11_UNORM_BLOCK,
+               VK_FORMAT_EAC_R11G11_SNORM_BLOCK,
+               VK_FORMAT_ASTC_4x4_UNORM_BLOCK,
+               VK_FORMAT_ASTC_4x4_SRGB_BLOCK,
+               VK_FORMAT_ASTC_5x4_UNORM_BLOCK,
+               VK_FORMAT_ASTC_5x4_SRGB_BLOCK,
+               VK_FORMAT_ASTC_5x5_UNORM_BLOCK,
+               VK_FORMAT_ASTC_5x5_SRGB_BLOCK,
+               VK_FORMAT_ASTC_6x5_UNORM_BLOCK,
+               VK_FORMAT_ASTC_6x5_SRGB_BLOCK,
+               VK_FORMAT_ASTC_6x6_UNORM_BLOCK,
+               VK_FORMAT_ASTC_6x6_SRGB_BLOCK,
+               VK_FORMAT_ASTC_8x5_UNORM_BLOCK,
+               VK_FORMAT_ASTC_8x5_SRGB_BLOCK,
+               VK_FORMAT_ASTC_8x6_UNORM_BLOCK,
+               VK_FORMAT_ASTC_8x6_SRGB_BLOCK,
+               VK_FORMAT_ASTC_8x8_UNORM_BLOCK,
+               VK_FORMAT_ASTC_8x8_SRGB_BLOCK,
+               VK_FORMAT_ASTC_10x5_UNORM_BLOCK,
+               VK_FORMAT_ASTC_10x5_SRGB_BLOCK,
+               VK_FORMAT_ASTC_10x6_UNORM_BLOCK,
+               VK_FORMAT_ASTC_10x6_SRGB_BLOCK,
+               VK_FORMAT_ASTC_10x8_UNORM_BLOCK,
+               VK_FORMAT_ASTC_10x8_SRGB_BLOCK,
+               VK_FORMAT_ASTC_10x10_UNORM_BLOCK,
+               VK_FORMAT_ASTC_10x10_SRGB_BLOCK,
+               VK_FORMAT_ASTC_12x10_UNORM_BLOCK,
+               VK_FORMAT_ASTC_12x10_SRGB_BLOCK,
+               VK_FORMAT_ASTC_12x12_UNORM_BLOCK,
+               VK_FORMAT_ASTC_12x12_SRGB_BLOCK,
+       };
+
+       const VkFormat                          uncompressedFormats64bit[]                                              =
+       {
+               VK_FORMAT_R16G16B16A16_UNORM,
+               VK_FORMAT_R16G16B16A16_SNORM,
+               VK_FORMAT_R16G16B16A16_USCALED,
+               VK_FORMAT_R16G16B16A16_SSCALED,
+               VK_FORMAT_R16G16B16A16_UINT,
+               VK_FORMAT_R16G16B16A16_SINT,
+               VK_FORMAT_R16G16B16A16_SFLOAT,
+               VK_FORMAT_R32G32_UINT,
+               VK_FORMAT_R32G32_SINT,
+               VK_FORMAT_R32G32_SFLOAT,
+               //VK_FORMAT_R64_UINT, remove from the test it couln'd not be use
+               //VK_FORMAT_R64_SINT, remove from the test it couln'd not be use
+               //VK_FORMAT_R64_SFLOAT, remove from the test it couln'd not be use
+       };
+
+       const VkFormat                          uncompressedFormats128bit[]                                             =
+       {
+               VK_FORMAT_R32G32B32A32_UINT,
+               VK_FORMAT_R32G32B32A32_SINT,
+               VK_FORMAT_R32G32B32A32_SFLOAT,
+               //VK_FORMAT_R64G64_UINT, remove from the test it couln'd not be use
+               //VK_FORMAT_R64G64_SINT, remove from the test it couln'd not be use
+               //VK_FORMAT_R64G64_SFLOAT, remove from the test it couln'd not be use
+       };
+
+       const FormatsArray                      formatsCompressed[]                                                             =
+       {
+               {
+                       compressedFormats64bit,
+                       DE_LENGTH_OF_ARRAY(compressedFormats64bit)
+               },
+               {
+                       compressedFormats128bit,
+                       DE_LENGTH_OF_ARRAY(compressedFormats128bit)
+               },
+       };
+
+       const FormatsArray                      formatsUncompressed[]                                                   =
+       {
+               {
+                       uncompressedFormats64bit,
+                       DE_LENGTH_OF_ARRAY(uncompressedFormats64bit)
+               },
+               {
+                       uncompressedFormats128bit,
+                       DE_LENGTH_OF_ARRAY(uncompressedFormats128bit)
+               },
+       };
+
+       const bool                                      mipmapTest                                                                              = false; // TODO
+       const deUint32                          unniceMipmapTextureSize[]                                               = { 1, 1, 1, 2, 6, 8, 21, 51, 92, 209, 295, 512, 1134 };
+
+       DE_ASSERT(DE_LENGTH_OF_ARRAY(formatsCompressed) == DE_LENGTH_OF_ARRAY(formatsUncompressed));
+
+       for (int shaderType = SHADER_TYPE_COMPUTE; shaderType < SHADER_TYPE_LAST; ++shaderType)
+       {
+               MovePtr<tcu::TestCaseGroup>     pipelineTypeGroup       (new tcu::TestCaseGroup(testCtx, pipelineName[shaderType].c_str(), ""));
+
+               for (int operationNdx = OPERATION_IMAGE_LOAD; operationNdx < OPERATION_LAST; ++operationNdx)
+               {
+                       if (shaderType != SHADER_TYPE_FRAGMENT && deInRange32(operationNdx, OPERATION_ATTACHMENT_READ, OPERATION_TEXTURE_WRITE))
+                               continue;
+
+                       if (shaderType != SHADER_TYPE_COMPUTE && deInRange32(operationNdx, OPERATION_IMAGE_LOAD, OPERATION_IMAGE_STORE))
+                               continue;
+
+                       MovePtr<tcu::TestCaseGroup>     imageOperationGroup     (new tcu::TestCaseGroup(testCtx, operationName[operationNdx].c_str(), ""));
+
+                       // Iterate through bitness groups (64 bit, 128 bit, etc)
+                       for (deUint32 formatBitnessGroup = 0; formatBitnessGroup < DE_LENGTH_OF_ARRAY(formatsCompressed); ++formatBitnessGroup)
+                       {
+                               for (deUint32 formatCompressedNdx = 0; formatCompressedNdx < formatsCompressed[formatBitnessGroup].count; ++formatCompressedNdx)
+                               {
+                                       const VkFormat                          formatCompressed                        = formatsCompressed[formatBitnessGroup].formats[formatCompressedNdx];
+                                       const std::string                       compressedFormatGroupName       = getFormatShortString(formatCompressed);
+                                       MovePtr<tcu::TestCaseGroup>     compressedFormatGroup           (new tcu::TestCaseGroup(testCtx, compressedFormatGroupName.c_str(), ""));
+
+                                       for (deUint32 formatUncompressedNdx = 0; formatUncompressedNdx < formatsUncompressed[formatBitnessGroup].count; ++formatUncompressedNdx)
+                                       {
+                                               const VkFormat                  formatUncompressed                      = formatsUncompressed[formatBitnessGroup].formats[formatUncompressedNdx];
+                                               const std::string               uncompressedFormatGroupName     = getFormatShortString(formatUncompressed);
+                                               const deUint32                  testTextureWidth                        = mipmapTest
+                                                                                                                                                       ? unniceMipmapTextureSize[getBlockWidth(formatCompressed)]
+                                                                                                                                                       : 64u;
+                                               const deUint32                  testTextureHeight                       = mipmapTest
+                                                                                                                                                       ? unniceMipmapTextureSize[getBlockWidth(formatCompressed)]
+                                                                                                                                                       : 64u;
+                                               const TestParameters    parameters                                      =
+                                               {
+                                                       static_cast<Operation>(operationNdx),
+                                                       static_cast<ShaderType>(shaderType),
+                                                       UVec3(testTextureWidth, testTextureHeight, 1u),
+                                                       IMAGE_TYPE_2D,
+                                                       formatCompressed,
+                                                       formatUncompressed,
+                                                       (operationNdx == OPERATION_IMAGE_STORE) ? 3u : 2u,
+                                                       compressedImageUsageFlags[operationNdx],
+                                                       uncompressedImageUsageFlags[operationNdx],
+                                                       false,
+                                                       VK_FORMAT_R8G8B8A8_UNORM
+                                               };
+
+                                               compressedFormatGroup->addChild(new TexelViewCompatibleCase(testCtx, uncompressedFormatGroupName, "", parameters));
+                                       }
+
+                                       imageOperationGroup->addChild(compressedFormatGroup.release());
+                               }
+                       }
+
+                       pipelineTypeGroup->addChild(imageOperationGroup.release());
+               }
+
+               texelViewCompatibleTests->addChild(pipelineTypeGroup.release());
+       }
+
+       return texelViewCompatibleTests.release();
+}
+
+} // image
+} // vkt
diff --git a/external/vulkancts/modules/vulkan/image/vktImageCompressionTranscodingSupport.hpp b/external/vulkancts/modules/vulkan/image/vktImageCompressionTranscodingSupport.hpp
new file mode 100644 (file)
index 0000000..ef1ff03
--- /dev/null
@@ -0,0 +1,39 @@
+#ifndef _VKTIMAGECOMPRESSIONTRANSCODINGSUPPORT_HPP
+#define _VKTIMAGECOMPRESSIONTRANSCODINGSUPPORT_HPP
+/*------------------------------------------------------------------------
+ * Vulkan Conformance Tests
+ * ------------------------
+ *
+ * Copyright (c) 2017 The Khronos Group Inc.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ *//*!
+ * \file  vktImageCompressionTranscodingSupport.hpp
+ * \brief Compression transcoding support
+ *//*--------------------------------------------------------------------*/
+
+#include "tcuDefs.hpp"
+#include "tcuTestCase.hpp"
+
+namespace vkt
+{
+namespace image
+{
+
+tcu::TestCaseGroup* createImageCompressionTranscodingTests (tcu::TestContext& testCtx);
+
+} // image
+} // vkt
+
+#endif // _VKTIMAGECOMPRESSIONTRANSCODINGSUPPORT_HPP
index d83f6d1..b89a267 100644 (file)
@@ -28,6 +28,7 @@
 #include "vktImageSizeTests.hpp"
 #include "vktTestGroupUtil.hpp"
 #include "vktImageAtomicOperationTests.hpp"
+#include "vktImageCompressionTranscodingSupport.hpp"
 
 namespace vkt
 {
@@ -48,6 +49,7 @@ void createChildren (tcu::TestCaseGroup* imageTests)
        imageTests->addChild(createImageQualifiersTests(testCtx));
        imageTests->addChild(createImageSizeTests(testCtx));
        imageTests->addChild(createImageAtomicOperationTests(testCtx));
+       imageTests->addChild(createImageCompressionTranscodingTests(testCtx));
 }
 
 } // anonymous
index 1d70427..050de92 100644 (file)
@@ -55,6 +55,102 @@ Image::Image (const DeviceInterface&        vk,
        VK_CHECK(vk.bindImageMemory(device, *m_image, m_allocation->getMemory(), m_allocation->getOffset()));
 }
 
+struct CompressedFormatParameters
+{
+       VkFormat        format;
+       deUint32        blockBytes;
+       deUint32        blockWidth;
+       deUint32        blockHeight;
+};
+
+CompressedFormatParameters     compressedFormatParameters[VK_FORMAT_ASTC_12x12_SRGB_BLOCK - VK_FORMAT_BC1_RGB_UNORM_BLOCK + 1] =
+{
+       { VK_FORMAT_BC1_RGB_UNORM_BLOCK,                8,      4,      4 },
+       { VK_FORMAT_BC1_RGB_SRGB_BLOCK,                 8,      4,      4 },
+       { VK_FORMAT_BC1_RGBA_UNORM_BLOCK,               8,      4,      4 },
+       { VK_FORMAT_BC1_RGBA_SRGB_BLOCK,                8,      4,      4 },
+       { VK_FORMAT_BC2_UNORM_BLOCK,                    16,     4,      4 },
+       { VK_FORMAT_BC2_SRGB_BLOCK,                             16,     4,      4 },
+       { VK_FORMAT_BC3_UNORM_BLOCK,                    16,     4,      4 },
+       { VK_FORMAT_BC3_SRGB_BLOCK,                             16,     4,      4 },
+       { VK_FORMAT_BC4_UNORM_BLOCK,                    8,      4,      4 },
+       { VK_FORMAT_BC4_SNORM_BLOCK,                    8,      4,      4 },
+       { VK_FORMAT_BC5_UNORM_BLOCK,                    16,     4,      4 },
+       { VK_FORMAT_BC5_SNORM_BLOCK,                    16,     4,      4 },
+       { VK_FORMAT_BC6H_UFLOAT_BLOCK,                  16,     4,      4 },
+       { VK_FORMAT_BC6H_SFLOAT_BLOCK,                  16,     4,      4 },
+       { VK_FORMAT_BC7_UNORM_BLOCK,                    16,     4,      4 },
+       { VK_FORMAT_BC7_SRGB_BLOCK,                             16,     4,      4 },
+       { VK_FORMAT_ETC2_R8G8B8_UNORM_BLOCK,    8,      4,      4 },
+       { VK_FORMAT_ETC2_R8G8B8_SRGB_BLOCK,             8,      4,      4 },
+       { VK_FORMAT_ETC2_R8G8B8A1_UNORM_BLOCK,  8,      4,      4 },
+       { VK_FORMAT_ETC2_R8G8B8A1_SRGB_BLOCK,   8,      4,      4 },
+       { VK_FORMAT_ETC2_R8G8B8A8_UNORM_BLOCK,  16,     4,      4 },
+       { VK_FORMAT_ETC2_R8G8B8A8_SRGB_BLOCK,   16,     4,      4 },
+       { VK_FORMAT_EAC_R11_UNORM_BLOCK,                8,      4,      4 },
+       { VK_FORMAT_EAC_R11_SNORM_BLOCK,                8,      4,      4 },
+       { VK_FORMAT_EAC_R11G11_UNORM_BLOCK,             16,     4,      4 },
+       { VK_FORMAT_EAC_R11G11_SNORM_BLOCK,             16,     4,      4 },
+       { VK_FORMAT_ASTC_4x4_UNORM_BLOCK,               16,     4,      4 },
+       { VK_FORMAT_ASTC_4x4_SRGB_BLOCK,                16,     4,      4 },
+       { VK_FORMAT_ASTC_5x4_UNORM_BLOCK,               16,     5,      4 },
+       { VK_FORMAT_ASTC_5x4_SRGB_BLOCK,                16,     5,      4 },
+       { VK_FORMAT_ASTC_5x5_UNORM_BLOCK,               16,     5,      5 },
+       { VK_FORMAT_ASTC_5x5_SRGB_BLOCK,                16,     5,      5 },
+       { VK_FORMAT_ASTC_6x5_UNORM_BLOCK,               16,     6,      5 },
+       { VK_FORMAT_ASTC_6x5_SRGB_BLOCK,                16,     6,      5 },
+       { VK_FORMAT_ASTC_6x6_UNORM_BLOCK,               16,     6,      6 },
+       { VK_FORMAT_ASTC_6x6_SRGB_BLOCK,                16,     6,      6 },
+       { VK_FORMAT_ASTC_8x5_UNORM_BLOCK,               16,     8,      5 },
+       { VK_FORMAT_ASTC_8x5_SRGB_BLOCK,                16,     8,      5 },
+       { VK_FORMAT_ASTC_8x6_UNORM_BLOCK,               16,     8,      6 },
+       { VK_FORMAT_ASTC_8x6_SRGB_BLOCK,                16,     8,      6 },
+       { VK_FORMAT_ASTC_8x8_UNORM_BLOCK,               16,     8,      8 },
+       { VK_FORMAT_ASTC_8x8_SRGB_BLOCK,                16,     8,      8 },
+       { VK_FORMAT_ASTC_10x5_UNORM_BLOCK,              16,     10,     5 },
+       { VK_FORMAT_ASTC_10x5_SRGB_BLOCK,               16,     10,     5 },
+       { VK_FORMAT_ASTC_10x6_UNORM_BLOCK,              16,     10,     6 },
+       { VK_FORMAT_ASTC_10x6_SRGB_BLOCK,               16,     10,     6 },
+       { VK_FORMAT_ASTC_10x8_UNORM_BLOCK,              16,     10,     8 },
+       { VK_FORMAT_ASTC_10x8_SRGB_BLOCK,               16,     10,     8 },
+       { VK_FORMAT_ASTC_10x10_UNORM_BLOCK,             16,     10,     10 },
+       { VK_FORMAT_ASTC_10x10_SRGB_BLOCK,              16,     10,     10 },
+       { VK_FORMAT_ASTC_12x10_UNORM_BLOCK,             16,     12,     10 },
+       { VK_FORMAT_ASTC_12x10_SRGB_BLOCK,              16,     12,     10 },
+       { VK_FORMAT_ASTC_12x12_UNORM_BLOCK,             16,     12,     12 },
+       { VK_FORMAT_ASTC_12x12_SRGB_BLOCK,              16,     12,     12 },
+};
+
+deUint32 getBlockSizeInBytes(const VkFormat compressedFormat)
+{
+       deUint32 formatNdx = static_cast<deUint32>(compressedFormat - VK_FORMAT_BC1_RGB_UNORM_BLOCK);
+
+       DE_ASSERT(deInRange32(formatNdx, 0, DE_LENGTH_OF_ARRAY(compressedFormatParameters)));
+       DE_ASSERT(compressedFormatParameters[formatNdx].format == compressedFormat);
+
+       return compressedFormatParameters[formatNdx].blockBytes;
+}
+
+deUint32 getBlockWidth(const VkFormat compressedFormat)
+{
+       deUint32 formatNdx = static_cast<deUint32>(compressedFormat - VK_FORMAT_BC1_RGB_UNORM_BLOCK);
+
+       DE_ASSERT(deInRange32(formatNdx, 0, DE_LENGTH_OF_ARRAY(compressedFormatParameters)));
+       DE_ASSERT(compressedFormatParameters[formatNdx].format == compressedFormat);
+
+       return compressedFormatParameters[formatNdx].blockWidth;
+}
+
+deUint32 getBlockHeight(const VkFormat compressedFormat)
+{
+       deUint32 formatNdx = static_cast<deUint32>(compressedFormat - VK_FORMAT_BC1_RGB_UNORM_BLOCK);
+
+       DE_ASSERT(deInRange32(formatNdx, 0, DE_LENGTH_OF_ARRAY(compressedFormatParameters)));
+       DE_ASSERT(compressedFormatParameters[formatNdx].format == compressedFormat);
+
+       return compressedFormatParameters[formatNdx].blockHeight;
+}
+
 tcu::UVec3 getShaderGridSize (const ImageType imageType, const tcu::UVec3& imageSize)
 {
        switch (imageType)
@@ -190,6 +286,22 @@ deUint32 getLayerDimensions (const ImageType imageType)
        }
 }
 
+std::vector<tcu::UVec3> getMipLevelSizes (tcu::UVec3 baseSize)
+{
+       std::vector<tcu::UVec3> levels;
+       levels.push_back(baseSize);
+
+       while (baseSize.x() != 1 || baseSize.y() != 1 || baseSize.z() != 1)
+       {
+               baseSize.x() = deMax32(baseSize.x() >> 1, 1);
+               baseSize.y() = deMax32(baseSize.y() >> 1, 1);
+               baseSize.z() = deMax32(baseSize.z() >> 1, 1);
+               levels.push_back(baseSize);
+       }
+
+       return levels;
+}
+
 VkBufferCreateInfo makeBufferCreateInfo (const VkDeviceSize                    bufferSize,
                                                                                 const VkBufferUsageFlags       usage)
 {
@@ -267,6 +379,301 @@ Move<VkPipeline> makeComputePipeline (const DeviceInterface&      vk,
        return createComputePipeline(vk, device, DE_NULL , &pipelineCreateInfo);
 }
 
+Move<VkPipeline> makeGraphicsPipeline (const DeviceInterface&  vk,
+                                                                          const VkDevice                       device,
+                                                                          const VkPipelineLayout       pipelineLayout,
+                                                                          const VkRenderPass           renderPass,
+                                                                          const VkShaderModule         vertexModule,
+                                                                          const VkShaderModule         fragmentModule,
+                                                                          const VkExtent2D                     renderSize,
+                                                                          const deUint32                       colorAttachmentCount)
+{
+       const VkFormat  vertexFormatPosition            = VK_FORMAT_R32G32B32A32_SFLOAT;
+       const deUint32  vertexSizePosition                      = tcu::getPixelSize(mapVkFormat(vertexFormatPosition));
+       const deUint32  vertexBufferOffsetPosition      = 0u;
+       const deUint32  vertexDataStride                        = vertexSizePosition;
+
+       const VkVertexInputBindingDescription vertexBinding =
+       {
+               0u,                                                                                                                             // deUint32                                                                             binding;
+               vertexDataStride,                                                                                               // deUint32                                                                             stride;
+               VK_VERTEX_INPUT_RATE_VERTEX                                                                             // VkVertexInputRate                                                    inputRate;
+       };
+
+       const VkVertexInputAttributeDescription vertexInputAttributeDescriptions[] =
+       {
+               // position
+               {
+                       0u,                                                                                                                     // deUint32                                                                             location;
+                       0u,                                                                                                                     // deUint32                                                                             binding;
+                       vertexFormatPosition,                                                                           // VkFormat                                                                             format;
+                       vertexBufferOffsetPosition,                                                                     // deUint32                                                                             offset;
+               },
+       };
+
+       const VkPipelineVertexInputStateCreateInfo vertexInputStateInfo =
+       {
+               VK_STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_STATE_CREATE_INFO,              // VkStructureType                                                              sType;
+               DE_NULL,                                                                                                                // const void*                                                                  pNext;
+               (VkPipelineVertexInputStateCreateFlags)0,                                               // VkPipelineVertexInputStateCreateFlags                flags;
+               1u,                                                                                                                             // uint32_t                                                                             vertexBindingDescriptionCount;
+               &vertexBinding,                                                                                                 // const VkVertexInputBindingDescription*               pVertexBindingDescriptions;
+               DE_LENGTH_OF_ARRAY(vertexInputAttributeDescriptions),                   // uint32_t                                                                             vertexAttributeDescriptionCount;
+               vertexInputAttributeDescriptions,                                                               // const VkVertexInputAttributeDescription*             pVertexAttributeDescriptions;
+       };
+
+       const VkPipelineInputAssemblyStateCreateInfo pipelineInputAssemblyStateInfo =
+       {
+               VK_STRUCTURE_TYPE_PIPELINE_INPUT_ASSEMBLY_STATE_CREATE_INFO,    // VkStructureType                                                              sType;
+               DE_NULL,                                                                                                                // const void*                                                                  pNext;
+               (VkPipelineInputAssemblyStateCreateFlags)0,                                             // VkPipelineInputAssemblyStateCreateFlags              flags;
+               VK_PRIMITIVE_TOPOLOGY_TRIANGLE_LIST,                                                    // VkPrimitiveTopology                                                  topology;
+               VK_FALSE,                                                                                                               // VkBool32                                                                             primitiveRestartEnable;
+       };
+
+       const VkViewport viewport =
+       {
+               0.0f,                                                                                                                   // float                                                                                originX;
+               0.0f,                                                                                                                   // float                                                                                originY;
+               (float)renderSize.width,                                                                                // float                                                                                width;
+               (float)renderSize.height,                                                                               // float                                                                                height;
+               0.0f,                                                                                                                   // float                                                                                minDepth;
+               1.0f                                                                                                                    // float                                                                                maxDepth;
+       };
+
+       const VkRect2D scissor =
+       {
+               { 0u, 0u },                                                                                                             // VkOffset2D                                                                   offset;
+               renderSize                                                                                                              // VkExtent2D                                                                   extent;
+       };
+
+       const VkPipelineViewportStateCreateInfo pipelineViewportStateInfo =
+       {
+               VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_STATE_CREATE_INFO,                  // VkStructureType                                                              sType;
+               DE_NULL,                                                                                                                // const void*                                                                  pNext;
+               (VkPipelineViewportStateCreateFlags)0,                                                  // VkPipelineViewportStateCreateFlags                   flags;
+               1u,                                                                                                                             // uint32_t                                                                             viewportCount;
+               &viewport, // dynamic state                                                                             // const VkViewport*                                                    pViewports;
+               1u,                                                                                                                             // uint32_t                                                                             scissorCount;
+               &scissor, // dynamic state                                                                              // const VkRect2D*                                                              pScissors;
+       };
+
+       const VkPipelineRasterizationStateCreateInfo pipelineRasterizationStateInfo =
+       {
+               VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_CREATE_INFO,             // VkStructureType                                                              sType;
+               DE_NULL,                                                                                                                // const void*                                                                  pNext;
+               (VkPipelineRasterizationStateCreateFlags)0,                                             // VkPipelineRasterizationStateCreateFlags              flags;
+               VK_FALSE,                                                                                                               // VkBool32                                                                             depthClampEnable;
+               VK_FALSE,                                                                                                               // VkBool32                                                                             rasterizerDiscardEnable;
+               VK_POLYGON_MODE_FILL,                                                                                   // VkPolygonMode                                                                polygonMode;
+               VK_CULL_MODE_NONE,                                                                                              // VkCullModeFlags                                                              cullMode;
+               VK_FRONT_FACE_COUNTER_CLOCKWISE,                                                                // VkFrontFace                                                                  frontFace;
+               VK_FALSE,                                                                                                               // VkBool32                                                                             depthBiasEnable;
+               0.0f,                                                                                                                   // float                                                                                depthBiasConstantFactor;
+               0.0f,                                                                                                                   // float                                                                                depthBiasClamp;
+               0.0f,                                                                                                                   // float                                                                                depthBiasSlopeFactor;
+               1.0f,                                                                                                                   // float                                                                                lineWidth;
+       };
+
+       const VkPipelineMultisampleStateCreateInfo pipelineMultisampleStateInfo =
+       {
+               VK_STRUCTURE_TYPE_PIPELINE_MULTISAMPLE_STATE_CREATE_INFO,               // VkStructureType                                                              sType;
+               DE_NULL,                                                                                                                // const void*                                                                  pNext;
+               (VkPipelineMultisampleStateCreateFlags)0,                                               // VkPipelineMultisampleStateCreateFlags                flags;
+               VK_SAMPLE_COUNT_1_BIT,                                                                                  // VkSampleCountFlagBits                                                rasterizationSamples;
+               VK_FALSE,                                                                                                               // VkBool32                                                                             sampleShadingEnable;
+               0.0f,                                                                                                                   // float                                                                                minSampleShading;
+               DE_NULL,                                                                                                                // const VkSampleMask*                                                  pSampleMask;
+               VK_FALSE,                                                                                                               // VkBool32                                                                             alphaToCoverageEnable;
+               VK_FALSE                                                                                                                // VkBool32                                                                             alphaToOneEnable;
+       };
+
+       const VkColorComponentFlags                                     colorComponentsAll                      = VK_COLOR_COMPONENT_R_BIT | VK_COLOR_COMPONENT_G_BIT | VK_COLOR_COMPONENT_B_BIT | VK_COLOR_COMPONENT_A_BIT;
+       const VkPipelineColorBlendAttachmentState       colorBlendAttachmentState       =
+       {
+               VK_FALSE,                                                                                                               // VkBool32                                                                             blendEnable;
+               VK_BLEND_FACTOR_ONE,                                                                                    // VkBlendFactor                                                                srcColorBlendFactor;
+               VK_BLEND_FACTOR_ZERO,                                                                                   // VkBlendFactor                                                                dstColorBlendFactor;
+               VK_BLEND_OP_ADD,                                                                                                // VkBlendOp                                                                    colorBlendOp;
+               VK_BLEND_FACTOR_ONE,                                                                                    // VkBlendFactor                                                                srcAlphaBlendFactor;
+               VK_BLEND_FACTOR_ZERO,                                                                                   // VkBlendFactor                                                                dstAlphaBlendFactor;
+               VK_BLEND_OP_ADD,                                                                                                // VkBlendOp                                                                    alphaBlendOp;
+               colorComponentsAll,                                                                                             // VkColorComponentFlags                                                colorWriteMask;
+       };
+       std::vector<VkPipelineColorBlendAttachmentState> colorAttachments(colorAttachmentCount, colorBlendAttachmentState);
+
+       const VkPipelineColorBlendStateCreateInfo pipelineColorBlendStateInfo =
+       {
+               VK_STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_STATE_CREATE_INFO,               // VkStructureType                                                              sType;
+               DE_NULL,                                                                                                                // const void*                                                                  pNext;
+               (VkPipelineColorBlendStateCreateFlags)0,                                                // VkPipelineColorBlendStateCreateFlags                 flags;
+               VK_FALSE,                                                                                                               // VkBool32                                                                             logicOpEnable;
+               VK_LOGIC_OP_COPY,                                                                                               // VkLogicOp                                                                    logicOp;
+               (deUint32)colorAttachments.size(),                                                              // deUint32                                                                             attachmentCount;
+               colorAttachments.size() != 0 ? &colorAttachments[0] : DE_NULL,  // const VkPipelineColorBlendAttachmentState*   pAttachments;
+               { 0.0f, 0.0f, 0.0f, 0.0f },                                                                             // float                                                                                blendConstants[4];
+       };
+
+       const VkPipelineShaderStageCreateInfo pShaderStages[] =
+       {
+               {
+                       VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_CREATE_INFO,            // VkStructureType                                                              sType;
+                       DE_NULL,                                                                                                        // const void*                                                                  pNext;
+                       (VkPipelineShaderStageCreateFlags)0,                                            // VkPipelineShaderStageCreateFlags                             flags;
+                       VK_SHADER_STAGE_VERTEX_BIT,                                                                     // VkShaderStageFlagBits                                                stage;
+                       vertexModule,                                                                                           // VkShaderModule                                                               module;
+                       "main",                                                                                                         // const char*                                                                  pName;
+                       DE_NULL,                                                                                                        // const VkSpecializationInfo*                                  pSpecializationInfo;
+               },
+               {
+                       VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_CREATE_INFO,            // VkStructureType                                                              sType;
+                       DE_NULL,                                                                                                        // const void*                                                                  pNext;
+                       (VkPipelineShaderStageCreateFlags)0,                                            // VkPipelineShaderStageCreateFlags                             flags;
+                       VK_SHADER_STAGE_FRAGMENT_BIT,                                                           // VkShaderStageFlagBits                                                stage;
+                       fragmentModule,                                                                                         // VkShaderModule                                                               module;
+                       "main",                                                                                                         // const char*                                                                  pName;
+                       DE_NULL,                                                                                                        // const VkSpecializationInfo*                                  pSpecializationInfo;
+               }
+       };
+
+       const deUint32 numActiveShaderStages = DE_LENGTH_OF_ARRAY(pShaderStages);
+
+       const VkGraphicsPipelineCreateInfo graphicsPipelineInfo =
+       {
+               VK_STRUCTURE_TYPE_GRAPHICS_PIPELINE_CREATE_INFO,                                // VkStructureType                                                                      sType;
+               DE_NULL,                                                                                                                // const void*                                                                          pNext;
+               (VkPipelineCreateFlags)0,                                                                               // VkPipelineCreateFlags                                                        flags;
+               numActiveShaderStages,                                                                                  // deUint32                                                                                     stageCount;
+               pShaderStages,                                                                                                  // const VkPipelineShaderStageCreateInfo*                       pStages;
+               &vertexInputStateInfo,                                                                                  // const VkPipelineVertexInputStateCreateInfo*          pVertexInputState;
+               &pipelineInputAssemblyStateInfo,                                                                // const VkPipelineInputAssemblyStateCreateInfo*        pInputAssemblyState;
+               DE_NULL,                                                                                                                // const VkPipelineTessellationStateCreateInfo*         pTessellationState;
+               &pipelineViewportStateInfo,                                                                             // const VkPipelineViewportStateCreateInfo*                     pViewportState;
+               &pipelineRasterizationStateInfo,                                                                // const VkPipelineRasterizationStateCreateInfo*        pRasterizationState;
+               &pipelineMultisampleStateInfo,                                                                  // const VkPipelineMultisampleStateCreateInfo*          pMultisampleState;
+               DE_NULL,                                                                                                                // const VkPipelineDepthStencilStateCreateInfo*         pDepthStencilState;
+               &pipelineColorBlendStateInfo,                                                                   // const VkPipelineColorBlendStateCreateInfo*           pColorBlendState;
+               DE_NULL,                                                                                                                // const VkPipelineDynamicStateCreateInfo*                      pDynamicState;
+               pipelineLayout,                                                                                                 // VkPipelineLayout                                                                     layout;
+               renderPass,                                                                                                             // VkRenderPass                                                                         renderPass;
+               0u,                                                                                                                             // deUint32                                                                                     subpass;
+               DE_NULL,                                                                                                                // VkPipeline                                                                           basePipelineHandle;
+               0,                                                                                                                              // deInt32                                                                                      basePipelineIndex;
+       };
+
+       return createGraphicsPipeline(vk, device, DE_NULL, &graphicsPipelineInfo);
+}
+
+//! A single-subpass render pass.
+Move<VkRenderPass> makeRenderPass (const DeviceInterface&      vk,
+                                                                  const VkDevice                       device,
+                                                                  const VkFormat                       inputFormat,
+                                                                  const VkFormat                       colorFormat)
+{
+       const VkAttachmentReference             inputAttachmentRef                      =
+       {
+               0u,                                                                                                                     // deUint32                     attachment;
+               VK_IMAGE_LAYOUT_GENERAL                                                                         // VkImageLayout        layout;
+       };
+
+       const VkAttachmentReference             colorAttachmentRef                      =
+       {
+               1u,                                                                                                                     // deUint32                     attachment;
+               VK_IMAGE_LAYOUT_COLOR_ATTACHMENT_OPTIMAL                                        // VkImageLayout        layout;
+       };
+
+       const VkSubpassDescription              subpassDescription                      =
+       {
+               (VkSubpassDescriptionFlags)0,                                                           // VkSubpassDescriptionFlags            flags;
+               VK_PIPELINE_BIND_POINT_GRAPHICS,                                                        // VkPipelineBindPoint                          pipelineBindPoint;
+               1u,                                                                                                                     // deUint32                                                     inputAttachmentCount;
+               &inputAttachmentRef,                                                                            // const VkAttachmentReference*         pInputAttachments;
+               1u,                                                                                                                     // deUint32                                                     colorAttachmentCount;
+               &colorAttachmentRef,                                                                            // const VkAttachmentReference*         pColorAttachments;
+               DE_NULL,                                                                                                        // const VkAttachmentReference*         pResolveAttachments;
+               DE_NULL,                                                                                                        // const VkAttachmentReference*         pDepthStencilAttachment;
+               0u,                                                                                                                     // deUint32                                                     preserveAttachmentCount;
+               DE_NULL                                                                                                         // const deUint32*                                      pPreserveAttachments;
+       };
+
+       const VkAttachmentDescription   attachmentsDescriptions[]       =
+       {
+               //inputAttachmentDescription,
+               {
+                       (VkAttachmentDescriptionFlags)0,                                                // VkAttachmentDescriptionFlags         flags;
+                       inputFormat,                                                                                    // VkFormat                                                     format;
+                       VK_SAMPLE_COUNT_1_BIT,                                                                  // VkSampleCountFlagBits                        samples;
+                       VK_ATTACHMENT_LOAD_OP_LOAD,                                                             // VkAttachmentLoadOp                           loadOp;
+                       VK_ATTACHMENT_STORE_OP_DONT_CARE,                                               // VkAttachmentStoreOp                          storeOp;
+                       VK_ATTACHMENT_LOAD_OP_DONT_CARE,                                                // VkAttachmentLoadOp                           stencilLoadOp;
+                       VK_ATTACHMENT_STORE_OP_DONT_CARE,                                               // VkAttachmentStoreOp                          stencilStoreOp;
+                       VK_IMAGE_LAYOUT_GENERAL,                                                                // VkImageLayout                                        initialLayout;
+                       VK_IMAGE_LAYOUT_GENERAL,                                                                // VkImageLayout                                        finalLayout;
+               },
+               //colorAttachmentDescription
+               {
+                       (VkAttachmentDescriptionFlags)0,                                                // VkAttachmentDescriptionFlags         flags;
+                       colorFormat,                                                                                    // VkFormat                                                     format;
+                       VK_SAMPLE_COUNT_1_BIT,                                                                  // VkSampleCountFlagBits                        samples;
+                       VK_ATTACHMENT_LOAD_OP_CLEAR,                                                    // VkAttachmentLoadOp                           loadOp;
+                       VK_ATTACHMENT_STORE_OP_STORE,                                                   // VkAttachmentStoreOp                          storeOp;
+                       VK_ATTACHMENT_LOAD_OP_DONT_CARE,                                                // VkAttachmentLoadOp                           stencilLoadOp;
+                       VK_ATTACHMENT_STORE_OP_DONT_CARE,                                               // VkAttachmentStoreOp                          stencilStoreOp;
+                       VK_IMAGE_LAYOUT_UNDEFINED,                                                              // VkImageLayout                                        initialLayout;
+                       VK_IMAGE_LAYOUT_COLOR_ATTACHMENT_OPTIMAL,                               // VkImageLayout                                        finalLayout;
+               }
+       };
+
+       const VkRenderPassCreateInfo    renderPassInfo                          =
+       {
+               VK_STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO,                                      // VkStructureType                                      sType;
+               DE_NULL,                                                                                                        // const void*                                          pNext;
+               (VkRenderPassCreateFlags)0,                                                                     // VkRenderPassCreateFlags                      flags;
+               DE_LENGTH_OF_ARRAY(attachmentsDescriptions),                            // deUint32                                                     attachmentCount;
+               attachmentsDescriptions,                                                                        // const VkAttachmentDescription*       pAttachments;
+               1u,                                                                                                                     // deUint32                                                     subpassCount;
+               &subpassDescription,                                                                            // const VkSubpassDescription*          pSubpasses;
+               0u,                                                                                                                     // deUint32                                                     dependencyCount;
+               DE_NULL                                                                                                         // const VkSubpassDependency*           pDependencies;
+       };
+
+       return createRenderPass(vk, device, &renderPassInfo);
+}
+
+//! A single-subpass render pass.
+Move<VkRenderPass> makeRenderPass (const DeviceInterface&      vk,
+                                                                  const VkDevice                       device)
+{
+       const VkSubpassDescription              subpassDescription                      =
+       {
+               (VkSubpassDescriptionFlags)0,                                                           // VkSubpassDescriptionFlags            flags;
+               VK_PIPELINE_BIND_POINT_GRAPHICS,                                                        // VkPipelineBindPoint                          pipelineBindPoint;
+               0u,                                                                                                                     // deUint32                                                     inputAttachmentCount;
+               DE_NULL,                                                                                                        // const VkAttachmentReference*         pInputAttachments;
+               0u,                                                                                                                     // deUint32                                                     colorAttachmentCount;
+               DE_NULL,                                                                                                        // const VkAttachmentReference*         pColorAttachments;
+               DE_NULL,                                                                                                        // const VkAttachmentReference*         pResolveAttachments;
+               DE_NULL,                                                                                                        // const VkAttachmentReference*         pDepthStencilAttachment;
+               0u,                                                                                                                     // deUint32                                                     preserveAttachmentCount;
+               DE_NULL                                                                                                         // const deUint32*                                      pPreserveAttachments;
+       };
+
+       const VkRenderPassCreateInfo    renderPassInfo                          =
+       {
+               VK_STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO,                                      // VkStructureType                                      sType;
+               DE_NULL,                                                                                                        // const void*                                          pNext;
+               (VkRenderPassCreateFlags)0,                                                                     // VkRenderPassCreateFlags                      flags;
+               0,                                                                                                                      // deUint32                                                     attachmentCount;
+               DE_NULL,                                                                                                        // const VkAttachmentDescription*       pAttachments;
+               1u,                                                                                                                     // deUint32                                                     subpassCount;
+               &subpassDescription,                                                                            // const VkSubpassDescription*          pSubpasses;
+               0u,                                                                                                                     // deUint32                                                     dependencyCount;
+               DE_NULL                                                                                                         // const VkSubpassDependency*           pDependencies;
+       };
+
+       return createRenderPass(vk, device, &renderPassInfo);
+}
+
 Move<VkBufferView> makeBufferView (const DeviceInterface&      vk,
                                                                   const VkDevice                       vkDevice,
                                                                   const VkBuffer                       buffer,
@@ -287,17 +694,18 @@ Move<VkBufferView> makeBufferView (const DeviceInterface& vk,
        return createBufferView(vk, vkDevice, &bufferViewParams);
 }
 
-Move<VkImageView> makeImageView (const DeviceInterface&                        vk,
-                                                                const VkDevice                                 vkDevice,
-                                                                const VkImage                                  image,
-                                                                const VkImageViewType                  imageViewType,
-                                                                const VkFormat                                 format,
-                                                                const VkImageSubresourceRange  subresourceRange)
+Move<VkImageView> makeImageView (const DeviceInterface&                                        vk,
+                                                                const VkDevice                                                 vkDevice,
+                                                                const VkImage                                                  image,
+                                                                const VkImageViewType                                  imageViewType,
+                                                                const VkFormat                                                 format,
+                                                                const VkImageSubresourceRange                  subresourceRange,
+                                                                const VkImageViewUsageCreateInfoKHR*   ImageUsageCreateInfoKHR)
 {
        const VkImageViewCreateInfo imageViewParams =
        {
                VK_STRUCTURE_TYPE_IMAGE_VIEW_CREATE_INFO,               // VkStructureType                      sType;
-               DE_NULL,                                                                                // const void*                          pNext;
+               ImageUsageCreateInfoKHR,                                                // const void*                          pNext;
                0u,                                                                                             // VkImageViewCreateFlags       flags;
                image,                                                                                  // VkImage                                      image;
                imageViewType,                                                                  // VkImageViewType                      viewType;
@@ -368,6 +776,33 @@ VkImageMemoryBarrier makeImageMemoryBarrier        (const VkAccessFlags                    srcAccessMask
        return barrier;
 }
 
+VkSamplerCreateInfo makeSamplerCreateInfo ()
+{
+       const VkSamplerCreateInfo defaultSamplerParams =
+       {
+               VK_STRUCTURE_TYPE_SAMPLER_CREATE_INFO,          // VkStructureType                      sType;
+               DE_NULL,                                                                        // const void*                          pNext;
+               0u,                                                                                     // VkSamplerCreateFlags         flags;
+               VK_FILTER_NEAREST,                                                      // VkFilter                                     magFilter;
+               VK_FILTER_NEAREST,                                                      // VkFilter                                     minFilter;
+               VK_SAMPLER_MIPMAP_MODE_NEAREST,                         // VkSamplerMipmapMode          mipmapMode;
+               VK_SAMPLER_ADDRESS_MODE_CLAMP_TO_EDGE,          // VkSamplerAddressMode         addressModeU;
+               VK_SAMPLER_ADDRESS_MODE_CLAMP_TO_EDGE,          // VkSamplerAddressMode         addressModeV;
+               VK_SAMPLER_ADDRESS_MODE_CLAMP_TO_EDGE,          // VkSamplerAddressMode         addressModeW;
+               0.0f,                                                                           // float                                        mipLodBias;
+               VK_FALSE,                                                                       // VkBool32                                     anisotropyEnable;
+               1.0f,                                                                           // float                                        maxAnisotropy;
+               false,                                                                          // VkBool32                                     compareEnable;
+               VK_COMPARE_OP_NEVER,                                            // VkCompareOp                          compareOp;
+               0.0f,                                                                           // float                                        minLod;
+               0.25f,                                                                          // float                                        maxLod;
+               VK_BORDER_COLOR_FLOAT_TRANSPARENT_BLACK,        // VkBorderColor                        borderColor;
+               false                                                                           // VkBool32                                     unnormalizedCoordinates;
+       };
+
+       return defaultSamplerParams;
+}
+
 void beginCommandBuffer (const DeviceInterface& vk, const VkCommandBuffer commandBuffer)
 {
        const VkCommandBufferBeginInfo commandBufBeginParams =
@@ -408,6 +843,37 @@ void submitCommandsAndWait (const DeviceInterface& vk,
        VK_CHECK(vk.waitForFences(device, 1u, &fence.get(), DE_TRUE, ~0ull));
 }
 
+tcu::UVec3 getCompressedImageResolutionInBlocks(const vk::VkFormat format, const tcu::UVec3 size)
+{
+       deUint32        blockWidth      = getBlockWidth(format);
+       deUint32        blockHeight     = getBlockHeight(format);
+
+       DE_ASSERT(size[2] == 1);
+       DE_ASSERT(blockWidth != 0 && blockHeight != 0);
+
+       deUint32        widthInBlocks   = (size[0] + blockWidth - 1) / blockWidth;
+       deUint32        heightInBlocks  = (size[1] + blockHeight - 1) / blockHeight;
+
+       return tcu::UVec3(widthInBlocks, heightInBlocks, 1);
+}
+
+VkDeviceSize getCompressedImageSizeInBytes (const vk::VkFormat format, const tcu::UVec3& size)
+{
+       tcu::UVec3              sizeInBlocks    = getCompressedImageResolutionInBlocks(format, size);
+       deUint32                blockBytes              = getBlockSizeInBytes(format);
+       VkDeviceSize    sizeBytes               = sizeInBlocks[0] * sizeInBlocks[1] * sizeInBlocks[2] * blockBytes;
+
+       return sizeBytes;
+}
+
+VkDeviceSize getUncompressedImageSizeInBytes (const vk::VkFormat format, const tcu::UVec3& size)
+{
+       const tcu::IVec3        sizeAsIVec3     = tcu::IVec3((int)size.x(), (int)size.y(), (int)size.z());
+       const VkDeviceSize      sizeBytes       = getImageSizeBytes(sizeAsIVec3, format);
+
+       return sizeBytes;
+}
+
 VkImageType    mapImageType (const ImageType imageType)
 {
        switch (imageType)
@@ -551,6 +1017,93 @@ std::string getShaderImageFormatQualifier (const tcu::TextureFormat& format)
        return std::string() + orderPart + typePart;
 }
 
+std::string getGlslSamplerType (const tcu::TextureFormat& format, VkImageViewType type)
+{
+       const char* typePart    = DE_NULL;
+       const char* formatPart  = tcu::getTextureChannelClass(format.type) == tcu::TEXTURECHANNELCLASS_UNSIGNED_INTEGER ? "u" :
+                                                         tcu::getTextureChannelClass(format.type) == tcu::TEXTURECHANNELCLASS_SIGNED_INTEGER   ? "i" : "";
+
+       switch (type)
+       {
+               case VK_IMAGE_VIEW_TYPE_1D:                     typePart = "sampler1D";                 break;
+               case VK_IMAGE_VIEW_TYPE_1D_ARRAY:       typePart = "sampler1DArray";    break;
+               case VK_IMAGE_VIEW_TYPE_2D:                     typePart = "sampler2D";                 break;
+               case VK_IMAGE_VIEW_TYPE_2D_ARRAY:       typePart = "sampler2DArray";    break;
+               case VK_IMAGE_VIEW_TYPE_3D:                     typePart = "sampler3D";                 break;
+               case VK_IMAGE_VIEW_TYPE_CUBE:           typePart = "samplerCube";               break;
+               case VK_IMAGE_VIEW_TYPE_CUBE_ARRAY:     typePart = "samplerCubeArray";  break;
+
+               default:
+                       DE_FATAL("Unknown image view type");
+                       break;
+       }
+
+       return std::string(formatPart) + typePart;
+}
+
+
+const char* getGlslInputFormatType (const vk::VkFormat format)
+{
+       switch (format)
+       {
+               // 64-bit
+               case VK_FORMAT_R16G16B16A16_UNORM:              return "subpassInput";
+               case VK_FORMAT_R16G16B16A16_SNORM:              return "subpassInput";
+               case VK_FORMAT_R16G16B16A16_USCALED:    return "subpassInput";
+               case VK_FORMAT_R16G16B16A16_SSCALED:    return "subpassInput";
+               case VK_FORMAT_R16G16B16A16_UINT:               return "usubpassInput";
+               case VK_FORMAT_R16G16B16A16_SINT:               return "isubpassInput";
+               case VK_FORMAT_R16G16B16A16_SFLOAT:             return "subpassInput";
+               case VK_FORMAT_R32G32_UINT:                             return "usubpassInput";
+               case VK_FORMAT_R32G32_SINT:                             return "isubpassInput";
+               case VK_FORMAT_R32G32_SFLOAT:                   return "subpassInput";
+               // TODO: case VK_FORMAT_R64_UINT:               return "usubpassInput";
+               // TODO: case VK_FORMAT_R64_SINT:               return "isubpassInput";
+               // TODO: case VK_FORMAT_R64_SFLOAT:             return "subpassInput";
+
+               // 128-bit
+               case VK_FORMAT_R32G32B32A32_UINT:               return "usubpassInput";
+               case VK_FORMAT_R32G32B32A32_SINT:               return "isubpassInput";
+               case VK_FORMAT_R32G32B32A32_SFLOAT:             return "subpassInput";
+               // TODO: case VK_FORMAT_R64G64_UINT:    return "usubpassInput";
+               // TODO: case VK_FORMAT_R64G64_SINT:    return "isubpassInput";
+               // TODO: case VK_FORMAT_R64G64_SFLOAT:  return "subpassInput";
+
+               default:        TCU_THROW(InternalError, "Unknown format");
+       }
+}
+
+const char* getGlslFormatType (const vk::VkFormat format)
+{
+       switch (format)
+       {
+               // 64-bit
+               case VK_FORMAT_R16G16B16A16_UNORM:              return "vec4";
+               case VK_FORMAT_R16G16B16A16_SNORM:              return "vec4";
+               case VK_FORMAT_R16G16B16A16_USCALED:    return "vec4";
+               case VK_FORMAT_R16G16B16A16_SSCALED:    return "vec4";
+               case VK_FORMAT_R16G16B16A16_UINT:               return "uvec4";
+               case VK_FORMAT_R16G16B16A16_SINT:               return "ivec4";
+               case VK_FORMAT_R16G16B16A16_SFLOAT:             return "vec4";
+               case VK_FORMAT_R32G32_UINT:                             return "uvec2";
+               case VK_FORMAT_R32G32_SINT:                             return "ivec2";
+               case VK_FORMAT_R32G32_SFLOAT:                   return "vec2";
+               // TODO: case VK_FORMAT_R64_UINT:               return "uint64";
+               // TODO: case VK_FORMAT_R64_SINT:               return "int64";
+               // TODO: case VK_FORMAT_R64_SFLOAT:             return "double";
+
+               // 128-bit
+               case VK_FORMAT_R32G32B32A32_UINT:               return "uvec4";
+               case VK_FORMAT_R32G32B32A32_SINT:               return "ivec4";
+               case VK_FORMAT_R32G32B32A32_SFLOAT:             return "vec4";
+               // TODO: case VK_FORMAT_R64G64_UINT:    return "ulvec2";
+               // TODO: case VK_FORMAT_R64G64_SINT:    return "ilvec2";
+               // TODO: case VK_FORMAT_R64G64_SFLOAT:  return "dvec2";
+
+               default:        TCU_THROW(InternalError, "Unknown format");
+       }
+}
+
 std::string getFormatShortString (const VkFormat format)
 {
        const std::string fullName = getFormatName(format);
@@ -560,5 +1113,105 @@ std::string getFormatShortString (const VkFormat format)
        return de::toLower(fullName.substr(10));
 }
 
+std::vector<tcu::Vec4> createFullscreenQuad (void)
+{
+       const tcu::Vec4 lowerLeftVertex         (-1.0f, -1.0f,  0.0f,   1.0f);
+       const tcu::Vec4 upperLeftVertex         (-1.0f, 1.0f,   0.0f,   1.0f);
+       const tcu::Vec4 lowerRightVertex        (1.0f,  -1.0f,  0.0f,   1.0f);
+       const tcu::Vec4 upperRightVertex        (1.0f,  1.0f,   0.0f,   1.0f);
+
+       const tcu::Vec4 vertices[6] =
+       {
+               lowerLeftVertex,
+               lowerRightVertex,
+               upperLeftVertex,
+
+               upperLeftVertex,
+               lowerRightVertex,
+               upperRightVertex
+       };
+
+       return std::vector<tcu::Vec4>(vertices, vertices + DE_LENGTH_OF_ARRAY(vertices));
+}
+
+vk::VkBufferImageCopy makeBufferImageCopy (const deUint32 imageWidth, const deUint32 imageHeight)
+{
+       const VkBufferImageCopy copyParams      =
+       {
+               (VkDeviceSize)0u,                                               // bufferOffset
+               imageWidth,                                                             // bufferRowLength
+               imageHeight,                                                    // bufferImageHeight
+               {
+                       VK_IMAGE_ASPECT_COLOR_BIT,                              // aspectMask
+                       0u,                                                                             // mipLevel
+                       0u,                                                                             // baseArrayLayer
+                       1u,                                                                             // layerCount
+               },                                                                              // imageSubresource
+               { 0u, 0u, 0u },                                                 // imageOffset
+               {
+                       imageWidth,
+                       imageHeight,
+                       1u
+               }                                                                               // imageExtent
+       };
+
+       return copyParams;
+}
+
+void beginRenderPass (const DeviceInterface&   vk,
+                                         const VkCommandBuffer         commandBuffer,
+                                         const VkRenderPass            renderPass,
+                                         const VkFramebuffer           framebuffer,
+                                         const VkExtent2D&                     renderSize)
+{
+       const VkClearValue                      clearValues[]           =
+       {
+               makeClearValueColorF32(0.0, 0.0, 0.0, 0.0),
+               makeClearValueColorF32(0.0, 0.0, 0.0, 0.0),
+       };
+       const VkRect2D                          renderArea                      =
+       {
+               {0, 0},                                                                                 // VkOffset2D                           offset;
+               renderSize,                                                                             // VkExtent2D                           extent;
+       };
+       const VkRenderPassBeginInfo     renderPassBeginInfo =
+       {
+               VK_STRUCTURE_TYPE_RENDER_PASS_BEGIN_INFO,               // VkStructureType                      sType;
+               DE_NULL,                                                                                // const void*                          pNext;
+               renderPass,                                                                             // VkRenderPass                         renderPass;
+               framebuffer,                                                                    // VkFramebuffer                        framebuffer;
+               renderArea,                                                                             // VkRect2D                                     renderArea;
+               DE_LENGTH_OF_ARRAY(clearValues),                                // uint32_t                                     clearValueCount;
+               clearValues,                                                                    // const VkClearValue*          pClearValues;
+       };
+
+       vk.cmdBeginRenderPass(commandBuffer, &renderPassBeginInfo, VK_SUBPASS_CONTENTS_INLINE);
+}
+
+Move<VkFramebuffer> makeFramebuffer (const DeviceInterface&    vk,
+                                                                        const VkDevice                 device,
+                                                                        const VkRenderPass             renderPass,
+                                                                        const deUint32                 attachmentCount,
+                                                                        const VkImageView*             pAttachments,
+                                                                        const VkExtent2D&              size,
+                                                                        const deUint32                 layersCount)
+{
+       const vk::VkFramebufferCreateInfo framebufferInfo =
+       {
+               VK_STRUCTURE_TYPE_FRAMEBUFFER_CREATE_INFO,              // VkStructureType                      sType;
+               DE_NULL,                                                                                // const void*                          pNext;
+               (VkFramebufferCreateFlags)0,                                    // VkFramebufferCreateFlags     flags;
+               renderPass,                                                                             // VkRenderPass                         renderPass;
+               attachmentCount,                                                                // uint32_t                                     attachmentCount;
+               pAttachments,                                                                   // const VkImageView*           pAttachments;
+               static_cast<deUint32>(size.width),                              // uint32_t                                     width;
+               static_cast<deUint32>(size.height),                             // uint32_t                                     height;
+               layersCount,                                                                    // uint32_t                                     layers;
+       };
+
+       return createFramebuffer(vk, device, &framebufferInfo);
+}
+
+
 } // image
 } // vkt
index 67fcc5f..5befa7b 100644 (file)
@@ -55,6 +55,9 @@ vk::VkImageViewType           mapImageViewType                                (const ImageType imageType);
 std::string                            getImageTypeName                                (const ImageType imageType);
 std::string                            getShaderImageType                              (const tcu::TextureFormat& format, const ImageType imageType, const bool multisample = false);
 std::string                            getShaderImageFormatQualifier   (const tcu::TextureFormat& format);
+std::string                            getGlslSamplerType                              (const tcu::TextureFormat& format, vk::VkImageViewType type);
+const char*                            getGlslInputFormatType                  (const vk::VkFormat format);
+const char*                            getGlslFormatType                               (const vk::VkFormat format);
 
 class Buffer
 {
@@ -98,77 +101,123 @@ private:
        Image&                                                  operator=               (const Image&);
 };
 
-tcu::UVec3     getShaderGridSize       (const ImageType imageType, const tcu::UVec3& imageSize);       //!< Size used for addresing image in a shader
-tcu::UVec3     getLayerSize            (const ImageType imageType, const tcu::UVec3& imageSize);       //!< Size of a single layer
-deUint32       getNumLayers            (const ImageType imageType, const tcu::UVec3& imageSize);       //!< Number of array layers (for array and cube types)
-deUint32       getNumPixels            (const ImageType imageType, const tcu::UVec3& imageSize);       //!< Number of texels in an image
-deUint32       getDimensions           (const ImageType imageType);                                                            //!< Coordinate dimension used for addressing (e.g. 3 (x,y,z) for 2d array)
-deUint32       getLayerDimensions      (const ImageType imageType);                                                            //!< Coordinate dimension used for addressing a single layer (e.g. 2 (x,y) for 2d array)
-
-vk::Move<vk::VkPipelineLayout> makePipelineLayout                              (const vk::DeviceInterface&                     vk,
-                                                                                                                                const vk::VkDevice                                     device,
-                                                                                                                                const vk::VkDescriptorSetLayout        descriptorSetLayout);
-
-vk::Move<vk::VkPipeline>               makeComputePipeline                             (const vk::DeviceInterface&                     vk,
-                                                                                                                                const vk::VkDevice                                     device,
-                                                                                                                                const vk::VkPipelineLayout                     pipelineLayout,
-                                                                                                                                const vk::VkShaderModule                       shaderModule);
-
-vk::Move<vk::VkBufferView>             makeBufferView                                  (const vk::DeviceInterface&                     vk,
-                                                                                                                                const vk::VkDevice                                     device,
-                                                                                                                                const vk::VkBuffer                                     buffer,
-                                                                                                                                const vk::VkFormat                                     format,
-                                                                                                                                const vk::VkDeviceSize                         offset,
-                                                                                                                                const vk::VkDeviceSize                         size);
-
-vk::Move<vk::VkImageView>              makeImageView                                   (const vk::DeviceInterface&                     vk,
-                                                                                                                                const vk::VkDevice                                     device,
-                                                                                                                                const vk::VkImage                                      image,
-                                                                                                                                const vk::VkImageViewType                      imageViewType,
-                                                                                                                                const vk::VkFormat                                     format,
-                                                                                                                                const vk::VkImageSubresourceRange      subresourceRange);
-
-vk::Move<vk::VkDescriptorSet>  makeDescriptorSet                               (const vk::DeviceInterface&                     vk,
-                                                                                                                                const vk::VkDevice                                     device,
-                                                                                                                                const vk::VkDescriptorPool                     descriptorPool,
-                                                                                                                                const vk::VkDescriptorSetLayout        setLayout);
-
-vk::VkBufferCreateInfo                 makeBufferCreateInfo                    (const vk::VkDeviceSize                         bufferSize,
-                                                                                                                                const vk::VkBufferUsageFlags           usage);
-
-vk::VkBufferImageCopy                  makeBufferImageCopy                             (const vk::VkExtent3D                           extent,
-                                                                                                                                const deUint32                                         arraySize);
-
-vk::VkBufferMemoryBarrier              makeBufferMemoryBarrier                 (const vk::VkAccessFlags                        srcAccessMask,
-                                                                                                                                const vk::VkAccessFlags                        dstAccessMask,
-                                                                                                                                const vk::VkBuffer                                     buffer,
-                                                                                                                                const vk::VkDeviceSize                         offset,
-                                                                                                                                const vk::VkDeviceSize                         bufferSizeBytes);
-
-vk::VkImageMemoryBarrier               makeImageMemoryBarrier                  (const vk::VkAccessFlags                        srcAccessMask,
-                                                                                                                                const vk::VkAccessFlags                        dstAccessMask,
-                                                                                                                                const vk::VkImageLayout                        oldLayout,
-                                                                                                                                const vk::VkImageLayout                        newLayout,
-                                                                                                                                const vk::VkImage                                      image,
-                                                                                                                                const vk::VkImageSubresourceRange      subresourceRange);
-
-void                                                   beginCommandBuffer                              (const vk::DeviceInterface&                     vk,
-                                                                                                                                const vk::VkCommandBuffer                      cmdBuffer);
-
-void                                                   endCommandBuffer                                (const vk::DeviceInterface&                     vk,
-                                                                                                                                const vk::VkCommandBuffer                      cmdBuffer);
-
-void                                                   submitCommandsAndWait                   (const vk::DeviceInterface&                     vk,
-                                                                                                                                const vk::VkDevice                                     device,
-                                                                                                                                const vk::VkQueue                                      queue,
-                                                                                                                                const vk::VkCommandBuffer                      cmdBuffer);
+deUint32                               getBlockSizeInBytes     (const vk::VkFormat compressedFormat);
+deUint32                               getBlockWidth           (const vk::VkFormat compressedFormat);
+deUint32                               getBlockHeight          (const vk::VkFormat compressedFormat);
+tcu::UVec3                             getShaderGridSize       (const ImageType imageType, const tcu::UVec3& imageSize);       //!< Size used for addresing image in a shader
+tcu::UVec3                             getLayerSize            (const ImageType imageType, const tcu::UVec3& imageSize);       //!< Size of a single layer
+deUint32                               getNumLayers            (const ImageType imageType, const tcu::UVec3& imageSize);       //!< Number of array layers (for array and cube types)
+deUint32                               getNumPixels            (const ImageType imageType, const tcu::UVec3& imageSize);       //!< Number of texels in an image
+deUint32                               getDimensions           (const ImageType imageType);                                                            //!< Coordinate dimension used for addressing (e.g. 3 (x,y,z) for 2d array)
+deUint32                               getLayerDimensions      (const ImageType imageType);                                                            //!< Coordinate dimension used for addressing a single layer (e.g. 2 (x,y) for 2d array)
+std::vector<tcu::UVec3>        getMipLevelSizes        (tcu::UVec3 baseSize);
+
+vk::Move<vk::VkPipelineLayout> makePipelineLayout                              (const vk::DeviceInterface&                                     vk,
+                                                                                                                                const vk::VkDevice                                                     device,
+                                                                                                                                const vk::VkDescriptorSetLayout                        descriptorSetLayout);
+
+vk::Move<vk::VkPipeline>               makeComputePipeline                             (const vk::DeviceInterface&                                     vk,
+                                                                                                                                const vk::VkDevice                                                     device,
+                                                                                                                                const vk::VkPipelineLayout                                     pipelineLayout,
+                                                                                                                                const vk::VkShaderModule                                       shaderModule);
+
+vk::Move<vk::VkPipeline>               makeGraphicsPipeline                    (const vk::DeviceInterface&                                     vk,
+                                                                                                                                const vk::VkDevice                                                     device,
+                                                                                                                                const vk::VkPipelineLayout                                     pipelineLayout,
+                                                                                                                                const vk::VkRenderPass                                         renderPass,
+                                                                                                                                const vk::VkShaderModule                                       vertexModule,
+                                                                                                                                const vk::VkShaderModule                                       fragmentModule,
+                                                                                                                                const vk::VkExtent2D                                           renderSize,
+                                                                                                                                const deUint32                                                         colorAttachmentCount);
+
+vk::Move<vk::VkRenderPass>             makeRenderPass                                  (const vk::DeviceInterface&                                     vk,
+                                                                                                                                const vk::VkDevice                                                     device,
+                                                                                                                                const vk::VkFormat                                                     inputFormat,
+                                                                                                                                const vk::VkFormat                                                     colorFormat);
+
+vk::Move<vk::VkRenderPass>             makeRenderPass                                  (const vk::DeviceInterface&                                     vk,
+                                                                                                                                const vk::VkDevice                                                     device);
+
+vk::Move<vk::VkBufferView>             makeBufferView                                  (const vk::DeviceInterface&                                     vk,
+                                                                                                                                const vk::VkDevice                                                     device,
+                                                                                                                                const vk::VkBuffer                                                     buffer,
+                                                                                                                                const vk::VkFormat                                                     format,
+                                                                                                                                const vk::VkDeviceSize                                         offset,
+                                                                                                                                const vk::VkDeviceSize                                         size);
+
+vk::Move<vk::VkImageView>              makeImageView                                   (const vk::DeviceInterface&                                     vk,
+                                                                                                                                const vk::VkDevice                                                     device,
+                                                                                                                                const vk::VkImage                                                      image,
+                                                                                                                                const vk::VkImageViewType                                      imageViewType,
+                                                                                                                                const vk::VkFormat                                                     format,
+                                                                                                                                const vk::VkImageSubresourceRange                      subresourceRange,
+                                                                                                                                const vk::VkImageViewUsageCreateInfoKHR*       ImageUsageCreateInfoKHR = DE_NULL);
+
+vk::Move<vk::VkDescriptorSet>  makeDescriptorSet                               (const vk::DeviceInterface&                                     vk,
+                                                                                                                                const vk::VkDevice                                                     device,
+                                                                                                                                const vk::VkDescriptorPool                                     descriptorPool,
+                                                                                                                                const vk::VkDescriptorSetLayout                        setLayout);
+
+vk::VkBufferCreateInfo                 makeBufferCreateInfo                    (const vk::VkDeviceSize                                         bufferSize,
+                                                                                                                                const vk::VkBufferUsageFlags                           usage);
+
+vk::VkBufferImageCopy                  makeBufferImageCopy                             (const vk::VkExtent3D                                           extent,
+                                                                                                                                const deUint32                                                         arraySize);
+
+vk::VkBufferMemoryBarrier              makeBufferMemoryBarrier                 (const vk::VkAccessFlags                                        srcAccessMask,
+                                                                                                                                const vk::VkAccessFlags                                        dstAccessMask,
+                                                                                                                                const vk::VkBuffer                                                     buffer,
+                                                                                                                                const vk::VkDeviceSize                                         offset,
+                                                                                                                                const vk::VkDeviceSize                                         bufferSizeBytes);
+
+vk::VkImageMemoryBarrier               makeImageMemoryBarrier                  (const vk::VkAccessFlags                                        srcAccessMask,
+                                                                                                                                const vk::VkAccessFlags                                        dstAccessMask,
+                                                                                                                                const vk::VkImageLayout                                        oldLayout,
+                                                                                                                                const vk::VkImageLayout                                        newLayout,
+                                                                                                                                const vk::VkImage                                                      image,
+                                                                                                                                const vk::VkImageSubresourceRange                      subresourceRange);
+
+vk::VkSamplerCreateInfo                        makeSamplerCreateInfo                   ();
+
+void                                                   beginCommandBuffer                              (const vk::DeviceInterface&                                     vk,
+                                                                                                                                const vk::VkCommandBuffer                                      cmdBuffer);
+
+void                                                   endCommandBuffer                                (const vk::DeviceInterface&                                     vk,
+                                                                                                                                const vk::VkCommandBuffer                                      cmdBuffer);
+
+void                                                   submitCommandsAndWait                   (const vk::DeviceInterface&                                     vk,
+                                                                                                                                const vk::VkDevice                                                     device,
+                                                                                                                                const vk::VkQueue                                                      queue,
+                                                                                                                                const vk::VkCommandBuffer                                      cmdBuffer);
 
 inline vk::VkDeviceSize getImageSizeBytes (const tcu::IVec3& imageSize, const vk::VkFormat format)
 {
        return tcu::getPixelSize(vk::mapVkFormat(format)) * imageSize.x() * imageSize.y() * imageSize.z();
 }
 
-std::string    getFormatShortString    (const vk::VkFormat format);
+tcu::UVec3                     getCompressedImageResolutionInBlocks    (const vk::VkFormat format, const tcu::UVec3 size);
+vk::VkDeviceSize       getCompressedImageSizeInBytes                   (const vk::VkFormat format, const tcu::UVec3& size);
+vk::VkDeviceSize       getUncompressedImageSizeInBytes                 (const vk::VkFormat format, const tcu::UVec3& size);
+
+std::string    getFormatShortString (const vk::VkFormat format);
+
+std::vector<tcu::Vec4> createFullscreenQuad (void);
+
+vk::VkBufferImageCopy makeBufferImageCopy (const deUint32 imageWidth, const deUint32 imageHeight);
+
+void beginRenderPass (const vk::DeviceInterface&       vk,
+                                         const vk::VkCommandBuffer             commandBuffer,
+                                         const vk::VkRenderPass                renderPass,
+                                         const vk::VkFramebuffer               framebuffer,
+                                         const vk::VkExtent2D&                 renderSize);
+
+vk::Move<vk::VkFramebuffer> makeFramebuffer (const vk::DeviceInterface&        vk,
+                                                                                        const vk::VkDevice                     device,
+                                                                                        const vk::VkRenderPass         renderPass,
+                                                                                        const deUint32                         attachmentCount,
+                                                                                        const vk::VkImageView*         pAttachments,
+                                                                                        const vk::VkExtent2D&          size,
+                                                                                        const deUint32                         layersCount);
 
 } // image
 } // vkt
index 94806d5..828d634 100644 (file)
@@ -173223,6 +173223,1974 @@ dEQP-VK.image.atomic_operations.exchange.cube_array.r32ui_end_result
 dEQP-VK.image.atomic_operations.exchange.cube_array.r32ui_intermediate_values
 dEQP-VK.image.atomic_operations.exchange.cube_array.r32i_end_result
 dEQP-VK.image.atomic_operations.exchange.cube_array.r32i_intermediate_values
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc1_rgb_unorm_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc1_rgb_unorm_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc1_rgb_unorm_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc1_rgb_unorm_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc1_rgb_unorm_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc1_rgb_unorm_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc1_rgb_unorm_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc1_rgb_unorm_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc1_rgb_unorm_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc1_rgb_unorm_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc1_rgb_srgb_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc1_rgb_srgb_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc1_rgb_srgb_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc1_rgb_srgb_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc1_rgb_srgb_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc1_rgb_srgb_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc1_rgb_srgb_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc1_rgb_srgb_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc1_rgb_srgb_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc1_rgb_srgb_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc1_rgba_unorm_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc1_rgba_unorm_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc1_rgba_unorm_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc1_rgba_unorm_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc1_rgba_unorm_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc1_rgba_unorm_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc1_rgba_unorm_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc1_rgba_unorm_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc1_rgba_unorm_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc1_rgba_unorm_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc1_rgba_srgb_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc1_rgba_srgb_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc1_rgba_srgb_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc1_rgba_srgb_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc1_rgba_srgb_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc1_rgba_srgb_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc1_rgba_srgb_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc1_rgba_srgb_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc1_rgba_srgb_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc1_rgba_srgb_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc4_unorm_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc4_unorm_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc4_unorm_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc4_unorm_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc4_unorm_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc4_unorm_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc4_unorm_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc4_unorm_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc4_unorm_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc4_unorm_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc4_snorm_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc4_snorm_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc4_snorm_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc4_snorm_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc4_snorm_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc4_snorm_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc4_snorm_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc4_snorm_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc4_snorm_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc4_snorm_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_load.etc2_r8g8b8_unorm_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.compute.image_load.etc2_r8g8b8_unorm_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.compute.image_load.etc2_r8g8b8_unorm_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.compute.image_load.etc2_r8g8b8_unorm_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.compute.image_load.etc2_r8g8b8_unorm_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.compute.image_load.etc2_r8g8b8_unorm_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.compute.image_load.etc2_r8g8b8_unorm_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_load.etc2_r8g8b8_unorm_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_load.etc2_r8g8b8_unorm_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_load.etc2_r8g8b8_unorm_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_load.etc2_r8g8b8_srgb_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.compute.image_load.etc2_r8g8b8_srgb_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.compute.image_load.etc2_r8g8b8_srgb_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.compute.image_load.etc2_r8g8b8_srgb_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.compute.image_load.etc2_r8g8b8_srgb_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.compute.image_load.etc2_r8g8b8_srgb_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.compute.image_load.etc2_r8g8b8_srgb_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_load.etc2_r8g8b8_srgb_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_load.etc2_r8g8b8_srgb_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_load.etc2_r8g8b8_srgb_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_load.etc2_r8g8b8a1_unorm_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.compute.image_load.etc2_r8g8b8a1_unorm_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.compute.image_load.etc2_r8g8b8a1_unorm_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.compute.image_load.etc2_r8g8b8a1_unorm_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.compute.image_load.etc2_r8g8b8a1_unorm_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.compute.image_load.etc2_r8g8b8a1_unorm_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.compute.image_load.etc2_r8g8b8a1_unorm_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_load.etc2_r8g8b8a1_unorm_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_load.etc2_r8g8b8a1_unorm_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_load.etc2_r8g8b8a1_unorm_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_load.etc2_r8g8b8a1_srgb_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.compute.image_load.etc2_r8g8b8a1_srgb_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.compute.image_load.etc2_r8g8b8a1_srgb_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.compute.image_load.etc2_r8g8b8a1_srgb_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.compute.image_load.etc2_r8g8b8a1_srgb_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.compute.image_load.etc2_r8g8b8a1_srgb_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.compute.image_load.etc2_r8g8b8a1_srgb_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_load.etc2_r8g8b8a1_srgb_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_load.etc2_r8g8b8a1_srgb_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_load.etc2_r8g8b8a1_srgb_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_load.eac_r11_unorm_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.compute.image_load.eac_r11_unorm_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.compute.image_load.eac_r11_unorm_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.compute.image_load.eac_r11_unorm_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.compute.image_load.eac_r11_unorm_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.compute.image_load.eac_r11_unorm_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.compute.image_load.eac_r11_unorm_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_load.eac_r11_unorm_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_load.eac_r11_unorm_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_load.eac_r11_unorm_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_load.eac_r11_snorm_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.compute.image_load.eac_r11_snorm_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.compute.image_load.eac_r11_snorm_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.compute.image_load.eac_r11_snorm_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.compute.image_load.eac_r11_snorm_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.compute.image_load.eac_r11_snorm_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.compute.image_load.eac_r11_snorm_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_load.eac_r11_snorm_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_load.eac_r11_snorm_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_load.eac_r11_snorm_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc2_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc2_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc2_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc2_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc2_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc2_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc3_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc3_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc3_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc3_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc3_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc3_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc5_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc5_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc5_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc5_snorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc5_snorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc5_snorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc6h_ufloat_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc6h_ufloat_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc6h_ufloat_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc6h_sfloat_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc6h_sfloat_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc6h_sfloat_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc7_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc7_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc7_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc7_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc7_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_load.bc7_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_load.etc2_r8g8b8a8_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_load.etc2_r8g8b8a8_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_load.etc2_r8g8b8a8_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_load.etc2_r8g8b8a8_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_load.etc2_r8g8b8a8_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_load.etc2_r8g8b8a8_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_load.eac_r11g11_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_load.eac_r11g11_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_load.eac_r11g11_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_load.eac_r11g11_snorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_load.eac_r11g11_snorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_load.eac_r11g11_snorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_4x4_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_4x4_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_4x4_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_4x4_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_4x4_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_4x4_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_5x4_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_5x4_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_5x4_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_5x4_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_5x4_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_5x4_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_5x5_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_5x5_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_5x5_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_5x5_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_5x5_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_5x5_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_6x5_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_6x5_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_6x5_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_6x5_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_6x5_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_6x5_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_6x6_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_6x6_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_6x6_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_6x6_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_6x6_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_6x6_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_8x5_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_8x5_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_8x5_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_8x5_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_8x5_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_8x5_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_8x6_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_8x6_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_8x6_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_8x6_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_8x6_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_8x6_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_8x8_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_8x8_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_8x8_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_8x8_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_8x8_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_8x8_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_10x5_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_10x5_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_10x5_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_10x5_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_10x5_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_10x5_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_10x6_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_10x6_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_10x6_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_10x6_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_10x6_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_10x6_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_10x8_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_10x8_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_10x8_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_10x8_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_10x8_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_10x8_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_10x10_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_10x10_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_10x10_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_10x10_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_10x10_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_10x10_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_12x10_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_12x10_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_12x10_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_12x10_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_12x10_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_12x10_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_12x12_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_12x12_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_12x12_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_12x12_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_12x12_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_load.astc_12x12_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc1_rgb_unorm_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc1_rgb_unorm_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc1_rgb_unorm_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc1_rgb_unorm_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc1_rgb_unorm_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc1_rgb_unorm_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc1_rgb_unorm_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc1_rgb_unorm_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc1_rgb_unorm_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc1_rgb_unorm_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc1_rgb_srgb_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc1_rgb_srgb_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc1_rgb_srgb_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc1_rgb_srgb_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc1_rgb_srgb_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc1_rgb_srgb_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc1_rgb_srgb_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc1_rgb_srgb_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc1_rgb_srgb_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc1_rgb_srgb_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc1_rgba_unorm_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc1_rgba_unorm_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc1_rgba_unorm_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc1_rgba_unorm_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc1_rgba_unorm_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc1_rgba_unorm_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc1_rgba_unorm_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc1_rgba_unorm_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc1_rgba_unorm_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc1_rgba_unorm_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc1_rgba_srgb_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc1_rgba_srgb_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc1_rgba_srgb_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc1_rgba_srgb_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc1_rgba_srgb_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc1_rgba_srgb_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc1_rgba_srgb_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc1_rgba_srgb_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc1_rgba_srgb_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc1_rgba_srgb_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc4_unorm_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc4_unorm_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc4_unorm_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc4_unorm_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc4_unorm_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc4_unorm_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc4_unorm_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc4_unorm_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc4_unorm_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc4_unorm_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc4_snorm_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc4_snorm_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc4_snorm_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc4_snorm_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc4_snorm_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc4_snorm_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc4_snorm_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc4_snorm_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc4_snorm_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc4_snorm_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.etc2_r8g8b8_unorm_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.etc2_r8g8b8_unorm_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.etc2_r8g8b8_unorm_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.etc2_r8g8b8_unorm_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.etc2_r8g8b8_unorm_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.etc2_r8g8b8_unorm_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.etc2_r8g8b8_unorm_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.etc2_r8g8b8_unorm_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.etc2_r8g8b8_unorm_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.etc2_r8g8b8_unorm_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.etc2_r8g8b8_srgb_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.etc2_r8g8b8_srgb_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.etc2_r8g8b8_srgb_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.etc2_r8g8b8_srgb_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.etc2_r8g8b8_srgb_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.etc2_r8g8b8_srgb_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.etc2_r8g8b8_srgb_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.etc2_r8g8b8_srgb_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.etc2_r8g8b8_srgb_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.etc2_r8g8b8_srgb_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.etc2_r8g8b8a1_unorm_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.etc2_r8g8b8a1_unorm_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.etc2_r8g8b8a1_unorm_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.etc2_r8g8b8a1_unorm_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.etc2_r8g8b8a1_unorm_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.etc2_r8g8b8a1_unorm_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.etc2_r8g8b8a1_unorm_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.etc2_r8g8b8a1_unorm_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.etc2_r8g8b8a1_unorm_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.etc2_r8g8b8a1_unorm_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.etc2_r8g8b8a1_srgb_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.etc2_r8g8b8a1_srgb_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.etc2_r8g8b8a1_srgb_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.etc2_r8g8b8a1_srgb_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.etc2_r8g8b8a1_srgb_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.etc2_r8g8b8a1_srgb_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.etc2_r8g8b8a1_srgb_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.etc2_r8g8b8a1_srgb_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.etc2_r8g8b8a1_srgb_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.etc2_r8g8b8a1_srgb_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.eac_r11_unorm_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.eac_r11_unorm_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.eac_r11_unorm_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.eac_r11_unorm_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.eac_r11_unorm_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.eac_r11_unorm_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.eac_r11_unorm_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.eac_r11_unorm_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.eac_r11_unorm_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.eac_r11_unorm_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.eac_r11_snorm_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.eac_r11_snorm_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.eac_r11_snorm_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.eac_r11_snorm_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.eac_r11_snorm_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.eac_r11_snorm_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.eac_r11_snorm_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.eac_r11_snorm_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.eac_r11_snorm_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.eac_r11_snorm_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc2_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc2_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc2_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc2_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc2_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc2_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc3_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc3_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc3_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc3_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc3_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc3_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc5_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc5_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc5_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc5_snorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc5_snorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc5_snorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc6h_ufloat_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc6h_ufloat_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc6h_ufloat_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc6h_sfloat_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc6h_sfloat_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc6h_sfloat_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc7_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc7_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc7_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc7_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc7_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.bc7_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.etc2_r8g8b8a8_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.etc2_r8g8b8a8_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.etc2_r8g8b8a8_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.etc2_r8g8b8a8_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.etc2_r8g8b8a8_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.etc2_r8g8b8a8_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.eac_r11g11_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.eac_r11g11_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.eac_r11g11_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.eac_r11g11_snorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.eac_r11g11_snorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.eac_r11g11_snorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_4x4_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_4x4_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_4x4_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_4x4_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_4x4_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_4x4_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_5x4_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_5x4_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_5x4_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_5x4_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_5x4_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_5x4_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_5x5_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_5x5_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_5x5_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_5x5_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_5x5_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_5x5_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_6x5_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_6x5_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_6x5_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_6x5_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_6x5_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_6x5_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_6x6_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_6x6_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_6x6_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_6x6_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_6x6_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_6x6_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_8x5_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_8x5_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_8x5_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_8x5_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_8x5_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_8x5_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_8x6_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_8x6_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_8x6_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_8x6_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_8x6_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_8x6_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_8x8_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_8x8_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_8x8_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_8x8_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_8x8_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_8x8_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_10x5_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_10x5_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_10x5_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_10x5_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_10x5_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_10x5_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_10x6_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_10x6_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_10x6_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_10x6_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_10x6_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_10x6_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_10x8_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_10x8_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_10x8_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_10x8_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_10x8_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_10x8_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_10x10_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_10x10_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_10x10_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_10x10_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_10x10_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_10x10_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_12x10_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_12x10_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_12x10_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_12x10_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_12x10_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_12x10_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_12x12_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_12x12_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_12x12_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_12x12_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_12x12_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texel_fetch.astc_12x12_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texture.bc1_rgb_unorm_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.compute.texture.bc1_rgb_unorm_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.compute.texture.bc1_rgb_unorm_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.compute.texture.bc1_rgb_unorm_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.compute.texture.bc1_rgb_unorm_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.compute.texture.bc1_rgb_unorm_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.compute.texture.bc1_rgb_unorm_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texture.bc1_rgb_unorm_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.compute.texture.bc1_rgb_unorm_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.compute.texture.bc1_rgb_unorm_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texture.bc1_rgb_srgb_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.compute.texture.bc1_rgb_srgb_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.compute.texture.bc1_rgb_srgb_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.compute.texture.bc1_rgb_srgb_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.compute.texture.bc1_rgb_srgb_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.compute.texture.bc1_rgb_srgb_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.compute.texture.bc1_rgb_srgb_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texture.bc1_rgb_srgb_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.compute.texture.bc1_rgb_srgb_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.compute.texture.bc1_rgb_srgb_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texture.bc1_rgba_unorm_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.compute.texture.bc1_rgba_unorm_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.compute.texture.bc1_rgba_unorm_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.compute.texture.bc1_rgba_unorm_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.compute.texture.bc1_rgba_unorm_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.compute.texture.bc1_rgba_unorm_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.compute.texture.bc1_rgba_unorm_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texture.bc1_rgba_unorm_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.compute.texture.bc1_rgba_unorm_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.compute.texture.bc1_rgba_unorm_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texture.bc1_rgba_srgb_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.compute.texture.bc1_rgba_srgb_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.compute.texture.bc1_rgba_srgb_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.compute.texture.bc1_rgba_srgb_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.compute.texture.bc1_rgba_srgb_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.compute.texture.bc1_rgba_srgb_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.compute.texture.bc1_rgba_srgb_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texture.bc1_rgba_srgb_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.compute.texture.bc1_rgba_srgb_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.compute.texture.bc1_rgba_srgb_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texture.bc4_unorm_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.compute.texture.bc4_unorm_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.compute.texture.bc4_unorm_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.compute.texture.bc4_unorm_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.compute.texture.bc4_unorm_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.compute.texture.bc4_unorm_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.compute.texture.bc4_unorm_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texture.bc4_unorm_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.compute.texture.bc4_unorm_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.compute.texture.bc4_unorm_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texture.bc4_snorm_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.compute.texture.bc4_snorm_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.compute.texture.bc4_snorm_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.compute.texture.bc4_snorm_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.compute.texture.bc4_snorm_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.compute.texture.bc4_snorm_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.compute.texture.bc4_snorm_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texture.bc4_snorm_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.compute.texture.bc4_snorm_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.compute.texture.bc4_snorm_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texture.etc2_r8g8b8_unorm_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.compute.texture.etc2_r8g8b8_unorm_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.compute.texture.etc2_r8g8b8_unorm_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.compute.texture.etc2_r8g8b8_unorm_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.compute.texture.etc2_r8g8b8_unorm_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.compute.texture.etc2_r8g8b8_unorm_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.compute.texture.etc2_r8g8b8_unorm_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texture.etc2_r8g8b8_unorm_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.compute.texture.etc2_r8g8b8_unorm_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.compute.texture.etc2_r8g8b8_unorm_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texture.etc2_r8g8b8_srgb_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.compute.texture.etc2_r8g8b8_srgb_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.compute.texture.etc2_r8g8b8_srgb_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.compute.texture.etc2_r8g8b8_srgb_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.compute.texture.etc2_r8g8b8_srgb_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.compute.texture.etc2_r8g8b8_srgb_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.compute.texture.etc2_r8g8b8_srgb_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texture.etc2_r8g8b8_srgb_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.compute.texture.etc2_r8g8b8_srgb_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.compute.texture.etc2_r8g8b8_srgb_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texture.etc2_r8g8b8a1_unorm_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.compute.texture.etc2_r8g8b8a1_unorm_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.compute.texture.etc2_r8g8b8a1_unorm_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.compute.texture.etc2_r8g8b8a1_unorm_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.compute.texture.etc2_r8g8b8a1_unorm_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.compute.texture.etc2_r8g8b8a1_unorm_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.compute.texture.etc2_r8g8b8a1_unorm_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texture.etc2_r8g8b8a1_unorm_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.compute.texture.etc2_r8g8b8a1_unorm_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.compute.texture.etc2_r8g8b8a1_unorm_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texture.etc2_r8g8b8a1_srgb_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.compute.texture.etc2_r8g8b8a1_srgb_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.compute.texture.etc2_r8g8b8a1_srgb_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.compute.texture.etc2_r8g8b8a1_srgb_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.compute.texture.etc2_r8g8b8a1_srgb_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.compute.texture.etc2_r8g8b8a1_srgb_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.compute.texture.etc2_r8g8b8a1_srgb_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texture.etc2_r8g8b8a1_srgb_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.compute.texture.etc2_r8g8b8a1_srgb_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.compute.texture.etc2_r8g8b8a1_srgb_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texture.eac_r11_unorm_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.compute.texture.eac_r11_unorm_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.compute.texture.eac_r11_unorm_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.compute.texture.eac_r11_unorm_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.compute.texture.eac_r11_unorm_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.compute.texture.eac_r11_unorm_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.compute.texture.eac_r11_unorm_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texture.eac_r11_unorm_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.compute.texture.eac_r11_unorm_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.compute.texture.eac_r11_unorm_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texture.eac_r11_snorm_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.compute.texture.eac_r11_snorm_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.compute.texture.eac_r11_snorm_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.compute.texture.eac_r11_snorm_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.compute.texture.eac_r11_snorm_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.compute.texture.eac_r11_snorm_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.compute.texture.eac_r11_snorm_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texture.eac_r11_snorm_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.compute.texture.eac_r11_snorm_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.compute.texture.eac_r11_snorm_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texture.bc2_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texture.bc2_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texture.bc2_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texture.bc2_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texture.bc2_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texture.bc2_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texture.bc3_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texture.bc3_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texture.bc3_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texture.bc3_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texture.bc3_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texture.bc3_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texture.bc5_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texture.bc5_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texture.bc5_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texture.bc5_snorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texture.bc5_snorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texture.bc5_snorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texture.bc6h_ufloat_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texture.bc6h_ufloat_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texture.bc6h_ufloat_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texture.bc6h_sfloat_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texture.bc6h_sfloat_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texture.bc6h_sfloat_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texture.bc7_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texture.bc7_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texture.bc7_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texture.bc7_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texture.bc7_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texture.bc7_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texture.etc2_r8g8b8a8_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texture.etc2_r8g8b8a8_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texture.etc2_r8g8b8a8_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texture.etc2_r8g8b8a8_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texture.etc2_r8g8b8a8_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texture.etc2_r8g8b8a8_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texture.eac_r11g11_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texture.eac_r11g11_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texture.eac_r11g11_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texture.eac_r11g11_snorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texture.eac_r11g11_snorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texture.eac_r11g11_snorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_4x4_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_4x4_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_4x4_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_4x4_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_4x4_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_4x4_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_5x4_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_5x4_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_5x4_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_5x4_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_5x4_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_5x4_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_5x5_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_5x5_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_5x5_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_5x5_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_5x5_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_5x5_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_6x5_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_6x5_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_6x5_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_6x5_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_6x5_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_6x5_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_6x6_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_6x6_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_6x6_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_6x6_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_6x6_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_6x6_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_8x5_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_8x5_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_8x5_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_8x5_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_8x5_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_8x5_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_8x6_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_8x6_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_8x6_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_8x6_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_8x6_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_8x6_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_8x8_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_8x8_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_8x8_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_8x8_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_8x8_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_8x8_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_10x5_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_10x5_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_10x5_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_10x5_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_10x5_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_10x5_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_10x6_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_10x6_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_10x6_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_10x6_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_10x6_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_10x6_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_10x8_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_10x8_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_10x8_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_10x8_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_10x8_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_10x8_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_10x10_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_10x10_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_10x10_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_10x10_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_10x10_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_10x10_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_12x10_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_12x10_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_12x10_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_12x10_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_12x10_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_12x10_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_12x12_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_12x12_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_12x12_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_12x12_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_12x12_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.texture.astc_12x12_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc1_rgb_unorm_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc1_rgb_unorm_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc1_rgb_unorm_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc1_rgb_unorm_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc1_rgb_unorm_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc1_rgb_unorm_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc1_rgb_unorm_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc1_rgb_unorm_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc1_rgb_unorm_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc1_rgb_unorm_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc1_rgb_srgb_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc1_rgb_srgb_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc1_rgb_srgb_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc1_rgb_srgb_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc1_rgb_srgb_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc1_rgb_srgb_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc1_rgb_srgb_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc1_rgb_srgb_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc1_rgb_srgb_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc1_rgb_srgb_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc1_rgba_unorm_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc1_rgba_unorm_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc1_rgba_unorm_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc1_rgba_unorm_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc1_rgba_unorm_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc1_rgba_unorm_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc1_rgba_unorm_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc1_rgba_unorm_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc1_rgba_unorm_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc1_rgba_unorm_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc1_rgba_srgb_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc1_rgba_srgb_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc1_rgba_srgb_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc1_rgba_srgb_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc1_rgba_srgb_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc1_rgba_srgb_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc1_rgba_srgb_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc1_rgba_srgb_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc1_rgba_srgb_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc1_rgba_srgb_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc4_unorm_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc4_unorm_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc4_unorm_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc4_unorm_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc4_unorm_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc4_unorm_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc4_unorm_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc4_unorm_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc4_unorm_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc4_unorm_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc4_snorm_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc4_snorm_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc4_snorm_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc4_snorm_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc4_snorm_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc4_snorm_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc4_snorm_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc4_snorm_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc4_snorm_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc4_snorm_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_store.etc2_r8g8b8_unorm_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.compute.image_store.etc2_r8g8b8_unorm_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.compute.image_store.etc2_r8g8b8_unorm_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.compute.image_store.etc2_r8g8b8_unorm_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.compute.image_store.etc2_r8g8b8_unorm_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.compute.image_store.etc2_r8g8b8_unorm_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.compute.image_store.etc2_r8g8b8_unorm_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_store.etc2_r8g8b8_unorm_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_store.etc2_r8g8b8_unorm_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_store.etc2_r8g8b8_unorm_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_store.etc2_r8g8b8_srgb_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.compute.image_store.etc2_r8g8b8_srgb_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.compute.image_store.etc2_r8g8b8_srgb_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.compute.image_store.etc2_r8g8b8_srgb_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.compute.image_store.etc2_r8g8b8_srgb_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.compute.image_store.etc2_r8g8b8_srgb_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.compute.image_store.etc2_r8g8b8_srgb_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_store.etc2_r8g8b8_srgb_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_store.etc2_r8g8b8_srgb_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_store.etc2_r8g8b8_srgb_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_store.etc2_r8g8b8a1_unorm_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.compute.image_store.etc2_r8g8b8a1_unorm_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.compute.image_store.etc2_r8g8b8a1_unorm_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.compute.image_store.etc2_r8g8b8a1_unorm_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.compute.image_store.etc2_r8g8b8a1_unorm_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.compute.image_store.etc2_r8g8b8a1_unorm_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.compute.image_store.etc2_r8g8b8a1_unorm_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_store.etc2_r8g8b8a1_unorm_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_store.etc2_r8g8b8a1_unorm_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_store.etc2_r8g8b8a1_unorm_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_store.etc2_r8g8b8a1_srgb_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.compute.image_store.etc2_r8g8b8a1_srgb_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.compute.image_store.etc2_r8g8b8a1_srgb_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.compute.image_store.etc2_r8g8b8a1_srgb_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.compute.image_store.etc2_r8g8b8a1_srgb_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.compute.image_store.etc2_r8g8b8a1_srgb_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.compute.image_store.etc2_r8g8b8a1_srgb_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_store.etc2_r8g8b8a1_srgb_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_store.etc2_r8g8b8a1_srgb_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_store.etc2_r8g8b8a1_srgb_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_store.eac_r11_unorm_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.compute.image_store.eac_r11_unorm_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.compute.image_store.eac_r11_unorm_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.compute.image_store.eac_r11_unorm_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.compute.image_store.eac_r11_unorm_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.compute.image_store.eac_r11_unorm_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.compute.image_store.eac_r11_unorm_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_store.eac_r11_unorm_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_store.eac_r11_unorm_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_store.eac_r11_unorm_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_store.eac_r11_snorm_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.compute.image_store.eac_r11_snorm_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.compute.image_store.eac_r11_snorm_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.compute.image_store.eac_r11_snorm_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.compute.image_store.eac_r11_snorm_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.compute.image_store.eac_r11_snorm_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.compute.image_store.eac_r11_snorm_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_store.eac_r11_snorm_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_store.eac_r11_snorm_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_store.eac_r11_snorm_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc2_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc2_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc2_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc2_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc2_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc2_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc3_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc3_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc3_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc3_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc3_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc3_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc5_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc5_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc5_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc5_snorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc5_snorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc5_snorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc6h_ufloat_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc6h_ufloat_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc6h_ufloat_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc6h_sfloat_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc6h_sfloat_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc6h_sfloat_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc7_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc7_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc7_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc7_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc7_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_store.bc7_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_store.etc2_r8g8b8a8_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_store.etc2_r8g8b8a8_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_store.etc2_r8g8b8a8_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_store.etc2_r8g8b8a8_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_store.etc2_r8g8b8a8_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_store.etc2_r8g8b8a8_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_store.eac_r11g11_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_store.eac_r11g11_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_store.eac_r11g11_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_store.eac_r11g11_snorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_store.eac_r11g11_snorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_store.eac_r11g11_snorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_4x4_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_4x4_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_4x4_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_4x4_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_4x4_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_4x4_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_5x4_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_5x4_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_5x4_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_5x4_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_5x4_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_5x4_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_5x5_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_5x5_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_5x5_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_5x5_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_5x5_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_5x5_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_6x5_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_6x5_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_6x5_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_6x5_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_6x5_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_6x5_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_6x6_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_6x6_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_6x6_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_6x6_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_6x6_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_6x6_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_8x5_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_8x5_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_8x5_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_8x5_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_8x5_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_8x5_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_8x6_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_8x6_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_8x6_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_8x6_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_8x6_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_8x6_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_8x8_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_8x8_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_8x8_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_8x8_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_8x8_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_8x8_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_10x5_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_10x5_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_10x5_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_10x5_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_10x5_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_10x5_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_10x6_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_10x6_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_10x6_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_10x6_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_10x6_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_10x6_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_10x8_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_10x8_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_10x8_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_10x8_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_10x8_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_10x8_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_10x10_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_10x10_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_10x10_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_10x10_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_10x10_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_10x10_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_12x10_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_12x10_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_12x10_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_12x10_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_12x10_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_12x10_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_12x12_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_12x12_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_12x12_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_12x12_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_12x12_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.compute.image_store.astc_12x12_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc1_rgb_unorm_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc1_rgb_unorm_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc1_rgb_unorm_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc1_rgb_unorm_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc1_rgb_unorm_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc1_rgb_unorm_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc1_rgb_unorm_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc1_rgb_unorm_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc1_rgb_unorm_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc1_rgb_unorm_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc1_rgb_srgb_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc1_rgb_srgb_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc1_rgb_srgb_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc1_rgb_srgb_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc1_rgb_srgb_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc1_rgb_srgb_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc1_rgb_srgb_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc1_rgb_srgb_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc1_rgb_srgb_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc1_rgb_srgb_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc1_rgba_unorm_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc1_rgba_unorm_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc1_rgba_unorm_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc1_rgba_unorm_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc1_rgba_unorm_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc1_rgba_unorm_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc1_rgba_unorm_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc1_rgba_unorm_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc1_rgba_unorm_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc1_rgba_unorm_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc1_rgba_srgb_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc1_rgba_srgb_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc1_rgba_srgb_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc1_rgba_srgb_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc1_rgba_srgb_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc1_rgba_srgb_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc1_rgba_srgb_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc1_rgba_srgb_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc1_rgba_srgb_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc1_rgba_srgb_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc4_unorm_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc4_unorm_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc4_unorm_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc4_unorm_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc4_unorm_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc4_unorm_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc4_unorm_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc4_unorm_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc4_unorm_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc4_unorm_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc4_snorm_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc4_snorm_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc4_snorm_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc4_snorm_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc4_snorm_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc4_snorm_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc4_snorm_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc4_snorm_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc4_snorm_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc4_snorm_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.etc2_r8g8b8_unorm_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.etc2_r8g8b8_unorm_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.etc2_r8g8b8_unorm_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.etc2_r8g8b8_unorm_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.etc2_r8g8b8_unorm_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.etc2_r8g8b8_unorm_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.etc2_r8g8b8_unorm_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.etc2_r8g8b8_unorm_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.etc2_r8g8b8_unorm_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.etc2_r8g8b8_unorm_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.etc2_r8g8b8_srgb_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.etc2_r8g8b8_srgb_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.etc2_r8g8b8_srgb_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.etc2_r8g8b8_srgb_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.etc2_r8g8b8_srgb_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.etc2_r8g8b8_srgb_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.etc2_r8g8b8_srgb_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.etc2_r8g8b8_srgb_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.etc2_r8g8b8_srgb_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.etc2_r8g8b8_srgb_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.etc2_r8g8b8a1_unorm_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.etc2_r8g8b8a1_unorm_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.etc2_r8g8b8a1_unorm_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.etc2_r8g8b8a1_unorm_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.etc2_r8g8b8a1_unorm_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.etc2_r8g8b8a1_unorm_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.etc2_r8g8b8a1_unorm_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.etc2_r8g8b8a1_unorm_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.etc2_r8g8b8a1_unorm_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.etc2_r8g8b8a1_unorm_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.etc2_r8g8b8a1_srgb_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.etc2_r8g8b8a1_srgb_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.etc2_r8g8b8a1_srgb_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.etc2_r8g8b8a1_srgb_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.etc2_r8g8b8a1_srgb_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.etc2_r8g8b8a1_srgb_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.etc2_r8g8b8a1_srgb_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.etc2_r8g8b8a1_srgb_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.etc2_r8g8b8a1_srgb_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.etc2_r8g8b8a1_srgb_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.eac_r11_unorm_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.eac_r11_unorm_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.eac_r11_unorm_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.eac_r11_unorm_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.eac_r11_unorm_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.eac_r11_unorm_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.eac_r11_unorm_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.eac_r11_unorm_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.eac_r11_unorm_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.eac_r11_unorm_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.eac_r11_snorm_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.eac_r11_snorm_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.eac_r11_snorm_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.eac_r11_snorm_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.eac_r11_snorm_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.eac_r11_snorm_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.eac_r11_snorm_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.eac_r11_snorm_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.eac_r11_snorm_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.eac_r11_snorm_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc2_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc2_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc2_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc2_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc2_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc2_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc3_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc3_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc3_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc3_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc3_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc3_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc5_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc5_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc5_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc5_snorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc5_snorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc5_snorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc6h_ufloat_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc6h_ufloat_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc6h_ufloat_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc6h_sfloat_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc6h_sfloat_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc6h_sfloat_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc7_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc7_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc7_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc7_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc7_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.bc7_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.etc2_r8g8b8a8_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.etc2_r8g8b8a8_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.etc2_r8g8b8a8_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.etc2_r8g8b8a8_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.etc2_r8g8b8a8_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.etc2_r8g8b8a8_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.eac_r11g11_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.eac_r11g11_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.eac_r11g11_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.eac_r11g11_snorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.eac_r11g11_snorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.eac_r11g11_snorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_4x4_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_4x4_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_4x4_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_4x4_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_4x4_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_4x4_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_5x4_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_5x4_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_5x4_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_5x4_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_5x4_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_5x4_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_5x5_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_5x5_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_5x5_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_5x5_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_5x5_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_5x5_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_6x5_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_6x5_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_6x5_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_6x5_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_6x5_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_6x5_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_6x6_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_6x6_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_6x6_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_6x6_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_6x6_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_6x6_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_8x5_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_8x5_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_8x5_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_8x5_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_8x5_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_8x5_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_8x6_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_8x6_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_8x6_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_8x6_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_8x6_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_8x6_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_8x8_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_8x8_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_8x8_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_8x8_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_8x8_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_8x8_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_10x5_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_10x5_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_10x5_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_10x5_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_10x5_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_10x5_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_10x6_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_10x6_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_10x6_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_10x6_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_10x6_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_10x6_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_10x8_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_10x8_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_10x8_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_10x8_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_10x8_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_10x8_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_10x10_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_10x10_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_10x10_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_10x10_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_10x10_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_10x10_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_12x10_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_12x10_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_12x10_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_12x10_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_12x10_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_12x10_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_12x12_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_12x12_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_12x12_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_12x12_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_12x12_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_read.astc_12x12_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc1_rgb_unorm_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc1_rgb_unorm_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc1_rgb_unorm_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc1_rgb_unorm_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc1_rgb_unorm_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc1_rgb_unorm_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc1_rgb_unorm_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc1_rgb_unorm_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc1_rgb_unorm_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc1_rgb_unorm_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc1_rgb_srgb_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc1_rgb_srgb_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc1_rgb_srgb_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc1_rgb_srgb_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc1_rgb_srgb_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc1_rgb_srgb_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc1_rgb_srgb_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc1_rgb_srgb_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc1_rgb_srgb_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc1_rgb_srgb_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc1_rgba_unorm_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc1_rgba_unorm_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc1_rgba_unorm_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc1_rgba_unorm_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc1_rgba_unorm_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc1_rgba_unorm_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc1_rgba_unorm_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc1_rgba_unorm_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc1_rgba_unorm_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc1_rgba_unorm_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc1_rgba_srgb_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc1_rgba_srgb_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc1_rgba_srgb_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc1_rgba_srgb_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc1_rgba_srgb_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc1_rgba_srgb_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc1_rgba_srgb_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc1_rgba_srgb_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc1_rgba_srgb_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc1_rgba_srgb_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc4_unorm_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc4_unorm_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc4_unorm_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc4_unorm_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc4_unorm_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc4_unorm_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc4_unorm_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc4_unorm_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc4_unorm_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc4_unorm_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc4_snorm_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc4_snorm_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc4_snorm_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc4_snorm_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc4_snorm_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc4_snorm_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc4_snorm_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc4_snorm_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc4_snorm_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc4_snorm_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.etc2_r8g8b8_unorm_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.etc2_r8g8b8_unorm_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.etc2_r8g8b8_unorm_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.etc2_r8g8b8_unorm_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.etc2_r8g8b8_unorm_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.etc2_r8g8b8_unorm_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.etc2_r8g8b8_unorm_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.etc2_r8g8b8_unorm_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.etc2_r8g8b8_unorm_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.etc2_r8g8b8_unorm_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.etc2_r8g8b8_srgb_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.etc2_r8g8b8_srgb_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.etc2_r8g8b8_srgb_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.etc2_r8g8b8_srgb_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.etc2_r8g8b8_srgb_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.etc2_r8g8b8_srgb_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.etc2_r8g8b8_srgb_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.etc2_r8g8b8_srgb_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.etc2_r8g8b8_srgb_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.etc2_r8g8b8_srgb_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.etc2_r8g8b8a1_unorm_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.etc2_r8g8b8a1_unorm_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.etc2_r8g8b8a1_unorm_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.etc2_r8g8b8a1_unorm_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.etc2_r8g8b8a1_unorm_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.etc2_r8g8b8a1_unorm_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.etc2_r8g8b8a1_unorm_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.etc2_r8g8b8a1_unorm_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.etc2_r8g8b8a1_unorm_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.etc2_r8g8b8a1_unorm_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.etc2_r8g8b8a1_srgb_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.etc2_r8g8b8a1_srgb_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.etc2_r8g8b8a1_srgb_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.etc2_r8g8b8a1_srgb_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.etc2_r8g8b8a1_srgb_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.etc2_r8g8b8a1_srgb_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.etc2_r8g8b8a1_srgb_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.etc2_r8g8b8a1_srgb_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.etc2_r8g8b8a1_srgb_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.etc2_r8g8b8a1_srgb_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.eac_r11_unorm_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.eac_r11_unorm_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.eac_r11_unorm_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.eac_r11_unorm_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.eac_r11_unorm_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.eac_r11_unorm_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.eac_r11_unorm_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.eac_r11_unorm_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.eac_r11_unorm_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.eac_r11_unorm_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.eac_r11_snorm_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.eac_r11_snorm_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.eac_r11_snorm_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.eac_r11_snorm_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.eac_r11_snorm_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.eac_r11_snorm_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.eac_r11_snorm_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.eac_r11_snorm_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.eac_r11_snorm_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.eac_r11_snorm_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc2_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc2_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc2_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc2_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc2_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc2_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc3_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc3_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc3_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc3_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc3_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc3_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc5_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc5_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc5_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc5_snorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc5_snorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc5_snorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc6h_ufloat_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc6h_ufloat_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc6h_ufloat_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc6h_sfloat_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc6h_sfloat_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc6h_sfloat_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc7_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc7_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc7_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc7_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc7_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.bc7_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.etc2_r8g8b8a8_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.etc2_r8g8b8a8_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.etc2_r8g8b8a8_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.etc2_r8g8b8a8_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.etc2_r8g8b8a8_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.etc2_r8g8b8a8_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.eac_r11g11_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.eac_r11g11_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.eac_r11g11_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.eac_r11g11_snorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.eac_r11g11_snorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.eac_r11g11_snorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_4x4_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_4x4_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_4x4_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_4x4_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_4x4_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_4x4_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_5x4_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_5x4_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_5x4_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_5x4_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_5x4_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_5x4_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_5x5_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_5x5_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_5x5_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_5x5_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_5x5_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_5x5_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_6x5_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_6x5_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_6x5_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_6x5_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_6x5_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_6x5_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_6x6_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_6x6_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_6x6_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_6x6_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_6x6_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_6x6_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_8x5_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_8x5_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_8x5_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_8x5_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_8x5_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_8x5_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_8x6_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_8x6_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_8x6_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_8x6_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_8x6_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_8x6_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_8x8_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_8x8_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_8x8_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_8x8_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_8x8_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_8x8_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_10x5_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_10x5_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_10x5_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_10x5_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_10x5_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_10x5_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_10x6_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_10x6_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_10x6_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_10x6_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_10x6_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_10x6_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_10x8_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_10x8_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_10x8_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_10x8_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_10x8_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_10x8_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_10x10_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_10x10_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_10x10_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_10x10_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_10x10_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_10x10_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_12x10_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_12x10_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_12x10_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_12x10_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_12x10_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_12x10_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_12x12_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_12x12_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_12x12_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_12x12_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_12x12_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.attachment_write.astc_12x12_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc1_rgb_unorm_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc1_rgb_unorm_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc1_rgb_unorm_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc1_rgb_unorm_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc1_rgb_unorm_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc1_rgb_unorm_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc1_rgb_unorm_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc1_rgb_unorm_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc1_rgb_unorm_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc1_rgb_unorm_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc1_rgb_srgb_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc1_rgb_srgb_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc1_rgb_srgb_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc1_rgb_srgb_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc1_rgb_srgb_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc1_rgb_srgb_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc1_rgb_srgb_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc1_rgb_srgb_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc1_rgb_srgb_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc1_rgb_srgb_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc1_rgba_unorm_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc1_rgba_unorm_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc1_rgba_unorm_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc1_rgba_unorm_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc1_rgba_unorm_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc1_rgba_unorm_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc1_rgba_unorm_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc1_rgba_unorm_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc1_rgba_unorm_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc1_rgba_unorm_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc1_rgba_srgb_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc1_rgba_srgb_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc1_rgba_srgb_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc1_rgba_srgb_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc1_rgba_srgb_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc1_rgba_srgb_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc1_rgba_srgb_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc1_rgba_srgb_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc1_rgba_srgb_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc1_rgba_srgb_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc4_unorm_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc4_unorm_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc4_unorm_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc4_unorm_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc4_unorm_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc4_unorm_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc4_unorm_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc4_unorm_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc4_unorm_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc4_unorm_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc4_snorm_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc4_snorm_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc4_snorm_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc4_snorm_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc4_snorm_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc4_snorm_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc4_snorm_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc4_snorm_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc4_snorm_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc4_snorm_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.etc2_r8g8b8_unorm_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.etc2_r8g8b8_unorm_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.etc2_r8g8b8_unorm_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.etc2_r8g8b8_unorm_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.etc2_r8g8b8_unorm_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.etc2_r8g8b8_unorm_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.etc2_r8g8b8_unorm_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.etc2_r8g8b8_unorm_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.etc2_r8g8b8_unorm_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.etc2_r8g8b8_unorm_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.etc2_r8g8b8_srgb_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.etc2_r8g8b8_srgb_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.etc2_r8g8b8_srgb_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.etc2_r8g8b8_srgb_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.etc2_r8g8b8_srgb_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.etc2_r8g8b8_srgb_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.etc2_r8g8b8_srgb_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.etc2_r8g8b8_srgb_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.etc2_r8g8b8_srgb_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.etc2_r8g8b8_srgb_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.etc2_r8g8b8a1_unorm_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.etc2_r8g8b8a1_unorm_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.etc2_r8g8b8a1_unorm_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.etc2_r8g8b8a1_unorm_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.etc2_r8g8b8a1_unorm_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.etc2_r8g8b8a1_unorm_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.etc2_r8g8b8a1_unorm_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.etc2_r8g8b8a1_unorm_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.etc2_r8g8b8a1_unorm_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.etc2_r8g8b8a1_unorm_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.etc2_r8g8b8a1_srgb_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.etc2_r8g8b8a1_srgb_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.etc2_r8g8b8a1_srgb_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.etc2_r8g8b8a1_srgb_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.etc2_r8g8b8a1_srgb_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.etc2_r8g8b8a1_srgb_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.etc2_r8g8b8a1_srgb_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.etc2_r8g8b8a1_srgb_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.etc2_r8g8b8a1_srgb_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.etc2_r8g8b8a1_srgb_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.eac_r11_unorm_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.eac_r11_unorm_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.eac_r11_unorm_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.eac_r11_unorm_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.eac_r11_unorm_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.eac_r11_unorm_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.eac_r11_unorm_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.eac_r11_unorm_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.eac_r11_unorm_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.eac_r11_unorm_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.eac_r11_snorm_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.eac_r11_snorm_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.eac_r11_snorm_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.eac_r11_snorm_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.eac_r11_snorm_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.eac_r11_snorm_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.eac_r11_snorm_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.eac_r11_snorm_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.eac_r11_snorm_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.eac_r11_snorm_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc2_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc2_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc2_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc2_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc2_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc2_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc3_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc3_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc3_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc3_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc3_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc3_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc5_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc5_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc5_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc5_snorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc5_snorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc5_snorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc6h_ufloat_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc6h_ufloat_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc6h_ufloat_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc6h_sfloat_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc6h_sfloat_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc6h_sfloat_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc7_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc7_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc7_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc7_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc7_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.bc7_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.etc2_r8g8b8a8_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.etc2_r8g8b8a8_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.etc2_r8g8b8a8_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.etc2_r8g8b8a8_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.etc2_r8g8b8a8_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.etc2_r8g8b8a8_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.eac_r11g11_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.eac_r11g11_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.eac_r11g11_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.eac_r11g11_snorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.eac_r11g11_snorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.eac_r11g11_snorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_4x4_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_4x4_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_4x4_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_4x4_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_4x4_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_4x4_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_5x4_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_5x4_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_5x4_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_5x4_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_5x4_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_5x4_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_5x5_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_5x5_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_5x5_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_5x5_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_5x5_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_5x5_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_6x5_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_6x5_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_6x5_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_6x5_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_6x5_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_6x5_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_6x6_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_6x6_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_6x6_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_6x6_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_6x6_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_6x6_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_8x5_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_8x5_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_8x5_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_8x5_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_8x5_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_8x5_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_8x6_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_8x6_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_8x6_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_8x6_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_8x6_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_8x6_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_8x8_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_8x8_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_8x8_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_8x8_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_8x8_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_8x8_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_10x5_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_10x5_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_10x5_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_10x5_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_10x5_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_10x5_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_10x6_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_10x6_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_10x6_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_10x6_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_10x6_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_10x6_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_10x8_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_10x8_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_10x8_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_10x8_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_10x8_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_10x8_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_10x10_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_10x10_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_10x10_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_10x10_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_10x10_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_10x10_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_12x10_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_12x10_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_12x10_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_12x10_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_12x10_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_12x10_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_12x12_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_12x12_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_12x12_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_12x12_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_12x12_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_read.astc_12x12_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc1_rgb_unorm_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc1_rgb_unorm_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc1_rgb_unorm_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc1_rgb_unorm_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc1_rgb_unorm_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc1_rgb_unorm_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc1_rgb_unorm_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc1_rgb_unorm_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc1_rgb_unorm_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc1_rgb_unorm_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc1_rgb_srgb_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc1_rgb_srgb_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc1_rgb_srgb_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc1_rgb_srgb_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc1_rgb_srgb_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc1_rgb_srgb_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc1_rgb_srgb_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc1_rgb_srgb_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc1_rgb_srgb_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc1_rgb_srgb_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc1_rgba_unorm_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc1_rgba_unorm_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc1_rgba_unorm_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc1_rgba_unorm_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc1_rgba_unorm_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc1_rgba_unorm_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc1_rgba_unorm_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc1_rgba_unorm_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc1_rgba_unorm_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc1_rgba_unorm_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc1_rgba_srgb_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc1_rgba_srgb_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc1_rgba_srgb_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc1_rgba_srgb_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc1_rgba_srgb_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc1_rgba_srgb_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc1_rgba_srgb_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc1_rgba_srgb_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc1_rgba_srgb_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc1_rgba_srgb_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc4_unorm_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc4_unorm_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc4_unorm_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc4_unorm_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc4_unorm_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc4_unorm_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc4_unorm_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc4_unorm_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc4_unorm_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc4_unorm_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc4_snorm_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc4_snorm_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc4_snorm_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc4_snorm_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc4_snorm_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc4_snorm_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc4_snorm_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc4_snorm_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc4_snorm_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc4_snorm_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.etc2_r8g8b8_unorm_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.etc2_r8g8b8_unorm_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.etc2_r8g8b8_unorm_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.etc2_r8g8b8_unorm_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.etc2_r8g8b8_unorm_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.etc2_r8g8b8_unorm_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.etc2_r8g8b8_unorm_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.etc2_r8g8b8_unorm_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.etc2_r8g8b8_unorm_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.etc2_r8g8b8_unorm_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.etc2_r8g8b8_srgb_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.etc2_r8g8b8_srgb_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.etc2_r8g8b8_srgb_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.etc2_r8g8b8_srgb_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.etc2_r8g8b8_srgb_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.etc2_r8g8b8_srgb_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.etc2_r8g8b8_srgb_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.etc2_r8g8b8_srgb_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.etc2_r8g8b8_srgb_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.etc2_r8g8b8_srgb_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.etc2_r8g8b8a1_unorm_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.etc2_r8g8b8a1_unorm_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.etc2_r8g8b8a1_unorm_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.etc2_r8g8b8a1_unorm_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.etc2_r8g8b8a1_unorm_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.etc2_r8g8b8a1_unorm_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.etc2_r8g8b8a1_unorm_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.etc2_r8g8b8a1_unorm_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.etc2_r8g8b8a1_unorm_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.etc2_r8g8b8a1_unorm_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.etc2_r8g8b8a1_srgb_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.etc2_r8g8b8a1_srgb_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.etc2_r8g8b8a1_srgb_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.etc2_r8g8b8a1_srgb_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.etc2_r8g8b8a1_srgb_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.etc2_r8g8b8a1_srgb_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.etc2_r8g8b8a1_srgb_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.etc2_r8g8b8a1_srgb_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.etc2_r8g8b8a1_srgb_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.etc2_r8g8b8a1_srgb_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.eac_r11_unorm_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.eac_r11_unorm_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.eac_r11_unorm_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.eac_r11_unorm_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.eac_r11_unorm_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.eac_r11_unorm_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.eac_r11_unorm_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.eac_r11_unorm_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.eac_r11_unorm_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.eac_r11_unorm_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.eac_r11_snorm_block.r16g16b16a16_unorm
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.eac_r11_snorm_block.r16g16b16a16_snorm
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.eac_r11_snorm_block.r16g16b16a16_uscaled
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.eac_r11_snorm_block.r16g16b16a16_sscaled
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.eac_r11_snorm_block.r16g16b16a16_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.eac_r11_snorm_block.r16g16b16a16_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.eac_r11_snorm_block.r16g16b16a16_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.eac_r11_snorm_block.r32g32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.eac_r11_snorm_block.r32g32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.eac_r11_snorm_block.r32g32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc2_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc2_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc2_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc2_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc2_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc2_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc3_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc3_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc3_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc3_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc3_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc3_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc5_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc5_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc5_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc5_snorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc5_snorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc5_snorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc6h_ufloat_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc6h_ufloat_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc6h_ufloat_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc6h_sfloat_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc6h_sfloat_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc6h_sfloat_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc7_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc7_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc7_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc7_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc7_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.bc7_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.etc2_r8g8b8a8_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.etc2_r8g8b8a8_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.etc2_r8g8b8a8_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.etc2_r8g8b8a8_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.etc2_r8g8b8a8_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.etc2_r8g8b8a8_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.eac_r11g11_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.eac_r11g11_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.eac_r11g11_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.eac_r11g11_snorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.eac_r11g11_snorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.eac_r11g11_snorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_4x4_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_4x4_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_4x4_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_4x4_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_4x4_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_4x4_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_5x4_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_5x4_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_5x4_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_5x4_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_5x4_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_5x4_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_5x5_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_5x5_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_5x5_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_5x5_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_5x5_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_5x5_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_6x5_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_6x5_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_6x5_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_6x5_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_6x5_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_6x5_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_6x6_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_6x6_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_6x6_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_6x6_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_6x6_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_6x6_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_8x5_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_8x5_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_8x5_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_8x5_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_8x5_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_8x5_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_8x6_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_8x6_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_8x6_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_8x6_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_8x6_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_8x6_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_8x8_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_8x8_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_8x8_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_8x8_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_8x8_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_8x8_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_10x5_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_10x5_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_10x5_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_10x5_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_10x5_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_10x5_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_10x6_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_10x6_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_10x6_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_10x6_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_10x6_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_10x6_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_10x8_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_10x8_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_10x8_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_10x8_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_10x8_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_10x8_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_10x10_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_10x10_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_10x10_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_10x10_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_10x10_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_10x10_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_12x10_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_12x10_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_12x10_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_12x10_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_12x10_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_12x10_srgb_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_12x12_unorm_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_12x12_unorm_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_12x12_unorm_block.r32g32b32a32_sfloat
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_12x12_srgb_block.r32g32b32a32_uint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_12x12_srgb_block.r32g32b32a32_sint
+dEQP-VK.image.texel_view_compatible.graphic.texture_write.astc_12x12_srgb_block.r32g32b32a32_sfloat
 dEQP-VK.wsi.xlib.surface.create
 dEQP-VK.wsi.xlib.surface.create_custom_allocator
 dEQP-VK.wsi.xlib.surface.create_simulate_oom