Descriptiondart2js cps: Redundant join elimination.
There is a new pass that optimizes for continuations that branch on a
parameter, where every invocation passes a constant as that parameter.
This avoids unnecessary boolean flags that can arise from specializing a
call to a method that returns a boolean.
A current short-coming is that this lives in its own pass.
I believe shrinking reductions and redundant joins elimination can
trigger redexes of each other, so in theory we may still get redundant
joins in the output. The two passes might need to be reorganized at
some point.
R=karlklose@google.com
Committed: https://github.com/dart-lang/sdk/commit/306b627a05a6e89a4bceb2d96ef376fceb081743
Patch Set 1 #
Messages
Total messages: 4 (1 generated)
|