Join GitHub today
GitHub is home to over 31 million developers working together to host and review code, manage projects, and build software together.Sign up
Do more optimization (part 1) #391
This pull request contains all new files added to the compiler by the Flambda optimization framework. The framework provides a new intermediate language together with associated optimizations upon it, the majority of which at present are forms of beta-reduction and lifting (inlining, simplification based on information about values known at compile time, lifting of constants to be assigned to symbols, etc).
We plan to add more documentation including in the manual by the time of the release, so fear not.
The new files fall into the following categories:
The new files have not yet been added to the build system. The idea is that once this has been merged, along with the other outstanding pull requests, the remaining diff will show the interface between this code and the existing code. That will involve some amount of diff to existing code, but it should be fairly small. (I contemplated at first doing this merge the other way around, but I think this way will be more satisfactory.)
There will be more changes in this portion due to work still going on, but those can be merged in later.
I am awaiting separate approval from @xavierleroy on the new copyright headers.
Note that even though github won't display all the changes on one page, you can view individual files using the buttons.