Also return extension function pointers from GIPA

Device functions can be queried through GIPA. There is no device to check for enabled extensions
here, so return anything that is supported.

Test: dEQP-VK.wsi.*
Change-Id: I3be086b4cd0ad6f5e80595aa4401a424780333d2
Reviewed-on: https://swiftshader-review.googlesource.com/c/SwiftShader/+/31749
Presubmit-Ready: Alexis Hétu <sugoi@google.com>
Reviewed-by: Alexis Hétu <sugoi@google.com>
Tested-by: Chris Forbes <chrisforbes@google.com>
Kokoro-Presubmit: kokoro <noreply+kokoro@google.com>
diff --git a/src/Vulkan/VkGetProcAddress.cpp b/src/Vulkan/VkGetProcAddress.cpp
index 194f146..fbab0bd 100644
--- a/src/Vulkan/VkGetProcAddress.cpp
+++ b/src/Vulkan/VkGetProcAddress.cpp
@@ -343,6 +343,15 @@
 		{
 			return deviceFunction->second;
 		}
+
+		for(const auto& deviceExtensionFunctions : deviceExtensionFunctionPointers)
+		{
+			deviceFunction = deviceExtensionFunctions.second.find(std::string(pName));
+			if(deviceFunction != deviceExtensionFunctions.second.end())
+			{
+				return deviceFunction->second;
+			}
+		}
 	}
 
 	return nullptr;