# New Ticket Created by "Seneca Cunningham" # Please include the string: [perl #57536] # in the subject line of all future correspondence about this issue. # <URL: http://rt.perl.org/rt3/Ticket/Display.html?id=57536 >
Using a lightly modified config (RT#57532), I got parrot to build as a 64-bit Intel binary on OS X. One of a series of segfaults encountered appears to be triggered in Parrot_memalign in config/gen/platform/darwin/memalign.c (if gdb is to be believed) while running test 19 (and possibly also 17, 19 was the first I reproduced) of the shootout tests. I do not currently have an extensive stack trace of this crash; the crash reporter and gdb encountered difficulties due to the addresses involved. This is quite possibly the first time I've seen a crash that the crash reporter couldn't generate a trace for. Make test output: t/examples/shootout..........................NOK 19# Failed test 'examples/shootout/sumcol.pir' # in t/examples/shootout.t at line 108. # Exited with error code: 139 # Received: # sh: line 1: 44335 Segmentation fault ./parrot -C "/opt/src/perl6/build-20080802-64/t/examples/shootout_19.pir" < examples/shootout/sumcol.pir_input # # Expected: # 500 # command line output: $ file parrot parrot: Mach-O 64-bit executable x86_64 $ ./parrot -C t/examples/shootout_19.pir < examples/shootout/sumcol.pir_input Segmentation fault $ gdb output: gdb ./parrot GNU gdb 6.3.50-20050815 (Apple version gdb-768) (Tue Oct 2 04:07:49 UTC 2007) Copyright 2004 Free Software Foundation, Inc. GDB is free software, covered by the GNU General Public License, and you are welcome to change it and/or distribute copies of it under certain conditions. Type "show copying" to see the conditions. There is absolutely no warranty for GDB. Type "show warranty" for details. This GDB was configured as "i386-apple-darwin"...Reading symbols for shared libraries ......... done (gdb) run -C t/examples/shootout_19.pir < examples/shootout/sumcol.pir_input Starting program: /opt/src/perl6/build-20080802-64/parrot -C t/examples/shootout_19.pir < examples/shootout/sumcol.pir_input Reading symbols for shared libraries . done Program received signal EXC_BAD_ACCESS, Could not access memory. Reason: KERN_INVALID_ADDRESS at address: 0x00000001000d71a5 0x00000001000d71a5 in Parrot_memalign (align=256, size=216) at memalign.c:179 179 status = vm_deallocate(mach_task_self(), firstUnneededPage, (gdb) bt #0 0x00000001000d71a5 in Parrot_memalign (align=256, size=216) at memalign.c:179 Cannot access memory at address 0x1000d6f90 (gdb) Crash reporter output: Process: parrot [44328] Path: ./parrot Identifier: parrot Version: ??? (???) Code Type: X86-64 (Native) Parent Process: sh [44327] Date/Time: 2008-08-02 15:29:35.572 -0400 OS Version: Mac OS X 10.5.2 (9C2028) Report Version: 6 Exception Type: EXC_BAD_ACCESS (SIGSEGV) Exception Codes: KERN_INVALID_ADDRESS at 0x00000001000d71a5 Crashed Thread: Unknown Error Formulating Crash Report: Called memoryAtAddress: 0x100000000, which is in an unmappable portion of [0x0 -> 0xffffffffffffffff] in PID# 44328. 0x964b724b 0x962f40fb 0x0007b61e 0x0007527f 0x0007498c 0x000748f7 0x0008985c 0x00089570 0x00085049 0x00002d90 0x000093be 0x0000b57c 0x0000b0c9 0x930b1373 0x0000a7d0 0x93084c55 0x93084b12 Backtrace not available Unknown thread crashed with X86 Thread State (64-bit): rax: 0x0000000000000000 rbx: 0x0000000000000000 rcx: 0x00007fff805f6b96 rdx: 0x0000000000000000 rdi: 0x00007fff5fbff250 rsi: 0x0000000000000003 rbp: 0x00007fff5fbff320 rsp: 0x00007fff5fbff2a0 r8: 0x0000000000000e03 r9: 0x0000000000000000 r10: 0x000000000000002c r11: 0x0000000000000202 r12: 0x0000000000000000 r13: 0x0000000000000000 r14: 0x0000000000000000 r15: 0x0000000000000000 rip: 0x00000001000d71a5 rfl: 0x0000000000010202 cr2: 0x00000001000d71a5 Binary images description not available -- Seneca Cunningham <[EMAIL PROTECTED]>