ir3: don't free constant_data after assembling

When using shader overrides, the assembler will be called a 2nd time
which will try to dereference the freed constant_data. Fix this by not
explicitly freeing constant_data, it's ralloc'd in the context of the
shader variant anyway so will be freed automatically.

Signed-off-by: Job Noorman <jnoorman@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35128>
This commit is contained in:
Job Noorman
2025-05-23 11:50:50 +02:00
committed by Marge Bot
parent 5daf4608e5
commit 7ebcc8d402

View File

@@ -152,8 +152,6 @@ ir3_shader_assemble(struct ir3_shader_variant *v)
if (v->constant_data_size)
memcpy(&bin[info->constant_data_offset / 4], v->constant_data,
v->constant_data_size);
ralloc_free(v->constant_data);
v->constant_data = NULL;
/* NOTE: if relative addressing is used, we set constlen in
* the compiler (to worst-case value) since we don't know in