turnip: dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.* fails with angle
These tests fail with angle-on-turnip
dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_rgba8_snorm.renderbuffer_to_cubemap
dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_rgba8_snorm.renderbuffer_to_texture2d_array
dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgb10_a2_rgba8_snorm.renderbuffer_to_texture2d_array
dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.srgb8_alpha8_rgba8_snorm.renderbuffer_to_texture2d
dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.srgb8_alpha8_rgba8_snorm.renderbuffer_to_cubemap
dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.srgb8_alpha8_rgba8_snorm.renderbuffer_to_texture2d_array
I simplified the first test and captured a renderdoc trace. It looks like vkCmdCopyImage
to an image and sampling from it does not work in this test case
This image in question is UBWC compressed and is created with these info
imageType: VkImageType = VK_IMAGE_TYPE_2D (1)
format: VkFormat = VK_FORMAT_R8G8B8A8_SNORM (38)
extent: VkExtent3D = 0x7ff6aecb0c:
width: uint32_t = 65
height: uint32_t = 65
depth: uint32_t = 1
mipLevels: uint32_t = 7
arrayLayers: uint32_t = 9
samples: VkSampleCountFlagBits = 1 (VK_SAMPLE_COUNT_1_BIT)
tiling: VkImageTiling = VK_IMAGE_TILING_OPTIMAL (0)
TU_DEBUG=noubwc
works around the issue and gives correct result
I will keep looking into this next week. If the issue description rings any bell, please let me know.