- 01 Feb, 2016 3 commits
-
-
mstarzinger authored
This simplifies the branch analysis we perform on the bytecode stream down to the bare minimum that we need to build graphs. Note that we still record all branch targets, even though only the backwards ones would be needed, but this is essentially for free and might be useful eventually. R=oth@chromium.org Review URL: https://codereview.chromium.org/1646873004 Cr-Commit-Position: refs/heads/master@{#33635}
-
mstarzinger authored
The reachability of a bytecode is implied by a live environment reaching the bytecode during the abstract control flow simulation of the bytecode iteration perfromed by the graph builder. There is no need to compute it upfront anymore. Also, the upfront computation was only an approximation when it came to the reachability of an exception handler. This is why several tests for translation of exception handlers can now be enabled. R=oth@chromium.org Review URL: https://codereview.chromium.org/1645293003 Cr-Commit-Position: refs/heads/master@{#33634}
-
mstarzinger authored
This simplifies how the BytecodeGraphBuilder simulates control flow by reversing the propagation direction to forwards propagation. This is the same direction as the data flow which is also a forward propagation. In this way the analysis information needed at merge points is drastically reduced while still retaining the same simulation power. In short: We push down environments instead of pulling them. R=oth@chromium.org Review URL: https://codereview.chromium.org/1641893004 Cr-Commit-Position: refs/heads/master@{#33633}
-
- 28 Jan, 2016 1 commit
-
-
mstarzinger authored
This translates the exception handler table attached to a bytecode array correctly into exceptional projections within the TurboFan graph. We perform an abstract simulation of handlers that are being entered and exited by the bytecode iteration to track the correct handler for each node. R=oth@chromium.org BUG=v8:4674 LOG=n Review URL: https://codereview.chromium.org/1641723002 Cr-Commit-Position: refs/heads/master@{#33580}
-
- 16 Dec, 2015 1 commit
-
-
oth authored
This change adds support for local control flow when building graphs from bytecode. The change ensures loop emitted from the bytecode generator are in natural order so the only back branches are for loops. BUG=v8:4280 LOG=N Review URL: https://codereview.chromium.org/1502243002 Cr-Commit-Position: refs/heads/master@{#32911}
-