- 04 Aug, 2017 2 commits
-
-
Ben L. Titzer authored
Remove the include of frames.h in isolate.h and the include of frames-inl.h from various places, e.g. architecture-specific builtin files. R=yangguo@chromium.org Bug: Change-Id: If8d13188474702fd0b0c298f8e45ef393184b877 Reviewed-on: https://chromium-review.googlesource.com/600212Reviewed-by:
Yang Guo <yangguo@chromium.org> Reviewed-by:
Michael Lippautz <mlippautz@chromium.org> Commit-Queue: Ben Titzer <titzer@chromium.org> Cr-Commit-Position: refs/heads/master@{#47154}
-
Ulan Degenbaev authored
concurrent marker. Bug: chromium:694255 Change-Id: I973ba8df7a4afc5f58ede02f3f6d043cf7038784 Reviewed-on: https://chromium-review.googlesource.com/600970Reviewed-by:
Michael Lippautz <mlippautz@chromium.org> Commit-Queue: Ulan Degenbaev <ulan@chromium.org> Cr-Commit-Position: refs/heads/master@{#47153}
-
- 03 Aug, 2017 8 commits
-
-
Ulan Degenbaev authored
This patch removes tracking of - V8.GCIdleTimeAllottedInMS - V8.GCIdleTimeLimit.Overshot - V8.GCIdleTimeLimit.Undershot BUG=chromium:751045 Change-Id: Iccaa0fff609d3caa4cf38ebcc8aca7cdca33c442 Reviewed-on: https://chromium-review.googlesource.com/595588 Commit-Queue: Ulan Degenbaev <ulan@chromium.org> Reviewed-by:
Michael Lippautz <mlippautz@chromium.org> Cr-Commit-Position: refs/heads/master@{#47144}
-
Ulan Degenbaev authored
On advancing the iterator we need to reset the current object, so that it can be lazily reloaded later on. TBR=mlippautz@chromium.org Bug: chromium:694255 Change-Id: If7ddd8670df9d11837f491503312919b55b451fe Reviewed-on: https://chromium-review.googlesource.com/600687 Commit-Queue: Ulan Degenbaev <ulan@chromium.org> Reviewed-by:
Ulan Degenbaev <ulan@chromium.org> Cr-Commit-Position: refs/heads/master@{#47142}
-
Ben L. Titzer authored
R=mstarzinger@chromium.org Bug: Change-Id: Ia416acd8c12a3c8e3fdfabc56a4cd31cb946c88c Reviewed-on: https://chromium-review.googlesource.com/599949 Commit-Queue: Ben Titzer <titzer@chromium.org> Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#47135}
-
Ulan Degenbaev authored
This reverts commit b9acf4ed. Bug: chromium:694255 Change-Id: I62766e8b32cfa16af39a28ad07fecd72441ad8cd Reviewed-on: https://chromium-review.googlesource.com/598468Reviewed-by:
Michael Lippautz <mlippautz@chromium.org> Commit-Queue: Ulan Degenbaev <ulan@chromium.org> Cr-Commit-Position: refs/heads/master@{#47132}
-
Ulan Degenbaev authored
This is a reland of 35c923cc Original change's description: > [heap] Add support for atomic access to page flags. > > This patch renames AsAtomicWord to AsAtomicPointer and > adds new AsAtomicWord that works with intptr_t. > > Slot recording uses atomic page flag accessors. > > BUG=chromium:694255 > > Change-Id: I1c692813244b41320182e9eea50462d1802fcd98 > Reviewed-on: https://chromium-review.googlesource.com/597688 > Commit-Queue: Ulan Degenbaev <ulan@chromium.org> > Reviewed-by: Michael Lippautz <mlippautz@chromium.org> > Cr-Commit-Position: refs/heads/master@{#47086} Bug: chromium:694255 Change-Id: I36780ff4001e068815d4be1e16cd06f1a4f98d13 Reviewed-on: https://chromium-review.googlesource.com/599909Reviewed-by:
Michael Lippautz <mlippautz@chromium.org> Commit-Queue: Ulan Degenbaev <ulan@chromium.org> Cr-Commit-Position: refs/heads/master@{#47131}
-
Maya Lekova authored
This DCHECK is incorrect in no-snapshot builds because we can run garbage collection while deserializing the snapshot. Bug: v8:6559, v8:6557 Change-Id: I0b8456ee19443f796889656952b236ff40b1e2fb Reviewed-on: https://chromium-review.googlesource.com/600367Reviewed-by:
Ulan Degenbaev <ulan@chromium.org> Commit-Queue: Maya Lekova <mslekova@google.com> Cr-Commit-Position: refs/heads/master@{#47130}
-
Michael Lippautz authored
This mitigates the problem of blocking on the main thread when the platform is unable to execute background tasks in a timely manner. Bug: v8:6671 Change-Id: I741d4b7594e8d62721dad32cbfb19551ffacd0c3 Reviewed-on: https://chromium-review.googlesource.com/599528 Commit-Queue: Michael Lippautz <mlippautz@chromium.org> Reviewed-by:
Ulan Degenbaev <ulan@chromium.org> Cr-Commit-Position: refs/heads/master@{#47126}
-
Albert Mingkun Yang authored
Bug: 749486 The feature is off by default, and could be turned on via `v8_enable_csa_write_barrier = true`. With this CL, only x64 uses this feature Change-Id: Ie024f08b7d796a4cc4d55285dc9fe796780f0e53 Reviewed-on: https://chromium-review.googlesource.com/588891Reviewed-by:
Yang Guo <yangguo@chromium.org> Reviewed-by:
Tobias Tebbi <tebbi@chromium.org> Reviewed-by:
Ulan Degenbaev <ulan@chromium.org> Commit-Queue: Albert Mingkun Yang <albertnetymk@google.com> Cr-Commit-Position: refs/heads/master@{#47122}
-
- 02 Aug, 2017 11 commits
-
-
Ulan Degenbaev authored
This reverts commit 35c923cc. Reason for revert: speculative revert for GC stress failure Original change's description: > [heap] Add support for atomic access to page flags. > > This patch renames AsAtomicWord to AsAtomicPointer and > adds new AsAtomicWord that works with intptr_t. > > Slot recording uses atomic page flag accessors. > > BUG=chromium:694255 > > Change-Id: I1c692813244b41320182e9eea50462d1802fcd98 > Reviewed-on: https://chromium-review.googlesource.com/597688 > Commit-Queue: Ulan Degenbaev <ulan@chromium.org> > Reviewed-by: Michael Lippautz <mlippautz@chromium.org> > Cr-Commit-Position: refs/heads/master@{#47086} TBR=ulan@chromium.org,mlippautz@chromium.org Change-Id: Id77ce7970c54a55646c072787e88311f6f3e6e91 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: chromium:694255 Reviewed-on: https://chromium-review.googlesource.com/598967Reviewed-by:
Ulan Degenbaev <ulan@chromium.org> Commit-Queue: Ulan Degenbaev <ulan@chromium.org> Cr-Commit-Position: refs/heads/master@{#47094}
-
Michael Lippautz authored
Use separate visitors for roots visitation: - A general RootVisitor for all regular roots - An ObjectVisitor that is able to process contents of the string table and code hanging of the top optimized frame Bug: chromium:750084 Change-Id: I21aaa18760dede8a9419de2890a47c6dcf7efa3b Reviewed-on: https://chromium-review.googlesource.com/598239Reviewed-by:
Ulan Degenbaev <ulan@chromium.org> Commit-Queue: Michael Lippautz <mlippautz@chromium.org> Cr-Commit-Position: refs/heads/master@{#47089}
-
Ulan Degenbaev authored
This patch renames AsAtomicWord to AsAtomicPointer and adds new AsAtomicWord that works with intptr_t. Slot recording uses atomic page flag accessors. BUG=chromium:694255 Change-Id: I1c692813244b41320182e9eea50462d1802fcd98 Reviewed-on: https://chromium-review.googlesource.com/597688 Commit-Queue: Ulan Degenbaev <ulan@chromium.org> Reviewed-by:
Michael Lippautz <mlippautz@chromium.org> Cr-Commit-Position: refs/heads/master@{#47086}
-
Michael Lippautz authored
They were only limited to 32 bit when using the internal Hashmap. Since this has changed alreay some time ago, we can switch to 64 bit ids and check that we never overflow. Bug: Change-Id: Ia6c6d02d6b5e555c6941185a79427dc4aa2a1d62 Reviewed-on: https://chromium-review.googlesource.com/598229 Commit-Queue: Michael Lippautz <mlippautz@chromium.org> Reviewed-by:
Ulan Degenbaev <ulan@chromium.org> Cr-Commit-Position: refs/heads/master@{#47085}
-
Ulan Degenbaev authored
This reverts commit 0a9d5150. Reason for revert: another gc-stress failure Original change's description: > Reland^2 "[heap] Add mechanism for tracking invalidated slots per memory chunk." > > This reverts commit 6fde541d. > > Bug: chromium:694255 > Change-Id: I4670d0de3d2749afbb3bdb8dc5418822a885330c > Reviewed-on: https://chromium-review.googlesource.com/597850 > Commit-Queue: Ulan Degenbaev <ulan@chromium.org> > Reviewed-by: Michael Lippautz <mlippautz@chromium.org> > Cr-Commit-Position: refs/heads/master@{#47083} TBR=ulan@chromium.org,mlippautz@chromium.org Change-Id: Iaabf4586e0297dccb1ab4ef180b6f1eea173273b No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: chromium:694255 Reviewed-on: https://chromium-review.googlesource.com/598094Reviewed-by:
Ulan Degenbaev <ulan@chromium.org> Commit-Queue: Ulan Degenbaev <ulan@chromium.org> Cr-Commit-Position: refs/heads/master@{#47084}
-
Ulan Degenbaev authored
This reverts commit 6fde541d. Bug: chromium:694255 Change-Id: I4670d0de3d2749afbb3bdb8dc5418822a885330c Reviewed-on: https://chromium-review.googlesource.com/597850 Commit-Queue: Ulan Degenbaev <ulan@chromium.org> Reviewed-by:
Michael Lippautz <mlippautz@chromium.org> Cr-Commit-Position: refs/heads/master@{#47083}
-
Yang Guo authored
This is to ensure the snapshot is deterministic. R=mstarzinger@chromium.org Bug: v8:4886, v8:3645 Change-Id: I79c8e54ba6b4810f005bc1ece61890790c815cea Reviewed-on: https://chromium-review.googlesource.com/595740 Commit-Queue: Yang Guo <yangguo@chromium.org> Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#47082}
-
Ulan Degenbaev authored
This reverts commit d4a742fd. Reason for revert: gc-stress failures Original change's description: > Reland "[heap] Add mechanism for tracking invalidated slots per memory chunk." > > This reverts commit c59b81d7. > > Original change's description: > > [heap] Add mechanism for tracking invalidated slots per memory chunk. > > > For correct slots recording in concurrent marker, we need to resolve > > the race that happens when > > 1) the mutator is invalidating slots for double unboxing or string > > conversions > > 2) and the concurrent marker is recording these slots. > > > This patch adds a data-structure for tracking the invalidated objects. > > Thus we can allow the concurrent marker to record slots without > > worrying about clearing them. During old-to-old pointer updating phase > > we re-check all slots that belong to the invalidated objects. > > BUG=chromium:694255 > > Change-Id: Idf8927d162377a7bbdff34f81a87e52db27d6a9f > Reviewed-on: https://chromium-review.googlesource.com/596868 > Reviewed-by: Michael Lippautz <mlippautz@chromium.org> > Commit-Queue: Ulan Degenbaev <ulan@chromium.org> > Cr-Commit-Position: refs/heads/master@{#47068} TBR=ulan@chromium.org,mlippautz@chromium.org Change-Id: I81c6059a092cc5834acd799c51fd30dc0ecf5b27 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: chromium:694255 Reviewed-on: https://chromium-review.googlesource.com/597787Reviewed-by:
Ulan Degenbaev <ulan@chromium.org> Commit-Queue: Ulan Degenbaev <ulan@chromium.org> Cr-Commit-Position: refs/heads/master@{#47078}
-
Julien Brianceau authored
Bug: chromium:750830 Cq-Include-Trybots: master.tryserver.blink:linux_trusty_blink_rel;master.tryserver.chromium.linux:linux_chromium_rel_ng;master.tryserver.v8:v8_linux_noi18n_rel_ng Change-Id: Icab7b5a1c469d5e77d04df8bfca8319784e92af4 Reviewed-on: https://chromium-review.googlesource.com/595655 Commit-Queue: Julien Brianceau <jbriance@cisco.com> Reviewed-by:
Yang Guo <yangguo@chromium.org> Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Reviewed-by:
Clemens Hammacher <clemensh@chromium.org> Reviewed-by:
Daniel Ehrenberg <littledan@chromium.org> Cr-Commit-Position: refs/heads/master@{#47072}
-
Ulan Degenbaev authored
This reverts commit c59b81d7. Original change's description: > [heap] Add mechanism for tracking invalidated slots per memory chunk. > For correct slots recording in concurrent marker, we need to resolve > the race that happens when > 1) the mutator is invalidating slots for double unboxing or string > conversions > 2) and the concurrent marker is recording these slots. > This patch adds a data-structure for tracking the invalidated objects. > Thus we can allow the concurrent marker to record slots without > worrying about clearing them. During old-to-old pointer updating phase > we re-check all slots that belong to the invalidated objects. BUG=chromium:694255 Change-Id: Idf8927d162377a7bbdff34f81a87e52db27d6a9f Reviewed-on: https://chromium-review.googlesource.com/596868Reviewed-by:
Michael Lippautz <mlippautz@chromium.org> Commit-Queue: Ulan Degenbaev <ulan@chromium.org> Cr-Commit-Position: refs/heads/master@{#47068}
-
Ulan Degenbaev authored
This is a partial reland of "Allow a minimum semi-space size of 512K." with a heuristic to keep 1MB initial semi-space size for high memory devices. Original commit message: > [heap] Allow a minimum semi-space size of 512K. > This CL also reduces the minimum semi-space size to 512K. > BUG=chromium:716032 BUG=chromium:735649,chromium:716032 Change-Id: I5ec851f2380c40dbc34b4576a668f63ae38ac898 Reviewed-on: https://chromium-review.googlesource.com/594387Reviewed-by:
Michael Lippautz <mlippautz@chromium.org> Reviewed-by:
Ulan Degenbaev <ulan@chromium.org> Commit-Queue: Michael Hablich <hablich@chromium.org> Cr-Commit-Position: refs/heads/master@{#47065}
-
- 01 Aug, 2017 11 commits
-
-
Ulan Degenbaev authored
BUG=chromium:694255 TBR=ulan@chromium.org,mlippautz@chromium.org No-Presubmit: true No-Tree-Checks: true No-Try: true Change-Id: I832014d423335514cf1564984832b7a4e2c104ad Reviewed-on: https://chromium-review.googlesource.com/595984 Commit-Queue: Ulan Degenbaev <ulan@chromium.org> Reviewed-by:
Ulan Degenbaev <ulan@chromium.org> Cr-Commit-Position: refs/heads/master@{#47057}
-
Ulan Degenbaev authored
This reverts commit 7a5a777c. Reason for revert: crashing in test-api Original change's description: > [heap] Add mechanism for tracking invalidated slots per memory chunk. > > For correct slots recording in concurrent marker, we need to resolve > the race that happens when > 1) the mutator is invalidating slots for double unboxing or string > conversions > 2) and the concurrent marker is recording these slots. > > This patch adds a data-structure for tracking the invalidated objects. > Thus we can allow the concurrent marker to record slots without > worrying about clearing them. During old-to-old pointer updating phase > we re-check all slots that belong to the invalidated objects. > > BUG=chromium:694255 > > Change-Id: Ifc3d82918cd3b96e5a5fb7125691626a56f4ab83 > Reviewed-on: https://chromium-review.googlesource.com/591810 > Reviewed-by: Michael Lippautz <mlippautz@chromium.org> > Commit-Queue: Ulan Degenbaev <ulan@chromium.org> > Cr-Commit-Position: refs/heads/master@{#47049} TBR=ulan@chromium.org,mlippautz@chromium.org Change-Id: I7f4f8e8cb027b921a82e9c0a0623536af02581fb No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: chromium:694255 Reviewed-on: https://chromium-review.googlesource.com/595994Reviewed-by:
Ulan Degenbaev <ulan@chromium.org> Commit-Queue: Ulan Degenbaev <ulan@chromium.org> Cr-Commit-Position: refs/heads/master@{#47052}
-
Ulan Degenbaev authored
BUG=chromium:694255 Change-Id: I25ac134ea2e6f9af13f18e2da819b6d368497646 Reviewed-on: https://chromium-review.googlesource.com/593009 Commit-Queue: Ulan Degenbaev <ulan@chromium.org> Reviewed-by:
Michael Lippautz <mlippautz@chromium.org> Cr-Commit-Position: refs/heads/master@{#47051}
-
Ulan Degenbaev authored
For correct slots recording in concurrent marker, we need to resolve the race that happens when 1) the mutator is invalidating slots for double unboxing or string conversions 2) and the concurrent marker is recording these slots. This patch adds a data-structure for tracking the invalidated objects. Thus we can allow the concurrent marker to record slots without worrying about clearing them. During old-to-old pointer updating phase we re-check all slots that belong to the invalidated objects. BUG=chromium:694255 Change-Id: Ifc3d82918cd3b96e5a5fb7125691626a56f4ab83 Reviewed-on: https://chromium-review.googlesource.com/591810Reviewed-by:
Michael Lippautz <mlippautz@chromium.org> Commit-Queue: Ulan Degenbaev <ulan@chromium.org> Cr-Commit-Position: refs/heads/master@{#47049}
-
Michael Lippautz authored
This makes all the information that is present for GCTracer also available to RCS. Bug: chromium:748569 Change-Id: Ie7e8c3770b81ab1321cad08f6954492b72ef0514 Reviewed-on: https://chromium-review.googlesource.com/585427 Commit-Queue: Michael Lippautz <mlippautz@chromium.org> Reviewed-by:
Igor Sheludko <ishell@chromium.org> Reviewed-by:
Camillo Bruni <cbruni@chromium.org> Reviewed-by:
Ulan Degenbaev <ulan@chromium.org> Cr-Commit-Position: refs/heads/master@{#47043}
-
Ulan Degenbaev authored
Now that the layout descriptor is pretenured, we don't need atomic accessor for the map space. BUG=chromium:694255 Change-Id: I0ced8c04eaa61eec0f6a7b518ecba6413a691501 Reviewed-on: https://chromium-review.googlesource.com/595742Reviewed-by:
Michael Lippautz <mlippautz@chromium.org> Commit-Queue: Ulan Degenbaev <ulan@chromium.org> Cr-Commit-Position: refs/heads/master@{#47042}
-
Leszek Swirski authored
Remove the concept of IC age from the heap and SFI, since it no longer does anything useful. Change-Id: I4ce466efc77c007c09c0889bae09ec6a0c907e33 Reviewed-on: https://chromium-review.googlesource.com/593623 Commit-Queue: Leszek Swirski <leszeks@chromium.org> Reviewed-by:
Michael Lippautz <mlippautz@chromium.org> Reviewed-by:
Ulan Degenbaev <ulan@chromium.org> Cr-Commit-Position: refs/heads/master@{#47041}
-
Yang Guo authored
Change-Id: Ida5c537fa94a376a134e60edce889b96b676a8f9 Reviewed-on: https://chromium-review.googlesource.com/584874Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Reviewed-by:
Benedikt Meurer <bmeurer@chromium.org> Commit-Queue: Yang Guo <yangguo@chromium.org> Cr-Commit-Position: refs/heads/master@{#47039}
-
Michael Lippautz authored
This mitigates the problem of blocking on the main thread when the platform is unable to execute background tasks in a timely manner. Bug: v8:6655 Change-Id: Icdaae744ee73146b86b9a28c8035138746721971 Reviewed-on: https://chromium-review.googlesource.com/595467 Commit-Queue: Michael Lippautz <mlippautz@chromium.org> Reviewed-by:
Ulan Degenbaev <ulan@chromium.org> Cr-Commit-Position: refs/heads/master@{#47036}
-
Benedikt Meurer authored
The @@toStringTag lookup in Object.prototype.toString causes quite a lot of overhead and oftentimes dominates the builtin performance. These lookups are almost always negative, especially for primitive values, and Object.prototype.toString is often used to implement predicates (like in Node core or in AngularJS), so having a way to skip the negative lookup yields big performance gains. This CL introduces a "MayHaveInterestingSymbols" bit on every map, which says whether instances with this map may have an interesting symbol. Currently only @@toStringTag is considered an interesting symbol, but we can extend that in the future. In the Object.prototype.toString we can use the interesting symbols bit to do a quick check on the prototype chain to see if there are any maps that might have the @@toStringTag, and if not, we can just immediately return the result, which is very fast because it's derived from the instance type. This also avoids the ToObject conversions for primitive values, which is important, since this causes unnecessary GC traffic and in for example AngularJS, strings are also often probed via the Object.prototype.toString based predicates. This boosts Speedometer/AngularJS by over 3% and Speedometer overall by up to 1%. On the microbenchmark from the similar SpiderMonkey bug (https://bugzilla.mozilla.org/show_bug.cgi?id=1369042), we go from roughly 450ms to 70ms, which corresponds to a 6.5x improvement. ``` function f() { var res = ""; var a = [1, 2, 3]; var toString = Object.prototype.toString; var t = new Date; for (var i = 0; i < 5000000; i++) res = toString.call(a); print(new Date - t); return res; } f(); ``` The design document at https://goo.gl/e8CruQ has some additional data points. TBR=ulan@chromium.org Bug: v8:6654 Change-Id: I31932cf41ecddad079d294e2c322a852af0ed244 Reviewed-on: https://chromium-review.googlesource.com/593620 Commit-Queue: Benedikt Meurer <bmeurer@chromium.org> Reviewed-by:
Camillo Bruni <cbruni@chromium.org> Reviewed-by:
Jaroslav Sevcik <jarin@chromium.org> Cr-Commit-Position: refs/heads/master@{#47034}
-
Bill Budge authored
This is a reland of 3f90d9f9 Original change's description: > [Memory] Add an OnCriticalMemoryPressure method to V8::Platform. > > Adds virtual V8::Platform::OnCriticalMemoryPressure method, default > implementation does nothing. > > Calls this method on first allocation failures in NewArray, Malloced, > and zone AccountingAllocator and adds retry logic. > > Adds utility functions for allocating base::VirtualMemory to functions > in allocation.h, which call this method and add retry logic. > > Calls these utility functions in heap CodeRange, Spaces, StoreBuffer > and SequentialMarkingDeque. > > Bug: v8:6635 > Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng > Change-Id: I38afd394f3be556aca037d16675e9884658158cb > Reviewed-on: https://chromium-review.googlesource.com/583543 > Commit-Queue: Bill Budge <bbudge@chromium.org> > Reviewed-by: Ulan Degenbaev <ulan@chromium.org> > Reviewed-by: Michael Lippautz <mlippautz@chromium.org> > Cr-Commit-Position: refs/heads/master@{#46988} Bug: v8:6635 Change-Id: I0d70c5796f407f0ed42cfddf581d26f533f9bea8 Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng Reviewed-on: https://chromium-review.googlesource.com/593090Reviewed-by:
Michael Lippautz <mlippautz@chromium.org> Reviewed-by:
Ulan Degenbaev <ulan@chromium.org> Cr-Commit-Position: refs/heads/master@{#47027}
-
- 31 Jul, 2017 6 commits
-
-
Ulan Degenbaev authored
This sets the minimum semi-space size to 512K, but does not change the initial semi-space size. This reverts commit 774a4c5e. Original commit message: > [heap] Allow a minimum semi-space size of 512K. > This CL also reduces the minimum semi-space size to 512K. > BUG=chromium:716032 BUG=chromium:735649 TBR=mlippautz@chromium.org Change-Id: I1f5dd05b0851ba2b438bedcc023a5cf5f9242a81 Reviewed-on: https://chromium-review.googlesource.com/594107Reviewed-by:
Ulan Degenbaev <ulan@chromium.org> Commit-Queue: Ulan Degenbaev <ulan@chromium.org> Cr-Commit-Position: refs/heads/master@{#47016}
-
Leszek Swirski authored
Since any deopt-count-based heuristics should be native context dependent, it belongs in the feedback vector rather than the SFI. Bug: v8:6402 Change-Id: I30804d58bc1dec9150558e6ee21ee5b4dbd36c8d Reviewed-on: https://chromium-review.googlesource.com/593661 Commit-Queue: Leszek Swirski <leszeks@chromium.org> Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#47014}
-
Michael Lippautz authored
- Add scopes - Rename scopes to fit hierarchy - Scavenge weak collections before parallel phase - Remove semi space phase which doesn't exist anymore Bug: chromium:738865 Change-Id: Id3b72793e764f8d3597917e45185d08675b57f5d Reviewed-on: https://chromium-review.googlesource.com/593611Reviewed-by:
Ulan Degenbaev <ulan@chromium.org> Commit-Queue: Michael Lippautz <mlippautz@chromium.org> Cr-Commit-Position: refs/heads/master@{#47002}
-
Ulan Degenbaev authored
The slots outside the trimmed array will be cleared by the sweeper and will not be overwritten with an untagged value. BUG=chromium:694255 Change-Id: I3e814b9934ca95a09e883e237687434e6bb58c80 Reviewed-on: https://chromium-review.googlesource.com/591651Reviewed-by:
Michael Lippautz <mlippautz@chromium.org> Commit-Queue: Ulan Degenbaev <ulan@chromium.org> Cr-Commit-Position: refs/heads/master@{#46998}
-
Ulan Degenbaev authored
Currently we clear only old-to-new slots in the sweeper. For old-to-old slots we maintain the invariant that there are no recorded slots in dead objects by explicitly clearing them on object size change and array trimming. The write barrier for concurrent marking will record slots even when the host object is white. Thus, it can introduce slots in dead objects, which will break evacuation phase if we do not clear them in the sweeper. Besides that, the patch makes handling of slots more uniform and allows us to remove clearing of slots on object size changes. BUG=chromium:694255 Change-Id: I48f60eb25ddc48c6948be4461367e3f7abf74672 Reviewed-on: https://chromium-review.googlesource.com/592207Reviewed-by:
Michael Lippautz <mlippautz@chromium.org> Commit-Queue: Ulan Degenbaev <ulan@chromium.org> Cr-Commit-Position: refs/heads/master@{#46996}
-
Michael Lippautz authored
Bug: chromium:738865 Change-Id: Ia9544707d4117187746fc50a416370b3c08ab842 Reviewed-on: https://chromium-review.googlesource.com/593313Reviewed-by:
Ulan Degenbaev <ulan@chromium.org> Commit-Queue: Michael Lippautz <mlippautz@chromium.org> Cr-Commit-Position: refs/heads/master@{#46993}
-
- 29 Jul, 2017 2 commits
-
-
Ulan Degenbaev authored
BUG=chromium:694255 TBR=mlippautz@chromium.org Change-Id: I7dd9623ff85fcc49f034c71a6f5149f9488a9abb Reviewed-on: https://chromium-review.googlesource.com/593010Reviewed-by:
Ulan Degenbaev <ulan@chromium.org> Commit-Queue: Ulan Degenbaev <ulan@chromium.org> Cr-Commit-Position: refs/heads/master@{#46990}
-
Georg Neis authored
This reverts commit 3f90d9f9. Reason for revert: https://build.chromium.org/p/client.v8/builders/V8%20Linux64%20TSAN/builds/16510 Original change's description: > [Memory] Add an OnCriticalMemoryPressure method to V8::Platform. > > Adds virtual V8::Platform::OnCriticalMemoryPressure method, default > implementation does nothing. > > Calls this method on first allocation failures in NewArray, Malloced, > and zone AccountingAllocator and adds retry logic. > > Adds utility functions for allocating base::VirtualMemory to functions > in allocation.h, which call this method and add retry logic. > > Calls these utility functions in heap CodeRange, Spaces, StoreBuffer > and SequentialMarkingDeque. > > Bug: v8:6635 > Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng > Change-Id: I38afd394f3be556aca037d16675e9884658158cb > Reviewed-on: https://chromium-review.googlesource.com/583543 > Commit-Queue: Bill Budge <bbudge@chromium.org> > Reviewed-by: Ulan Degenbaev <ulan@chromium.org> > Reviewed-by: Michael Lippautz <mlippautz@chromium.org> > Cr-Commit-Position: refs/heads/master@{#46988} TBR=bbudge@chromium.org,ulan@chromium.org,mlippautz@chromium.org Change-Id: I79afea5982e62db1462cc5a5585a226f0ddbe752 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: v8:6635 Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng Reviewed-on: https://chromium-review.googlesource.com/592887Reviewed-by:
Georg Neis <neis@chromium.org> Commit-Queue: Georg Neis <neis@chromium.org> Cr-Commit-Position: refs/heads/master@{#46989}
-