Vulkan CTS 1.0.2.4 New tests: * Add tests for VK_KHR_external_fence VK_KHR_external_fence_capabilities VK_KHR_external_fence_fd VK_KHR_external_fence_win32 * Add tests for VK_KHR_external_semaphore VK_KHR_external_semaphore_capabilities VK_KHR_external_semaphore_fd VK_KHR_external_semaphore_win32 * Add tests for VK_KHR_external_memory VK_KHR_external_memory_capabilities VK_KHR_external_memory_fd VK_KHR_external_memory_win32 * Add tests for VK_KHR_win32_keyed_mutex * Add tests for VK_KHR_dedicated_allocation * Add tests for VK_KHR_get_memory_requirements2 * Add tests for VK_KHR_16bit_storage * Add tests for VK_KHR_storage_buffer_storage_class * Add tests for VK_KHR_variable_pointers Improvements: * Refactor X11 and wayland platforms to run alongside each other * Improve GLSL source program support * Cherry-pick SPIR-V assembly test improvements * Add 32 to 16 bit float conversion w.r.t rounding mode * Add create functions for common Vulkan types * Add deInt64 alignment functions to delibs Fixes: * Fix and inline the Image::getPixelOffset helper * Do not report warning if OOM testing is incomplete * Check sampler_mirror_clamp_to_edge extension in tex filter tests * Add more alternatives to reflect() precision tests * Import fixes from Android Vulkan CTS 1.0.2 branch * Fix Vulkan null driver * Fixed invalid usage of VkBufferImageCopy struct * Fix an incorrect layout transition * Check 'drawIndirectFirstInstance' feature to run indirect draw tests * Allow pop-free clipping for lines * Atomic counter tests rely on stores to SSBOs * Add missing flushes for buffer view access tests * Slightly increase threshold in dEQP-VK.draw.basic_draw.draw_indirect * Add missing flush for opaque_type_indexing tests * Touch watchdog before freeing objs in max_concurrent * Check for shaderFloat64 before creating shaders * Defer device creation until after feature checks * Use transfer queue with vkCmdFillBuffer * Remove individual 3D slice layout transitions