[fpc-devel] inline... and philosophy
J. Gareth Moreton
gareth at moreton-family.com
Sat Nov 9 16:20:08 CET 2019
On 09/11/2019 15:14, Michael Van Canneyt wrote:
>
>
> On Sat, 9 Nov 2019, J. Gareth Moreton wrote:
>
>> Competitions aside, there are times where space is a premium, whether
>> it be from distributing an application on a DVD, bandwidth or data
>> limits (even some first world countries are still on dial-up in
>> places, or are otherwise monopolised by a single, bad-quality
>> provider), the smaller capacity of solid-state hard drives
>> (especially on some laptops) and can otherwise be a money saver
>> sometimes.
>
> I tend to think more size gains can be obtained from more aggressive
> smartlinking.
> The smartlinking is sometimes disabled by the way code is written.
>
> To give an example, pas2js has a switch to convert published to public
> sections. As a result, the published sections are suddenly reduced to
> what is actually used in code. This produces significant size gains.
>
> Michael.
> _______________________________________________
> fpc-devel maillist - fpc-devel at lists.freepascal.org
> https://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel
>
That's true. That's mentioned in the "size matters" article. I didn't
know about 'published' until then. Presumably, if that switch doesn't
exist (like with most of the LCL), I gather the only way to strip out
those unused published sections is some very intelligent whole-program
optimisation, and even then it may not work if a string (to access a
property name) is not deterministic.
Gareth aka. Kit
More information about the fpc-devel
mailing list