[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: undefined reference to __gnustep_objcxx_personality_v0
From: |
David Chisnall |
Subject: |
Re: undefined reference to __gnustep_objcxx_personality_v0 |
Date: |
Sun, 27 Dec 2015 20:21:52 +0100 |
On 26 Dec 2015, at 20:44, Dmitry Moskalchuk <address@hidden> wrote:
>
> Practically, the best choice might be running GNU/Linux in qemu-arm, ssh
> there, and run libobjc2 tests on it. At least, doing that would be
> _much_ easier than setting up Android development environment.
I managed to get a development environment set up in qemu. All of the
ARM-specific codepaths now work correctly:
- Message sending works
- Blocks as IMPs work
- C++ exceptions work.
The property introspection test was failing, because char is unsigned char and
not signed char on ARM Linux. That’s also now fixed.
Interestingly, the ManyManySelectors test fails on ARM Linux, because it maps
things below the 128KB line and so the selector code thinks that some pointer
values are valid selector IDs. This won’t be a problem if you don’t register
more than 2^16 selectors (not an issue for most code - we shipped with a bug
where message sending was broken with more than this many selectors for years
and only one program so far has triggered it). It’s probably fixable by
ignoring the top bit in the sel id for lookup (it’s already ignored for the asm
paths) and using it to distinguish the values. I’ll think about this, as it’s
a bit complex on big-endian systems.
David
-- Sent from my IBM 1620
- Re: undefined reference to __gnustep_objcxx_personality_v0, (continued)
- Re: undefined reference to __gnustep_objcxx_personality_v0, Dmitry Moskalchuk, 2015/12/26
- Re: undefined reference to __gnustep_objcxx_personality_v0, David Chisnall, 2015/12/26
- Re: undefined reference to __gnustep_objcxx_personality_v0, David Chisnall, 2015/12/26
- Re: undefined reference to __gnustep_objcxx_personality_v0, Dmitry Moskalchuk, 2015/12/26
- Re: undefined reference to __gnustep_objcxx_personality_v0, David Chisnall, 2015/12/26
- Re: undefined reference to __gnustep_objcxx_personality_v0, Dmitry Moskalchuk, 2015/12/26
- Re: undefined reference to __gnustep_objcxx_personality_v0, David Chisnall, 2015/12/26
- Re: undefined reference to __gnustep_objcxx_personality_v0, Dmitry Moskalchuk, 2015/12/26
- Re: undefined reference to __gnustep_objcxx_personality_v0, David Chisnall, 2015/12/26
- Re: undefined reference to __gnustep_objcxx_personality_v0, Dmitry Moskalchuk, 2015/12/26
- Re: undefined reference to __gnustep_objcxx_personality_v0,
David Chisnall <=
- Re: undefined reference to __gnustep_objcxx_personality_v0, Dmitry Moskalchuk, 2015/12/27
- Re: undefined reference to __gnustep_objcxx_personality_v0, David Chisnall, 2015/12/27
- Re: undefined reference to __gnustep_objcxx_personality_v0, Dmitry Moskalchuk, 2015/12/29
- Re: undefined reference to __gnustep_objcxx_personality_v0, David Chisnall, 2015/12/29
- Re: undefined reference to __gnustep_objcxx_personality_v0, Dmitry Moskalchuk, 2015/12/29
- Re: undefined reference to __gnustep_objcxx_personality_v0, Ivan Vučica, 2015/12/26
- Re: undefined reference to __gnustep_objcxx_personality_v0, Ivan Vučica, 2015/12/26
- Re: undefined reference to __gnustep_objcxx_personality_v0, Dmitry Moskalchuk, 2015/12/27
- Re: undefined reference to __gnustep_objcxx_personality_v0, Dmitry Moskalchuk, 2015/12/26