MORE OFFTOPIC Re: I've just released Vasaro
Iain Buclaw
ibuclaw at gdcproject.org
Tue Dec 11 11:13:25 UTC 2018
On Tuesday, 11 December 2018 at 10:30:54 UTC, Jacob Carlborg
wrote:
> On 2018-12-10 12:26, Iain Buclaw wrote:
>
>> Is there any consideration apart from section/tls support?
>
> There's the backtrace implementation for exceptions as well,
> "rt.backtrace". I had to slight modify the DMD backend to get
> that to work the same as it does on Linux and FreeBSD. I've
> documented how it's implemented in the commit message [1].
>
We're covered by libbacktrace, rather than tthe druntime
implementation.
https://github.com/gcc-mirror/gcc/blob/master/libbacktrace/README
>> I'm just going to fork the current rt.sections stuff (I.e:
>> gcc.sections.{elf,macho,pef,x off}) as apart from linux/elf,
>> the rest is not of any use or is specific to dmd object format.
>
> You should be able to reuse most parts of rt.sections_osx_x86.
> I don't think there's anything in that file that won't work on
> x86-64. But you would need to adjust it for the TLS
> implementation you're using.
>
Unlike dmd, we don't really have full control over how things end
up in the object. There are a couple coaxing methods used which
allowed us to use elf_shared without modification. Other object
formats I don't think we'll be so lucky over.
I'll try really hard though to keep the same implementation used
for elf in others however - just different section names
depending on what is accepted by the assembler.
>> As for tls, well there is still no native support in gcc if I
>> understand correctly.
>
> It was pretty straight forward (once I figured it out :) ) to
> implement in DMD and it's pretty well documented you want to
> implement it in GCC.
>
I'll leave that to the binutils people. Supporting emutls also
means we'll work on mingw too, which has a similar say story
regarding state of native tls.
Besides, it will only work for newer OSX releases, not ~10.5
which is roughly the base version aimed to support.
More information about the Digitalmars-d-announce
mailing list