OSX Tiger/G4 Bus error
Nick Forde
nickf at system-7.freeserve.co.uk
Fri Aug 26 04:41:54 PDT 2005
Hmm. I don't see this problem if I compile without -DNDEBUG=1.
Nick.
On 26 Aug 2005, at 10:03, Nick Forde wrote:
> Using GCC 4.0 on OS X Tiger/G4 I'm getting bus errors when
> bootstrapping.
> I haven't tracked this down yet but append below some debugger output
> in case anyone else can help.
>
> (gdb) run big.image
> Starting program: /Users/nickf/Home/prj/slate/main/vm big.image
> Reading symbols for shared libraries . done
> Bootstrapping libraries... (this may take a while. Save the image
> when done).
> Slate: Growing heap to 4821488 bytes.
> Loading 'src/mobius/syntax/quote.slate'
> Loading 'src/mobius/syntax/cascade.slate'
> Loading 'src/lib/macro.slate'
> Loading 'src/lib/numericMixin.slate'
> Loading 'src/lib/tuple.slate'
>
> Program received signal EXC_BAD_ACCESS, Could not access memory.
> Reason: KERN_INVALID_ADDRESS at address: 0x49c5c318
> 0x00005c94 in PSRoleTable_hashEntryForInsertingName_
> (roles=0x20ec8b4, name=1237697304) at vm.c:2348
> 2348 hash = ((ObjectPointer_pointer(name)) -> header).idHash &
> (tableSize - 1);
>
> (gdb) where
> #0 0x00005c94 in PSRoleTable_hashEntryForInsertingName_
> (roles=0x20ec8b4, name=1237697304) at vm.c:2348
> #1 0x00007aa8 in PSRoleTable_growBy_excluding_ (roles=0x22ea08c,
> n=36610204, method=0x0) at vm.c:2415
> #2 0x00007da4 in PSObject_addRoleNamed_at_dispatching_
> (obj=0x22da888, name=33637572, position=1, method=0x23b19a0) at
> vm.c:2890
> #3 0x00008f28 in ObjectPointer_asMethod_on_arity_
> (method=37427552, selector=33637572, args=0x1, n=2) at vm.c:3068
> #4 0x0000b2ac in _primitive0 (interpreter=0x2090d44,
> arguments=0x49c5c318, argumentsSize=23968, optionals=0x5c54) at
> vm.c:3863
> #5 0x000097c4 in
> PSInterpreter_send_to_through_arity_withOptionals_ (i=0x2090d44,
> selector=33643540, args=0x22e80e8, dispatchers=0x22e80e8, n=3,
> opts=0x0) at vm.c:3406
> #6 0x0000a780 in PSInterpreter_interpret (i=0x2090d44) at vm.c:1118
> #7 0x00002de0 in slateMain (argc=2, argv=0xbffff4d4) at ../boot.c:196
> #8 0x000020bc in _start (argc=2, argv=0xbffff4d4, envp=0xbffff4e0)
> at /SourceCache/Csu/Csu-57/crt.c:272
> #9 0x00001f5c in start ()
>
> The crash source is at vm.c:2409:
>
> roleName = ((roles -> roles)[index]).name;
>
> where roleName is garbage and later dereferenced.
>
> Any suggestions? I'm using the main sources and have tried both the
> alpha and a generated vm.c.
>
> Regards,
>
> Nick.
>
>
> On 16 Aug 2005, at 16:10, Brian Rice wrote:
>
>> Hi, Nick!
>>
>> I've been trying GCC 4.0 again on OS X Tiger/G5, and without that
>> option it seems to work fine now. I'll check again and see what is
>> actually breaking if I can.
>>
>> I've also seen reports that GCC 4 can break assumptions about
>> argument evaluation order, but I've not been able to reproduce a
>> bug under it yet - when I do, I'll be looking for this kind of
>> bug, and it's probably a good idea if others do, too.
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: /archives/slate/attachments/20050826/0e804afa/attachment.html
More information about the Slate
mailing list