------- Comment #14 from jakub at gcc dot gnu dot org 2005-12-09 20:13 ------- Created an attachment (id=10446) --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=10446&action=view) gcc41-pr25023.patch
A new version of the patch. While this bootstraps (at least on i386 I tried), I'm getting some regressions though, particularly: FAIL: gcc.dg/compat/scalar-by-value-4 c_compat_x_tst.o compile FAIL: gcc.dg/compat/scalar-by-value-4 c_compat_y_tst.o compile FAIL: gcc.dg/compat/scalar-return-4 c_compat_x_tst.o compile FAIL: gcc.dg/compat/scalar-return-4 c_compat_y_tst.o compile FAIL: gcc.dg/compat/struct-by-value-11 c_compat_x_tst.o compile FAIL: gcc.dg/compat/struct-by-value-11 c_compat_y_tst.o compile All seem to be ICEs in emit_move_resolve_push (CQI, [ (mem/i:CQI (pre_modify:SI (reg/f:SI 7 sp) (plus:SI (reg/f:SI 7 sp) (const_int -4 [0xfffffffc]))) [0 S2 A8]) ]), where that function only handles PRE_{INC,DEC} and POST_{INC,DEC}, but not PRE_MODIFY. Will see if just handling {PRE,POST}_MODIFY is the right thing there or if something different is wrong. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25023