------- Comment #21 from steven at gcc dot gnu dot org 2008-01-09 22:46 -------
at cse.c:5418:
elt = insert (dest, sets[i].src_elt,
sets[i].dest_hash, GET_MODE (dest));
dest = (reg:DI 66 [ type.0+-4 ])
sets[i].src_elt->exp = (sign_extend:DI (reg:SI 72 [ type ]))
sets[i].dest_hash = 5
and REG_QTY(66) == 5 so everything is OK up to this point.
Later on, REG_QTY(66) is changed. This means that the original hash of 5 also
changes (the HASH of a reg is its QTY number plus a constant).
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=31944