Description[turbofan] Improve escape analysis.
* Treat Select nodes as escaping
* Correctly void virtual field information
after a store to a non-const index
* Add a shortcut if all allocates escape
* Add a shortcut if no allocates are discovered
* Only reduce FrameState/StateValues nodes if they
have virtual allocates as input (transitively)
* Fix bug in FrameState/StateValues duplication
* Add check to verifier: First 3 inputs of FrameState
must be StateValues
R=mstarzinger@chromium.org
BUG=v8:4586
LOG=n
Committed: https://crrev.com/4efbeac115d9d23dc602896684dbb9ef1375142c
Cr-Commit-Position: refs/heads/master@{#33406}
Patch Set 1 #Patch Set 2 : Remove staging #Patch Set 3 : Fix bug #Patch Set 4 : Performance improvements #Patch Set 5 : Fix signedness #Patch Set 6 : Remove printf #Patch Set 7 : Fix bug #Patch Set 8 : Disable load/store elimination for escaping nodes #Patch Set 9 : Improvements #Patch Set 10 : More improvements #Patch Set 11 : Make IsVirtual(NodeId) private #Patch Set 12 : OMG fix #
Total comments: 5
Patch Set 13 : Fix oversight #Patch Set 14 : Handle stores to non-const index correctly #Patch Set 15 : Add unittest #Patch Set 16 : Rebase #Patch Set 17 : Unstage #
Dependent Patchsets: Messages
Total messages: 12 (7 generated)
|