Is the compiler actually able to inline functions which are used from a
unit? When a unit is used it’s compiled to a .o file and linked so the
compiler doesn’t have access to the source code anymore and thus can’t
inline I would think.

I write this because I’ve recently learned of link-time optimizations (LTO)
from LLVM where modules are compiled to bitcode which can be linked
together and inlined. It’s probably much slower than using precompiled .o
files but good for release builds. Without that I don’t see how the
compiler can inline any code called from units, which includes the whole
RTL!

Regards,
    Ryan Joseph
_______________________________________________
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
https://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-pascal

Reply via email to