Implement support for using GL ES 3.0 with command buffer

Adds a new 'api': --config gpu(api=commandbuffer3) for dm/nanobench.

BUG=skia:4943
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1684413003

Review URL: https://codereview.chromium.org/1684413003
diff --git a/tools/flags/SkCommonFlagsConfig.cpp b/tools/flags/SkCommonFlagsConfig.cpp
index e2aa327..c82e8de 100644
--- a/tools/flags/SkCommonFlagsConfig.cpp
+++ b/tools/flags/SkCommonFlagsConfig.cpp
@@ -64,6 +64,7 @@
 #endif
 #if SK_COMMAND_BUFFER
     "\t\tcommandbuffer\t\tUse command buffer.\n"
+    "\t\tcommandbuffer3\t\tUse command buffer ES 3.0 (experimental).\n"
 #endif
 #if SK_MESA
     "\t\tmesa\t\t\tUse MESA.\n"
@@ -214,7 +215,11 @@
 #endif
 #if SK_COMMAND_BUFFER
     if (value.equals("commandbuffer")) {
-        *outContextType = GrContextFactory::kCommandBuffer_GLContextType;
+        *outContextType = GrContextFactory::kCommandBufferES2_GLContextType;
+        return true;
+    }
+    if (value.equals("commandbuffer3")) {
+        *outContextType = GrContextFactory::kCommandBufferES3_GLContextType;
         return true;
     }
 #endif