Matt wrote:
On 12/22/09 2:34 AM, Travis Boucher wrote:
alkor wrote:
it's bad
d's good enough to make real projects, but complier MUST supports
linux x64 as a target platform
believe, it's time to make 64-bit code generation
is it possible to take back-end (i.e. code generation) from gcc or
it's too complicated?
Look up gdc and ldc, both can target x86_64. gdc tends to be lagging
behind (ALOT) in the dmd front end, ldc not as much.
GDC is being maintained again. See
http://bitbucket.org/goshawk/gdc/wiki/Home
They are up to DMD 1.043 and there has been significant activity
recently. It could take a while for them to get fully caught up, but
they are making good progress.
gdc is still lagging quite a bit, I've been following the goshawk
branch. The problem here is he has to deal with both the major DMD
changes (in 2 different D versions) and the big changes in GCC, so
maintaining gdc itself would be an annoying process since there isn't a
bit of support on either end of the bridge. (DM does what best for DM,
gcc won't accept a language like D (even though it has more similarities
to C/C++ then java/fortran/ada does).
ldc on the other hand has a great structure which promotes using it as a
backend for a different front end, however it doesn't (yet) generic code
nearly as good as gcc.
dmd's focus seems to be more about a reference compiler then a flexible
compile that generates great code.
Personally, I still use an old ass gdc based on GCC 4.1.3, DMD1.020
because it happens to be the one that best supports my platform
(FreeBSD/amd64). The only real issues I run into is a few issues with
CTFE and dsss/rebuild's handling of a few compiler errors (eg.
writefln("..."; results in rebuild exploding.)