Ticket #1203 (closed bug: worksforme)

Opened 5 years ago

Last modified 3 years ago

MMX check in config/auto/cpu/i386 segfaults when run as a 64-bit binary on OS X 10.5

Reported by: tentra@… Owned by:
Priority: normal Milestone:
Component: configure Version:
Severity: medium Keywords:
Cc: Language:
Patch status: Platform: darwin

Description

The Configure test for MMX on Intel chips segfaults when built as a 64-bit binary on OS X 10.5. The test passes without crashing when built as a 32-bit binary.

Crash reporter output: Process: test [81724] Path: ./test Identifier: test Version: ??? (???) Code Type: X86-64 (Native) Parent Process: perl [81093]

Date/Time: 2008-08-02 22:45:01.477 -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 0x000000005fbff8f0 Crashed Thread: 0

Thread 0 Crashed: 0 test 0x0000000100000ea6 Parrot_memcpy_aligned_mmx_code + 6 1 test 0x0000000100000db7 main + 151 (test.c:88) 2 test 0x0000000100000c24 start + 52

Thread 0 crashed with X86 Thread State (64-bit): rax: 0x0000000100000ea0 rbx: 0x0000000000000000 rcx: 0x0000000100ff8004 rdx: 0x0000000000000280 rdi: 0x0000000100800400 rsi: 0x0000000100800000 rbp: 0x00007fff5fbff920 rsp: 0x000000005fbff8d0 r8: 0x000000000000003f r9: 0x0000000000000000 r10: 0x00007fff8066c362 r11: 0x0000000000000206 r12: 0x0000000000000000 r13: 0x0000000000000000 r14: 0x0000000000000000 r15: 0x0000000000000000 rip: 0x0000000100000ea6 rfl: 0x0000000000010202 cr2: 0x000000005fbff8f0

Binary Images: 0x100000000 - 0x100000fef +test ??? (???) <0061b932feed6f495a5f89e5ba91e09a> /opt/src/perl6/build-20080802-64c/test 0x100003000 - 0x100005fff libutil.dylib ??? (???) <5af64f57d2cfb2993d993b5cf689b63d> /usr/lib/libutil.dylib 0x7fff5fc00000 - 0x7fff5fc2e593 dyld 96.2 (???) <312adf15716230ef979ca0bbc22f1a35> /usr/lib/dyld 0x7fff805f6000 - 0x7fff80779ffb libSystem.B.dylib ??? (???) <81f35350649b2d918923a94fb75d5e54> /usr/lib/libSystem.B.dylib 0x7fff8078e000 - 0x7fff80792fff libmathCommon.A.dylib ??? (???) /usr/lib/system/libmathCommon.A.dylib 0x7fff8092b000 - 0x7fff8099ffe7 libstdc++.6.dylib ??? (???) <565ee6f798f7fef6f804c60682787280> /usr/lib/libstdc++.6.dylib 0x7fff83a20000 - 0x7fff83a2cff1 libgcc_s.1.dylib ??? (???) <23fa31a628c1ea8a62ac529fa333b6e1> /usr/lib/libgcc_s.1.dylib 0x7fffffe00000 - 0x7fffffe01780 libSystem.B.dylib ??? (???) /usr/lib/libSystem.B.dylib

-- Seneca Cunningham <tentra@…>

Change History

Changed 5 years ago by coke

Changed 5 years ago by coke

Followup by kid51/tentra

On Sun Aug 03 19:47:09 2008, jkeen@… wrote:

On Sat Aug 02 20:08:36 2008, tetragon wrote:

The Configure test for MMX on Intel chips

Was this a test in t/configure/? t/steps/? or during Configure.pl itself?

During Configure.pl. I can reproduce this on the command line by building config/auto/cpu/i386/memcpy_mmx.c with the flags "-arch x86_64 -DPARROT_CONFIG_TEST" and running the output; the SSE check also segfaults when I manually run it. No crash happens if I change the $byteorder check in config::auto::arch to respond with x86_64 when passed 12345678, but that's because it doesn't hit the MMX check. Didn't stop any of the other crashes (most of the ones I don't remember from my PPC days present like #57536).

Changed 5 years ago by jkeenan

  • component changed from none to configure

Changed 4 years ago by jkeenan

Is there anyone who could provide an update on the status of this bug?

Changed 3 years ago by benabik

  • status changed from new to closed
  • resolution set to worksforme

Configure has been working fine on x86_64 machines under both 10.6 and 10.7 for me. I do not have a 10.5 install to test. Also, I cannot find the reference configure step in master. If any issues persist, please file a new bug at  https://github.com/parrot/parrot/issues

Note: See TracTickets for help on using tickets.