0 cost template instantiation

jfondren julian.fondren at gmail.com
Thu Sep 30 03:21:51 UTC 2021


On Thursday, 30 September 2021 at 03:13:28 UTC, jfondren wrote:
> As provided, loadSymbol without the "static if":
>
> 965K libhipengine_api.a
>
> with `mixin(loadSymbol("name"))` instead of a template:
>
> 749K libhipengine_api.a

The difference goes down to 66K vs. 60K with `dub -brelease 
--compiler=gdc`. ldc's not as slim but still much better than 
dmd, and -brelease is actually much less significant. So dmd's 
the main culprit for the bloat here. huh.

But since you have importPaths-ldc perhaps you weren't using dmd 
to begin with.


More information about the Digitalmars-d-learn mailing list