------- Additional Comments From rakdver at gcc dot gnu dot org 2005-03-06 23:05 ------- This seems to be a cse problem. The code looks like
(set (reg:si 124) (reg:si 5)) ... (set (reg:si 5) (reg:si 124)) ... (set (reg:di 119) (reg:di 5)) ... (set (reg:di 3) (reg:di 119)) cse propagates the value of reg:si 5 to the last insn (set (reg:di 3) (reg:si 5)) Which is incorrect since the hard reg is accessed in a different mode. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=20249