------- Comment #7 from jakub at gcc dot gnu dot org 2010-02-22 17:10 ------- Created an attachment (id=19935) --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=19935&action=view) gcc45-pr43051.patch
Updated patch, which includes lxo's fix, guality testcase and also a fix for infinite recursion discovered in redhat/gcc-4_4-branch backport. While this bootstraps/regtests on the trunk, on redhat/gcc-4_4-branch bootstrap fails due to endless alteration similar to PR42873 when compiling c-common.c (add_tlist) during profiledbootstrap. Haven't tried yet trunk profiledbootstrap. The alternation in this case is between: (gdb) p debug_rtx (var1->var_part[0].loc_chain->next->loc) (value/u:DI 90:90 @0x2a72678/0x28c5520) $30 = void (gdb) p debug_rtx (var1->var_part[0].loc_chain->loc) (mem/f:DI (value/s/u:DI 56:56 @0x2a722c8/0x2904028) [161 S8 A64]) $31 = void (gdb) p debug_rtx (var1->var_part[0].loc_chain->next->loc) (value/u:DI 90:90 @0x2a72678/0x28c5520) $32 = void (gdb) p debug_rtx (var1->var_part[0].loc_chain->next->next->loc) Cannot access memory at address 0x8 and (gdb) p debug_rtx (var2->var_part[0].loc_chain->loc) (mem/s/f:DI (value/s/u:DI 54:54 @0x2a722a8/0x2904078) [161 <variable>.next+0 S8 A64]) $33 = void (gdb) p debug_rtx (var2->var_part[0].loc_chain->next->loc) (mem/f:DI (value/s/u:DI 56:56 @0x2a722c8/0x2904028) [161 S8 A64]) $34 = void (gdb) p debug_rtx (var2->var_part[0].loc_chain->next->next->loc) (value/u:DI 90:90 @0x2a72678/0x28c5520) -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43051