From f9541b604dfec57a9cf2ae54d7ddb0d3810affe8 Mon Sep 17 00:00:00 2001 From: Michael Beck Date: Mon, 22 Oct 2007 13:56:58 +0000 Subject: [PATCH] fixed the loop optimization [r16306] --- ir/opt/ldstopt.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/ir/opt/ldstopt.c b/ir/opt/ldstopt.c index 6a5e398d8..b660daaa6 100644 --- a/ir/opt/ldstopt.c +++ b/ir/opt/ldstopt.c @@ -1353,12 +1353,12 @@ static void move_loads_in_loops(scc *pscc, loop_env *env) { continue; ent = get_SymConst_entity(ptr); + load_mode = get_Load_mode(load); if (get_entity_address_taken(ent) == ir_address_not_taken) { - /* found one */ + /* Shortcut: If the addres is never taken, this address if complete alias free*/ goto can_move; } - load_mode = get_Load_mode(load); for (other = pscc->head; other != NULL; other = next_other) { node_entry *ne = get_irn_ne(other, env); next_other = ne->next; -- 2.20.1