- 19 Feb, 2016 2 commits
-
-
jarin authored
Revert of [turbofan] Connect ObjectIsNumber to effect and control chains. (patchset #1 id:1 of https://codereview.chromium.org/1709093002/ ) Reason for revert: Tanks benchmarks (e.g., Octane box2d TF). Original issue's description: > [turbofan] Connect ObjectIsNumber to effect and control chains. > > In theory, we could connect the nodes when doing > the schedule-in-the-middle pass, but that would require creating two > versions of the operator (effectful and pure). I believe we do not > lose anything by wiring the node up eagerly. > > Committed: https://crrev.com/2894e80a0a4a51a0d72e72aa48fcd01968f7949f > Cr-Commit-Position: refs/heads/master@{#34141} TBR=bmeurer@chromium.org # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true Review URL: https://codereview.chromium.org/1718483002 Cr-Commit-Position: refs/heads/master@{#34147}
-
jarin authored
In theory, we could connect the nodes when doing the schedule-in-the-middle pass, but that would require creating two versions of the operator (effectful and pure). I believe we do not lose anything by wiring the node up eagerly. Review URL: https://codereview.chromium.org/1709093002 Cr-Commit-Position: refs/heads/master@{#34141}
-
- 09 Nov, 2015 1 commit
-
-
bmeurer authored
Introduce Reducer::Finalize, which get's called by the GraphReducer once all reductions are done, and use this to implement full inlining as part of the regular reducer fixpoint. R=jarin@chromium.org BUG=v8:4493 LOG=n Review URL: https://codereview.chromium.org/1419373012 Cr-Commit-Position: refs/heads/master@{#31875}
-
- 28 Sep, 2015 2 commits
-
-
jarin authored
Review URL: https://codereview.chromium.org/1367423002 Cr-Commit-Position: refs/heads/master@{#30962}
-
jarin authored
Review URL: https://codereview.chromium.org/1361893006 Cr-Commit-Position: refs/heads/master@{#30958}
-
- 23 Jun, 2015 3 commits
-
-
Benedikt Meurer authored
This will immediately remove dead code from the graph once any of the advanced reducers inserts it. Also changes the GraphReducer to use the canonical Dead node for ReplaceWithValue. R=jarin@chromium.org Committed: https://crrev.com/88a40c5fb381924b1c0b2403dc582bceb2abe5da Cr-Commit-Position: refs/heads/master@{#29217} Review URL: https://codereview.chromium.org/1206533002. Cr-Commit-Position: refs/heads/master@{#29225}
-
bmeurer authored
Revert of [turbofan] Run DeadCodeElimination together with the advanced reducers. (patchset #1 id:1 of https://codereview.chromium.org/1206533002/) Reason for revert: Looks like this breaks Tests262. Original issue's description: > [turbofan] Run DeadCodeElimination together with the advanced reducers. > > This will immediately remove dead code from the graph once any of > the advanced reducers inserts it. Also changes the GraphReducer to > use the canonical Dead node for ReplaceWithValue. > > R=jarin@chromium.org > > Committed: https://crrev.com/88a40c5fb381924b1c0b2403dc582bceb2abe5da > Cr-Commit-Position: refs/heads/master@{#29217} TBR=jarin@chromium.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true Review URL: https://codereview.chromium.org/1200983004 Cr-Commit-Position: refs/heads/master@{#29220}
-
bmeurer authored
This will immediately remove dead code from the graph once any of the advanced reducers inserts it. Also changes the GraphReducer to use the canonical Dead node for ReplaceWithValue. R=jarin@chromium.org Review URL: https://codereview.chromium.org/1206533002 Cr-Commit-Position: refs/heads/master@{#29217}
-
- 17 Jun, 2015 1 commit
-
-
bmeurer authored
Up until now that was still mixed with control reduction in the ControlReducer. This separation allows us to remove the horrible Reducer::Finish hack and also do graph trimming at more appropriate places in the pipeline (i.e. trim dead nodes after generic lowering, which can also make nodes dead). R=jarin@chromium.org,mstarzinger@chromium.org Review URL: https://codereview.chromium.org/1188433010 Cr-Commit-Position: refs/heads/master@{#29077}
-
- 12 Jun, 2015 1 commit
-
-
bmeurer authored
Up until now we used int32_t for NodeId, but that was not ideal because negative values are invalid for NodeId and we use it as an array index for example in the NodeMarker class, where C++ compilers on x64 have to generate code that does proper sign extension for the indices, which is completely unnecessary. R=svenpanne@chromium.org Review URL: https://codereview.chromium.org/1178403004 Cr-Commit-Position: refs/heads/master@{#28997}
-
- 11 Jun, 2015 1 commit
-
-
mstarzinger authored
This is needed in order to allow expansion of a throwing node into a set of nodes that produce different effects for the successful and the exceptional continuation. R=bmeurer@chromium.org Review URL: https://codereview.chromium.org/1179543002 Cr-Commit-Position: refs/heads/master@{#28918}
-
- 05 Jun, 2015 1 commit
-
-
mstarzinger authored
This allows any AdvancedReducer to remove exception projections from graphs. This is the common case when JS-operators are being replaced with pure values. The old NodeProperties::ReplaceWithValue is being deprecated in favor of AdvancedReducer::ReplaceWithValue. R=titzer@chromium.org TEST=unittests/AdvancedReducerTest Review URL: https://codereview.chromium.org/1168693002 Cr-Commit-Position: refs/heads/master@{#28810}
-
- 12 May, 2015 1 commit
-
-
titzer authored
[turbofan] Add AdvancedReducer::ReplaceWithValue() method and convert JSInlining to an AdvancedReducer. Note that this is just a duplication for now. We'll want to get rid of the NodeProperties::ReplaceWithValue() method in the long run. R=bmeurer@chromium.org BUG= Review URL: https://codereview.chromium.org/1135483004 Cr-Commit-Position: refs/heads/master@{#28363}
-
- 06 May, 2015 1 commit
-
-
bmeurer authored
An AdvancedReducer is basically a regular Reducer with an editor that can perform graph editing operations beyond changing or replacing the node that is currently being reduced. The GraphReducer is the default implementation of the AdvancedReducer::Editor interface. The ControlReducerImpl is now just an AdvancedReducer, which temporarily requires a Finish method in the reducer to implement the dead node trimming until we move that to the GraphReducer (which in turn requires that all loops are connected to End). Review URL: https://codereview.chromium.org/1122423003 Cr-Commit-Position: refs/heads/master@{#28251}
-
- 26 Jan, 2015 1 commit
-
-
titzer authored
R=mstarzinger@chromium.org BUG= Review URL: https://codereview.chromium.org/879583002 Cr-Commit-Position: refs/heads/master@{#26280}
-
- 16 Jan, 2015 1 commit
-
-
bmeurer authored
- Make Node::Inputs and Node::Uses mostly STL compliant. - Get rid of some pre-C++11 crappiness. - Start moving unit tests from cctest to unittests. - TrimInputCount() now tries to reserve inputs slots for later appending. - Fix numerous style guide violations. TEST=cctest,unittests R=dcarney@chromium.org Review URL: https://codereview.chromium.org/851263002 Cr-Commit-Position: refs/heads/master@{#26098}
-
- 17 Dec, 2014 1 commit
-
-
Benedikt Meurer authored
The GraphReducer should recurse into new inputs after a node was changed. Most of the reducers already assume this behavior, and it mostly worked by accident in many cases. R=svenpanne@chromium.org Review URL: https://codereview.chromium.org/800073004 Cr-Commit-Position: refs/heads/master@{#25861}
-
- 28 Nov, 2014 1 commit
-
-
Ben L. Titzer authored
R=mstarzinger@chromium.org BUG= Review URL: https://codereview.chromium.org/768763002 Cr-Commit-Position: refs/heads/master@{#25567}
-
- 27 Nov, 2014 1 commit
-
-
titzer authored
R=mstarzinger@chromium.org BUG= Review URL: https://codereview.chromium.org/753073009 Cr-Commit-Position: refs/heads/master@{#25551}
-
- 17 Nov, 2014 1 commit
-
-
Benedikt Meurer authored
Don't use the generic algorithm, but instead start going into the direction of ControlReducer, using a stack plus a revisit queue to not miss any more possibilities for reductions anymore. TEST=cctest,unittests R=dcarney@chromium.org Committed: https://chromium.googlesource.com/v8/v8/+/f047507370634155113d78685372630a230613cf Committed: https://chromium.googlesource.com/v8/v8/+/6e148989a4227a5290a7f8ca72c71f5740870afe Review URL: https://codereview.chromium.org/726513002 Cr-Commit-Position: refs/heads/master@{#25377}
-
- 14 Nov, 2014 2 commits
-
-
Benedikt Meurer authored
This reverts commit 6e148989 for breaking Massive/Embenchen. TBR=machenbach@chromium.org Review URL: https://codereview.chromium.org/727743002 Cr-Commit-Position: refs/heads/master@{#25356}
-
Benedikt Meurer authored
Don't use the generic algorithm, but instead start going into the direction of ControlReducer, using a stack plus a revisit queue to not miss any more possibilities for reductions anymore. TEST=cctest,unittests R=dcarney@chromium.org Committed: https://chromium.googlesource.com/v8/v8/+/f047507370634155113d78685372630a230613cf Review URL: https://codereview.chromium.org/726513002 Cr-Commit-Position: refs/heads/master@{#25345}
-
- 13 Nov, 2014 2 commits
-
-
Michael Starzinger authored
This reverts commit f0475073 due to mjsunit/numops-fuzz-part2 hitting an assertion in the ARM assembler. TBR=bmeurer@chromium.org TEST=mjsunit/numops-fuzz-part2 Review URL: https://codereview.chromium.org/724053002 Cr-Commit-Position: refs/heads/master@{#25327}
-
Benedikt Meurer authored
Don't use the generic algorithm, but instead start going into the direction of ControlReducer, using a stack plus a revisit queue to not miss any more possibilities for reductions anymore. TEST=cctest,unittests R=dcarney@chromium.org Review URL: https://codereview.chromium.org/726513002 Cr-Commit-Position: refs/heads/master@{#25326}
-
- 03 Nov, 2014 1 commit
-
-
mstarzinger@chromium.org authored
R=jarin@chromium.org Review URL: https://codereview.chromium.org/701473002 Cr-Commit-Position: refs/heads/master@{#25064} git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@25064 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 26 Sep, 2014 1 commit
-
-
bmeurer@chromium.org authored
R=jarin@chromium.org Review URL: https://codereview.chromium.org/605933002 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24236 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 04 Sep, 2014 1 commit
-
-
bmeurer@chromium.org authored
This is required to enable a value numbering reducer, which needs to be able to recognize "dead nodes". TEST=compiler-unittests,cctest R=jarin@chromium.org Review URL: https://codereview.chromium.org/541643002 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23675 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 02 Sep, 2014 1 commit
-
-
bmeurer@chromium.org authored
Less useless creativity is best creativity! R=svenpanne@chromium.org Review URL: https://codereview.chromium.org/526223002 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23579 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 26 Aug, 2014 1 commit
-
-
titzer@chromium.org authored
to use with Zone. For example, subclasses add constructors that wrap a Zone in a zone_allocator to save clients this verbosity. R=bmeurer@chromium.org, mstarzinger@chromium.org BUG= Review URL: https://codereview.chromium.org/505133003 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23402 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 30 Jul, 2014 1 commit
-
-
danno@chromium.org authored
R=mstarzinger@chromium.org Review URL: https://codereview.chromium.org/426233002 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22709 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-