- 22 Nov, 2017 1 commit
-
-
Bill Budge authored
- Change VirtualMemory to match OS memory concepts. Rename Release Free, ReleasePartial to Release. - Adds comments to make the semantics clear. Right now V8 munmaps on POSIX, making address space available, while on Windows it is only possible to decommit. Bug: chromium:756050 Change-Id: I6ba04d857ab9e1ca1f273e9e766e0825e67210cc Reviewed-on: https://chromium-review.googlesource.com/783513Reviewed-by:
Michael Lippautz <mlippautz@chromium.org> Commit-Queue: Bill Budge <bbudge@chromium.org> Cr-Commit-Position: refs/heads/master@{#49586}
-
- 21 Nov, 2017 1 commit
-
-
Bill Budge authored
- Eliminates CommitRegion and UncommitRegion methods, replacing them with calls to SetPermissions. - Makes a similar change to the API of VirtualMemory. - This changes system calls from mmap to mprotect on most POSIX platforms. Bug: chromium:756050 Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng Change-Id: Ib10f8293c9398c6c1e729cd7d686b7c97e6a5d75 Reviewed-on: https://chromium-review.googlesource.com/769679Reviewed-by:
Hannes Payer <hpayer@chromium.org> Reviewed-by:
Michael Lippautz <mlippautz@chromium.org> Commit-Queue: Bill Budge <bbudge@chromium.org> Cr-Commit-Position: refs/heads/master@{#49552}
-
- 16 Nov, 2017 1 commit
-
-
Hannes Payer authored
This CL also narrows the rw scopes on various call sites. Bug: chromium:774108,v8:6792 Change-Id: I41a6f5dc4948833baaa441fb998ef40d8a832619 Reviewed-on: https://chromium-review.googlesource.com/758370 Commit-Queue: Hannes Payer <hpayer@chromium.org> Reviewed-by:
Clemens Hammacher <clemensh@chromium.org> Reviewed-by:
Yang Guo <yangguo@chromium.org> Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Reviewed-by:
Michael Lippautz <mlippautz@chromium.org> Cr-Commit-Position: refs/heads/master@{#49411}
-
- 25 Sep, 2017 1 commit
-
-
Clemens Hammacher authored
Use the (D)CHECK_{EQ,NE,GT,...} macros instead of (D)CHECK with an embedded comparison. This gives better error messages and also does the right comparison for signed/unsigned mismatches. This will allow us to reenable the readability/check cpplint check. R=ulan@chromium.org Bug: v8:6837 Change-Id: I8d900f3c703dea6ee3bcc225a1d2754e91666b9d Reviewed-on: https://chromium-review.googlesource.com/671047 Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Reviewed-by:
Ulan Degenbaev <ulan@chromium.org> Cr-Commit-Position: refs/heads/master@{#48136}
-
- 21 Sep, 2017 1 commit
-
-
Bill Budge authored
This is a reland of f2cd10db Original change's description: > Reland "[Memory] Move VirtualMemory out of base:: platform." > > This is a reland of 4dd293d9 > Original change's description: > > [Memory] Move VirtualMemory out of base:: platform. > > > > - Moves base::VirtualMemory to v8::internal::VirtualMemory. > > - Makes VirtualMemory platform-independent by moving internals to new > > OS:: static methods, for each platform. > > > > This will make it easier to delegate memory management in VirtualMemory > > to V8::Platform, so that embedders like Blink can override it. We can't > > depend on V8::Platform in base/platform. > > > > Bug: chromium:756050 > > Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng > > Change-Id: Iadfe230b6850bd917727a373f277afded9883adf > > Reviewed-on: https://chromium-review.googlesource.com/653214 > > Commit-Queue: Bill Budge <bbudge@chromium.org> > > Reviewed-by: Ulan Degenbaev <ulan@chromium.org> > > Cr-Commit-Position: refs/heads/master@{#48048} > > Bug: chromium:756050 > Change-Id: Ib492c7c69f1833be127a571808301e96b84b8aa2 > Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng > Reviewed-on: https://chromium-review.googlesource.com/671125 > Commit-Queue: Bill Budge <bbudge@chromium.org> > Reviewed-by: Michael Lippautz <mlippautz@chromium.org> > Cr-Commit-Position: refs/heads/master@{#48084} Bug: chromium:756050 Change-Id: Ie596730b5cefc38137cab7fc1f76613f5af7b825 Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng Reviewed-on: https://chromium-review.googlesource.com/675283Reviewed-by:
Ulan Degenbaev <ulan@chromium.org> Commit-Queue: Bill Budge <bbudge@chromium.org> Cr-Commit-Position: refs/heads/master@{#48113}
-
- 20 Sep, 2017 1 commit
-
-
Michael Hablich authored
This reverts commit f2cd10db. Reason for revert: Blocks the roll https://chromium-review.googlesource.com/c/chromium/src/+/674623 Original change's description: > Reland "[Memory] Move VirtualMemory out of base:: platform." > > This is a reland of 4dd293d9 > Original change's description: > > [Memory] Move VirtualMemory out of base:: platform. > > > > - Moves base::VirtualMemory to v8::internal::VirtualMemory. > > - Makes VirtualMemory platform-independent by moving internals to new > > OS:: static methods, for each platform. > > > > This will make it easier to delegate memory management in VirtualMemory > > to V8::Platform, so that embedders like Blink can override it. We can't > > depend on V8::Platform in base/platform. > > > > Bug: chromium:756050 > > Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng > > Change-Id: Iadfe230b6850bd917727a373f277afded9883adf > > Reviewed-on: https://chromium-review.googlesource.com/653214 > > Commit-Queue: Bill Budge <bbudge@chromium.org> > > Reviewed-by: Ulan Degenbaev <ulan@chromium.org> > > Cr-Commit-Position: refs/heads/master@{#48048} > > Bug: chromium:756050 > Change-Id: Ib492c7c69f1833be127a571808301e96b84b8aa2 > Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng > Reviewed-on: https://chromium-review.googlesource.com/671125 > Commit-Queue: Bill Budge <bbudge@chromium.org> > Reviewed-by: Michael Lippautz <mlippautz@chromium.org> > Cr-Commit-Position: refs/heads/master@{#48084} TBR=bbudge@chromium.org,ulan@chromium.org,hpayer@chromium.org,mlippautz@chromium.org,scottmg@chromium.org Change-Id: I04176d77ca9ad8315b0e1bb2b21f40f2c8ab9536 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: chromium:756050 Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng Reviewed-on: https://chromium-review.googlesource.com/674843Reviewed-by:
Michael Hablich <hablich@chromium.org> Commit-Queue: Michael Hablich <hablich@chromium.org> Cr-Commit-Position: refs/heads/master@{#48088}
-
- 19 Sep, 2017 1 commit
-
-
Bill Budge authored
This is a reland of 4dd293d9 Original change's description: > [Memory] Move VirtualMemory out of base:: platform. > > - Moves base::VirtualMemory to v8::internal::VirtualMemory. > - Makes VirtualMemory platform-independent by moving internals to new > OS:: static methods, for each platform. > > This will make it easier to delegate memory management in VirtualMemory > to V8::Platform, so that embedders like Blink can override it. We can't > depend on V8::Platform in base/platform. > > Bug: chromium:756050 > Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng > Change-Id: Iadfe230b6850bd917727a373f277afded9883adf > Reviewed-on: https://chromium-review.googlesource.com/653214 > Commit-Queue: Bill Budge <bbudge@chromium.org> > Reviewed-by: Ulan Degenbaev <ulan@chromium.org> > Cr-Commit-Position: refs/heads/master@{#48048} Bug: chromium:756050 Change-Id: Ib492c7c69f1833be127a571808301e96b84b8aa2 Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng Reviewed-on: https://chromium-review.googlesource.com/671125 Commit-Queue: Bill Budge <bbudge@chromium.org> Reviewed-by:
Michael Lippautz <mlippautz@chromium.org> Cr-Commit-Position: refs/heads/master@{#48084}
-
- 18 Sep, 2017 1 commit
-
-
Michael Hablich authored
This reverts commit 4dd293d9. Reason for revert: Blocks roll: https://chromium-review.googlesource.com/c/chromium/src/+/669785 Original change's description: > [Memory] Move VirtualMemory out of base:: platform. > > - Moves base::VirtualMemory to v8::internal::VirtualMemory. > - Makes VirtualMemory platform-independent by moving internals to new > OS:: static methods, for each platform. > > This will make it easier to delegate memory management in VirtualMemory > to V8::Platform, so that embedders like Blink can override it. We can't > depend on V8::Platform in base/platform. > > Bug: chromium:756050 > Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng > Change-Id: Iadfe230b6850bd917727a373f277afded9883adf > Reviewed-on: https://chromium-review.googlesource.com/653214 > Commit-Queue: Bill Budge <bbudge@chromium.org> > Reviewed-by: Ulan Degenbaev <ulan@chromium.org> > Cr-Commit-Position: refs/heads/master@{#48048} TBR=bbudge@chromium.org,ulan@chromium.org,hpayer@chromium.org,mlippautz@chromium.org,scottmg@chromium.org # Not skipping CQ checks because original CL landed > 1 day ago. Bug: chromium:756050 Change-Id: Ice2618ef72950e1b64c31434a239c626aa5e5970 Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng Reviewed-on: https://chromium-review.googlesource.com/670843Reviewed-by:
Michael Hablich <hablich@chromium.org> Reviewed-by:
Michael Achenbach <machenbach@chromium.org> Commit-Queue: Michael Hablich <hablich@chromium.org> Cr-Commit-Position: refs/heads/master@{#48062}
-
- 15 Sep, 2017 1 commit
-
-
Bill Budge authored
- Moves base::VirtualMemory to v8::internal::VirtualMemory. - Makes VirtualMemory platform-independent by moving internals to new OS:: static methods, for each platform. This will make it easier to delegate memory management in VirtualMemory to V8::Platform, so that embedders like Blink can override it. We can't depend on V8::Platform in base/platform. Bug: chromium:756050 Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng Change-Id: Iadfe230b6850bd917727a373f277afded9883adf Reviewed-on: https://chromium-review.googlesource.com/653214 Commit-Queue: Bill Budge <bbudge@chromium.org> Reviewed-by:
Ulan Degenbaev <ulan@chromium.org> Cr-Commit-Position: refs/heads/master@{#48048}
-
- 09 Aug, 2017 1 commit
-
-
Mostyn Bramley-Moore authored
To speed up compilation times, jumbo allows files to be compiled together. This is a well known method ("unity builds") to both compile faster and create a poor man's "full program optimization". We are only interested in compile times. Background: https://chromium.googlesource.com/chromium/src/+/master/docs/jumbo.md Note that jumbo builds are not enabled by default. To try this out, add use_jumbo_build=true to your GN args. BUG=chromium:746958 Cq-Include-Trybots: master.tryserver.blink:linux_trusty_blink_rel Change-Id: Ieb9fdccb6c135e9806dbed91c09a29aa8b8bee11 Reviewed-on: https://chromium-review.googlesource.com/579090 Commit-Queue: Mostyn Bramley-Moore <mostynb@opera.com> Reviewed-by:
Aleksey Kozyatinskiy <kozyatinskiy@chromium.org> Reviewed-by:
Clemens Hammacher <clemensh@chromium.org> Reviewed-by:
Marja Hölttä <marja@chromium.org> Reviewed-by:
Ulan Degenbaev <ulan@chromium.org> Reviewed-by:
Ross McIlroy <rmcilroy@chromium.org> Reviewed-by:
Tobias Tebbi <tebbi@chromium.org> Reviewed-by:
Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/master@{#47239}
-
- 07 Aug, 2017 1 commit
-
-
Ulan Degenbaev authored
Bug: v8:6663 Change-Id: I8bf7169c21141a34e3bcb0bb2193ceb1746b33b2 Reviewed-on: https://chromium-review.googlesource.com/600908Reviewed-by:
Michael Lippautz <mlippautz@chromium.org> Commit-Queue: Ulan Degenbaev <ulan@chromium.org> Cr-Commit-Position: refs/heads/master@{#47186}
-
- 03 Aug, 2017 1 commit
-
-
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}
-
- 01 Aug, 2017 1 commit
-
-
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}
-
- 29 Jul, 2017 2 commits
-
-
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}
-
Bill Budge authored
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}
-
- 25 Jul, 2017 1 commit
-
-
Bill Budge authored
- Changes some instance fields from VM pointers to VM. - Changes some comments to correctly describe code. Bug: v8:6635 Change-Id: I9ec93ef0b09d541c966caa6482c5832cd6b1e149 Reviewed-on: https://chromium-review.googlesource.com/584931 Commit-Queue: Bill Budge <bbudge@chromium.org> Reviewed-by:
Michael Lippautz <mlippautz@chromium.org> Cr-Commit-Position: refs/heads/master@{#46880}
-
- 14 Jul, 2017 1 commit
-
-
Ulan Degenbaev authored
Currently every VirtualMemory allocation on 64-bit systems uses a random 46-bit address hint for ASLR. This leads to wired page leak on MacOS discovered by Erik Chen (see crbug.com/700928 and https://chromium-review.googlesource.com/c/557958/): "The Darwin kernel [as of macOS 10.12.5] does not clean up page directory entries [PDE] created from mmap or mach_vm_allocate, even after the region is destroyed. Using a virtual address space that is too large causes a leak of about 1 wired [can never be paged out] page per call to mmap(). The page is only reclaimed when the process is killed." This patch changes VirtualMemory to accept the hint parameter explicitly. On MacOS the hints are confined to 4GB contiguous region. Algorithm: - On startup, set heap.mmap_region_base_ to a random address. - For each mmap use heap.mmap_region_base_ + (random_offset % (4*GB)). BUG=chromium:700928 Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng Change-Id: I2ae6a024e02fbe63f940105d7920b57c19abacc6 Reviewed-on: https://chromium-review.googlesource.com/558876 Commit-Queue: Ulan Degenbaev <ulan@chromium.org> Reviewed-by:
Michael Lippautz <mlippautz@chromium.org> Cr-Commit-Position: refs/heads/master@{#46656}
-
- 28 Feb, 2017 1 commit
-
-
hpayer authored
BUG=chromium:697049 Review-Url: https://codereview.chromium.org/2723473002 Cr-Commit-Position: refs/heads/master@{#43492}
-
- 13 Feb, 2017 2 commits
-
-
hpayer authored
BUG=chromium:673308,chromium:689555 Review-Url: https://codereview.chromium.org/2694763002 Cr-Commit-Position: refs/heads/master@{#43160}
-
hpayer authored
BUG=chromium:673308 Review-Url: https://codereview.chromium.org/2696563003 Cr-Commit-Position: refs/heads/master@{#43159}
-
- 06 Feb, 2017 1 commit
-
-
hpayer authored
BUG=chromium:673308 Review-Url: https://codereview.chromium.org/2677163002 Cr-Commit-Position: refs/heads/master@{#42962}
-
- 08 Dec, 2016 1 commit
-
-
hpayer authored
BUG=chromium:648568, chromium:669920 Review-Url: https://codereview.chromium.org/2548213004 Cr-Commit-Position: refs/heads/master@{#41592}
-
- 29 Nov, 2016 3 commits
-
-
hpayer authored
This reverts commit 810fcb28. BUG=chromium:648568, chromium:669270 Review-Url: https://codereview.chromium.org/2530383003 Cr-Commit-Position: refs/heads/master@{#41350}
-
machenbach authored
Revert of [heap] Reland: Use store buffer for writes coming from mutator. (patchset #1 id:1 of https://codereview.chromium.org/2529293004/ ) Reason for revert: Suspect for tsan failures: https://build.chromium.org/p/client.v8/builders/V8%20Linux64%20TSAN/builds/12915 Original issue's description: > [heap] Reland: Use store buffer for writes coming from mutator. > > This reverts commit 061c2ab2. > > BUG=chromium:648568, chromium:669270 > > Committed: https://crrev.com/fa2fdf275197185d9bca9d5e72c16a60722c3893 > Cr-Commit-Position: refs/heads/master@{#41341} TBR=mlippautz@chromium.org,hpayer@chromium.org # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=chromium:648568, chromium:669270 Review-Url: https://codereview.chromium.org/2534803004 Cr-Commit-Position: refs/heads/master@{#41342}
-
hpayer authored
This reverts commit 061c2ab2. BUG=chromium:648568, chromium:669270 Review-Url: https://codereview.chromium.org/2529293004 Cr-Commit-Position: refs/heads/master@{#41341}
-
- 24 Nov, 2016 2 commits
-
-
machenbach authored
Revert of [heap] Use store buffer for writes coming from mutator. (patchset #6 id:100001 of https://codereview.chromium.org/2528563003/ ) Reason for revert: tsan problems: https://build.chromium.org/p/client.v8/builders/V8%20Linux64%20TSAN/builds/12860 Original issue's description: > Store buffer is used for writes that are coming from the mutator. Writes coming from the GC are directly added to the remembered set. > > BUG=chromium:648568 > > Committed: https://crrev.com/c63c34e12e60ac0a19e1338b647882ac61d08741 > Cr-Commit-Position: refs/heads/master@{#41263} TBR=ulan@chromium.org,hpayer@chromium.org # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=chromium:648568 Review-Url: https://codereview.chromium.org/2528943002 Cr-Commit-Position: refs/heads/master@{#41265}
-
hpayer authored
Store buffer is used for writes that are coming from the mutator. Writes coming from the GC are directly added to the remembered set. BUG=chromium:648568 Review-Url: https://codereview.chromium.org/2528563003 Cr-Commit-Position: refs/heads/master@{#41263}
-
- 18 Nov, 2016 1 commit
-
-
ulan authored
BUG=v8:5580 Review-Url: https://codereview.chromium.org/2460873003 Cr-Commit-Position: refs/heads/master@{#41095}
-
- 11 Nov, 2016 1 commit
-
-
hpayer authored
BUG=chromium:648973, chromium:648568 Review-Url: https://codereview.chromium.org/2493083003 Cr-Commit-Position: refs/heads/master@{#40928}
-
- 28 Oct, 2016 2 commits
-
-
machenbach authored
Revert of [heap] Concurrent store buffer processing. (patchset #13 id:260001 of https://codereview.chromium.org/2453673003/ ) Reason for revert: Seems to block rolling: https://codereview.chromium.org/2447393005/ Original issue's description: > [heap] Concurrent store buffer processing. > > BUG=chromium:648973, chromium:648568 TBR=ulan@chromium.org,mlippautz@chromium.org,hpayer@chromium.org # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=chromium:648973, chromium:648568 Review-Url: https://codereview.chromium.org/2449853010 Cr-Commit-Position: refs/heads/master@{#40650}
-
hpayer authored
BUG=chromium:648973, chromium:648568 Review-Url: https://codereview.chromium.org/2453673003 Cr-Commit-Position: refs/heads/master@{#40642}
-
- 31 Mar, 2016 2 commits
-
-
ulan authored
This reduces the reserved virtual memory size needed for the store buffer. BUG=chromium:578883 LOG=NO Review URL: https://codereview.chromium.org/1851473002 Cr-Commit-Position: refs/heads/master@{#35174}
-
mlippautz authored
Change x64 to use the external references like all other platforms. BUG=chromium:581076 LOG=N Review URL: https://codereview.chromium.org/1844283002 Cr-Commit-Position: refs/heads/master@{#35160}
-
- 16 Feb, 2016 1 commit
-
-
ulan authored
This new class provides a unified interface for recording and iterating slots in store and slots buffers: RememberedSet<OLD_TO_NEW>::Insert(page, slot); RememberedSet<OLD_TO_OLD>::Insert(page, slot); RememberedSet<OLD_TO_NEW>::Iterate(heap, callback); RememberedSet<OLD_TO_OLD>::Iterate(heap, callback); After this change the store buffer is responsible only for collecting slots from the generated code. Subsequent CLs will remove the slots buffer. BUG=chromium:578883 LOG=NO Review URL: https://codereview.chromium.org/1683653002 Cr-Commit-Position: refs/heads/master@{#34031}
-
- 09 Feb, 2016 1 commit
-
-
ulan authored
BUG=chromium:578883 LOG=NO Review URL: https://codereview.chromium.org/1675163003 Cr-Commit-Position: refs/heads/master@{#33841}
-
- 08 Feb, 2016 1 commit
-
-
ulan authored
This replaces the global remembered set with per-page remembered sets. Each page in the old space, map space, and large object space keeps track of the set of slots in the page pointing to the new space. The data structure for storing slot sets is a two-level bitmap, which allows us to remove the store buffer overflow and SCAN_ON_SCAVENGE logic. Design doc: https://goo.gl/sMKCf7 BUG=chromium:578883 LOG=NO Review URL: https://codereview.chromium.org/1608583002 Cr-Commit-Position: refs/heads/master@{#33806}
-
- 25 Jan, 2016 1 commit
-
-
mlippautz authored
- Completely rely on the concurrent sweeping state for SweepingCompleted() - Rename the state accordingly. CQ_EXTRA_TRYBOTS=tryserver.v8:v8_linux_arm64_gc_stress_dbg,v8_linux_gc_stress_dbg,v8_mac_gc_stress_dbg,v8_linux64_asan_rel,v8_linux64_tsan_rel,v8_mac64_asan_rel R=hpayer@chromium.org Review URL: https://codereview.chromium.org/1614953002 Cr-Commit-Position: refs/heads/master@{#33490}
-
- 15 Jan, 2016 1 commit
-
-
mlippautz authored
It is only used locally when exempting pages from the store buffer. This use case can be replaced with a hashmap at the call site. BUG=chromium:524425 LOG=N R=ulan@chromium.org Review URL: https://codereview.chromium.org/1593583002 Cr-Commit-Position: refs/heads/master@{#33324}
-
- 09 Dec, 2015 1 commit
-
-
mlippautz authored
R=hpayer@chromium.org BUG=chromium:524425 LOG=N Review URL: https://codereview.chromium.org/1504773002 Cr-Commit-Position: refs/heads/master@{#32712}
-
- 04 Dec, 2015 1 commit
-
-
mlippautz authored
Fix the missed store buffer entries for live objects on aborted pages. Marking the page as scan_on_scavenge takes care of rebuilding the entries. Note that this requires an additional case in the rebuilding logic as we cannot iterate an aborted pages using the object layout, but rather have to use mark bits for this. BUG=chromium:524425, chromium:564498 LOG=N Review URL: https://codereview.chromium.org/1497883003 Cr-Commit-Position: refs/heads/master@{#32610}
-