[fpc-devel] The 15k bounty: Optimizing executable speed forLinux x86 / LLVM

J. Gareth Moreton gareth at moreton-family.com
Sun Oct 28 04:38:40 CET 2018


 To add my two pence to this:

 Low-level optimisation is my personal speciality.  Currently a lot of
what I do is on small savings within the peephole optimizer on x86
systems.  Generally the result is that the compiler runs slightly more
slowly, but the final binary runs a bit more efficiently - for example,
replacing integer divisions by a constant with multiplications.

 It's not as important as improving node generation and the like, but every
little helps.  In the meantime, I'm seeing if it's possible to minimise
the number of passes that the optimiser makes - currently it's at least 4
per code block when -O3 is specified... pre-peephole, pass 1 (which is
repeated until there are no more critical changes), pass 2 and
post-peephole).  This may not amount to anything, but I tend to experiment
a lot.

 Part of my incentive is that I like to design games and am also an amateur
mathematician, both fields that can benefit from speed gains, so if I can
make Free Pascal into something that is suitable for such tasks, then my
life is complete!

 Gareth aka. Kit
 
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freepascal.org/pipermail/fpc-devel/attachments/20181028/eb0c7ddc/attachment.html>


More information about the fpc-devel mailing list