diff options
author | Dave Airlie <airlied@redhat.com> | 2017-10-27 11:03:50 +1000 |
---|---|---|
committer | Dave Airlie <airlied@redhat.com> | 2017-10-27 11:48:12 +1000 |
commit | d086a9479597e7b38f0326e939878811cbd4f348 (patch) | |
tree | 9b2f6178b20b5c8cc10ec4ac07ccfceb00149728 | |
parent | 1212b43223271bf3aeeb5304cdcdb4c051a1e714 (diff) |
compute-local-id: push constants require a layout
-rw-r--r-- | src/tests/func/compute-local-id.c | 14 |
1 files changed, 9 insertions, 5 deletions
diff --git a/src/tests/func/compute-local-id.c b/src/tests/func/compute-local-id.c index 1568d08..b840c6c 100644 --- a/src/tests/func/compute-local-id.c +++ b/src/tests/func/compute-local-id.c @@ -24,7 +24,7 @@ #include "compute-local-id-spirv.h" static VkDeviceMemory -common_init(VkShaderModule cs, const uint32_t ssbo_size) +common_init(VkShaderModule cs, const uint32_t ssbo_size, VkPipelineLayout *p_layout) { VkDescriptorSetLayout set_layout; @@ -59,6 +59,7 @@ common_init(VkShaderModule cs, const uint32_t ssbo_size) .pushConstantRangeCount = 1, .pPushConstantRanges = &constants); + *p_layout = pipeline_layout; VkPipeline pipeline; vkCreateComputePipelines(t_device, t_pipeline_cache, 1, &(VkComputePipelineCreateInfo) { @@ -140,7 +141,8 @@ basic(void) ); const uint32_t ssbo_size = 64 * sizeof(uint32_t); - VkDeviceMemory mem_out = common_init(cs, ssbo_size); + VkPipelineLayout p_layout; + VkDeviceMemory mem_out = common_init(cs, ssbo_size, &p_layout); dispatch_and_wait(1, 1, 1); @@ -182,10 +184,11 @@ push_constant(void) ); const uint32_t ssbo_size = 64 * sizeof(uint32_t); - VkDeviceMemory mem_out = common_init(cs, ssbo_size); + VkPipelineLayout p_layout; + VkDeviceMemory mem_out = common_init(cs, ssbo_size, &p_layout); uint32_t add = 42; - vkCmdPushConstants(t_cmd_buffer, VK_NULL_HANDLE, + vkCmdPushConstants(t_cmd_buffer, p_layout, VK_SHADER_STAGE_COMPUTE_BIT, 0, sizeof(add), &add); @@ -253,7 +256,8 @@ local_ids(void) ); const uint32_t ssbo_size = 8 * sizeof(uint32_t); - VkDeviceMemory mem_out = common_init(cs, ssbo_size); + VkPipelineLayout p_layout; + VkDeviceMemory mem_out = common_init(cs, ssbo_size, &p_layout); dispatch_and_wait(1, 1, 1); |