- 29 Oct, 2018 1 commit
-
-
Clemens Hammacher authored
R=mstarzinger@chromium.org Bug: v8:7965 Change-Id: I26c85e7791550cff269ffc998077501a1eaef3a5 Reviewed-on: https://chromium-review.googlesource.com/c/1303718 Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#57073}
-
- 15 Oct, 2018 1 commit
-
-
Georg Neis authored
There's no ambiguity and the shorter name makes things easier to read. Bug: v8:7790 Change-Id: Ibcf3fd7f38a91e26a83cd335fad0ec80a5fe9be1 Reviewed-on: https://chromium-review.googlesource.com/c/1278392 Commit-Queue: Georg Neis <neis@chromium.org> Reviewed-by: Jaroslav Sevcik <jarin@chromium.org> Reviewed-by: Maya Lekova <mslekova@chromium.org> Cr-Commit-Position: refs/heads/master@{#56623}
-
- 23 Jul, 2018 2 commits
-
-
Georg Neis authored
We'll soon start collecting data from the JS heap prior to the typed lowering pass, and then refrain from reading the heap in that pass. This CL prepares the broker machinery by introducing a hash table that maps an object (handle) to the corresponding cached data. For the time being, that cached data is essentially just the handle itself. Bug: v8:7790 Change-Id: I830e9c72faafb7ae1d10e8a111636b3a3762bbc6 Reviewed-on: https://chromium-review.googlesource.com/1143405 Commit-Queue: Georg Neis <neis@chromium.org> Reviewed-by: Maya Lekova <mslekova@chromium.org> Reviewed-by: Jaroslav Sevcik <jarin@chromium.org> Cr-Commit-Position: refs/heads/master@{#54618}
-
Stephan Herhut authored
This moves the static handle() helper function to handles-inl.h as it ultimately depends on handles-inl.h anyway. To make this possible, also move some other code to -inl.h files and split up some header files into a -inl.h part. Bug: v8:7490 Change-Id: I0f68e0728ba082b87ffa911aaf205d9b1523d2c9 Reviewed-on: https://chromium-review.googlesource.com/1146723Reviewed-by: Benedikt Meurer <bmeurer@chromium.org> Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Commit-Queue: Stephan Herhut <herhut@chromium.org> Cr-Commit-Position: refs/heads/master@{#54617}
-
- 15 Jun, 2018 1 commit
-
-
Georg Neis authored
No longer access the heap directly, as policed by Disallow* scopes in JSContextSpecialization::Reduce. Bug: v8:7790 Change-Id: I40f1c500b04b96152421fd5de631747ba386bca1 Reviewed-on: https://chromium-review.googlesource.com/1101322 Commit-Queue: Georg Neis <neis@chromium.org> Reviewed-by: Jaroslav Sevcik <jarin@chromium.org> Cr-Commit-Position: refs/heads/master@{#53759}
-
- 11 Jul, 2017 1 commit
-
-
Alexandre Talon authored
Each reducer now has a virtual reducer_name function, returning its name (the name of the class containing this reducer). This gets displayed when using the --trace_turbo_reduction flag. Also when using this flags more messages are displayed. Actually when a node is replaced in-place (which is called an update of the node), other reducers can still update it right after the in-place replacement. When a node is really replaced (not in-place), then we stop trying to apply reducers to it before we propagate the reduction through the relevant nodes. Before a message got printed only for the last reduction it went through. So in case a node was reduced in-place several times in a row, only the last update was printed, or none at all if after being reduced in-place it got reduced by being replaced by another node: only the non-in-place replacement was showed. Now each time an in-place reduction is applied to a node, a message gets printed. Bug: Change-Id: Id0f816fecd44c01d0253966c6decc4861be0c2fa Reviewed-on: https://chromium-review.googlesource.com/563365Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Reviewed-by: Ross McIlroy <rmcilroy@chromium.org> Commit-Queue: Alexandre Talon <alexandret@google.com> Cr-Commit-Position: refs/heads/master@{#46552}
-
- 26 Jun, 2017 1 commit
-
-
Georg Neis authored
R=mstarzinger@chromium.org Bug: Change-Id: Ica169da6e095abb79967687ae9a18db5c833f72e Reviewed-on: https://chromium-review.googlesource.com/546356Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Commit-Queue: Georg Neis <neis@chromium.org> Cr-Commit-Position: refs/heads/master@{#46203}
-
- 04 May, 2017 1 commit
-
-
neis authored
1. Generalize context specialization such that the provided context can be any outer context of the function, not necessarily the immediate outer context. 2. Based on this: if function specialization is disabled, then specialize for the module context if there is one. 3. Extend typed lowering of module loads and stores such that if the operand is a Module constant, we constant-fold the cell load. That is, a JSLoadModule with a Module HeapConstant input becomes a LoadField with a Cell HeapConstant input, and similarly for JSStoreModule. BUG=v8:1569 Review-Url: https://codereview.chromium.org/2841613002 Cr-Commit-Position: refs/heads/master@{#45083}
-
- 31 Mar, 2017 1 commit
-
-
bmeurer authored
R=jarin@chromium.org BUG=v8:5267,v8:6181 Review-Url: https://codereview.chromium.org/2792553002 Cr-Commit-Position: refs/heads/master@{#44305}
-
- 13 Jan, 2017 1 commit
-
-
neis authored
With this CL, context loads and stores are "strengthened" by reducing the incoming context chain and decreasing the depth accordingly, whenever possible. This enables more opportunities for specialization and will let us easily add module context specialization later. BUG= Review-Url: https://codereview.chromium.org/2559173003 Cr-Commit-Position: refs/heads/master@{#42334}
-
- 13 Jul, 2015 1 commit
-
-
bmeurer authored
The JSContextSpecialization should only care about loads from the context and stores to the context, where the context is either a HeapConstant or the special context Parameter (and a context for the outer most function is provided). This way we don't eagerly embed arbitrary context constants for no benefit, but we still specialize the loads and store which we actually care about. R=mstarzinger@chromium.org Review URL: https://codereview.chromium.org/1227963005 Cr-Commit-Position: refs/heads/master@{#29602}
-
- 06 Jul, 2015 1 commit
-
-
bmeurer authored
Remove the context specialization hack from the AstGraphBuilder, and properly specialize to the function context in the context specialization. And replace the correct context in the JSInliner. R=mstarzinger@chromium.org BUG=v8:4273 LOG=n Review URL: https://codereview.chromium.org/1218873005 Cr-Commit-Position: refs/heads/master@{#29493}
-
- 19 Jun, 2015 1 commit
-
-
bmeurer authored
BUG=v8:3809 LOG=n R=svenpanne@chromium.org Review URL: https://codereview.chromium.org/1196623002 Cr-Commit-Position: refs/heads/master@{#29147}
-
- 08 Jun, 2015 1 commit
-
-
mstarzinger authored
This in turn allows usage of AdvancedReducer::ReplaceWithValue which has access to the underlying graph reducer. R=titzer@chromium.org Review URL: https://codereview.chromium.org/1162903006 Cr-Commit-Position: refs/heads/master@{#28838}
-
- 20 Apr, 2015 1 commit
-
-
Ross McIlroy authored
R=jochen@chromium.org Review URL: https://codereview.chromium.org/1088993003 Cr-Commit-Position: refs/heads/master@{#27937}
-
- 19 Feb, 2015 1 commit
-
-
titzer authored
AstGraphBuilder puts a constant context in from the beginning. Also fix bug in merging contexts in environment. R=mstarzinger@chromium.org BUG= Review URL: https://codereview.chromium.org/934293002 Cr-Commit-Position: refs/heads/master@{#26745}
-
- 11 Feb, 2015 2 commits
-
-
titzer authored
R=mstarzinger@chromium.org BUG= Review URL: https://codereview.chromium.org/917583004 Cr-Commit-Position: refs/heads/master@{#26589}
-
svenpanne authored
A CompilationInfo constructed from just an Isolate* and a Zone* is in weird an inconsistent state (calling e.g. flags() on it will crash), so we need to avoid them. This CL removes almost all of them, the remaining 2 call sites in (for testing only) will be handled in a separate CL. Things which have been changed: * Linkage is basically a decorator for CallDescriptor now. * ChangeLowering doesn't need Linkage at all. * JSGenericLowering doesn't need a full CompilationInfo*, just a single flag. * JSContextSpecializer doesn't need the full CompilationInfo, just a Context. * Removed unused CompilationInfo from SimplifiedLoweringTester. This nicely decouples things already a bit more, but there's still work to do... Review URL: https://codereview.chromium.org/899803003 Cr-Commit-Position: refs/heads/master@{#26580}
-
- 09 Feb, 2015 1 commit
-
-
mstarzinger authored
R=bmeurer@chromium.org TEST=presubmit Review URL: https://codereview.chromium.org/905293002 Cr-Commit-Position: refs/heads/master@{#26525}
-
- 12 Dec, 2014 1 commit
-
-
svenpanne authored
FINAL implies OVERRIDE, which in turn implies virtual, so there's no need to use more than one of these. The Google C++ style guide even requires this, see http://google-styleguide.googlecode.com/svn/trunk/cppguide.html#Inheritance. While we're here, port r24662 to x87. The net result is that v8 compiles again with a current clang. BUG=v8:3753 LOG=y Review URL: https://codereview.chromium.org/797943002 Cr-Commit-Position: refs/heads/master@{#25792}
-
- 02 Dec, 2014 1 commit
-
-
titzer authored
R=bmeurer@chromium.org BUG= Review URL: https://codereview.chromium.org/771713002 Cr-Commit-Position: refs/heads/master@{#25600}
-
- 08 Aug, 2014 1 commit
-
-
sigurds@chromium.org authored
* Add store-chain folding to context specialization. * Replace all uses of context with constant and then use a visitor to find the places to optimize. BUG= R=mstarzinger@chromium.org Review URL: https://codereview.chromium.org/440053002 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22993 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
-