ARM targetting cross-toolchain with GDC

Johannes Pfau nospam at example.com
Sun Aug 25 11:46:43 PDT 2013


Am Sun, 25 Aug 2013 17:11:42 +0200
schrieb "David Nadlinger" <code at klickverbot.at>:

> On Saturday, 24 August 2013 at 18:00:05 UTC, Johannes Pfau wrote:
> > Not until the 'usual' Linux/GlibC combination works well on ARM.
> > Android has it's own C library, Bionic. Druntime has only been 
> > tested
> > on glibc on Posix systems so it's some work to port it. And 
> > Android
> > also needs solid shared library support (A D shared library 
> > needs to be
> > loaded by a Java app).
> 
> Same for the LDC side of things, by the way.
> 
> While we are at it: Did you have a look at how to support TLS 
> with Bionic yet? A while back, I had a hard time trying to find 
> any material on the issue yet, but from what I read, it didn't 
> seem to be supported back then. I guess GDC could get away using 
> GCC's emutls, though (apart from the problems this poses for the 
> GC).
> 
> David

Not really. It wasn't supported in Bionic at all when I last looked
into it. At some point I thought about just implementing TLS in bionic
and trying to get it into Android. Probably a little to advanced for me
but we could basically copy the code from freebsd.

The problem with this is that it will take some more years till a
recent bionic is available on most Android devices.

emutls can work for gdc but we have no good solution to integrate this
with the GC yet. At least it'll never be really fast (The problem is
that emutls doesn't use contiguous memory. Every variable could be
malloced at a random address)


More information about the Digitalmars-d mailing list