On 12/15/2011 6:33 AM, bearophile wrote:
I should add that the XMM register support is for 64 bit targets, and also
the register allocator will enregister float and double variables in XMM
registers.<
Will DMD use 8 XMM registers in 32 bit code too?
We'll see, but it's a harder problem.
Putting the compiler in D would make it difficult to integrate the D front
end into the C/C++ back ends of gcc and llvm.<
Writing the reference front-end in D has some advantages: - Other people have
lot of C/C++ code; if they want to use D they will probably want to interface
C/C++ with D code. So writing the compiler front-end in D is a way to eat
some of the D dog food, and see/test how much good such interfacing is, and
eventually it's a push to improve it.
D is designed to use C libraries. It is not designed to be a library accessible
from C - D wants to be in charge of the startup.
If some parts of the D2 language are badly designed or they
lead to low performance (like fixed sized array assignment) this is a good
way to spot such problems and a way to push to fix them.
That isn't the issue.