Destroy deferred ops before destroying devices
Many ray tracing tests were creating deferred operations with
vkCreateDeferredOperationKHR but not destroying them after being used. To fix
that, operations are created using the createDeferredOperationsKHR wrapper that
returns vk::Move objects.
Affected tests:
dEQP-VK.ray_tracing_pipeline.pipeline_library.*_dho*
dEQP-VK.ray_tracing_pipeline.build.cpuht_*
dEQP-VK.ray_tracing_pipeline.large_shader_set.cpu_ht.*
dEQP-VK.ray_query.acceleration_structures.*.cpu_built.*
dEQP-VK.ray_tracing_pipeline.*.cpu_built.*
Components: Vulkan
VK-GL-CTS issue: 2639
Change-Id: I0ce4e18548fdcf93e3363754c534b1dd6676aed9
(cherry picked from commit
75334af0029ec95fea2f7eaee2d79a07b5473a82)