Allocate memory for reference buffer
authorSÅ‚awomir Cygan <slawomir.cygan@intel.com>
Tue, 15 Jun 2021 09:22:47 +0000 (11:22 +0200)
committerAlexander Galazin <Alexander.Galazin@arm.com>
Tue, 29 Jun 2021 07:12:34 +0000 (07:12 +0000)
This fixes regression from 2236dd2.

m_referenceMem was not allocated leading to assert
in vk::Allocation::getHostPtr() and later crash.

VK-GL-CTS Issue: 2970

Components: Vulkan

Affects:
dEQP-VK.glsl.constants.*
dEQP-VK.glsl.constant_expressions.*

Change-Id: Ia798a72f348cc235b2a2ff18b3614f50713abd91

external/vulkancts/modules/vulkan/vktShaderLibrary.cpp

index 4a1dbdd..94ba264 100644 (file)
@@ -1296,7 +1296,7 @@ ShaderCaseInstance::ShaderCaseInstance (Context& context, const ShaderCaseSpecif
 
        , m_referenceLayout             (computeStd140Layout(spec.values.outputs))
        , m_referenceBuffer             (m_referenceLayout.size > 0 ? createBuffer(context, (vk::VkDeviceSize)m_referenceLayout.size, vk::VK_BUFFER_USAGE_UNIFORM_BUFFER_BIT) : Move<vk::VkBuffer>())
-       , m_referenceMem                (m_inputLayout.size > 0 ? vk::bindBuffer (context.getDeviceInterface(), context.getDevice(),m_context.getDefaultAllocator(), *m_referenceBuffer, vk::MemoryRequirement::HostVisible) : MovePtr<vk::Allocation>())
+       , m_referenceMem                (m_referenceLayout.size > 0 ? vk::bindBuffer (context.getDeviceInterface(), context.getDevice(),m_context.getDefaultAllocator(), *m_referenceBuffer, vk::MemoryRequirement::HostVisible) : MovePtr<vk::Allocation>())
 
        , m_uniformLayout               (computeStd140Layout(spec.values.uniforms))
        , m_uniformBuffer               (m_uniformLayout.size > 0 ? createBuffer(context, (vk::VkDeviceSize)m_uniformLayout.size, vk::VK_BUFFER_USAGE_UNIFORM_BUFFER_BIT) : Move<vk::VkBuffer>())