Add input attachment support for VK_FORMAT_A2B10G10R10_UINT_PACK32

Bug: b/131171141
Test: dEQP-VK.*a2b10g10r10*
Change-Id: Ibda1017aefad8d2c045b1c6f87aa2fe2a853e313
Reviewed-on: https://swiftshader-review.googlesource.com/c/SwiftShader/+/30530
Tested-by: Chris Forbes <chrisforbes@google.com>
Presubmit-Ready: Chris Forbes <chrisforbes@google.com>
Reviewed-by: Nicolas Capens <nicolascapens@google.com>
Kokoro-Presubmit: kokoro <noreply+kokoro@google.com>
diff --git a/src/Pipeline/SpirvShader.cpp b/src/Pipeline/SpirvShader.cpp
index 853c24d..0aef90e 100644
--- a/src/Pipeline/SpirvShader.cpp
+++ b/src/Pipeline/SpirvShader.cpp
@@ -5015,6 +5015,12 @@
 			dst.move(2, SIMD::Float(0));
 			dst.move(3, SIMD::Float(1));
 			break;
+		case VK_FORMAT_A2B10G10R10_UINT_PACK32:
+			dst.move(0, (packed[0]) & SIMD::Int(0x3FF));
+			dst.move(1, (packed[0] >> 10) & SIMD::Int(0x3FF));
+			dst.move(2, (packed[0] >> 20) & SIMD::Int(0x3FF));
+			dst.move(3, (packed[0] >> 30) & SIMD::Int(0x3));
+			break;
 		default:
 			UNIMPLEMENTED("spv::ImageFormat %d", int(vkFormat));
 			break;