V Thu, 12 Nov 2015 12:38:47 +0000 John Colvin via Digitalmars-d <digitalmars-d@puremagic.com> napsáno:
> On Thursday, 12 November 2015 at 12:23:11 UTC, Daniel Kozak wrote: > > V Thu, 12 Nov 2015 12:10:30 +0000 > > John Colvin via Digitalmars-d <digitalmars-d@puremagic.com> > > napsáno: > > > >> On Thursday, 12 November 2015 at 11:59:50 UTC, Daniel Kozak > >> wrote: > >> > [...] > >> > >> What versions of these compilers? I suspect the majority > >> (maybe 80%-ish) of the time is spent allocating memory, so you > >> might be seeing GC improvements in recent DMD > > > > DMD 2.069 > > > > LDC 2.067 > > > > GDC 2.065 > > > > No it is not cause by memory allocations. > > > > It seems DMD can recognize that fmttable has same result every > > time, so it does compute it only once. > > Ok, then my second hypothesis is that dmd is inferring the pure > attribute for fmttable because it returns auto (new in 2.069 > IIRC), which enable the above optimisation that you have noted. > Gdc and ldc (and dmd) can do similar things in their backend, but > perhaps not here. > > Do you have older dmd versions on hand to test? Yes (DVM) and it is same for older versions (2.066.1, 2.067.1)