Increasing D Compiler Speed by Over 75%

dennis luehring dl.soluz at gmx.net
Wed Jul 31 01:32:22 PDT 2013


Am 31.07.2013 09:00, schrieb Walter Bright:
> On 7/30/2013 11:40 PM, dennis luehring wrote:
>> currently the vc builded dmd is about 2 times faster in compiling
>
> That's an old number now. Someone want to try it with the current HEAD?
>

tried to but failed

downloaded dmd-master.zip (from github)
downloaded dmd.2.063.2.zip

buidl dmd-master with vs2010
copied the produces dmd_msc.exe to dmd.2.063.2\dmd2\windows\bin

dmd.2.063.2\dmd2\src\phobos>..\..\windows\bin\dmd.exe std\algorithm 
-unittest -main

gives

Error: cannot read file ûmain.d (what is this "û" in front of main.d?)

dmd.2.063.2\dmd2\src\phobos>..\..\windows\bin\dmd_msc.exe std\algorithm 
-unittest -main

gives

std\datetime.d(31979): Error: pure function 
'std.datetime.enforceValid!"hours".enforceValid' cannot call impure 
function 'core.time.TimeException.this'
std\datetime.d(13556): Error: template instance 
std.datetime.enforceValid!"hours" error instantiating
std\datetime.d(31984): Error: pure function 
'std.datetime.enforceValid!"minutes".enforceValid' cannot call impure 
function 'core.time.TimeException.this'
std\datetime.d(13557): Error: template instance 
std.datetime.enforceValid!"minutes" error instantiating
std\datetime.d(31989): Error: pure function 
'std.datetime.enforceValid!"seconds".enforceValid' cannot call impure 
function 'core.time.TimeException.this'
std\datetime.d(13558): Error: template instance 
std.datetime.enforceValid!"seconds" error instantiating
std\datetime.d(33284):        called from here: (TimeOfDay __ctmp1990;
  , __ctmp1990).this(0, 0, 0)
std\datetime.d(33293): Error: CTFE failed because of previous errors in this
std\datetime.d(31974): Error: pure function 
'std.datetime.enforceValid!"months".enforceValid' cannot call impure 
function 'core.time.TimeException.this'
std\datetime.d(8994): Error: template instance 
std.datetime.enforceValid!"months" error instantiating
std\datetime.d(32012): Error: pure function 
'std.datetime.enforceValid!"days".enforceValid' cannot call impure 
function 'core.time.TimeException.this'
std\datetime.d(8995): Error: template instance 
std.datetime.enforceValid!"days" error instantiating
std\datetime.d(33389):        called from here: (Date __ctmp1999;
  , __ctmp1999).this(-3760, 9, 7)
std\datetime.d(33458): Error: CTFE failed because of previous errors in this
Error: undefined identifier '_xopCmp'

and a compiler crash


my former benchmark where done the same way and it worked without any 
problems - this master seems to have problems






More information about the Digitalmars-d-announce mailing list