diff --git a/AndroidGen.mk b/AndroidGen.mk
index 60ee1ae582..0e621aa7c3 100644
--- a/AndroidGen.mk
+++ b/AndroidGen.mk
@@ -58,6 +58,7 @@ LOCAL_SRC_FILES := \
external/vulkancts/framework/vulkan/vkWsiUtil.cpp \
external/vulkancts/framework/vulkan/vkYCbCrImageWithMemory.cpp \
external/vulkancts/modules/vulkan/amber/vktAmberExampleTests.cpp \
+ external/vulkancts/modules/vulkan/amber/vktAmberGraphicsFuzzTests.cpp \
external/vulkancts/modules/vulkan/amber/vktAmberHelper.cpp \
external/vulkancts/modules/vulkan/amber/vktAmberTestCase.cpp \
external/vulkancts/modules/vulkan/api/vktApiBufferAndImageAllocationUtil.cpp \
@@ -367,9 +368,6 @@ LOCAL_SRC_FILES := \
external/vulkancts/modules/vulkan/ubo/vktUniformBlockTests.cpp \
external/vulkancts/modules/vulkan/util/vktDrawUtil.cpp \
external/vulkancts/modules/vulkan/util/vktExternalMemoryUtil.cpp \
- external/vulkancts/modules/vulkan/vkrunner/vktVkRunnerExampleTests.cpp \
- external/vulkancts/modules/vulkan/vkrunner/vktVkRunnerGraphicsFuzzTests.cpp \
- external/vulkancts/modules/vulkan/vkrunner/vktVkRunnerTestCase.cpp \
external/vulkancts/modules/vulkan/vktInfoTests.cpp \
external/vulkancts/modules/vulkan/vktShaderLibrary.cpp \
external/vulkancts/modules/vulkan/vktTestCase.cpp \
@@ -1110,7 +1108,6 @@ LOCAL_C_INCLUDES := \
$(deqp_dir)/external/vulkancts/modules/vulkan/texture \
$(deqp_dir)/external/vulkancts/modules/vulkan/ubo \
$(deqp_dir)/external/vulkancts/modules/vulkan/util \
- $(deqp_dir)/external/vulkancts/modules/vulkan/vkrunner \
$(deqp_dir)/external/vulkancts/modules/vulkan/wsi \
$(deqp_dir)/external/vulkancts/modules/vulkan/ycbcr \
$(deqp_dir)/framework/common \
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 666526b9d5..15c2464c26 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -88,10 +88,6 @@ add_subdirectory(external/glslang)
# spirv-tools
add_subdirectory(external/spirv-tools)
-# VkRunner
-add_subdirectory(external/vkrunner)
-include_directories(external/vkrunner/src)
-
# spirv-headers
set(SPIRV_INCLUDE_PATH "${PROJECT_SOURCE_DIR}/external/spirv-headers/src/include")
if (NOT EXISTS ${SPIRV_INCLUDE_PATH})
diff --git a/android/cts/master/src/vk-excluded-tests.txt b/android/cts/master/src/vk-excluded-tests.txt
index dbcb91ae9d..c33928a33a 100644
--- a/android/cts/master/src/vk-excluded-tests.txt
+++ b/android/cts/master/src/vk-excluded-tests.txt
@@ -65,8 +65,5 @@ dEQP-VK.wsi.android.shared_presentable_image.scale_down.*
# Issue: b/67022169
dEQP-VK.wsi.android.incremental_present.scale_down.*
-# Excluded VkRunner example tests
-dEQP-VK.vkrunner-example.*
-
# Exclude Amber example tests
dEQP-VK.amber-example.*
diff --git a/external/fetch_sources.py b/external/fetch_sources.py
index baa9637920..540e30ac97 100644
--- a/external/fetch_sources.py
+++ b/external/fetch_sources.py
@@ -328,11 +328,6 @@ def postExtractLibpng (path):
None,
"d3752ea20886d2fceb6cecda3c2b146a8f22d214",
"spirv-headers"),
- GitRepo(
- "https://github.com/Igalia/vkrunner.git",
- None,
- "79229ee3662da691240bde7fb6c6578e0e10e3f1",
- "vkrunner"),
GitRepo(
"https://github.com/google/amber.git",
None,
diff --git a/external/vkrunner/.gitignore b/external/vkrunner/.gitignore
deleted file mode 100644
index 85de9cf933..0000000000
--- a/external/vkrunner/.gitignore
+++ /dev/null
@@ -1 +0,0 @@
-src
diff --git a/external/vkrunner/CMakeLists.txt b/external/vkrunner/CMakeLists.txt
deleted file mode 100644
index 727f9810ba..0000000000
--- a/external/vkrunner/CMakeLists.txt
+++ /dev/null
@@ -1,16 +0,0 @@
-# cmake file for VkRunner
-
-include(CheckCCompilerFlag)
-
-foreach(FLAG -std=c99 -Wno-extra -Wno-pedantic -Wno-conversion -Wno-shadow)
- string(REGEX REPLACE "[=-]" "_" FLAG_VAR "${FLAG}")
- CHECK_C_COMPILER_FLAG("${FLAG}" HAVE_FLAG_${FLAG_VAR})
- if(${HAVE_FLAG_${FLAG_VAR}})
- add_definitions("${FLAG}")
- endif()
-endforeach()
-
-set(VULKAN_HEADER "\"vkDefs.h\"")
-add_definitions("-D_DEFAULT_SOURCE")
-include_directories(../../external/vulkancts/framework/vulkan/)
-add_subdirectory(src)
diff --git a/external/vulkancts/data/vulkan/vkrunner/graphicsfuzz/continue-and-merge.shader_test b/external/vulkancts/data/vulkan/amber/graphicsfuzz/continue-and-merge.amber
similarity index 100%
rename from external/vulkancts/data/vulkan/vkrunner/graphicsfuzz/continue-and-merge.shader_test
rename to external/vulkancts/data/vulkan/amber/graphicsfuzz/continue-and-merge.amber
diff --git a/external/vulkancts/data/vulkan/vkrunner/graphicsfuzz/control-flow-switch.shader_test b/external/vulkancts/data/vulkan/amber/graphicsfuzz/control-flow-switch.amber
similarity index 100%
rename from external/vulkancts/data/vulkan/vkrunner/graphicsfuzz/control-flow-switch.shader_test
rename to external/vulkancts/data/vulkan/amber/graphicsfuzz/control-flow-switch.amber
diff --git a/external/vulkancts/data/vulkan/vkrunner/graphicsfuzz/dead-struct-init.shader_test b/external/vulkancts/data/vulkan/amber/graphicsfuzz/dead-struct-init.amber
similarity index 100%
rename from external/vulkancts/data/vulkan/vkrunner/graphicsfuzz/dead-struct-init.shader_test
rename to external/vulkancts/data/vulkan/amber/graphicsfuzz/dead-struct-init.amber
diff --git a/external/vulkancts/data/vulkan/vkrunner/graphicsfuzz/fragcoord-control-flow-2.shader_test b/external/vulkancts/data/vulkan/amber/graphicsfuzz/fragcoord-control-flow-2.amber
similarity index 100%
rename from external/vulkancts/data/vulkan/vkrunner/graphicsfuzz/fragcoord-control-flow-2.shader_test
rename to external/vulkancts/data/vulkan/amber/graphicsfuzz/fragcoord-control-flow-2.amber
diff --git a/external/vulkancts/data/vulkan/vkrunner/graphicsfuzz/fragcoord-control-flow.shader_test b/external/vulkancts/data/vulkan/amber/graphicsfuzz/fragcoord-control-flow.amber
similarity index 100%
rename from external/vulkancts/data/vulkan/vkrunner/graphicsfuzz/fragcoord-control-flow.shader_test
rename to external/vulkancts/data/vulkan/amber/graphicsfuzz/fragcoord-control-flow.amber
diff --git a/external/vulkancts/data/vulkan/vkrunner/graphicsfuzz/mat-array-deep-control-flow.shader_test b/external/vulkancts/data/vulkan/amber/graphicsfuzz/mat-array-deep-control-flow.amber
similarity index 100%
rename from external/vulkancts/data/vulkan/vkrunner/graphicsfuzz/mat-array-deep-control-flow.shader_test
rename to external/vulkancts/data/vulkan/amber/graphicsfuzz/mat-array-deep-control-flow.amber
diff --git a/external/vulkancts/data/vulkan/vkrunner/graphicsfuzz/mat-array-distance.shader_test b/external/vulkancts/data/vulkan/amber/graphicsfuzz/mat-array-distance.amber
similarity index 100%
rename from external/vulkancts/data/vulkan/vkrunner/graphicsfuzz/mat-array-distance.shader_test
rename to external/vulkancts/data/vulkan/amber/graphicsfuzz/mat-array-distance.amber
diff --git a/external/vulkancts/data/vulkan/vkrunner/graphicsfuzz/pow-vec4.shader_test b/external/vulkancts/data/vulkan/amber/graphicsfuzz/pow-vec4.amber
similarity index 100%
rename from external/vulkancts/data/vulkan/vkrunner/graphicsfuzz/pow-vec4.shader_test
rename to external/vulkancts/data/vulkan/amber/graphicsfuzz/pow-vec4.amber
diff --git a/external/vulkancts/data/vulkan/vkrunner/graphicsfuzz/swizzle-struct-init-min.shader_test b/external/vulkancts/data/vulkan/amber/graphicsfuzz/swizzle-struct-init-min.amber
similarity index 100%
rename from external/vulkancts/data/vulkan/vkrunner/graphicsfuzz/swizzle-struct-init-min.shader_test
rename to external/vulkancts/data/vulkan/amber/graphicsfuzz/swizzle-struct-init-min.amber
diff --git a/external/vulkancts/data/vulkan/vkrunner/graphicsfuzz/while-inside-switch.shader_test b/external/vulkancts/data/vulkan/amber/graphicsfuzz/while-inside-switch.amber
similarity index 100%
rename from external/vulkancts/data/vulkan/vkrunner/graphicsfuzz/while-inside-switch.shader_test
rename to external/vulkancts/data/vulkan/amber/graphicsfuzz/while-inside-switch.amber
diff --git a/external/vulkancts/data/vulkan/vkrunner/example/spirv.shader_test b/external/vulkancts/data/vulkan/vkrunner/example/spirv.shader_test
deleted file mode 100644
index c1f932a75e..0000000000
--- a/external/vulkancts/data/vulkan/vkrunner/example/spirv.shader_test
+++ /dev/null
@@ -1,117 +0,0 @@
-[vertex shader spirv]
- OpCapability Shader
- %1 = OpExtInstImport "GLSL.std.450"
- OpMemoryModel Logical GLSL450
- OpEntryPoint Vertex %main "main" %_ %pos %norm_coord
- OpSource GLSL 430
- OpName %main "main"
- OpName %gl_PerVertex "gl_PerVertex"
- OpMemberName %gl_PerVertex 0 "gl_Position"
- OpName %_ ""
- OpName %pos "pos"
- OpName %norm_coord "norm_coord"
- OpMemberDecorate %gl_PerVertex 0 BuiltIn Position
- OpDecorate %gl_PerVertex Block
- OpDecorate %pos Location 0
- OpDecorate %norm_coord Location 0
- %void = OpTypeVoid
- %3 = OpTypeFunction %void
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
- %uint = OpTypeInt 32 0
- %uint_1 = OpConstant %uint 1
-%_arr_float_uint_1 = OpTypeArray %float %uint_1
-%gl_PerVertex = OpTypeStruct %v4float
-%_ptr_Output_gl_PerVertex = OpTypePointer Output %gl_PerVertex
- %_ = OpVariable %_ptr_Output_gl_PerVertex Output
- %int = OpTypeInt 32 1
- %int_0 = OpConstant %int 0
-%_ptr_Input_v4float = OpTypePointer Input %v4float
- %pos = OpVariable %_ptr_Input_v4float Input
-%_ptr_Output_v4float = OpTypePointer Output %v4float
- %norm_coord = OpVariable %_ptr_Output_v4float Output
- %main = OpFunction %void None %3
- %5 = OpLabel
- %18 = OpLoad %v4float %pos
- %20 = OpAccessChain %_ptr_Output_v4float %_ %int_0
- OpStore %20 %18
- OpStore %norm_coord %18
- OpReturn
- OpFunctionEnd
-
-[fragment shader spirv]
- OpCapability Shader
- %1 = OpExtInstImport "GLSL.std.450"
- OpMemoryModel Logical GLSL450
- OpEntryPoint Fragment %main "main" %color %norm_coord
- OpExecutionMode %main OriginUpperLeft
- OpSource GLSL 430
- OpName %main "main"
- OpName %color "color"
- OpName %norm_coord "norm_coord"
- OpDecorate %color Location 0
- OpDecorate %norm_coord Location 0
- %void = OpTypeVoid
- %3 = OpTypeFunction %void
- %float = OpTypeFloat 32
- %v4float = OpTypeVector %float 4
-%_ptr_Output_v4float = OpTypePointer Output %v4float
- %color = OpVariable %_ptr_Output_v4float Output
- %v2float = OpTypeVector %float 2
- %float_1 = OpConstant %float 1
- %12 = OpConstantComposite %v2float %float_1 %float_1
- %bool = OpTypeBool
-%_ptr_Input_v4float = OpTypePointer Input %v4float
- %norm_coord = OpVariable %_ptr_Input_v4float Input
- %uint = OpTypeInt 32 0
- %uint_0 = OpConstant %uint 0
-%_ptr_Input_float = OpTypePointer Input %float
- %float_0_1 = OpConstant %float 0.1
- %uint_1 = OpConstant %uint 1
- %float_0 = OpConstant %float 0
- %38 = OpConstantComposite %v2float %float_0 %float_0
- %main = OpFunction %void None %3
- %5 = OpLabel
- %13 = OpLoad %v4float %color
- %14 = OpVectorShuffle %v4float %13 %12 4 1 2 5
- OpStore %color %14
- %21 = OpAccessChain %_ptr_Input_float %norm_coord %uint_0
- %22 = OpLoad %float %21
- %23 = OpExtInst %float %1 FAbs %22
- %25 = OpFOrdLessThan %bool %23 %float_0_1
- %26 = OpLogicalNot %bool %25
- OpSelectionMerge %28 None
- OpBranchConditional %26 %27 %28
- %27 = OpLabel
- %30 = OpAccessChain %_ptr_Input_float %norm_coord %uint_1
- %31 = OpLoad %float %30
- %32 = OpExtInst %float %1 FAbs %31
- %33 = OpFOrdLessThan %bool %32 %float_0_1
- OpBranch %28
- %28 = OpLabel
- %34 = OpPhi %bool %25 %5 %33 %27
- OpSelectionMerge %36 None
- OpBranchConditional %34 %35 %41
- %35 = OpLabel
- %39 = OpLoad %v4float %color
- %40 = OpVectorShuffle %v4float %39 %38 0 4 5 3
- OpStore %color %40
- OpBranch %36
- %41 = OpLabel
- %42 = OpLoad %v4float %color
- %43 = OpVectorShuffle %v4float %42 %12 0 4 5 3
- OpStore %color %43
- OpBranch %36
- %36 = OpLabel
- OpReturn
- OpFunctionEnd
-
-[test]
-draw rect -1 -1 2 2
-
-probe rect rgba (0, 0, 11, 11) (1, 1, 1, 1)
-probe rect rgba (138, 0, 112, 11) (1, 1, 1, 1)
-probe rect rgba (0, 138, 11, 112) (1, 1, 1, 1)
-probe rect rgba (138, 138, 112, 112) (1, 1, 1, 1)
-probe rect rgba (114, 0, 23, 250) (1, 0, 0, 1)
-probe rect rgba (0, 114, 250, 23) (1, 0, 0, 1)
diff --git a/external/vulkancts/data/vulkan/vkrunner/example/sqrt.shader_test b/external/vulkancts/data/vulkan/vkrunner/example/sqrt.shader_test
deleted file mode 100644
index 9a1fb1d9fd..0000000000
--- a/external/vulkancts/data/vulkan/vkrunner/example/sqrt.shader_test
+++ /dev/null
@@ -1,29 +0,0 @@
-[compute shader]
-#version 450
-
-layout(std140, push_constant) uniform push_constants {
- float in_value;
-};
-
-layout(std140, binding = 0) buffer ssbo {
- float out_value;
-};
-
-void
-main()
-{
- out_value = sqrt(in_value);
-}
-
-[test]
-# Allocate an ssbo big enough for a float at binding 0
-ssbo 0 4
-
-# Set the push constant as an input value
-uniform float 0
-
-compute 1 1 1
-
-# Probe that we got the expected value
-tolerance 0.00006% 0.00006% 0.00006% 0.00006%
-probe ssbo float 0 0 ~=