Vulkan: prepare for ES3

This makes ES3_VULKAN() pass the instantiability test, allowing it to be
specified in end2end tests.

Bug: angleproject:2950
Change-Id: Ife70a22fb8193f9eebe64bec491a24b47bc76939
Reviewed-on: https://chromium-review.googlesource.com/c/1325729
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
diff --git a/src/libANGLE/renderer/vulkan/RendererVk.cpp b/src/libANGLE/renderer/vulkan/RendererVk.cpp
index 47b01e5..dba99da 100644
--- a/src/libANGLE/renderer/vulkan/RendererVk.cpp
+++ b/src/libANGLE/renderer/vulkan/RendererVk.cpp
@@ -531,8 +531,8 @@
     GlslangWrapper::Initialize();
 
     // Initialize the format table.
-    mFormatTable.initialize(mPhysicalDevice, mFeatures, &mNativeTextureCaps,
-                            &mNativeCaps.compressedTextureFormats);
+    mFormatTable.initialize(mPhysicalDevice, mPhysicalDeviceProperties, mFeatures,
+                            &mNativeTextureCaps, &mNativeCaps.compressedTextureFormats);
 
     return angle::Result::Continue();
 }
@@ -733,6 +733,19 @@
     return strstr.str();
 }
 
+gl::Version RendererVk::getMaxSupportedESVersion() const
+{
+    // Declare GLES2 support if necessary features for GLES3 are missing
+    bool necessaryFeaturesForES3 = mPhysicalDeviceFeatures.inheritedQueries;
+
+    if (!necessaryFeaturesForES3)
+    {
+        return gl::Version(2, 0);
+    }
+
+    return gl::Version(3, 0);
+}
+
 void RendererVk::initFeatures()
 {
 // Use OpenGL line rasterization rules by default.