Merge latest Skia into master (1 commits)

https://skia.googlesource.com/skia.git/+log/8dadd9e..9c7dcac

Test: Presubmit checks will test this change.
Change-Id: I2f4b982e841ba58561b3e32d063812d665fdf18a
diff --git a/infra/bots/assets/linux_vulkan_sdk/README.md b/infra/bots/assets/linux_vulkan_sdk/README.md
new file mode 100644
index 0000000..2a266b6
--- /dev/null
+++ b/infra/bots/assets/linux_vulkan_sdk/README.md
@@ -0,0 +1,8 @@
+To create the vulkan sdk asset:
+
+Install the vulkan sdk from https://vulkan.lunarg.com/signin on a linux machine
+
+The default install dir is in the same directory as the .run file is (e.g. ~/Downloads).
+Call the install directory $VULKAN_SDK.
+
+When uploading the CIPD asset, use -s $VULKAN_SDK/VERSION/x86_64
diff --git a/infra/bots/assets/linux_vulkan_sdk/VERSION b/infra/bots/assets/linux_vulkan_sdk/VERSION
new file mode 100644
index 0000000..c227083
--- /dev/null
+++ b/infra/bots/assets/linux_vulkan_sdk/VERSION
@@ -0,0 +1 @@
+0
\ No newline at end of file
diff --git a/infra/bots/assets/linux_vulkan_sdk/common.py b/infra/bots/assets/linux_vulkan_sdk/common.py
new file mode 100755
index 0000000..4920c9b
--- /dev/null
+++ b/infra/bots/assets/linux_vulkan_sdk/common.py
@@ -0,0 +1,26 @@
+#!/usr/bin/env python
+#
+# Copyright 2016 Google Inc.
+#
+# Use of this source code is governed by a BSD-style license that can be
+# found in the LICENSE file.
+
+
+"""Common vars used by scripts in this directory."""
+
+
+import os
+import sys
+
+FILE_DIR = os.path.dirname(os.path.abspath(__file__))
+INFRA_BOTS_DIR = os.path.realpath(os.path.join(FILE_DIR, os.pardir, os.pardir))
+
+sys.path.insert(0, INFRA_BOTS_DIR)
+from assets import assets
+
+ASSET_NAME = os.path.basename(FILE_DIR)
+
+
+def run(cmd):
+  """Run a command, eg. "upload" or "download". """
+  assets.main([cmd, ASSET_NAME] + sys.argv[1:])
diff --git a/infra/bots/assets/linux_vulkan_sdk/create.py b/infra/bots/assets/linux_vulkan_sdk/create.py
new file mode 100755
index 0000000..21c1ee7
--- /dev/null
+++ b/infra/bots/assets/linux_vulkan_sdk/create.py
@@ -0,0 +1,36 @@
+#!/usr/bin/env python
+#
+# Copyright 2016 Google Inc.
+#
+# Use of this source code is governed by a BSD-style license that can be
+# found in the LICENSE file.
+
+
+"""Create the asset."""
+
+
+import argparse
+import shutil
+import sys
+import os
+
+
+
+def create_asset(target_dir, sdk_path):
+  """Create the asset."""
+  shutil.copytree(sdk_path, target_dir)
+
+
+def main():
+  if 'linux' not in sys.platform:
+    print >> sys.stderr, 'This script only runs on Linux.'
+    sys.exit(1)
+  parser = argparse.ArgumentParser()
+  parser.add_argument('--target_dir', '-t', required=True)
+  parser.add_argument('--sdk_path', '-s', required=True)
+  args = parser.parse_args()
+  create_asset(args.target_dir, args.sdk_path)
+
+
+if __name__ == '__main__':
+  main()
diff --git a/infra/bots/assets/linux_vulkan_sdk/create_and_upload.py b/infra/bots/assets/linux_vulkan_sdk/create_and_upload.py
new file mode 100755
index 0000000..22226d7
--- /dev/null
+++ b/infra/bots/assets/linux_vulkan_sdk/create_and_upload.py
@@ -0,0 +1,50 @@
+#!/usr/bin/env python
+#
+# Copyright 2016 Google Inc.
+#
+# Use of this source code is governed by a BSD-style license that can be
+# found in the LICENSE file.
+
+
+"""Create the asset and upload it."""
+
+
+import argparse
+import common
+import os
+import subprocess
+import sys
+import utils
+
+
+def main():
+  if 'linux' not in sys.platform:
+    print >> sys.stderr, 'This script only runs on Linux.'
+    sys.exit(1)
+  parser = argparse.ArgumentParser()
+  parser.add_argument('--gsutil')
+  parser.add_argument('--sdk_path', '-s', required=True)
+  args = parser.parse_args()
+
+  with utils.tmp_dir():
+    cwd = os.getcwd()
+    create_script = os.path.join(common.FILE_DIR, 'create.py')
+    upload_script = os.path.join(common.FILE_DIR, 'upload.py')
+
+    try:
+      cwd = os.path.join(cwd, 'sdk')
+      cmd = ['python', create_script,
+             '-t', cwd,
+             '--sdk_path', args.sdk_path]
+      subprocess.check_call(cmd)
+      cmd = ['python', upload_script, '-t', cwd]
+      if args.gsutil:
+        cmd.extend(['--gsutil', args.gsutil])
+      subprocess.check_call(cmd)
+    except subprocess.CalledProcessError:
+      # Trap exceptions to avoid printing two stacktraces.
+      sys.exit(1)
+
+
+if __name__ == '__main__':
+  main()
diff --git a/infra/bots/assets/linux_vulkan_sdk/download.py b/infra/bots/assets/linux_vulkan_sdk/download.py
new file mode 100755
index 0000000..96cc87d
--- /dev/null
+++ b/infra/bots/assets/linux_vulkan_sdk/download.py
@@ -0,0 +1,16 @@
+#!/usr/bin/env python
+#
+# Copyright 2016 Google Inc.
+#
+# Use of this source code is governed by a BSD-style license that can be
+# found in the LICENSE file.
+
+
+"""Download the current version of the asset."""
+
+
+import common
+
+
+if __name__ == '__main__':
+  common.run('download')
diff --git a/infra/bots/assets/linux_vulkan_sdk/upload.py b/infra/bots/assets/linux_vulkan_sdk/upload.py
new file mode 100755
index 0000000..ba7fc8b
--- /dev/null
+++ b/infra/bots/assets/linux_vulkan_sdk/upload.py
@@ -0,0 +1,16 @@
+#!/usr/bin/env python
+#
+# Copyright 2016 Google Inc.
+#
+# Use of this source code is governed by a BSD-style license that can be
+# found in the LICENSE file.
+
+
+"""Upload a new version of the asset."""
+
+
+import common
+
+
+if __name__ == '__main__':
+  common.run('upload')
diff --git a/infra/bots/assets/win_vulkan_sdk/README.md b/infra/bots/assets/win_vulkan_sdk/README.md
index 2832f92..1175790 100644
--- a/infra/bots/assets/win_vulkan_sdk/README.md
+++ b/infra/bots/assets/win_vulkan_sdk/README.md
@@ -4,4 +4,4 @@
 
 The default install dir is C:\VulkanSDK\VERSION
 
-When uploading the CIPD asset, use -t C:\VulkanSDK\VERSION
+When uploading the CIPD asset, use -s C:\VulkanSDK\VERSION
diff --git a/infra/bots/assets/win_vulkan_sdk/create_and_upload.py b/infra/bots/assets/win_vulkan_sdk/create_and_upload.py
index 515aa3d..38c6943 100644
--- a/infra/bots/assets/win_vulkan_sdk/create_and_upload.py
+++ b/infra/bots/assets/win_vulkan_sdk/create_and_upload.py
@@ -35,6 +35,7 @@
     upload_script = os.path.join(common.FILE_DIR, 'upload.py')
 
     try:
+      cwd = os.path.join(cwd, 'sdk')
       cmd = ['python', create_script,
              '-t', cwd,
              '--sdk_path', args.sdk_path,
diff --git a/infra/bots/gen_tasks.go b/infra/bots/gen_tasks.go
index 9457866..0b574eb 100644
--- a/infra/bots/gen_tasks.go
+++ b/infra/bots/gen_tasks.go
@@ -66,9 +66,11 @@
 		"Build-Ubuntu-Clang-x86_64-Debug",
 		"Build-Ubuntu-Clang-x86_64-Debug-ASAN",
 		"Build-Ubuntu-Clang-x86_64-Debug-MSAN",
+		"Build-Ubuntu-Clang-x86_64-Debug-Vulkan",
 		"Build-Ubuntu-Clang-x86_64-Release",
 		"Build-Ubuntu-Clang-x86_64-Release-Fast",
 		"Build-Ubuntu-Clang-x86_64-Release-TSAN",
+		"Build-Ubuntu-Clang-x86_64-Release-Vulkan",
 		"Build-Ubuntu-GCC-x86-Debug",
 		"Build-Ubuntu-GCC-x86-Release",
 		"Build-Ubuntu-GCC-x86_64-Debug",
@@ -162,6 +164,8 @@
 		"Perf-Ubuntu-GCC-ShuttleA-GPU-GTX660-x86_64-Release",
 		"Perf-Ubuntu16-Clang-NUC-GPU-IntelIris540-x86_64-Debug",
 		"Perf-Ubuntu16-Clang-NUC-GPU-IntelIris540-x86_64-Release",
+		"Perf-Ubuntu16-Clang-NUC-GPU-IntelIris540-x86_64-Debug-Vulkan",
+		"Perf-Ubuntu16-Clang-NUC-GPU-IntelIris540-x86_64-Release-Vulkan",
 		"Perf-Win10-MSVC-Golo-GPU-GT610-x86_64-Release",
 		"Perf-Win10-MSVC-NUC-GPU-IntelIris540-x86_64-Debug",
 		"Perf-Win10-MSVC-NUC-GPU-IntelIris540-x86_64-Debug-ANGLE",
@@ -260,6 +264,8 @@
 		"Test-Ubuntu-GCC-ShuttleA-GPU-GTX660-x86_64-Release",
 		"Test-Ubuntu16-Clang-NUC-GPU-IntelIris540-x86_64-Debug",
 		"Test-Ubuntu16-Clang-NUC-GPU-IntelIris540-x86_64-Release",
+		"Test-Ubuntu16-Clang-NUC-GPU-IntelIris540-x86_64-Debug-Vulkan",
+		"Test-Ubuntu16-Clang-NUC-GPU-IntelIris540-x86_64-Release-Vulkan",
 		"Test-Win10-MSVC-Golo-GPU-GT610-x86_64-Release",
 		"Test-Win10-MSVC-NUC-GPU-IntelIris540-x86_64-Debug",
 		"Test-Win10-MSVC-NUC-GPU-IntelIris540-x86_64-Debug-ANGLE",
@@ -465,8 +471,13 @@
 		} else {
 			pkgs = append(pkgs, b.MustGetCipdPackageFromAsset("android_ndk_linux"))
 		}
-	} else if strings.Contains(name, "Ubuntu") && strings.Contains(name, "Clang") {
-		pkgs = append(pkgs, b.MustGetCipdPackageFromAsset("clang_linux"))
+	} else if strings.Contains(name, "Ubuntu") {
+		if strings.Contains(name, "Clang") {
+			pkgs = append(pkgs, b.MustGetCipdPackageFromAsset("clang_linux"))
+		}
+		if strings.Contains(name, "Vulkan") {
+			pkgs = append(pkgs, b.MustGetCipdPackageFromAsset("linux_vulkan_sdk"))
+		}
 	} else if strings.Contains(name, "Win") {
 		pkgs = append(pkgs, b.MustGetCipdPackageFromAsset("win_toolchain"))
 		if strings.Contains(name, "Vulkan") {
diff --git a/infra/bots/tasks.json b/infra/bots/tasks.json
index 23db336..8b2e7cc 100644
--- a/infra/bots/tasks.json
+++ b/infra/bots/tasks.json
@@ -168,6 +168,12 @@
         "Build-Ubuntu-Clang-x86_64-Debug-MSAN"
       ]
     },
+    "Build-Ubuntu-Clang-x86_64-Debug-Vulkan": {
+      "priority": 0.8,
+      "tasks": [
+        "Build-Ubuntu-Clang-x86_64-Debug-Vulkan"
+      ]
+    },
     "Build-Ubuntu-Clang-x86_64-Release": {
       "priority": 0.8,
       "tasks": [
@@ -186,6 +192,12 @@
         "Build-Ubuntu-Clang-x86_64-Release-TSAN"
       ]
     },
+    "Build-Ubuntu-Clang-x86_64-Release-Vulkan": {
+      "priority": 0.8,
+      "tasks": [
+        "Build-Ubuntu-Clang-x86_64-Release-Vulkan"
+      ]
+    },
     "Build-Ubuntu-GCC-x86-Debug": {
       "priority": 0.8,
       "tasks": [
@@ -728,12 +740,24 @@
         "Perf-Ubuntu16-Clang-NUC-GPU-IntelIris540-x86_64-Debug"
       ]
     },
+    "Perf-Ubuntu16-Clang-NUC-GPU-IntelIris540-x86_64-Debug-Vulkan": {
+      "priority": 0.8,
+      "tasks": [
+        "Perf-Ubuntu16-Clang-NUC-GPU-IntelIris540-x86_64-Debug-Vulkan"
+      ]
+    },
     "Perf-Ubuntu16-Clang-NUC-GPU-IntelIris540-x86_64-Release": {
       "priority": 0.8,
       "tasks": [
         "Upload-Perf-Ubuntu16-Clang-NUC-GPU-IntelIris540-x86_64-Release"
       ]
     },
+    "Perf-Ubuntu16-Clang-NUC-GPU-IntelIris540-x86_64-Release-Vulkan": {
+      "priority": 0.8,
+      "tasks": [
+        "Upload-Perf-Ubuntu16-Clang-NUC-GPU-IntelIris540-x86_64-Release-Vulkan"
+      ]
+    },
     "Perf-Win10-MSVC-Golo-GPU-GT610-x86_64-Release": {
       "priority": 0.8,
       "tasks": [
@@ -1305,12 +1329,24 @@
         "Upload-Test-Ubuntu16-Clang-NUC-GPU-IntelIris540-x86_64-Debug"
       ]
     },
+    "Test-Ubuntu16-Clang-NUC-GPU-IntelIris540-x86_64-Debug-Vulkan": {
+      "priority": 0.8,
+      "tasks": [
+        "Upload-Test-Ubuntu16-Clang-NUC-GPU-IntelIris540-x86_64-Debug-Vulkan"
+      ]
+    },
     "Test-Ubuntu16-Clang-NUC-GPU-IntelIris540-x86_64-Release": {
       "priority": 0.8,
       "tasks": [
         "Upload-Test-Ubuntu16-Clang-NUC-GPU-IntelIris540-x86_64-Release"
       ]
     },
+    "Test-Ubuntu16-Clang-NUC-GPU-IntelIris540-x86_64-Release-Vulkan": {
+      "priority": 0.8,
+      "tasks": [
+        "Upload-Test-Ubuntu16-Clang-NUC-GPU-IntelIris540-x86_64-Release-Vulkan"
+      ]
+    },
     "Test-Win10-MSVC-Golo-GPU-GT610-x86_64-Release": {
       "priority": 0.8,
       "tasks": [
@@ -2376,6 +2412,43 @@
       "isolate": "compile_skia.isolate",
       "priority": 0.8
     },
+    "Build-Ubuntu-Clang-x86_64-Debug-Vulkan": {
+      "cipd_packages": [
+        {
+          "name": "skia/bots/clang_linux",
+          "path": "clang_linux",
+          "version": "version:4"
+        },
+        {
+          "name": "skia/bots/linux_vulkan_sdk",
+          "path": "linux_vulkan_sdk",
+          "version": "version:0"
+        }
+      ],
+      "dimensions": [
+        "gpu:none",
+        "os:Ubuntu-14.04",
+        "pool:Skia"
+      ],
+      "extra_args": [
+        "--workdir",
+        "../../..",
+        "swarm_compile",
+        "repository=<(REPO)",
+        "buildername=Build-Ubuntu-Clang-x86_64-Debug-Vulkan",
+        "mastername=fake-master",
+        "buildnumber=2",
+        "slavename=fake-buildslave",
+        "nobuildbot=True",
+        "swarm_out_dir=${ISOLATED_OUTDIR}",
+        "revision=<(REVISION)",
+        "patch_storage=<(PATCH_STORAGE)",
+        "patch_issue=<(ISSUE)",
+        "patch_set=<(PATCHSET)"
+      ],
+      "isolate": "compile_skia.isolate",
+      "priority": 0.8
+    },
     "Build-Ubuntu-Clang-x86_64-Release": {
       "cipd_packages": [
         {
@@ -2472,6 +2545,43 @@
       "isolate": "compile_skia.isolate",
       "priority": 0.8
     },
+    "Build-Ubuntu-Clang-x86_64-Release-Vulkan": {
+      "cipd_packages": [
+        {
+          "name": "skia/bots/clang_linux",
+          "path": "clang_linux",
+          "version": "version:4"
+        },
+        {
+          "name": "skia/bots/linux_vulkan_sdk",
+          "path": "linux_vulkan_sdk",
+          "version": "version:0"
+        }
+      ],
+      "dimensions": [
+        "gpu:none",
+        "os:Ubuntu-14.04",
+        "pool:Skia"
+      ],
+      "extra_args": [
+        "--workdir",
+        "../../..",
+        "swarm_compile",
+        "repository=<(REPO)",
+        "buildername=Build-Ubuntu-Clang-x86_64-Release-Vulkan",
+        "mastername=fake-master",
+        "buildnumber=2",
+        "slavename=fake-buildslave",
+        "nobuildbot=True",
+        "swarm_out_dir=${ISOLATED_OUTDIR}",
+        "revision=<(REVISION)",
+        "patch_storage=<(PATCH_STORAGE)",
+        "patch_issue=<(ISSUE)",
+        "patch_set=<(PATCHSET)"
+      ],
+      "isolate": "compile_skia.isolate",
+      "priority": 0.8
+    },
     "Build-Ubuntu-GCC-x86-Debug": {
       "dimensions": [
         "gpu:none",
@@ -6143,6 +6253,54 @@
       "isolate": "perf_skia.isolate",
       "priority": 0.8
     },
+    "Perf-Ubuntu16-Clang-NUC-GPU-IntelIris540-x86_64-Debug-Vulkan": {
+      "cipd_packages": [
+        {
+          "name": "skia/bots/skimage",
+          "path": "skimage",
+          "version": "version:18"
+        },
+        {
+          "name": "skia/bots/skp",
+          "path": "skp",
+          "version": "version:33"
+        },
+        {
+          "name": "skia/bots/svg",
+          "path": "svg",
+          "version": "version:3"
+        }
+      ],
+      "dependencies": [
+        "Build-Ubuntu-Clang-x86_64-Debug-Vulkan"
+      ],
+      "dimensions": [
+        "gpu:8086:1926",
+        "os:Ubuntu-16.04",
+        "pool:Skia"
+      ],
+      "execution_timeout_ns": 14400000000000,
+      "expiration_ns": 72000000000000,
+      "extra_args": [
+        "--workdir",
+        "../../..",
+        "swarm_perf",
+        "repository=<(REPO)",
+        "buildername=Perf-Ubuntu16-Clang-NUC-GPU-IntelIris540-x86_64-Debug-Vulkan",
+        "mastername=fake-master",
+        "buildnumber=2",
+        "slavename=fake-buildslave",
+        "nobuildbot=True",
+        "swarm_out_dir=${ISOLATED_OUTDIR}",
+        "revision=<(REVISION)",
+        "patch_storage=<(PATCH_STORAGE)",
+        "patch_issue=<(ISSUE)",
+        "patch_set=<(PATCHSET)"
+      ],
+      "io_timeout_ns": 2400000000000,
+      "isolate": "perf_skia.isolate",
+      "priority": 0.8
+    },
     "Perf-Ubuntu16-Clang-NUC-GPU-IntelIris540-x86_64-Release": {
       "cipd_packages": [
         {
@@ -6191,6 +6349,54 @@
       "isolate": "perf_skia.isolate",
       "priority": 0.8
     },
+    "Perf-Ubuntu16-Clang-NUC-GPU-IntelIris540-x86_64-Release-Vulkan": {
+      "cipd_packages": [
+        {
+          "name": "skia/bots/skimage",
+          "path": "skimage",
+          "version": "version:18"
+        },
+        {
+          "name": "skia/bots/skp",
+          "path": "skp",
+          "version": "version:33"
+        },
+        {
+          "name": "skia/bots/svg",
+          "path": "svg",
+          "version": "version:3"
+        }
+      ],
+      "dependencies": [
+        "Build-Ubuntu-Clang-x86_64-Release-Vulkan"
+      ],
+      "dimensions": [
+        "gpu:8086:1926",
+        "os:Ubuntu-16.04",
+        "pool:Skia"
+      ],
+      "execution_timeout_ns": 14400000000000,
+      "expiration_ns": 72000000000000,
+      "extra_args": [
+        "--workdir",
+        "../../..",
+        "swarm_perf",
+        "repository=<(REPO)",
+        "buildername=Perf-Ubuntu16-Clang-NUC-GPU-IntelIris540-x86_64-Release-Vulkan",
+        "mastername=fake-master",
+        "buildnumber=2",
+        "slavename=fake-buildslave",
+        "nobuildbot=True",
+        "swarm_out_dir=${ISOLATED_OUTDIR}",
+        "revision=<(REVISION)",
+        "patch_storage=<(PATCH_STORAGE)",
+        "patch_issue=<(ISSUE)",
+        "patch_set=<(PATCHSET)"
+      ],
+      "io_timeout_ns": 2400000000000,
+      "isolate": "perf_skia.isolate",
+      "priority": 0.8
+    },
     "Perf-Win10-MSVC-Golo-GPU-GT610-x86_64-Release": {
       "cipd_packages": [
         {
@@ -10757,6 +10963,54 @@
       "isolate": "test_skia.isolate",
       "priority": 0.8
     },
+    "Test-Ubuntu16-Clang-NUC-GPU-IntelIris540-x86_64-Debug-Vulkan": {
+      "cipd_packages": [
+        {
+          "name": "skia/bots/skimage",
+          "path": "skimage",
+          "version": "version:18"
+        },
+        {
+          "name": "skia/bots/skp",
+          "path": "skp",
+          "version": "version:33"
+        },
+        {
+          "name": "skia/bots/svg",
+          "path": "svg",
+          "version": "version:3"
+        }
+      ],
+      "dependencies": [
+        "Build-Ubuntu-Clang-x86_64-Debug-Vulkan"
+      ],
+      "dimensions": [
+        "gpu:8086:1926",
+        "os:Ubuntu-16.04",
+        "pool:Skia"
+      ],
+      "execution_timeout_ns": 14400000000000,
+      "expiration_ns": 72000000000000,
+      "extra_args": [
+        "--workdir",
+        "../../..",
+        "swarm_test",
+        "repository=<(REPO)",
+        "buildername=Test-Ubuntu16-Clang-NUC-GPU-IntelIris540-x86_64-Debug-Vulkan",
+        "mastername=fake-master",
+        "buildnumber=2",
+        "slavename=fake-buildslave",
+        "nobuildbot=True",
+        "swarm_out_dir=${ISOLATED_OUTDIR}",
+        "revision=<(REVISION)",
+        "patch_storage=<(PATCH_STORAGE)",
+        "patch_issue=<(ISSUE)",
+        "patch_set=<(PATCHSET)"
+      ],
+      "io_timeout_ns": 2400000000000,
+      "isolate": "test_skia.isolate",
+      "priority": 0.8
+    },
     "Test-Ubuntu16-Clang-NUC-GPU-IntelIris540-x86_64-Release": {
       "cipd_packages": [
         {
@@ -10805,6 +11059,54 @@
       "isolate": "test_skia.isolate",
       "priority": 0.8
     },
+    "Test-Ubuntu16-Clang-NUC-GPU-IntelIris540-x86_64-Release-Vulkan": {
+      "cipd_packages": [
+        {
+          "name": "skia/bots/skimage",
+          "path": "skimage",
+          "version": "version:18"
+        },
+        {
+          "name": "skia/bots/skp",
+          "path": "skp",
+          "version": "version:33"
+        },
+        {
+          "name": "skia/bots/svg",
+          "path": "svg",
+          "version": "version:3"
+        }
+      ],
+      "dependencies": [
+        "Build-Ubuntu-Clang-x86_64-Release-Vulkan"
+      ],
+      "dimensions": [
+        "gpu:8086:1926",
+        "os:Ubuntu-16.04",
+        "pool:Skia"
+      ],
+      "execution_timeout_ns": 14400000000000,
+      "expiration_ns": 72000000000000,
+      "extra_args": [
+        "--workdir",
+        "../../..",
+        "swarm_test",
+        "repository=<(REPO)",
+        "buildername=Test-Ubuntu16-Clang-NUC-GPU-IntelIris540-x86_64-Release-Vulkan",
+        "mastername=fake-master",
+        "buildnumber=2",
+        "slavename=fake-buildslave",
+        "nobuildbot=True",
+        "swarm_out_dir=${ISOLATED_OUTDIR}",
+        "revision=<(REVISION)",
+        "patch_storage=<(PATCH_STORAGE)",
+        "patch_issue=<(ISSUE)",
+        "patch_set=<(PATCHSET)"
+      ],
+      "io_timeout_ns": 2400000000000,
+      "isolate": "test_skia.isolate",
+      "priority": 0.8
+    },
     "Test-Win10-MSVC-Golo-GPU-GT610-x86_64-Release": {
       "cipd_packages": [
         {
@@ -13293,6 +13595,35 @@
       "isolate": "upload_nano_results.isolate",
       "priority": 0.8
     },
+    "Upload-Perf-Ubuntu16-Clang-NUC-GPU-IntelIris540-x86_64-Release-Vulkan": {
+      "dependencies": [
+        "Perf-Ubuntu16-Clang-NUC-GPU-IntelIris540-x86_64-Release-Vulkan"
+      ],
+      "dimensions": [
+        "cpu:x86-64-avx2",
+        "gpu:none",
+        "os:Ubuntu-14.04",
+        "pool:Skia"
+      ],
+      "extra_args": [
+        "--workdir",
+        "../../..",
+        "upload_nano_results",
+        "repository=<(REPO)",
+        "buildername=Perf-Ubuntu16-Clang-NUC-GPU-IntelIris540-x86_64-Release-Vulkan",
+        "mastername=fake-master",
+        "buildnumber=2",
+        "slavename=fake-buildslave",
+        "nobuildbot=True",
+        "swarm_out_dir=${ISOLATED_OUTDIR}",
+        "revision=<(REVISION)",
+        "patch_storage=<(PATCH_STORAGE)",
+        "patch_issue=<(ISSUE)",
+        "patch_set=<(PATCHSET)"
+      ],
+      "isolate": "upload_nano_results.isolate",
+      "priority": 0.8
+    },
     "Upload-Perf-Win10-MSVC-Golo-GPU-GT610-x86_64-Release": {
       "dependencies": [
         "Perf-Win10-MSVC-Golo-GPU-GT610-x86_64-Release"
@@ -15265,6 +15596,35 @@
       "isolate": "upload_dm_results.isolate",
       "priority": 0.8
     },
+    "Upload-Test-Ubuntu16-Clang-NUC-GPU-IntelIris540-x86_64-Debug-Vulkan": {
+      "dependencies": [
+        "Test-Ubuntu16-Clang-NUC-GPU-IntelIris540-x86_64-Debug-Vulkan"
+      ],
+      "dimensions": [
+        "cpu:x86-64-avx2",
+        "gpu:none",
+        "os:Ubuntu-14.04",
+        "pool:Skia"
+      ],
+      "extra_args": [
+        "--workdir",
+        "../../..",
+        "upload_dm_results",
+        "repository=<(REPO)",
+        "buildername=Test-Ubuntu16-Clang-NUC-GPU-IntelIris540-x86_64-Debug-Vulkan",
+        "mastername=fake-master",
+        "buildnumber=2",
+        "slavename=fake-buildslave",
+        "nobuildbot=True",
+        "swarm_out_dir=${ISOLATED_OUTDIR}",
+        "revision=<(REVISION)",
+        "patch_storage=<(PATCH_STORAGE)",
+        "patch_issue=<(ISSUE)",
+        "patch_set=<(PATCHSET)"
+      ],
+      "isolate": "upload_dm_results.isolate",
+      "priority": 0.8
+    },
     "Upload-Test-Ubuntu16-Clang-NUC-GPU-IntelIris540-x86_64-Release": {
       "dependencies": [
         "Test-Ubuntu16-Clang-NUC-GPU-IntelIris540-x86_64-Release"
@@ -15294,6 +15654,35 @@
       "isolate": "upload_dm_results.isolate",
       "priority": 0.8
     },
+    "Upload-Test-Ubuntu16-Clang-NUC-GPU-IntelIris540-x86_64-Release-Vulkan": {
+      "dependencies": [
+        "Test-Ubuntu16-Clang-NUC-GPU-IntelIris540-x86_64-Release-Vulkan"
+      ],
+      "dimensions": [
+        "cpu:x86-64-avx2",
+        "gpu:none",
+        "os:Ubuntu-14.04",
+        "pool:Skia"
+      ],
+      "extra_args": [
+        "--workdir",
+        "../../..",
+        "upload_dm_results",
+        "repository=<(REPO)",
+        "buildername=Test-Ubuntu16-Clang-NUC-GPU-IntelIris540-x86_64-Release-Vulkan",
+        "mastername=fake-master",
+        "buildnumber=2",
+        "slavename=fake-buildslave",
+        "nobuildbot=True",
+        "swarm_out_dir=${ISOLATED_OUTDIR}",
+        "revision=<(REVISION)",
+        "patch_storage=<(PATCH_STORAGE)",
+        "patch_issue=<(ISSUE)",
+        "patch_set=<(PATCHSET)"
+      ],
+      "isolate": "upload_dm_results.isolate",
+      "priority": 0.8
+    },
     "Upload-Test-Win10-MSVC-Golo-GPU-GT610-x86_64-Release": {
       "dependencies": [
         "Test-Win10-MSVC-Golo-GPU-GT610-x86_64-Release"