Simplify Vulkan binding generator script

Simplified generate_bindings.py. Now list of functions is declared
with platform-specific ifdefs, which makes it much easier to add new
platform specific functions in the future. Also extension-dependent
functions are supported by the script directly.

Change-Id: I33c4e42d0943df84fe17f34aa28f95d8f20177b0
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1709901
Commit-Queue: Sergey Ulanov <[email protected]>
Reviewed-by: Bo <[email protected]>
Reviewed-by: Peng Huang <[email protected]>
Reviewed-by: Chris Blume <[email protected]>
Reviewed-by: Daniele Castagna <[email protected]>
Cr-Commit-Position: refs/heads/master@{#679733}
diff --git a/gpu/vulkan/vulkan_implementation.cc b/gpu/vulkan/vulkan_implementation.cc
index 0d12f5e..b8646f58 100644
--- a/gpu/vulkan/vulkan_implementation.cc
+++ b/gpu/vulkan/vulkan_implementation.cc
@@ -26,9 +26,9 @@
       base::Unretained(vulkan_implementation));
   std::vector<const char*> required_extensions =
       vulkan_implementation->GetRequiredDeviceExtensions();
-  if (!device_queue->Initialize(option, std::move(required_extensions),
-                                callback,
-                                vulkan_implementation->use_swiftshader())) {
+  if (!device_queue->Initialize(
+          option, vulkan_implementation->GetVulkanInstance()->api_version(),
+          std::move(required_extensions), callback)) {
     device_queue->Destroy();
     return nullptr;
   }