------- Comment #3 from bonzini at gnu dot org  2009-07-14 12:56 -------
Richard, is your testcase also a regression?  In that case the culprit is
mostly

#if 0
      /* Disabled to avoid exponential mutual recursion between nonzero_bits
         and num_sign_bit_copies.  */
      if (num_sign_bit_copies (XEXP (x, 0), GET_MODE (x))
          == GET_MODE_BITSIZE (GET_MODE (x)))
        nonzero = 1;
#endif

in rtlanal.c that makes GCC unable to see through

    9 r142:SI=-ltu(r139:SI,r138:SI)
   10 r141:SI=-r142:SI

produced by

      emit_insn (gen_cstoresi_nltu_thumb1 (scratch, op3, operands[2]));
      emit_insn (gen_negsi2 (operands[0], scratch));


-- 

bonzini at gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
         AssignedTo|unassigned at gcc dot gnu   |bonzini at gnu dot org
                   |dot org                     |
             Status|NEW                         |ASSIGNED
   Last reconfirmed|2009-05-21 10:49:12         |2009-07-14 12:56:22
               date|                            |


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39715

Reply via email to