Compute shader pipeline creation issues.

I’m having some issues creating a compute shader pipeline through vkCreateComputePipelines, and I get a return value which isn’t a valid VkResult, namely -1000012000. This is the code that is causing it:

VkPipelineShaderStageCreateInfo shader =
{
	VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_CREATE_INFO,
	NULL,
	0,
	VK_SHADER_STAGE_COMPUTE_BIT,
	this->cs,
	"main",
	NULL,
};

VkComputePipelineCreateInfo info =
{
	VK_STRUCTURE_TYPE_COMPUTE_PIPELINE_CREATE_INFO,
	NULL,
	VK_PIPELINE_CREATE_ALLOW_DERIVATIVES_BIT,
	shader,
	this->pipelineLayout,
	VK_NULL_HANDLE, 0							// base pipeline is kept as 'NULL' too, because this is the base for all derivatives
};

// create pipeline
VkResult res = vkCreateComputePipelines(VkRenderDevice::dev, VkRenderDevice::cache, 1, &info, NULL, &this->computePipeline);
n_assert(res == VK_SUCCESS);

Where this->cs is a shader module which is created through vkCreateShaderModule without errors and this->pipelineLayout is created through vkCreatePipelineLayout without errors. The cache and device are also created without issues, and using the same physical device.

I’m using the 356.43 driver (downloaded today) on Windows 10 using a GTX 770.

I enabled the debug layers and it shows that my shader isn’t SPIR-V valid. I should’ve checked for them before I posted this comment, but I have hope the validation layers will give me the help I need.