r600g/sb: fix memory leaks

Signed-off-by: Vadim Girlin <vadimgirlin@gmail.com>
This commit is contained in:
Vadim Girlin 2013-05-04 22:05:43 +04:00
parent 1c28e7c5a1
commit 46dfad8b36
2 changed files with 7 additions and 1 deletions

View File

@ -74,6 +74,8 @@ int bc_parser::parse() {
sh = new shader(ctx, t, bc->debug_id, enable_dump);
int r = parse_shader();
delete dec;
if (r)
return r;
@ -94,7 +96,6 @@ int bc_parser::parse() {
prepare_ir();
delete dec;
return r;
}

View File

@ -355,6 +355,11 @@ shader::~shader() {
for (node_vec::iterator I = all_nodes.begin(), E = all_nodes.end();
I != E; ++I)
(*I)->~node();
for (gpr_array_vec::iterator I = gpr_arrays.begin(), E = gpr_arrays.end();
I != E; ++I) {
delete *I;
}
}
void shader::dump_ir() {