ast2firm: Keep the ijmp block and memory.
authorChristoph Mallon <christoph.mallon@gmx.de>
Wed, 21 Nov 2012 15:42:49 +0000 (16:42 +0100)
committerChristoph Mallon <christoph.mallon@gmx.de>
Wed, 21 Nov 2012 18:39:36 +0000 (19:39 +0100)
It might be an (endless) loop header.

ast2firm.c

index b425a1e..81c0a48 100644 (file)
@@ -5225,6 +5225,7 @@ static void create_function(entity_t *entity)
        }
 
        if (enter_jump_target(&ijmp_target)) {
+               keep_loop();
                size_t   const n    = ARR_LEN(ijmp_ops);
                ir_node *const op   = n == 1 ? ijmp_ops[0] : new_Phi(n, ijmp_ops, get_irn_mode(ijmp_ops[0]));
                ir_node *const ijmp = new_IJmp(op);