D code running on the Nintendo 3DS

Johan j at j.nl
Sun Oct 20 20:31:04 UTC 2019


On Sunday, 20 October 2019 at 18:25:42 UTC, TheGag96 wrote:
> On Sunday, 20 October 2019 at 09:36:17 UTC, Johan Engelen wrote:
>> Did you try with LDC?
>> Just a wild guess but perhaps this triple will work: 
>> `-mtriple=armv6k-unknown-eabi`.
>>
>> -Johan
>
> I haven't yet, but I've been told also by someone else to try! 
> It would certainly be nice to have a true -betterC going with 
> this. Does LDC have equivalent flags for what devkitARM wants 
> passed into GCC, like:
>
> -march=armv6k

-mtriple=armv6k-unknown-eabi
I am not sure about the "eabi".

> -mtune=mpcore

This is not strictly needed. (It's an optimization parameter)
Maybe "-mcpu=mpcore" sets the optimizer to optimize for that cpu.

> -mfloat-abi=hard

-float-abi=hard

> -mtp=soft
Don't know if we expose this option, but LDC by default seem to 
do the same as GCC's -mtp=soft:
https://d.godbolt.org/z/bmcRdI

> -mword-relocations

Don't know!

> -fomit-frame-pointer

This is more of a non-debug option, so not strictly needed. LDC's 
option is -frame-pointer=none (for newer LDC), or 
--disable-fp-elim=false (older and newer LDC).

> -ffunction-sections

-function-sections

LDC is a cross compiler by nature, but you'll have to build the 
runtime libraries yourself. But LDC contains an easy tool for 
just that! Read: 
https://wiki.dlang.org/Building_LDC_runtime_libraries

cheers,
  Johan




More information about the Digitalmars-d-announce mailing list