http://gcc.gnu.org/bugzilla/show_bug.cgi?id=51784
Dominique d'Humieres <dominiq at lps dot ens.fr> changed: What |Removed |Added ---------------------------------------------------------------------------- Target|x86_64-apple-darwin10 |x86_64-apple-darwin* Host|x86_64-apple-darwin10 |x86_64-apple-darwin* Build|x86_64-apple-darwin10 |x86_64-apple-darwin* --- Comment #11 from Dominique d'Humieres <dominiq at lps dot ens.fr> 2012-01-11 21:10:03 UTC --- The test passes if I revert r182920. > Dominique, please see why __findenv segfaults. (1) My knowledge of gdb (and C) is very shallow, (2) I don't have access to the source for __findenv (3) I don't know to what I'ld look for. Stepping through __findenv I reach Program received signal SIGSEGV, Segmentation fault. 0x900949d9 in __findenv () from /usr/lib/libSystem.B.dylib (gdb) info registers eax 0x0 0 ecx 0x9009497b -1878439557 edx 0x11 17 ebx 0x236a 9066 esp 0xbfffd798 0xbfffd798 ebp 0xbfffd7a8 0xbfffd7a8 esi 0xc000d9e0 -1073686048 edi 0x369b 13979 eip 0x900949d9 0x900949d9 <__findenv+85> eflags 0x10306 [ PF TF IF RF ] cs 0x17 23 ss 0x9009497b -1878439557 ds 0x1f 31 es 0x1f 31 fs 0x0 0 gs 0x37 55 With r182920 reverted I see (gdb) stepi 0x900949d9 in __findenv () from /usr/lib/libSystem.B.dylib (gdb) info registers eax 0x0 0 ecx 0x9009497b -1878439557 edx 0x11 17 ebx 0x236a 9066 esp 0xbfffd798 0xbfffd798 ebp 0xbfffd7a8 0xbfffd7a8 esi 0xbfffd9e0 -1073751584 edi 0x369b 13979 eip 0x900949d9 0x900949d9 <__findenv+85> eflags 0x306 [ PF TF IF ] cs 0x17 23 ss 0x9009497b -1878439557 ds 0x1f 31 es 0x1f 31 fs 0x0 0 gs 0x37 55 (gdb) stepi 0x900949db in __findenv () from /usr/lib/libSystem.B.dylib (gdb) info registers eax 0x0 0 ecx 0x9009497b -1878439557 edx 0x11 17 ebx 0xbfffdb80 -1073751168 esp 0xbfffd798 0xbfffd798 ebp 0xbfffd7a8 0xbfffd7a8 esi 0xbfffd9e0 -1073751584 edi 0x369b 13979 eip 0x900949db 0x900949db <__findenv+87> eflags 0x306 [ PF TF IF ] cs 0x17 23 ss 0x9009497b -1878439557 ds 0x1f 31 es 0x1f 31 fs 0x0 0 gs 0x37 55 Note that the test fails also on powerpc-apple-darwin9 with both -m32 Program received signal EXC_BAD_ACCESS, Could not access memory. Reason: KERN_PROTECTION_FAILURE at address: 0x00003f50 0x00001ee0 in x () at /opt/gcc/work/gcc/testsuite/gcc.dg/tree-prof/pr44777.c:29 29 y (a); (gdb) bt #0 0x00001ee0 in x () at /opt/gcc/work/gcc/testsuite/gcc.dg/tree-prof/pr44777.c:29 #1 0x00002044 in main () at /opt/gcc/work/gcc/testsuite/gcc.dg/tree-prof/pr44777.c:39 and -m64 Program received signal EXC_BAD_ACCESS, Could not access memory. Reason: KERN_INVALID_ADDRESS at address: 0x0000000200003028 0x0000000100001848 in gcov_exit () at ../../../../work/libgcc/libgcov.c:302 302 if (gfi_ptr && gfi_ptr->key != gi_ptr) (gdb) bt #0 0x0000000100001848 in gcov_exit () at ../../../../work/libgcc/libgcov.c:302 #1 0x000000010000174c in gcov_exit () at ../../../../work/libgcc/libgcov.c:274 Previous frame identical to this frame (gdb could not unwind past this frame) for gcc 4.4.6, 4.5.3, 4.6.2, and trunk. It passes with -m32 for 4.3.4 20090511 for GNAT GPL 2009 (20090511). The failures seem different: should I open another PR?