Enhanced testcase for PR c/19342 still ICEs e.g. on x86_64 at -O2, particularly in emit_move_insn. expand_value_return is called with val = (reg:QI 64), but return_reg has different mode, (reg:SI 58 [ <result> ]).
-- Summary: ICE in emit_move_insn with __attribute__((mode (QI))) enum Product: gcc Version: 4.0.0 Status: UNCONFIRMED Severity: normal Priority: P2 Component: middle-end AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: jakub at gcc dot gnu dot org CC: gcc-bugs at gcc dot gnu dot org http://gcc.gnu.org/bugzilla/show_bug.cgi?id=19874