- 28 Jul, 2022 1 commit
-
-
Leszek Swirski authored
While marking uses, record what values are used inside a loop, but defined outside of it. Then, on the loop end, extend the lifetime of these values. Bug: v8:7700 Change-Id: I1bba037be760b4871673ecf0af584f5bf72fc35c Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3782797Reviewed-by:
Toon Verwaest <verwaest@chromium.org> Commit-Queue: Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/main@{#82040}
-
- 13 May, 2022 1 commit
-
-
Clemens Backes authored
Now that we require C++17 support, we can just use the standard static_assert without message, instead of our STATIC_ASSERT macro. R=leszeks@chromium.org Bug: v8:12425 Change-Id: I1d4e39c310b533bcd3a4af33d027827e6c083afe Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3647353Reviewed-by:
Leszek Swirski <leszeks@chromium.org> Reviewed-by:
Hannes Payer <hpayer@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/main@{#80524}
-
- 25 Apr, 2022 2 commits
-
-
Igor Sheludko authored
This CL extends BoundedPageAllocator with PageFreeingMode parameter which controls how pages should be freed: by setting permissions to kNoAccess (preferred) or by discarding pages (Apple Silicon specific behavior for RWX pages). The latter mode allows to ensure that once pages are configured with RWX permissions they are never reconfigured to anything else again. The new mode will be used in a follow-up CL. Bug: v8:12797 Change-Id: I3277f56ea6fee9c9b38b1682e68c22e66e9a02a4 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3606228Reviewed-by:
Michael Lippautz <mlippautz@chromium.org> Commit-Queue: Igor Sheludko <ishell@chromium.org> Cr-Commit-Position: refs/heads/main@{#80162}
-
Tobias Tebbi authored
TurboShaft is a new, CFG-based IR for TurboFan. This CL adds the basic IR and bidirectional translation from/to TurboFan's sea-of-nodes-based IR for some common operators (still incomplete even for JS). Bug: v8:12783 Change-Id: I162fdf10d583a9275a9f655f5b44b888faf813f6 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3563562Reviewed-by:
Clemens Backes <clemensb@chromium.org> Reviewed-by:
Maya Lekova <mslekova@chromium.org> Reviewed-by:
Nico Hartmann <nicohartmann@chromium.org> Commit-Queue: Tobias Tebbi <tebbi@chromium.org> Cr-Commit-Position: refs/heads/main@{#80136}
-
- 24 Feb, 2022 1 commit
-
-
Clemens Backes authored
{FreePages} is never expected to fail, and each caller wraps the call in a CHECK macro. In order to learn more about failures, this CL moves the CHECK inside of {::FreePages}, to fail whenever the {PageAllocator} fails to free pages. As a next step, I'll audit our {PageAllocator} implementations to ensure that none of them return {false} for {FreePages}. Note that this is already the case for the gin platform (chromium). R=mlippautz@chromium.org Bug: v8:12656, chromium:1299735 Change-Id: Ib61be6cc8da0110ead2db1ad005728bd061e0243 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3484321Reviewed-by:
Michael Lippautz <mlippautz@chromium.org> Reviewed-by:
Leszek Swirski <leszeks@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/main@{#79248}
-
- 18 Feb, 2022 1 commit
-
-
Camillo Bruni authored
Bug: v8:12639 Change-Id: I10aaa576fdc84d848aa28ed8e07d5793a0954ff1 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3472023Reviewed-by:
Igor Sheludko <ishell@chromium.org> Commit-Queue: Igor Sheludko <ishell@chromium.org> Cr-Commit-Position: refs/heads/main@{#79173}
-
- 08 Feb, 2022 1 commit
-
-
Jakob Gruber authored
The regexp parser historically has tried to gracefully detect and bail out from excess zone allocations, where 'excess' was determined to be an arbitrary limit of 256MB. This leads to issues now that the regexp parser may run from within the JS parser - the JS parser doesn't observe this arbitrary limit and happily keeps allocating until the underlying allocator actually runs out of memory; this way, the JS parser can handle very large JS files, and it's now counterproductive if the regexp parser (which reuses the JS parser zone) bails out on excess allocations. This CL simply removes the excess_allocation mechanism. Bug: chromium:1264014 Change-Id: I8d93a1e52aa65bb0ea6c2aab3b68b479ce79a1f6 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3401580Reviewed-by:
Toon Verwaest <verwaest@chromium.org> Commit-Queue: Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/main@{#78991}
-
- 14 Dec, 2021 1 commit
-
-
Leszek Swirski authored
Fixed: chromium:1279383 Change-Id: I0fb6e15d47698b90c51cc27e18a526ba6d0fc1d1 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3338656 Commit-Queue: Leszek Swirski <leszeks@chromium.org> Auto-Submit: Leszek Swirski <leszeks@chromium.org> Reviewed-by:
Toon Verwaest <verwaest@chromium.org> Cr-Commit-Position: refs/heads/main@{#78364}
-
- 13 Dec, 2021 1 commit
-
-
Leszek Swirski authored
This is a reland of 2418d22a Reland fixes: * Rebase this 2+ year old change
* Unpoison the kept segment before zapping it to make ASAN happy. * Carefully adjust allocation size tracking fields to compensate for kept segment. Original change's description: > [zone] Keep one page when we Zone::Reset for reuse > > Change-Id: I50c6124d3da5b35d4156c066f38d10d2dc966567 > Reviewed-on: https://chromium-review.googlesource.com/c/1349246 > Reviewed-by: Igor Sheludko <ishell@chromium.org> > Commit-Queue: Toon Verwaest <verwaest@chromium.org> > Cr-Commit-Position: refs/heads/master@{#57793} Change-Id: Iaffde5b38b3d683af081b1878464dd4c66be5af8 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3322833Reviewed-by:Toon Verwaest <verwaest@chromium.org> Commit-Queue: Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/main@{#78348}
-
- 02 Nov, 2021 1 commit
-
-
Jakob Gruber authored
Since early regexp errors were implemented in crrev.com/a56874d3, the JS parser calls into the regexp parser to validate the regexp literal syntax. For these calls, the JS parser passes its Zone to the regexp parser. This means that scripts with multiple regexp literals are all parsed using the same Zone memory. Very large scripts with many (think hundreds of thousands) regexp literals may thus run out of memory whereas previously they would parse and run successfully. This CL fixes the OOMs by resetting the state of the JS parser Zone around regexp parser calls. We introduce a new ZoneScope class, similar to HandleScope, which controls the lifetime of zone objects allocated within its scope. In other words: { ZoneScope zone_scope(zone); // Store zone state S. // ... Allocate objects O in zone. // zone is now in state S'. } // zone_scope goes out of scope, reset zone to state S. Objects O // are freed and no longer usable. Fixed: chromium:1264014 Bug: v8:896 Change-Id: I3e7ac36f25a9d6c4eda2460bd1bea9814685e89b Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3256783Reviewed-by:
Toon Verwaest <verwaest@chromium.org> Commit-Queue: Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/main@{#77646}
-
- 07 Oct, 2021 1 commit
-
-
Samuel Groß authored
Currently, when compiling with V8_VIRTUAL_MEMORY_CAGE enabled, the behavior of the BoundedPageAllocator changes from simply making freed pages inaccessible to decommitting them, which guarantees that they will be zero-initialized after the next allocation. As this seems to cause some performance regressions on Mac, this CL introduces a new enum that specifies how the allocator should behave: kAllocatedPagesMustBeZeroInitialized causes the pages to be decommitted during FreePages() and ReleasePages() and thus guarantees zero-initialization during AllocPages(). kAllocatedPagesCanBeUninitialized only causes the pages to be made inaccessible, and so does not generally guarantee zero-initialization for AllocPages(). Finally, this CL also removes some dead code in allocation.cc. Bug: chromium:1257089 Change-Id: I53fa52c8913df869bee2b536efe252780d1ad893 Cq-Include-Trybots: luci.v8.try:v8_linux64_heap_sandbox_dbg_ng Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3208812 Commit-Queue: Samuel Groß <saelo@chromium.org> Reviewed-by:
Igor Sheludko <ishell@chromium.org> Reviewed-by:
Michael Lippautz <mlippautz@chromium.org> Cr-Commit-Position: refs/heads/main@{#77285}
-
- 23 Sep, 2021 1 commit
-
-
Anton Bikineev authored
The CL provides a way for the embedder to hook in a special malloc-like allocator that will be used for zone allocations. An alternative approach would be to use weak functions with branches, checking whether the functions were available at link-time. Those branches could be optimized away with LTOs, so they would essentially be free. However, the weak function approach is not portable (e.g. there is no easy way to emulate it with msvc). The approach can be revisited if indirect call turns out to be expensive (e.g. on hardware with weak branch target predictors). The CL is a prerequisite for running PCScan in the renderer process. Bug: chromium:1249550 Change-Id: I221dcb2486c13e8e6e6761839ba391978319bde4 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3172760Reviewed-by:
Igor Sheludko <ishell@chromium.org> Reviewed-by:
Michael Lippautz <mlippautz@chromium.org> Commit-Queue: Anton Bikineev <bikineev@chromium.org> Cr-Commit-Position: refs/heads/main@{#77012}
-
- 01 Jul, 2021 1 commit
-
-
Peter Kasting authored
There are still a few cases remaining that seem more controversial; I'll upload those separately. Bug: chromium:1066980 Change-Id: Iabbaf23f9bbe97781857c0c589f2b3db685dfdc2 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2994804 Commit-Queue: Peter Kasting <pkasting@chromium.org> Auto-Submit: Peter Kasting <pkasting@chromium.org> Reviewed-by:
Ross McIlroy <rmcilroy@chromium.org> Cr-Commit-Position: refs/heads/master@{#75494}
-
- 18 Jun, 2021 2 commits
-
-
Peter Kasting authored
Bug: chromium:1221591 Change-Id: Ie24334873d1e66de0e0aa90fa1fb49d4290b7b59 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2973214 Commit-Queue: Peter Kasting <pkasting@chromium.org> Commit-Queue: Adam Klein <adamk@chromium.org> Auto-Submit: Peter Kasting <pkasting@chromium.org> Reviewed-by:
Adam Klein <adamk@chromium.org> Cr-Commit-Position: refs/heads/master@{#75255}
-
Dan Elphick authored
The adding of base:: was mostly prepared using git grep and sed: git grep -l <pattern> | grep -v base/vector.h | \ xargs sed -i 's/\b<pattern>\b/base::<pattern>/ with lots of manual clean-ups due to the resulting v8::internal::base::Vectors. #includes were fixed using: git grep -l "src/utils/vector.h" | \ axargs sed -i 's!src/utils/vector.h!src/base/vector.h!' Bug: v8:11879 Change-Id: I3e6d622987fee4478089c40539724c19735bd625 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2968412Reviewed-by:
Clemens Backes <clemensb@chromium.org> Reviewed-by:
Hannes Payer <hpayer@chromium.org> Commit-Queue: Dan Elphick <delphick@chromium.org> Cr-Commit-Position: refs/heads/master@{#75243}
-
- 10 Jun, 2021 1 commit
-
-
John Xu authored
For Cobalt's purpose in the past, we introduced base::Memcpy to intercept memcpy calls and replace it with SbMemoryCopy on Starboard/Cobalt. Recently Cobalt removed SbMemoryCopy because we found out that memcpy implementation is universal. To reduce the cost to maintain base::Memcpy, let us remove it and revert back to raw memcpy. Bug: v8:10927 Change-Id: I060f191f8f1aed8b78ffe4558a3743f3a2da008b Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2951462Reviewed-by:
Camillo Bruni <cbruni@chromium.org> Reviewed-by:
Marja Hölttä <marja@chromium.org> Reviewed-by:
Georg Neis <neis@chromium.org> Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Reviewed-by:
Michael Lippautz <mlippautz@chromium.org> Reviewed-by:
Clemens Backes <clemensb@chromium.org> Commit-Queue: John Xu <johnx@google.com> Cr-Commit-Position: refs/heads/master@{#75070}
-
- 27 Apr, 2021 1 commit
-
-
Michael Lippautz authored
- Move ASAN and MSAN support to base/ - Eval arguments for builds without sanitizer to preserve same semantics - IWYU fixes Bug: chromium:1056170 Change-Id: I212becf205e03b155c188ffd13cf5629df6f2cb8 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2851887Reviewed-by:
Camillo Bruni <cbruni@chromium.org> Reviewed-by:
Omer Katz <omerkatz@chromium.org> Reviewed-by:
Leszek Swirski <leszeks@chromium.org> Reviewed-by:
Clemens Backes <clemensb@chromium.org> Commit-Queue: Michael Lippautz <mlippautz@chromium.org> Cr-Commit-Position: refs/heads/master@{#74225}
-
- 25 Feb, 2021 1 commit
-
-
Hannes Payer authored
Change-Id: Ib54d5abad3e67f74d1930af135778e1f201ba28f Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2712964 Commit-Queue: Hannes Payer <hpayer@chromium.org> Reviewed-by:
Ross McIlroy <rmcilroy@chromium.org> Reviewed-by:
Yang Guo <yangguo@chromium.org> Reviewed-by:
Adam Klein <adamk@chromium.org> Cr-Commit-Position: refs/heads/master@{#73050}
-
- 24 Nov, 2020 1 commit
-
-
Georg Neis authored
Apart from removing Min and Max (utils.h), this is mostly a renaming. In a few cases I had to add a cast. In a bunch of cases I had to use initializer lists to force call-by-value for static member constants because call-by-reference wouldn't compile (like in the previous CL). In a few places I used initializer lists in place of nested min/max operations. Bug: v8:11074 Change-Id: I53a5411be6334ff41e7a8517e6b87fb46f14d086 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2545523 Commit-Queue: Georg Neis <neis@chromium.org> Reviewed-by:
Hannes Payer <hpayer@chromium.org> Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Reviewed-by:
Ulan Degenbaev <ulan@chromium.org> Cr-Commit-Position: refs/heads/master@{#71380}
-
- 17 Nov, 2020 1 commit
-
-
John Xu authored
Bug: v8:10927 Change-Id: Icbdc0d7329ddd466e7d67a954246a35795b4dece Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2507310 Commit-Queue: Ulan Degenbaev <ulan@chromium.org> Reviewed-by:
Peter Marshall <petermarshall@chromium.org> Reviewed-by:
Michael Lippautz <mlippautz@chromium.org> Reviewed-by:
Clemens Backes <clemensb@chromium.org> Reviewed-by:
Toon Verwaest <verwaest@chromium.org> Reviewed-by:
Ulan Degenbaev <ulan@chromium.org> Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#71220}
-
- 11 Nov, 2020 1 commit
-
-
Clemens Backes authored
Replace by explicitly deleting the copy constructor and copy assignment operator. R=zhin@chromium.org Bug: v8:11074 Change-Id: If312e920b1ef42f8ef667f3b81066ff2aad054e4 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2523316Reviewed-by:
Zhi An Ng <zhin@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/master@{#71104}
-
- 06 Oct, 2020 1 commit
-
-
Shu-yu Guo authored
Change-Id: Ie20daeac36c804455b97e1e769417dfe9b5ef4ff Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2453592Reviewed-by:
Adam Klein <adamk@chromium.org> Commit-Queue: Adam Klein <adamk@chromium.org> Auto-Submit: Shu-yu Guo <syg@chromium.org> Cr-Commit-Position: refs/heads/master@{#70359}
-
- 29 Sep, 2020 1 commit
-
-
Manos Koukoutos authored
Change-Id: I2859b2f83a1b3a8f70f906f698a8531796b767af Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2436332Reviewed-by:
Clemens Backes <clemensb@chromium.org> Commit-Queue: Manos Koukoutos <manoskouk@chromium.org> Cr-Commit-Position: refs/heads/master@{#70193}
-
- 17 Aug, 2020 1 commit
-
-
Jakob Kummerow authored
This is a comment-only CL. Change-Id: I002b1765bfa839982ab11c22f744734fdd34d4ce Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2352788Reviewed-by:
Yang Guo <yangguo@chromium.org> Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Commit-Queue: Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/master@{#69417}
-
- 31 Jul, 2020 4 commits
-
-
Igor Sheludko authored
This CL doesn't try to compress containers of Node* yet. Bug: v8:9923 Change-Id: Ica16b09b6f26321952b440d49a70f9a991d4275f Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2324258 Commit-Queue: Igor Sheludko (OOO Aug 3-17) <ishell@chromium.org> Reviewed-by:
Tobias Tebbi <tebbi@chromium.org> Cr-Commit-Position: refs/heads/master@{#69168}
-
Igor Sheludko authored
This is a reland of 13141c8a ... with a fix for an UB issue of passing null pointers to memcpy() when size is zero. TBR=leszeks@chromium.org Original change's description: > [zone-compr] Introduce ZoneTypeTraits and ZoneCompression > > Also move zone compression flags to src/common/globals.h. > > Bug: v8:9923 > Change-Id: Id0a77720e735e2669a1e5eef48e1b4866ad99480 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2324255 > Reviewed-by: Leszek Swirski <leszeks@chromium.org> > Commit-Queue: Igor Sheludko <ishell@chromium.org> > Cr-Commit-Position: refs/heads/master@{#69160} Bug: v8:9923 Change-Id: I2245b81516c39ccea262c282c659ef601af57abf Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2332165 Commit-Queue: Igor Sheludko (OOO Aug 3-17) <ishell@chromium.org> Reviewed-by:
Igor Sheludko (OOO Aug 3-17) <ishell@chromium.org> Cr-Commit-Position: refs/heads/master@{#69166}
-
Nico Hartmann authored
This reverts commit 13141c8a. Reason for revert: https://ci.chromium.org/p/v8/builders/ci/V8%20Linux64%20UBSan/12253? Original change's description: > [zone-compr] Introduce ZoneTypeTraits and ZoneCompression > > Also move zone compression flags to src/common/globals.h. > > Bug: v8:9923 > Change-Id: Id0a77720e735e2669a1e5eef48e1b4866ad99480 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2324255 > Reviewed-by: Leszek Swirski <leszeks@chromium.org> > Commit-Queue: Igor Sheludko <ishell@chromium.org> > Cr-Commit-Position: refs/heads/master@{#69160} TBR=leszeks@chromium.org,ishell@chromium.org Change-Id: I01fc05b33d01c19f9a9432d4b2dd73cf8b38b972 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: v8:9923 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2332163Reviewed-by:
Nico Hartmann <nicohartmann@chromium.org> Commit-Queue: Nico Hartmann <nicohartmann@chromium.org> Cr-Commit-Position: refs/heads/master@{#69162}
-
Igor Sheludko authored
Also move zone compression flags to src/common/globals.h. Bug: v8:9923 Change-Id: Id0a77720e735e2669a1e5eef48e1b4866ad99480 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2324255Reviewed-by:
Leszek Swirski <leszeks@chromium.org> Commit-Queue: Igor Sheludko <ishell@chromium.org> Cr-Commit-Position: refs/heads/master@{#69160}
-
- 28 Jul, 2020 1 commit
-
-
Igor Sheludko authored
Also use outer-function name as a ZONE_NAME instead of file:line and give explicit names to parser and preparser zones. Bug: v8:10572 Change-Id: I9b5acb23322889d8538a34bc888fd6f610eb6893 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2322627 Commit-Queue: Igor Sheludko <ishell@chromium.org> Reviewed-by:
Camillo Bruni <cbruni@chromium.org> Reviewed-by:
Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/master@{#69104}
-
- 24 Jul, 2020 2 commits
-
-
Igor Sheludko authored
... that controls whether the TF graph zones should support compression. Bug: v8:9923 Change-Id: Ifbe237b75e9c92e62eb32b69d6b3b1a818269b83 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2308347 Commit-Queue: Igor Sheludko <ishell@chromium.org> Reviewed-by:
Tobias Tebbi <tebbi@chromium.org> Reviewed-by:
Ross McIlroy <rmcilroy@chromium.org> Cr-Commit-Position: refs/heads/master@{#69036}
-
Igor Sheludko authored
* Added GN flag v8_enable_zone_compression. * AccountingAllocator supports allocation of zone segments via both malloc/free and bounded page allocator. The latter implementation is known to be not efficient yet. This issue will be addressed in a follow-up CLs. * Add support_compression flag to Zone constructor/instance. Bug: v8:9923 Change-Id: I12ee2d85267dd16f455b1b47edc425dc90c57bcf Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2308345Reviewed-by:
Toon Verwaest <verwaest@chromium.org> Commit-Queue: Igor Sheludko <ishell@chromium.org> Cr-Commit-Position: refs/heads/master@{#69035}
-
- 21 Jul, 2020 1 commit
-
-
Igor Sheludko authored
... behind --trace-zone-type-stats flag. Per-object-type statistics requires the following GN args: v8_enable_precise_zone_stats = true use_rtti = true When precise zone stats is enabled, the used zone memory value is calculated more precisely, in particular it takes into account the state of the active segment. By default, the used memory in the active segment is not taken into account because of performance overhead. Bug: v8:10572 Change-Id: I938d9e264cfe6a8b63a89db87d187d8e2be63c8b Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2281006 Commit-Queue: Igor Sheludko <ishell@chromium.org> Reviewed-by:
Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/master@{#68972}
-
- 17 Jul, 2020 1 commit
-
-
Igor Sheludko authored
Bug: v8:10572 Change-Id: I0caf2f4a36e21d889e931b75ec86bae5b1571511 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2302895Reviewed-by:
Clemens Backes <clemensb@chromium.org> Commit-Queue: Igor Sheludko <ishell@chromium.org> Cr-Commit-Position: refs/heads/master@{#68920}
-
- 16 Jul, 2020 3 commits
-
-
Igor Sheludko authored
... by migrating old-style code MyObject* obj = new (zone) MyObject(...) to the new style MyObject* obj = zone->New<MyObject>(...) ... and prohibiting accidental use of the old-style. Bug: v8:10689 Change-Id: Id75774ac12e3d0f95cb3a538066dffbf7815e438 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2300490 Commit-Queue: Igor Sheludko <ishell@chromium.org> Reviewed-by:
Georg Neis <neis@chromium.org> Cr-Commit-Position: refs/heads/master@{#68905}
-
Igor Sheludko authored
1) turn static methods to instance ones. 2) change New/Delete to NewArray/DeleteArray getting array length as argument instead of raw size. 3) propagate type tags through allocate/delete methods of existing AllocationPolicy classes. This will allow implementing accounting of deallocated zone memory. Bug: v8:10572 Change-Id: Ib41c646044814ac6d75d50b2847bbb8964ce25d3 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2300489Reviewed-by:
Clemens Backes <clemensb@chromium.org> Commit-Queue: Igor Sheludko <ishell@chromium.org> Cr-Commit-Position: refs/heads/master@{#68904}
-
Igor Sheludko authored
... this reduces the size of VariableMap object by one word which in turn reduces zone memory pressure. The Scope class which contains VariableMap as a field is usually in top 5 of all allocated objects in zone memory. Bug: v8:9923 Change-Id: I79c6bd9ae97db72f24b831fd5e3733d8d7e4c0fd Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2300486 Commit-Queue: Igor Sheludko <ishell@chromium.org> Reviewed-by:
Clemens Backes <clemensb@chromium.org> Reviewed-by:
Toon Verwaest <verwaest@chromium.org> Cr-Commit-Position: refs/heads/master@{#68896}
-
- 15 Jul, 2020 1 commit
-
-
Igor Sheludko authored
... which gets the zone from its ZoneAllocationPolicy instance. This recovers memory regression caused by adding an AllocationPolicy instance into TemplateHashMapImpl and therefore to VariableMap. Bug: v8:10572 Change-Id: I7962b49e5f2669307e58b3ed7b1f29bab1c42cad Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2298002Reviewed-by:
Clemens Backes <clemensb@chromium.org> Reviewed-by:
Toon Verwaest <verwaest@chromium.org> Commit-Queue: Igor Sheludko <ishell@chromium.org> Cr-Commit-Position: refs/heads/master@{#68879}
-
- 13 Jul, 2020 1 commit
-
-
Igor Sheludko authored
Also make ScopedList class Zone-agnostic and move it to src/utils. Bug: v8:10506 Change-Id: Ibf0869566caa767809bdf95cb03c01e599613938 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2292234Reviewed-by:
Toon Verwaest <verwaest@chromium.org> Reviewed-by:
Ross McIlroy <rmcilroy@chromium.org> Commit-Queue: Igor Sheludko <ishell@chromium.org> Cr-Commit-Position: refs/heads/master@{#68825}
-
- 10 Jul, 2020 2 commits
-
-
Igor Sheludko authored
This will allow implementing per-type allocation stats. Also migrate old-style zone allocations ... = new (zone) MyObject(...) to the new style: ... = zone->New<MyObject>(...) in several source files. Bug: v8:10689 Change-Id: I1b044c9eccb4ac7e1b627276691f3c1fbad52137 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2288232 Commit-Queue: Igor Sheludko <ishell@chromium.org> Reviewed-by:
Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/master@{#68781}
-
Igor Sheludko authored
... and introduce a bottleneck for collecting reusable zone memory statistics. Tbr: jgruber@chromium.org Bug: v8:10572 Change-Id: I418f8b495c0d89c0eb73f4e19bc4315acfadb480 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2287500Reviewed-by:
Igor Sheludko <ishell@chromium.org> Reviewed-by:
Toon Verwaest <verwaest@chromium.org> Commit-Queue: Igor Sheludko <ishell@chromium.org> Cr-Commit-Position: refs/heads/master@{#68776}
-