anv/pipeline: Don't leak the binding map

This commit is contained in:
Jason Ekstrand
2016-02-18 11:04:53 -08:00
parent 8c23392c26
commit e881c73975
3 changed files with 8 additions and 0 deletions

View File

@@ -391,4 +391,6 @@ anv_nir_apply_pipeline_layout(struct anv_pipeline *pipeline,
shader->num_uniforms += map.image_count * BRW_IMAGE_PARAM_SIZE * 4;
}
ralloc_free(mem_ctx);
}

View File

@@ -193,6 +193,11 @@ void anv_DestroyPipeline(
ANV_FROM_HANDLE(anv_device, device, _device);
ANV_FROM_HANDLE(anv_pipeline, pipeline, _pipeline);
for (unsigned s = 0; s < MESA_SHADER_STAGES; s++) {
free(pipeline->bindings[s].surface_to_descriptor);
free(pipeline->bindings[s].sampler_to_descriptor);
}
anv_reloc_list_finish(&pipeline->batch_relocs,
pAllocator ? pAllocator : &device->alloc);
if (pipeline->blend_state.map)

View File

@@ -72,6 +72,7 @@ genX(compute_pipeline_create)(
*/
memset(pipeline->prog_data, 0, sizeof(pipeline->prog_data));
memset(pipeline->scratch_start, 0, sizeof(pipeline->scratch_start));
memset(pipeline->bindings, 0, sizeof(pipeline->bindings));
pipeline->vs_simd8 = NO_KERNEL;
pipeline->vs_vec4 = NO_KERNEL;