diff --git a/src/Vulkan/swiftshader_icd.def b/src/Vulkan/swiftshader_icd.def
index 2b4f9c7..86ab4ce 100644
--- a/src/Vulkan/swiftshader_icd.def
+++ b/src/Vulkan/swiftshader_icd.def
@@ -1,3 +1,209 @@
-LIBRARY vk_swiftshader.dll
-EXPORTS
-	vk_icdGetInstanceProcAddr
+LIBRARY vk_swiftshader
+EXPORTS
+	; Mandatory ICD entry function
+	vk_icdGetInstanceProcAddr
+
+	; Optional Vulkan API entry functions
+	vkCreateInstance
+	vkDestroyInstance
+	vkEnumeratePhysicalDevices
+	vkGetPhysicalDeviceFeatures
+	vkGetPhysicalDeviceFormatProperties
+	vkGetPhysicalDeviceImageFormatProperties
+	vkGetPhysicalDeviceProperties
+	vkGetPhysicalDeviceQueueFamilyProperties
+	vkGetPhysicalDeviceMemoryProperties
+	vkGetInstanceProcAddr
+	vkGetDeviceProcAddr
+	vkCreateDevice
+	vkDestroyDevice
+	vkEnumerateInstanceExtensionProperties
+	vkEnumerateDeviceExtensionProperties
+	vkEnumerateInstanceLayerProperties
+	vkEnumerateDeviceLayerProperties
+	vkGetDeviceQueue
+	vkQueueSubmit
+	vkQueueWaitIdle
+	vkDeviceWaitIdle
+	vkAllocateMemory
+	vkFreeMemory
+	vkMapMemory
+	vkUnmapMemory
+	vkFlushMappedMemoryRanges
+	vkInvalidateMappedMemoryRanges
+	vkGetDeviceMemoryCommitment
+	vkBindBufferMemory
+	vkBindImageMemory
+	vkGetBufferMemoryRequirements
+	vkGetImageMemoryRequirements
+	vkGetImageSparseMemoryRequirements
+	vkGetPhysicalDeviceSparseImageFormatProperties
+	vkQueueBindSparse
+	vkCreateFence
+	vkDestroyFence
+	vkResetFences
+	vkGetFenceStatus
+	vkWaitForFences
+	vkCreateSemaphore
+	vkDestroySemaphore
+	vkCreateEvent
+	vkDestroyEvent
+	vkGetEventStatus
+	vkSetEvent
+	vkResetEvent
+	vkCreateQueryPool
+	vkDestroyQueryPool
+	vkGetQueryPoolResults
+	vkCreateBuffer
+	vkDestroyBuffer
+	vkCreateBufferView
+	vkDestroyBufferView
+	vkCreateImage
+	vkDestroyImage
+	vkGetImageSubresourceLayout
+	vkCreateImageView
+	vkDestroyImageView
+	vkCreateShaderModule
+	vkDestroyShaderModule
+	vkCreatePipelineCache
+	vkDestroyPipelineCache
+	vkGetPipelineCacheData
+	vkMergePipelineCaches
+	vkCreateGraphicsPipelines
+	vkCreateComputePipelines
+	vkDestroyPipeline
+	vkCreatePipelineLayout
+	vkDestroyPipelineLayout
+	vkCreateSampler
+	vkDestroySampler
+	vkCreateDescriptorSetLayout
+	vkDestroyDescriptorSetLayout
+	vkCreateDescriptorPool
+	vkDestroyDescriptorPool
+	vkResetDescriptorPool
+	vkAllocateDescriptorSets
+	vkFreeDescriptorSets
+	vkUpdateDescriptorSets
+	vkCreateFramebuffer
+	vkDestroyFramebuffer
+	vkCreateRenderPass
+	vkDestroyRenderPass
+	vkGetRenderAreaGranularity
+	vkCreateCommandPool
+	vkDestroyCommandPool
+	vkResetCommandPool
+	vkAllocateCommandBuffers
+	vkFreeCommandBuffers
+	vkBeginCommandBuffer
+	vkEndCommandBuffer
+	vkResetCommandBuffer
+	vkCmdBindPipeline
+	vkCmdSetViewport
+	vkCmdSetScissor
+	vkCmdSetLineWidth
+	vkCmdSetDepthBias
+	vkCmdSetBlendConstants
+	vkCmdSetDepthBounds
+	vkCmdSetStencilCompareMask
+	vkCmdSetStencilWriteMask
+	vkCmdSetStencilReference
+	vkCmdBindDescriptorSets
+	vkCmdBindIndexBuffer
+	vkCmdBindVertexBuffers
+	vkCmdDraw
+	vkCmdDrawIndexed
+	vkCmdDrawIndirect
+	vkCmdDrawIndexedIndirect
+	vkCmdDispatch
+	vkCmdDispatchIndirect
+	vkCmdCopyBuffer
+	vkCmdCopyImage
+	vkCmdBlitImage
+	vkCmdCopyBufferToImage
+	vkCmdCopyImageToBuffer
+	vkCmdUpdateBuffer
+	vkCmdFillBuffer
+	vkCmdClearColorImage
+	vkCmdClearDepthStencilImage
+	vkCmdClearAttachments
+	vkCmdResolveImage
+	vkCmdSetEvent
+	vkCmdResetEvent
+	vkCmdWaitEvents
+	vkCmdPipelineBarrier
+	vkCmdBeginQuery
+	vkCmdEndQuery
+	vkCmdResetQueryPool
+	vkCmdWriteTimestamp
+	vkCmdCopyQueryPoolResults
+	vkCmdPushConstants
+	vkCmdBeginRenderPass
+	vkCmdNextSubpass
+	vkCmdEndRenderPass
+	vkCmdExecuteCommands
+	vkEnumerateInstanceVersion
+	vkBindBufferMemory2
+	vkBindImageMemory2
+	vkGetDeviceGroupPeerMemoryFeatures
+	vkCmdSetDeviceMask
+	vkCmdDispatchBase
+	vkEnumeratePhysicalDeviceGroups
+	vkGetImageMemoryRequirements2
+	vkGetBufferMemoryRequirements2
+	vkGetImageSparseMemoryRequirements2
+	vkGetPhysicalDeviceFeatures2
+	vkGetPhysicalDeviceProperties2
+	vkGetPhysicalDeviceFormatProperties2
+	vkGetPhysicalDeviceImageFormatProperties2
+	vkGetPhysicalDeviceQueueFamilyProperties2
+	vkGetPhysicalDeviceMemoryProperties2
+	vkGetPhysicalDeviceSparseImageFormatProperties2
+	vkTrimCommandPool
+	vkGetDeviceQueue2
+	vkCreateSamplerYcbcrConversion
+	vkDestroySamplerYcbcrConversion
+	vkCreateDescriptorUpdateTemplate
+	vkDestroyDescriptorUpdateTemplate
+	vkUpdateDescriptorSetWithTemplate
+	vkGetPhysicalDeviceExternalBufferProperties
+	vkGetPhysicalDeviceExternalFenceProperties
+	vkGetPhysicalDeviceExternalSemaphoreProperties
+	vkGetDescriptorSetLayoutSupport
+	; VK_KHR_bind_memory2
+	vkBindBufferMemory2KHR
+	vkBindImageMemory2KHR
+	; VK_KHR_descriptor_update_template
+	vkCreateDescriptorUpdateTemplateKHR
+	vkDestroyDescriptorUpdateTemplateKHR
+	vkUpdateDescriptorSetWithTemplateKHR
+	; VK_KHR_device_group
+	vkGetDeviceGroupPeerMemoryFeaturesKHR
+	vkCmdSetDeviceMaskKHR
+	vkCmdDispatchBaseKHR
+	; VK_KHR_device_group_creation
+	vkEnumeratePhysicalDeviceGroupsKHR
+	; VK_KHR_external_fence_capabilities
+	vkGetPhysicalDeviceExternalFencePropertiesKHR
+	; VK_KHR_external_memory_capabilities
+	vkGetPhysicalDeviceExternalBufferPropertiesKHR
+	; VK_KHR_external_semaphore_capabilities
+	vkGetPhysicalDeviceExternalSemaphorePropertiesKHR
+	; VK_KHR_get_memory_requirements2
+	vkGetImageMemoryRequirements2KHR
+	vkGetBufferMemoryRequirements2KHR
+	vkGetImageSparseMemoryRequirements2KHR
+	; VK_KHR_get_physical_device_properties2
+	vkGetPhysicalDeviceFeatures2KHR
+	vkGetPhysicalDeviceProperties2KHR
+	vkGetPhysicalDeviceFormatProperties2KHR
+	vkGetPhysicalDeviceImageFormatProperties2KHR
+	vkGetPhysicalDeviceQueueFamilyProperties2KHR
+	vkGetPhysicalDeviceMemoryProperties2KHR
+	vkGetPhysicalDeviceSparseImageFormatProperties2KHR
+	; VK_KHR_maintenance1
+	vkTrimCommandPoolKHR
+	; VK_KHR_maintenance3
+	vkGetDescriptorSetLayoutSupportKHR
+	; VK_KHR_sampler_ycbcr_conversion
+	vkCreateSamplerYcbcrConversionKHR
+	vkDestroySamplerYcbcrConversionKHR
diff --git a/tests/GLESUnitTests/unittests.cpp b/tests/GLESUnitTests/unittests.cpp
index e51bf99..a1ea0b6 100644
--- a/tests/GLESUnitTests/unittests.cpp
+++ b/tests/GLESUnitTests/unittests.cpp
@@ -353,22 +353,22 @@
 {
 	Initialize(3, false);
 
-	GLfloat zero_float = 0;
-	GLuint renderbuffer;
-	glGenRenderbuffers(1, &renderbuffer);
-	GLuint framebuffer;
-	glGenFramebuffers(1, &framebuffer);
-
-	glBindRenderbuffer(GL_RENDERBUFFER, renderbuffer);
-	EXPECT_GLENUM_EQ(GL_NO_ERROR, glGetError());
-	glRenderbufferStorage(GL_RENDERBUFFER, GL_R8I, 43, 27);
-	EXPECT_GLENUM_EQ(GL_NO_ERROR, glGetError());
-	glBindFramebuffer(GL_READ_FRAMEBUFFER, framebuffer);
-	EXPECT_GLENUM_EQ(GL_NO_ERROR, glGetError());
-	glFramebufferRenderbuffer(GL_READ_FRAMEBUFFER, GL_DEPTH_ATTACHMENT, GL_RENDERBUFFER, renderbuffer);
-	EXPECT_GLENUM_EQ(GL_NO_ERROR, glGetError());
-	glBindFramebuffer(GL_FRAMEBUFFER, framebuffer);
-	EXPECT_GLENUM_EQ(GL_NO_ERROR, glGetError());
+	GLfloat zero_float = 0;
+	GLuint renderbuffer;
+	glGenRenderbuffers(1, &renderbuffer);
+	GLuint framebuffer;
+	glGenFramebuffers(1, &framebuffer);
+
+	glBindRenderbuffer(GL_RENDERBUFFER, renderbuffer);
+	EXPECT_GLENUM_EQ(GL_NO_ERROR, glGetError());
+	glRenderbufferStorage(GL_RENDERBUFFER, GL_R8I, 43, 27);
+	EXPECT_GLENUM_EQ(GL_NO_ERROR, glGetError());
+	glBindFramebuffer(GL_READ_FRAMEBUFFER, framebuffer);
+	EXPECT_GLENUM_EQ(GL_NO_ERROR, glGetError());
+	glFramebufferRenderbuffer(GL_READ_FRAMEBUFFER, GL_DEPTH_ATTACHMENT, GL_RENDERBUFFER, renderbuffer);
+	EXPECT_GLENUM_EQ(GL_NO_ERROR, glGetError());
+	glBindFramebuffer(GL_FRAMEBUFFER, framebuffer);
+	EXPECT_GLENUM_EQ(GL_NO_ERROR, glGetError());
 	glClearBufferfv(GL_DEPTH, 0, &zero_float);
 	EXPECT_GLENUM_EQ(GL_INVALID_FRAMEBUFFER_OPERATION, glGetError());
 
diff --git a/tests/VulkanUnitTests/VulkanUnitTests.vcxproj b/tests/VulkanUnitTests/VulkanUnitTests.vcxproj
index ff72789..7ef53e9 100644
--- a/tests/VulkanUnitTests/VulkanUnitTests.vcxproj
+++ b/tests/VulkanUnitTests/VulkanUnitTests.vcxproj
@@ -102,11 +102,8 @@
     <ClCompile Include="unittests.cpp" />
   </ItemGroup>
   <ItemGroup>
-    <ProjectReference Include="..\..\src\OpenGL\libEGL\libEGL.vcxproj">
-      <Project>{e746fca9-64c3-433e-85e8-9a5a67ab7ed6}</Project>
-    </ProjectReference>
-    <ProjectReference Include="..\..\src\OpenGL\libGLESv2\libGLESv2.vcxproj">
-      <Project>{b5871a7a-968c-42e3-a33b-981e6f448e78}</Project>
+    <ProjectReference Include="..\..\src\Vulkan\vulkan.vcxproj">
+      <Project>{e1c34b66-c942-4b9a-b8c3-9a12625650d3}</Project>
     </ProjectReference>
   </ItemGroup>
   <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
diff --git a/tests/VulkanUnitTests/unittests.cpp b/tests/VulkanUnitTests/unittests.cpp
index cbe1fb2..cf4e8e9 100644
--- a/tests/VulkanUnitTests/unittests.cpp
+++ b/tests/VulkanUnitTests/unittests.cpp
@@ -1,4 +1,4 @@
-// Copyright 2017 The SwiftShader Authors. All Rights Reserved.
+// Copyright 2018 The SwiftShader Authors. All Rights Reserved.
 //
 // Licensed under the Apache License, Version 2.0 (the "License");
 // you may not use this file except in compliance with the License.
@@ -12,7 +12,7 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-// OpenGL ES unit tests that provide coverage for functionality not tested by
+// Vulkan unit tests that provide coverage for functionality not tested by
 // the dEQP test suite. Also used as a smoke test.
 
 #include "gtest/gtest.h"
@@ -39,16 +39,12 @@
 
 		#if defined(_WIN64)
 			#if defined(NDEBUG)
-				libVulkanName = "..\\..\\..\\vulkan\\x64\\Release\\vk_swiftshader.dll";
+				libVulkanName = "../../out/Release_x64/vk_swiftshader.dll";
 			#else
-				libVulkanName = "..\\..\\..\\vulkan\\x64\\Debug\\vk_swiftshader.dll";
+				libVulkanName = "../../out/Debug_x64/vk_swiftshader.dll";
 			#endif
-		#elif defined(_WIN32)
-			#if defined(NDEBUG)
-				libVulkanName = "..\\..\\..\\vulkan\\Win32\\Release\\vk_swiftshader.dll";
-			#else
-				libVulkanName = "..\\..\\..\\vulkan\\Win32\\Debug\\vk_swiftshader.dll";
-			#endif
+		#else
+			#error Unimplemented platform
 		#endif
 
 		#if defined(_WIN32)
@@ -282,48 +278,36 @@
 
 TEST_F(SwiftShaderVulkanTest, Version)
 {
-	if(vk_icdGetInstanceProcAddr)
+	const VkInstanceCreateInfo createInfo =
 	{
-		auto vkCreateInstance = (PFN_vkCreateInstance)vk_icdGetInstanceProcAddr(VK_NULL_HANDLE, "vkCreateInstance");
-		EXPECT_NE(vkCreateInstance, nullptr);
+		VK_STRUCTURE_TYPE_INSTANCE_CREATE_INFO, // sType
+		nullptr, // pNext
+		0,       // flags
+		nullptr, // pApplicationInfo
+		0,       // enabledLayerCount
+		nullptr, // ppEnabledLayerNames
+		0,       // enabledExtensionCount
+		nullptr, // ppEnabledExtensionNames
+	};
+	VkInstance instance;
+	VkResult result = vkCreateInstance(&createInfo, nullptr, &instance);
+	EXPECT_EQ(result, VK_SUCCESS);
 
-		const VkInstanceCreateInfo createInfo = 
-		{
-				VK_STRUCTURE_TYPE_INSTANCE_CREATE_INFO, // sType
-				nullptr, // pNext
-				0, // flags
-				nullptr, // pApplicationInfo
-				0, // enabledLayerCount
-				nullptr, // ppEnabledLayerNames
-				0, // enabledExtensionCount
-				nullptr, // ppEnabledExtensionNames
-		};
-		VkInstance instance;
-		VkResult result = vkCreateInstance(&createInfo, nullptr, &instance);
-		EXPECT_EQ(result, VK_SUCCESS);
+	uint32_t pPhysicalDeviceCount = 0;
+	result = vkEnumeratePhysicalDevices(instance, &pPhysicalDeviceCount, nullptr);
+	EXPECT_EQ(result, VK_SUCCESS);
+	EXPECT_EQ(pPhysicalDeviceCount, 1);
 
-		auto vkEnumeratePhysicalDevices = (PFN_vkEnumeratePhysicalDevices)vk_icdGetInstanceProcAddr(VK_NULL_HANDLE, "vkEnumeratePhysicalDevices");
-		EXPECT_NE(vkEnumeratePhysicalDevices, nullptr);
+	VkPhysicalDevice pPhysicalDevice = VK_NULL_HANDLE;
+	result = vkEnumeratePhysicalDevices(instance, &pPhysicalDeviceCount, &pPhysicalDevice);
+	EXPECT_EQ(result, VK_SUCCESS);
+	EXPECT_NE(pPhysicalDevice, (VkPhysicalDevice)VK_NULL_HANDLE);
 
-		uint32_t pPhysicalDeviceCount = 0;
-		result = vkEnumeratePhysicalDevices(instance, &pPhysicalDeviceCount, nullptr);
-		EXPECT_EQ(result, VK_SUCCESS);
-		EXPECT_EQ(pPhysicalDeviceCount, 1);
+	VkPhysicalDeviceProperties physicalDeviceProperties;
+	vkGetPhysicalDeviceProperties(pPhysicalDevice, &physicalDeviceProperties);
+	EXPECT_EQ(physicalDeviceProperties.apiVersion, VK_API_VERSION_1_1);
+	EXPECT_EQ(physicalDeviceProperties.deviceID, 0xC0DE);
+	EXPECT_EQ(physicalDeviceProperties.deviceType, VK_PHYSICAL_DEVICE_TYPE_CPU);
 
-		VkPhysicalDevice pPhysicalDevice = VK_NULL_HANDLE;
-		result = vkEnumeratePhysicalDevices(instance, &pPhysicalDeviceCount, &pPhysicalDevice);
-		EXPECT_EQ(result, VK_SUCCESS);
-		EXPECT_NE(pPhysicalDevice, (VkPhysicalDevice)VK_NULL_HANDLE);
-
-		auto vkGetPhysicalDeviceProperties = (PFN_vkGetPhysicalDeviceProperties)vk_icdGetInstanceProcAddr(VK_NULL_HANDLE, "vkGetPhysicalDeviceProperties");
-		EXPECT_NE(vkEnumeratePhysicalDevices, nullptr);
-
-		VkPhysicalDeviceProperties physicalDeviceProperties;
-		vkGetPhysicalDeviceProperties(pPhysicalDevice, &physicalDeviceProperties);
-		EXPECT_EQ(physicalDeviceProperties.apiVersion, VK_API_VERSION_1_1);
-		EXPECT_EQ(physicalDeviceProperties.deviceID, 0xC0DE);
-		EXPECT_EQ(physicalDeviceProperties.deviceType, VK_PHYSICAL_DEVICE_TYPE_CPU);
-
-		EXPECT_EQ(strncmp(physicalDeviceProperties.deviceName, "SwiftShader Device", VK_MAX_PHYSICAL_DEVICE_NAME_SIZE), 0);
-	}
+	EXPECT_EQ(strncmp(physicalDeviceProperties.deviceName, "SwiftShader Device", VK_MAX_PHYSICAL_DEVICE_NAME_SIZE), 0);
 }
