From f84b4c9f7958e6c795e34a0666016198d9ff02c9 Mon Sep 17 00:00:00 2001 From: Matthias Braun Date: Thu, 15 Dec 2011 19:38:06 +0100 Subject: [PATCH] ia32: free between type in ia32_finish --- ir/be/ia32/bearch_ia32.c | 6 +++++- ir/be/ia32/ia32_address_mode.c | 2 +- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/ir/be/ia32/bearch_ia32.c b/ir/be/ia32/bearch_ia32.c index 1b6316261..a293d7fa3 100644 --- a/ir/be/ia32/bearch_ia32.c +++ b/ir/be/ia32/bearch_ia32.c @@ -253,7 +253,7 @@ static int ia32_get_sp_bias(const ir_node *node) static void ia32_build_between_type(void) { #define IDENT(s) new_id_from_chars(s, sizeof(s)-1) - if (! between_type) { + if (between_type == NULL) { ir_type *old_bp_type = new_type_primitive(mode_Iu); ir_type *ret_addr_type = new_type_primitive(mode_Iu); @@ -1768,6 +1768,10 @@ static void ia32_init(void) static void ia32_finish(void) { + if (between_type != NULL) { + free_type(between_type); + between_type = NULL; + } ia32_free_opcodes(); } diff --git a/ir/be/ia32/ia32_address_mode.c b/ir/be/ia32/ia32_address_mode.c index 78c908477..faaade455 100644 --- a/ir/be/ia32/ia32_address_mode.c +++ b/ir/be/ia32/ia32_address_mode.c @@ -525,7 +525,7 @@ static void mark_non_address_nodes(ir_node *node, void *env) void ia32_calculate_non_address_mode_nodes(ir_graph *irg) { - be_lv_t *lv = be_assure_liveness(irg); + be_lv_t *lv = be_assure_liveness(irg); non_address_mode_nodes = bitset_malloc(get_irg_last_idx(irg)); -- 2.20.1