Memoization in DMD

Nick Sabalausky via Digitalmars-d digitalmars-d at puremagic.com
Sun Jul 6 22:34:33 PDT 2014


On 7/7/2014 12:10 AM, H. S. Teoh via Digitalmars-d wrote:
> On Sun, Jul 06, 2014 at 08:34:29PM +0000, "Nordlöw" via Digitalmars-d wrote:
>> On Sunday, 6 July 2014 at 20:11:12 UTC, Walter Bright wrote:
>>> Caching and memoization of what?
>>
>> Generated machine code.
>
> Doesn't rdmd do that to some extent? (But in granularity of entire
> source files, rather than individual functions or assembly blocks.)
>

Unless something's changed recently, RDMD doesn't do incremental 
compilation. It just passes *all* sources to DMD to be rebuilt on every 
invocation. It does skip recompiling if *none* of the dependencies have 
changed since the last build. But the granularity is "whole program" not 
"source file".

IIRC, The old xfbuild supported incremental compilation (or tried to), 
but it ran into big problems with how DMD chose which object file to put 
which symbol into (may have been resolved since then?), and I'm not sure 
it ever really supported D2 anyway.



More information about the Digitalmars-d mailing list