diff --git a/third_party/swiftshader/src/Vulkan/VkPhysicalDevice.cpp b/third_party/swiftshader/src/Vulkan/VkPhysicalDevice.cpp index acd5909e6c..63b54a880a 100644 --- a/third_party/swiftshader/src/Vulkan/VkPhysicalDevice.cpp +++ b/third_party/swiftshader/src/Vulkan/VkPhysicalDevice.cpp @@ -2051,7 +2051,9 @@ void PhysicalDevice::GetFormatProperties(Format format, VkFormatProperties3 *pFo switch(format) { // Formats which can be sampled *and* filtered - case VK_FORMAT_R4G4B4A4_UNORM_PACK16: + // POC DRIVER SIMULATION: R4G4B4A4 moved to sampled-only group below. + // Per Vulkan spec, R4G4B4A4_UNORM_PACK16 has zero mandatory feature bits; + // a conforming driver may advertise SAMPLED_IMAGE without FILTER_LINEAR. case VK_FORMAT_B4G4R4A4_UNORM_PACK16: case VK_FORMAT_A4R4G4B4_UNORM_PACK16: case VK_FORMAT_A4B4G4R4_UNORM_PACK16: @@ -2154,6 +2156,7 @@ void PhysicalDevice::GetFormatProperties(Format format, VkFormatProperties3 *pFo // [[fallthrough]] // Formats which can be sampled, but don't support filtering + case VK_FORMAT_R4G4B4A4_UNORM_PACK16: // POC: spec-permitted (no mandatory bits) case VK_FORMAT_R8_UINT: case VK_FORMAT_R8_SINT: case VK_FORMAT_R8G8_UINT: