http://gcc.gnu.org/bugzilla/show_bug.cgi?id=51784
Dominique d'Humieres <dominiq at lps dot ens.fr> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |iains at gcc dot gnu.org --- Comment #8 from Dominique d'Humieres <dominiq at lps dot ens.fr> 2012-01-08 12:18:42 UTC --- The main difference between r182587 and r182980 with -m32 is @@ -50,18 +50,26 @@ L3: movl 4(%eax), %esp jmp *%edx L2: + leal ___gcov0_y.1704-L00000000001$pb(%ebx), %eax + movl 28(%eax), %edx + movl 24(%eax), %eax + addl $1, %eax + adcl $0, %edx + leal ___gcov0_y.1704-L00000000001$pb(%ebx), %esi + movl %eax, 24(%esi) + movl %edx, 28(%esi) movl 8(%ebp), %eax subl $1, %eax movl %eax, (%esp) call _y.1704 leal ___gcov0_y.1704-L00000000001$pb(%ebx), %eax - movl 28(%eax), %edx - movl 24(%eax), %eax + movl 36(%eax), %edx + movl 32(%eax), %eax addl $1, %eax adcl $0, %edx leal ___gcov0_y.1704-L00000000001$pb(%ebx), %ecx - movl %eax, 24(%ecx) - movl %edx, 28(%ecx) + movl %eax, 32(%ecx) + movl %edx, 36(%ecx) leal -8(%ebp), %esp popl %ebx LCFI3: