Parsing especially large nested functions takes up more memory than necessary.
Inner functions must be eagerly parsed for scope analysis, but the full AST is also kept around even though it's not needed. This CL mitigates this problem by allocating some AstNodes of the inner function to a temporary Zone which is deallocated once the scope information has been built. The remaining nodes (such as VariableProxy) must persist until scope analysis actually happens, and have to be allocated to a parser-persistent Zone. BUG=417697 LOG=N Review URL: https://codereview.chromium.org/1304923004 Cr-Commit-Position: refs/heads/master@{#30685}
Showing
Please
register
or
sign in
to comment