aboutsummaryrefslogtreecommitdiffstats
path: root/src/gallium/drivers
diff options
context:
space:
mode:
authorErik Faye-Lund <[email protected]>2020-07-17 18:55:53 +0200
committerMarge Bot <[email protected]>2020-07-17 17:33:35 +0000
commit35beb938fc592ab875e2c45ac05c32f3b7d55611 (patch)
treef935850dd884829c80c66f92ef5f6fcf4fa7ee1a /src/gallium/drivers
parent12b324b30c572729e158b70a1cbe0d53f4563829 (diff)
zink: use ralloc for plain malloc-calls
Reviewed-By: Mike Blumenkrantz <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5954>
Diffstat (limited to 'src/gallium/drivers')
-rw-r--r--src/gallium/drivers/zink/nir_to_spirv/nir_to_spirv.c11
1 files changed, 6 insertions, 5 deletions
diff --git a/src/gallium/drivers/zink/nir_to_spirv/nir_to_spirv.c b/src/gallium/drivers/zink/nir_to_spirv/nir_to_spirv.c
index 44eade4e25a..11145ed4257 100644
--- a/src/gallium/drivers/zink/nir_to_spirv/nir_to_spirv.c
+++ b/src/gallium/drivers/zink/nir_to_spirv/nir_to_spirv.c
@@ -2274,18 +2274,21 @@ nir_to_spirv(struct nir_shader *s, const struct pipe_stream_output_info *so_info
nir_function_impl *entry = nir_shader_get_entrypoint(s);
nir_metadata_require(entry, nir_metadata_block_index);
- ctx.defs = (SpvId *)malloc(sizeof(SpvId) * entry->ssa_alloc);
+ ctx.defs = ralloc_array_size(ctx.mem_ctx,
+ sizeof(SpvId), entry->ssa_alloc);
if (!ctx.defs)
goto fail;
ctx.num_defs = entry->ssa_alloc;
nir_index_local_regs(entry);
- ctx.regs = malloc(sizeof(SpvId) * entry->reg_alloc);
+ ctx.regs = ralloc_array_size(ctx.mem_ctx,
+ sizeof(SpvId), entry->reg_alloc);
if (!ctx.regs)
goto fail;
ctx.num_regs = entry->reg_alloc;
- SpvId *block_ids = (SpvId *)malloc(sizeof(SpvId) * entry->num_blocks);
+ SpvId *block_ids = ralloc_array_size(ctx.mem_ctx,
+ sizeof(SpvId), entry->num_blocks);
if (!block_ids)
goto fail;
@@ -2310,8 +2313,6 @@ nir_to_spirv(struct nir_shader *s, const struct pipe_stream_output_info *so_info
emit_cf_list(&ctx, &entry->body);
- free(ctx.defs);
-
if (so_info)
emit_so_outputs(&ctx, so_info, local_so_info);