From 53f1231c772cd23ef25345911b3c7d457d8b3026 Mon Sep 17 00:00:00 2001 From: Matthias Braun Date: Wed, 1 Oct 2008 14:05:41 +0000 Subject: [PATCH] fix endless loops [r22393] --- ir/be/bespillbelady.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/ir/be/bespillbelady.c b/ir/be/bespillbelady.c index 6f0b45a60..096669383 100644 --- a/ir/be/bespillbelady.c +++ b/ir/be/bespillbelady.c @@ -870,10 +870,14 @@ static void fix_block_borders(ir_node *block, void *data) DB((dbg, DBG_FIX, "\n")); DB((dbg, DBG_FIX, "Fixing %+F\n", block)); + arity = get_irn_arity(block); + /* can happen for endless loops */ + if (arity == 0) + return; + start_workset = get_block_info(block)->start_workset; /* process all pred blocks */ - arity = get_irn_arity(block); for (i = 0; i < arity; ++i) { ir_node *pred = get_Block_cfgpred_block(block, i); workset_t *pred_end_workset = get_block_info(pred)->end_workset; -- 2.20.1