[fpc-devel] Pure function development
J. Gareth Moreton
gareth at moreton-family.com
Wed Apr 29 22:43:17 CEST 2020
So are you officially rejecting pure functions and my future work on
them in this form?
Gareth aka. Kit
On 29/04/2020 21:40, Jonas Maebe wrote:
> On 29/04/2020 22:08, J. Gareth Moreton wrote:
>> Constant propagation is only really beneficial for inline functions,
> That is incorrect.
>> although there is some crossover with pure functions. I was more meaning
>> a system of tracking and storing these constants, or rather how they
>> manipulate variables throughout a pure function.
> That is exactly what -Ooconstprop does, although (as mentioned before),
> to a quite limited extent. It doesn't extract the constants from the
> nodes, but replaces variables (load nodes) with the constant nodes that
> were assigned to them earlier, and then at the end runs the simplify
> pass over the resulting node tree. The simplify pass already contains
> all support for merging expressions involving only constant nodes into
> single constants, so it has no need for storing the constant data in a
> separate structure and then duplicate all the constant evaluations for
> that extra structure.
> fpc-devel maillist - fpc-devel at lists.freepascal.org
This email has been checked for viruses by Avast antivirus software.
More information about the fpc-devel