Raspberry Pi - raspberrypi.org
Andrew Wiley
wiley.andrew.j at gmail.com
Sat Dec 24 21:54:07 PST 2011
On Sat, Dec 24, 2011 at 10:04 PM, Alex Rønne Petersen
<xtzgzorex at gmail.com> wrote:
> On 24-12-2011 17:20, Andrew Wiley wrote:
>>
>> On Sat, Dec 24, 2011 at 9:51 AM, Jacob Carlborg<doob at me.com> wrote:
>>>
>>> On 2011-12-24 08:26, Andrew Wiley wrote:
>>>
>>>>
>>>> On Fri, Dec 23, 2011 at 11:10 PM, Steve Teale
>>>> <steve.teale at britseyeview.com> wrote:
>>>>>
>>>>>
>>>>> Now here's an interesting target for D - this little beast could sell
>>>>> in
>>>>>
>>>>> millions, and could be the way that many youngsters start out as
>>>>> programmers.
>>>>>
>>>>> Presumably LDC would be the quickest thing to get on there?
>>>>>
>>>>> Steve
>>>>
>>>>
>>>>
>>>> GDC on ARM has been working reasonably well for a while now (although
>>>> I get an ICE when building the latest trunk - still trying to come up
>>>> with enough information for a bug report). There's one major bug that
>>>> requires the section-anchors optimization to be disabled.
>>>>
>>>> Last I tried LDC on ARM, it built and segfaulted when building the
>>>> standard library. GCC code generation for ARM is apparently
>>>> significantly better than LLVM, so I haven't looked much farther into
>>>> LDC.
>>>
>>>
>>>
>>> LLVM can't be that bad since it's good enough for Apple and they're
>>> abandoning GCC in favor of Clang and LLVM.
>>>
>>
>> I'm looking into it again, apparently it's improved dramatically on
>> ARM in the last few years. The compiler itself builds, but Druntime
>> needs some ARM-specific assembly. Working on that.
>
>
> You may want to have a peek at GDC's druntime, as it is (mostly) ARM-ready.
> Could probably lift some code from there.
>
> - Alex
If I wanted that, I'd have to dig into GCC's platform specific source
(not GDC). Where pushing a thread's state onto the stack in GCC
consists of:
__builtin_unwind_init();
LLVM and DMD have to write some platform specific assembly.
Still, I could probably find GCC's assembly definitions for ARM.
More information about the Digitalmars-d
mailing list