Ehem, ARM

Iain Buclaw ibuclaw at ubuntu.com
Fri Nov 15 15:19:39 PST 2013


On 15 November 2013 21:14, Joakim <joakim at airpost.net> wrote:

> On Friday, 15 November 2013 at 18:44:20 UTC, Iain Buclaw wrote:
>
>> On 15 November 2013 18:40, Joakim <joakim at airpost.net> wrote:
>>
>>> Yes, I thought that would be easier, to split the effort into two parts.
>>>  First, get D working on Android/x86, then, linux/ARM.  Some fine day, we
>>> combine the two into Android/ARM. :)
>>>
>>>  GNU/Linux on ARM will come first... it's now only a matter of time. ;)
>>
>
> Everything is "only a matter of time." ;) The order is not important; it'd
> be great if linux/ARM is done first, though I hope gdc isn't the only one
> that does it.
>
>
> On Friday, 15 November 2013 at 19:09:24 UTC, Johannes Pfau wrote:
>
>> There are 3 main points which need to be addressed for a solid Android
>> port:
>>
>> * Druntime must be ported to bionic. Not difficult, but annoying as
>>   bionic is a mixture between bsd and posix code, so you'll have to
>>   edit many version statements. All compilers will benefit from that.
>>
> Yep, this is the part I'm taking a stab at.
>
>
>  * You need to implement TLS support. Last time I checked there bionic
>>   didn't support native TLS and gcc's emulated TLS   doesn't work with
>>   the D GC.
>>
> I think there's TLS support in bionic now, but not with the __thread
> keyword.  I'll look into it more as I go.
>
>
>  * The main program in Android should always be java code, native code
>>   loaded as shared libraries. This is implemented in DMD now, but not
>>   in GDC. (And IIRC not in LDC either?)
>>
> I just want to get it working as a pure native compilation option for now.
>  Perhaps someone else will tie D into JNI and get it working with Dalvik,
> I'm not interested in that.
>
>
C++ (as in g++) has compiler support with JNI.  I've been turning the idea
in my head as going down this route with D (gdc) support in the same way
through some sort of magic module which generates these special types
(jint, jclass, etc) - not too different from eg: gcc.builtins module.  But
for the time being at least this is a deferred long-term wish list goal.

-- 
Iain Buclaw

*(p < e ? p++ : p) = (c & 0x0f) + '0';
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.puremagic.com/pipermail/digitalmars-d/attachments/20131115/a39c1625/attachment.html>


More information about the Digitalmars-d mailing list