From 4a25ff8383e0a305ecef4445f541416fc1ceb01e Mon Sep 17 00:00:00 2001 From: Steven Bosscher Date: Mon, 27 Nov 2006 23:15:38 +0000 Subject: [PATCH] alias.c (init_alias_analysis): Remove simplification loop after propagating pointers. * alias.c (init_alias_analysis): Remove simplification loop after propagating pointers. From-SVN: r119262 --- gcc/ChangeLog | 5 +++++ gcc/alias.c | 32 -------------------------------- 2 files changed, 5 insertions(+), 32 deletions(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index fa65b982f32..896826d2d1f 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2006-11-27 Steven Bosscher + + * alias.c (init_alias_analysis): Remove simplification loop + after propagating pointers. + 2006-11-27 Uros Bizjak * config/i386/i386.c (x86_ext_80387_constants): Add m_K8, m_CORE2 diff --git a/gcc/alias.c b/gcc/alias.c index d027b79a053..a3634ac1f93 100644 --- a/gcc/alias.c +++ b/gcc/alias.c @@ -2586,38 +2586,6 @@ init_alias_analysis (void) if (reg_known_value[i] == 0) reg_known_value[i] = regno_reg_rtx[i + FIRST_PSEUDO_REGISTER]; - /* Simplify the reg_base_value array so that no register refers to - another register, except to special registers indirectly through - ADDRESS expressions. - - In theory this loop can take as long as O(registers^2), but unless - there are very long dependency chains it will run in close to linear - time. - - This loop may not be needed any longer now that the main loop does - a better job at propagating alias information. */ - pass = 0; - do - { - changed = 0; - pass++; - for (ui = 0; ui < maxreg; ui++) - { - rtx base = VEC_index (rtx, reg_base_value, ui); - if (base && REG_P (base)) - { - unsigned int base_regno = REGNO (base); - if (base_regno == ui) /* register set from itself */ - VEC_replace (rtx, reg_base_value, ui, 0); - else - VEC_replace (rtx, reg_base_value, ui, - VEC_index (rtx, reg_base_value, base_regno)); - changed = 1; - } - } - } - while (changed && pass < MAX_ALIAS_LOOP_PASSES); - /* Clean up. */ free (new_reg_base_value); new_reg_base_value = 0;