Am 28.10.2018 um 02:11 schrieb Ben Grasset:
> 
> There's also a number of things that would specifically help the build-time 
> performance of the compiler itself that I've
> noticed, such as there being many, many, many, one-liner functions and 
> procedures that should almost certainly be marked
> as inline but currently are not. 

... because FPC can auto inline if needed. However, the current autoinline 
heuristics which is pretty conservative
(read: inlines only very small subroutines), has exactly two effects: it makes 
the compiler executable bigger and
slower. A few bytes bigger would be ok, but slower is not acceptable, right? I 
can tell you also why it is slower: the
compiler is memory throughput limited, so everything which increases the memory 
footprint is bad. While (auto)inlining
helps very much for "normal" programs and benchmarks, for the compiler it is 
not a good solution.

The only thing I consider useful in this direction is to work on improving the 
auto inline heuristics by maybe adding
two methods: for pure size and for speed, if the program is not memory 
throughput limited.
_______________________________________________
fpc-devel maillist  -  fpc-devel@lists.freepascal.org
http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel

Reply via email to