Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Don't emit cstack handling code if unused
Anything that doesn't capture or won't need to backtrack into a subrule call will not need a cstack. We already allocate it lazily, but this change means we don't even generate code to trim it when the null check guarding it would always come out true. This saves the check and makes the generated code more compact. This results in a bit over 3KB less bytecode from compiling the NQP grammar. This change combined with the previous one to not emit unused cclass setup save around 43KB off the compiled output of the Perl 6 grammar.
- Loading branch information
Showing
1 changed file
with
52 additions
and
30 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