[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Problem with ffi/forwardInvocation and exception handling on OpenSol
From: |
David Chisnall |
Subject: |
Re: Problem with ffi/forwardInvocation and exception handling on OpenSolaris |
Date: |
Mon, 28 Jun 2010 13:14:11 +0100 |
Please can you replace the -c with -S in this command and send me the generated
assembly?
David
On 28 Jun 2010, at 12:27, Saso Kiselkov wrote:
> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
>
> I checked and gnustep-make actually does generate the correct flags:
>
> gcc main.m -c \
> -MMD -MP -DGNUSTEP -DGNUSTEP_BASE_LIBRARY=1
> - -DGNU_RUNTIME=1 -DGNUSTEP_BASE_LIBRARY=1 -fpic -fPIC -DGSWARN
> - -DGSDIAGNOSE -Wno-import -m64 -fno-strict-aliasing -fexceptions
> - -fobjc-exceptions -D_NATIVE_OBJC_EXCEPTIONS -fgnu-runtime -W -Wall -O0
> - -ggdb3 -I/usr/gcc/4.3/lib/gcc/i386-pc-solaris2.11/4.3.3/include/
> - -fconstant-string-class=NSConstantString -I.
> - -I/export/home/diablos/GNUstep/Library/Headers
> - -I/usr/GNUstep/Local/Library/Headers
> -I/usr/GNUstep/System/Library/Headers \
> -o obj/main.m.o
>
> Since the problem could be in libgcc_s, what should I do? Rebuild my
> compiler? Your insight is greatly appreciated!
>
> BR,
> - --
> Saso
>
> On 06/28/2010 01:23 PM, David Chisnall wrote:
>> On 28 Jun 2010, at 11:59, Saso Kiselkov wrote:
>>
>>> So if I understand correct, instead of doing an [exception raise], I
>>> should call the _Unwind_Backtrace function below? I tried it and it
>>> generated:
>>>
>>> 40157e:do_throw() in /export/home/diablos/excp_fail/obj/excp_fail
>>
>> Ah, Solaris - one of the only two platforms (Darwin being the other) where
>> that code actually works as documented...
>>
>> So, the unwind library can't propagate beyond the do_throw() function. This
>> means that either do_throw() or -forwardInvocation: (not sure which, I'd
>> have to check the libgcc_s code, and I don't want to because it's horrible)
>> hasn't been compiled with unwind support.
>>
>> Since these are both in your main.m file, I would imagine that the problem
>> is a lack of -fexceptions in the compile flags for this file. GNUstep Make
>> (in theory, at least), ought to be providing this flag, but it might only be
>> providing -fobjc-exceptions, which means that C functions won't have unwind
>> data generated.
>>
>> David
>>
>> -- Send from my Jacquard Loom
>>
>
> -----BEGIN PGP SIGNATURE-----
> Version: GnuPG v1.4.10 (GNU/Linux)
> Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/
>
> iEYEARECAAYFAkwohzsACgkQRO8UcfzpOHD+hACdGHN7+UTniwKV7ph9DuDZldXs
> SqEAnjOwCR9d91q68WrLRuxe40+c5rLe
> =+keN
> -----END PGP SIGNATURE-----
-- Sent from my PDP-11
- Problem with ffi/forwardInvocation and exception handling on OpenSolaris, Saso Kiselkov, 2010/06/28
- Re: Problem with ffi/forwardInvocation and exception handling on OpenSolaris, David Chisnall, 2010/06/28
- Re: Problem with ffi/forwardInvocation and exception handling on OpenSolaris, Saso Kiselkov, 2010/06/28
- Re: Problem with ffi/forwardInvocation and exception handling on OpenSolaris, David Chisnall, 2010/06/28
- Re: Problem with ffi/forwardInvocation and exception handling on OpenSolaris, Saso Kiselkov, 2010/06/28
- Re: Problem with ffi/forwardInvocation and exception handling on OpenSolaris, David Chisnall, 2010/06/28
- Re: Problem with ffi/forwardInvocation and exception handling on OpenSolaris, Saso Kiselkov, 2010/06/28
- Re: Problem with ffi/forwardInvocation and exception handling on OpenSolaris,
David Chisnall <=
- Re: Problem with ffi/forwardInvocation and exception handling on OpenSolaris, Saso Kiselkov, 2010/06/28
- Re: Problem with ffi/forwardInvocation and exception handling on OpenSolaris, David Chisnall, 2010/06/28
- Re: Problem with ffi/forwardInvocation and exception handling on OpenSolaris, Saso Kiselkov, 2010/06/28
- Re: Problem with ffi/forwardInvocation and exception handling on OpenSolaris, Saso Kiselkov, 2010/06/28
- Re: Problem with ffi/forwardInvocation and exception handling on OpenSolaris, Saso Kiselkov, 2010/06/28
- Re: Problem with ffi/forwardInvocation and exception handling on OpenSolaris, Richard Frith-Macdonald, 2010/06/28
- Re: Problem with ffi/forwardInvocation and exception handling on OpenSolaris, Saso Kiselkov, 2010/06/28