-
Notifications
You must be signed in to change notification settings - Fork 110
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
CogVM source as per VMMaker.oscog-eem.3419
Now that <inline: #always> is less affected by a less capricious inliner use it to shed code from the generated BitBlt plugin, and the cogits. Slang: Change the record of inlining phase so that it is known when inlining has yet to start, has started, and has finished, instead of only having begun or not. Refactor the doFinalValidationsAndTransformations and make sure it is done along all inlining code paths. Pull the check for required inlinability out of inlineableFunctionCall:in: & inlineableSend:in: and into doFinalValidationsAndTransformationsIn: where it is only performed once inlining has finished. Fix isFunctionalIn:. Fix the bug in hasReturnOnlyAtEnd that failed to find returns with the blocks of a returning if that didn't come at the end of those blocks. Fix TStmtListNode>>#copyWithoutReturn to handle trailing returning if's correctly. Fix TStmtListNode>>#replaceNodesIn: to flatten inlined statement lists.
- Loading branch information
1 parent
277402c
commit d87a39d
Showing
81 changed files
with
34,979 additions
and
2,041 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.