------- Additional Comments From jakub at gcc dot gnu dot org 2005-08-25 14:37 ------- This doesn't happen on HEAD, where only mult_val (4) add_val (rta+28) giv is seen by maybe_eliminate_biv_1 <case COMPARE>. But on 4.0 branch, there is both that giv and mult_val (4) add_val (rta) one, which satisfies the || (REG_P (v->add_val) && REG_POINTER (v->add_val))) condition. Now, for GTU/GEU/LTU/LEU codes we can easily avoid the elimination if the constant arg would need to change, but for COMPARE we'd, I'm afraid, need to do some simple life analysis to find out if the CC code might be used in GTU/GEU/LTU/LEU in order not to shot down that optimization completely.
-- What |Removed |Added ---------------------------------------------------------------------------- CC| |rth at gcc dot gnu dot org http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23560