On Thursday, 12 November 2015 at 19:11:25 UTC, tired_eyes wrote:
On Thursday, 12 November 2015 at 14:44:49 UTC, John Colvin
wrote:
To test the speed of fmttable itself I split fmttable and main
in to different modules, made fmttable extern(C) so I could
just prototype it in the main module (no import), then
compiled them separately before linking. This should prevent
any possible inlining/purity cleverness. ~1s for ldmd2, ~2s
for dmd, which is business as normal.
dmd is being clever and spotting that fmttable is pure, it
would be good if ldc/gdc could spot this to.
If so, should explicitly marking fmttable as pure close the gap
for initial code?
Well it won't do any harm, but it really depends on what the
compiler chooses to do with the information.