From dbe1b56f48f0587431640c673d008acd4f0fa9d4 Mon Sep 17 00:00:00 2001 From: "Wolfgang (Blub) Bumiller" Date: Wed, 25 Apr 2012 14:54:37 +0200 Subject: [PATCH] Same style fixup for ir_block as previous commits for function --- ir.c | 73 ++++++++++++++++++++++++++++-------------------------------- 1 file changed, 34 insertions(+), 39 deletions(-) diff --git a/ir.c b/ir.c index ff50a77..fbb6255 100644 --- a/ir.c +++ b/ir.c @@ -200,50 +200,45 @@ ir_value* ir_function_create_local(ir_function *self, const char *name, int vtyp ir_block* ir_block_new(ir_function* owner, const char *name) { - ir_block *self; - self = (ir_block*)malloc(sizeof(*self)); - self->owner = owner; - self->context.file = "<@no context>"; - self->context.line = 0; - self->final = ifalse; - VEC_INIT(self, instr); - VEC_INIT(self, entries); - VEC_INIT(self, exits); - self->_label = NULL; - ir_block_set_label(self, name); - - self->eid = 0; - self->is_return = ifalse; - self->run_id = 0; - VEC_INIT(self, living); - return self; -} -MAKE_VEC_ADD(ir_block, ir_instr*, instr) -MAKE_VEC_REMOVE(ir_block, ir_instr*, instr) -MAKE_VEC_ADD(ir_block, ir_block*, entries) -MAKE_VEC_FIND(ir_block, ir_block*, entries) -MAKE_VEC_ADD(ir_block, ir_block*, exits) - -MAKE_VEC_ADD(ir_block, ir_value*, living) -MAKE_VEC_REMOVE(ir_block, ir_value*, living) -MAKE_VEC_FIND(ir_block, ir_value*, living) + ir_block *self; + self = (ir_block*)mem_a(sizeof(*self)); + self->owner = owner; + self->context.file = "<@no context>"; + self->context.line = 0; + self->final = ifalse; + MEM_VECTOR_INIT(self, instr); + MEM_VECTOR_INIT(self, entries); + MEM_VECTOR_INIT(self, exits); + self->label = NULL; + ir_block_set_label(self, name); + + self->eid = 0; + self->is_return = ifalse; + self->run_id = 0; + MEM_VECTOR_INIT(self, living); + return self; +} +MEM_VECTOR_FUNCTIONS(ir_block, ir_instr*, instr) +MEM_VECTOR_FUNCTIONS_ALL(ir_block, ir_block*, entries) +MEM_VECTOR_FUNCTIONS_ALL(ir_block, ir_block*, exits) +MEM_VECTOR_FUNCTIONS_ALL(ir_block, ir_value*, living) void ir_block_delete(ir_block* self) { - size_t i; - free((void*)self->_label); - for (i = 0; i != self->instr_count; ++i) - ir_instr_delete(self->instr[i]); - VEC_CLEAR(self, instr); - VEC_CLEAR(self, entries); - VEC_CLEAR(self, exits); - VEC_CLEAR(self, living); - free(self); + size_t i; + mem_d((void*)self->label); + for (i = 0; i != self->instr_count; ++i) + ir_instr_delete(self->instr[i]); + MEM_VECTOR_CLEAR(self, instr); + MEM_VECTOR_CLEAR(self, entries); + MEM_VECTOR_CLEAR(self, exits); + MEM_VECTOR_CLEAR(self, living); + mem_d(self); } void ir_block_set_label(ir_block *self, const char *name) { - if (self->_label) - free((void*)self->_label); - self->_label = strdup(name); + if (self->label) + mem_d((void*)self->label); + self->label = util_strdup(name); } -- 2.39.2