ARM first & default LDC

Timon Gehr timon.gehr at gmx.ch
Sun Dec 20 04:03:12 UTC 2020


On 19.12.20 21:36, Jeeferson wrote:
> On Saturday, 19 December 2020 at 17:40:28 UTC, Timon Gehr wrote:
>> On 19.12.20 18:15, claptrap wrote:
>>>
>>> 2. People could just add it to LLVM if they want i think. Might even 
>>> be easier to write a whole new backend from scratch, i dont know. IE. 
>>> Not having DMD doesnt preclude the benefit that Walter claims DMD 
>>> gives us.
>>>
>>
>> Building LLVM from scratch takes multiple hours. Building DMD from 
>> scratch (including backend) takes _seconds_.
> 
> Anyone that says LLVM takes multiple hours obviously hasn't built it, or 
> are using a 20 year old computer to build it.
> ...

False. Maybe it improved in the meantime, maybe there were some missing 
flags to the cmake invocation. (Also, you are assuming the build just 
works if you follow the instructions.)

> Once you build LLVM you don't build it again.

My point was there's some value in simplifying initial setup. Git clone 
and get started. Dependencies on a huge C++ project can be more painful 
than not having those dependencies.

> ...
> 
> The user base that compiles DMD is infinitely smaller than the amount 
> that use it.

False, there's a positive number of people working on DMD (and they are 
the ones who actually decide what happens to the backend).

> The only opinion I've heard from the D dev team is that 
> they hate the backend and see the DMD backend as obsolete.

So either you don't read or Walter is not on the dev team. Got it.

> So not sure who you are really referring to here, in reality.
> 

I have contributed language features to the frontend and not having to 
deal with getting LLVM setup right was a plus. (I never said I couldn't 
be bothered to do it.)

>> Anyway, I think the solution is not to change the default development 
>> compiler, it's to get rid of that concept by improving separation of 
>> frontend and backends in the frontend development workflow so that it 
>> becomes equally convenient to develop frontend patches against every 
>> backend. (Though it may be possible to make the case that this would 
>> happen more quickly if LLVM or GCC were made the default backend, as 
>> it's plausible that the developers of LDC and GDC are more aware of 
>> what needs to be done in that department.)
> 
> One of the benefits of having your own backend is that you have control 
> over it right? I don't think anyone here would disagree the current 
> backend is garbage. It is legacy C, it is difficult to read and write 
> and is full of bugs. All the while only one person is really working on it.
> 
> Since we have full control why isn't a better backend created? This is 
> indicative of the real problems that are being faced. Lack of manpower.
> 

I really hate the way some people just assume there are two positions on 
any given matter and start superficially classifying people into one of 
two stances. My point was that it's stupid to claim the DMD backend does 
not have _any_ benefits over LLVM. Anyone should be able to agree with 
that, it's completely obvious no matter how you stand on whether or not 
work on the DMD backend should continue or not.


More information about the Digitalmars-d mailing list