- 12 Feb, 2021 1 commit
-
-
Georg Neis authored
This reverts commit 87df0b7e (thus relands 42cd9eb7), with fixes for the discovered issues. Original change's description: > Revert "[compiler] Directly read PropertyCells" > > This reverts commit 42cd9eb7. > > Reason for revert: Clusterfuzz issues, e.g. > https://bugs.chromium.org/p/chromium/issues/detail?id=1176318 > > Original change's description: > > [compiler] Directly read PropertyCells > > > > Main changes: > > > > - Introduce a new broker data kind kBackgroundSerialized for objects > > that can be serialized in the background (when direct reads are on). > > (I'm planning to remove kPossiblyBackgroundSerialized in a followup, > > in favor of a dynamic choice of kSerialized or kBackgroundSerialized). > > - Make PropertyCell use that new kind. > > - Introduce a bottleneck in runtime code for changes to PropertyCells > > and make sure that a certain protocol is followed that allows > > concurrent reads from the background thread. > > - Improve interface of PropertyCell in various ways. > > > > Bug: v8:7790 > > Change-Id: If3d7926c3b894808811348b4b2bed153f5c06897 > > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2661462 > > Reviewed-by: Toon Verwaest <verwaest@chromium.org> > > Reviewed-by: Ulan Degenbaev <ulan@chromium.org> > > Reviewed-by: Nico Hartmann <nicohartmann@chromium.org> > > Commit-Queue: Georg Neis <neis@chromium.org> > > Cr-Commit-Position: refs/heads/master@{#72586} > > TBR=ulan@chromium.org,neis@chromium.org,verwaest@chromium.org,nicohartmann@chromium.org > > Change-Id: Id04145760c49fa379bc5a3fc16eba664025a9180 > Bug: v8:7790 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2685125 > Reviewed-by: Georg Neis <neis@chromium.org> > Commit-Queue: Georg Neis <neis@chromium.org> > Cr-Commit-Position: refs/heads/master@{#72619} Bug: v8:7790, chromium:1176509, chromium:1176318, chromium:1176504 Change-Id: Icaf285912bb948432a4a2d599cd174f6a5aa296e Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2685166Reviewed-by:
Georg Neis <neis@chromium.org> Reviewed-by:
Igor Sheludko <ishell@chromium.org> Reviewed-by:
Michael Stanton <mvstanton@chromium.org> Reviewed-by:
Ulan Degenbaev <ulan@chromium.org> Reviewed-by:
Nico Hartmann <nicohartmann@chromium.org> Commit-Queue: Georg Neis <neis@chromium.org> Cr-Commit-Position: refs/heads/master@{#72697}
-
- 10 Feb, 2021 1 commit
-
-
Georg Neis authored
This reverts commit 42cd9eb7. Reason for revert: Clusterfuzz issues, e.g. https://bugs.chromium.org/p/chromium/issues/detail?id=1176318 Original change's description: > [compiler] Directly read PropertyCells > > Main changes: > > - Introduce a new broker data kind kBackgroundSerialized for objects > that can be serialized in the background (when direct reads are on). > (I'm planning to remove kPossiblyBackgroundSerialized in a followup, > in favor of a dynamic choice of kSerialized or kBackgroundSerialized). > - Make PropertyCell use that new kind. > - Introduce a bottleneck in runtime code for changes to PropertyCells > and make sure that a certain protocol is followed that allows > concurrent reads from the background thread. > - Improve interface of PropertyCell in various ways. > > Bug: v8:7790 > Change-Id: If3d7926c3b894808811348b4b2bed153f5c06897 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2661462 > Reviewed-by: Toon Verwaest <verwaest@chromium.org> > Reviewed-by: Ulan Degenbaev <ulan@chromium.org> > Reviewed-by: Nico Hartmann <nicohartmann@chromium.org> > Commit-Queue: Georg Neis <neis@chromium.org> > Cr-Commit-Position: refs/heads/master@{#72586} TBR=ulan@chromium.org,neis@chromium.org,verwaest@chromium.org,nicohartmann@chromium.org Change-Id: Id04145760c49fa379bc5a3fc16eba664025a9180 Bug: v8:7790 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2685125Reviewed-by:
Georg Neis <neis@chromium.org> Commit-Queue: Georg Neis <neis@chromium.org> Cr-Commit-Position: refs/heads/master@{#72619}
-
- 09 Feb, 2021 1 commit
-
-
Georg Neis authored
Main changes: - Introduce a new broker data kind kBackgroundSerialized for objects that can be serialized in the background (when direct reads are on). (I'm planning to remove kPossiblyBackgroundSerialized in a followup, in favor of a dynamic choice of kSerialized or kBackgroundSerialized). - Make PropertyCell use that new kind. - Introduce a bottleneck in runtime code for changes to PropertyCells and make sure that a certain protocol is followed that allows concurrent reads from the background thread. - Improve interface of PropertyCell in various ways. Bug: v8:7790 Change-Id: If3d7926c3b894808811348b4b2bed153f5c06897 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2661462Reviewed-by:
Toon Verwaest <verwaest@chromium.org> Reviewed-by:
Ulan Degenbaev <ulan@chromium.org> Reviewed-by:
Nico Hartmann <nicohartmann@chromium.org> Commit-Queue: Georg Neis <neis@chromium.org> Cr-Commit-Position: refs/heads/master@{#72586}
-
- 28 Apr, 2020 1 commit
-
-
Jakob Gruber authored
This reverts the changes made in https://chromium-review.googlesource.com/c/v8/v8/+/1695465 https://chromium-review.googlesource.com/c/v8/v8/+/1776078 We originally moved this protector to the native context to avoid cross-native-context pollution of protector state. Ideally, invalidating a protector in one NC should not affect any other NC. But as it turns out, having the protector on the NC causes more problems than it solves since all affected callers now need to find the correct native context to check. Sometimes (e.g. in CSA regexp builtins) it is possible to blindly check the current NC, but the reasoning behind this optimization is tricky to understand. Sometimes, fetching the correct NC is not possible due to access restrictions. These implementation complexities outweigh the (unknown) potential performance benefits. In the future we should attempt to move away from the protector concept for these kinds of checks. Bug: chromium:1069964,v8:9463 Change-Id: I2cbb2ec7266282165dae5e4a6c8bdbda520c50a9 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2157382Reviewed-by:
Igor Sheludko <ishell@chromium.org> Reviewed-by:
Dominik Inführ <dinfuehr@chromium.org> Commit-Queue: Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#67415}
-
- 21 Apr, 2020 1 commit
-
-
Jakob Gruber authored
This is a reland of 52412058 Original change's description: > [protectors] Add use counters to track invalidations > > ... to make real world protector invalidations measurable. > > Chromium CL: https://crrev.com/c/2149324 > > Drive-by: Add missing newline in protector tracing. > Drive-by: Consistent naming for the regexp species protector. > > Bug: v8:9496 > Change-Id: I3c7238aa8024e03ea9e89daf83345b8ec4f0d768 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2149428 > Reviewed-by: Ulan Degenbaev <ulan@chromium.org> > Commit-Queue: Jakob Gruber <jgruber@chromium.org> > Cr-Commit-Position: refs/heads/master@{#67149} Bug: v8:9496 Change-Id: I3c97bfa747e8429569eaa09ea909de73fc377efa Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2151363Reviewed-by:
Ulan Degenbaev <ulan@chromium.org> Commit-Queue: Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#67261}
-
- 16 Apr, 2020 1 commit
-
-
Jakob Gruber authored
This reverts commit 52412058. Reason for revert: Use counters are not the right approach, we need histograms instead. Original change's description: > [protectors] Add use counters to track invalidations > > ... to make real world protector invalidations measurable. > > Chromium CL: https://crrev.com/c/2149324 > > Drive-by: Add missing newline in protector tracing. > Drive-by: Consistent naming for the regexp species protector. > > Bug: v8:9496 > Change-Id: I3c7238aa8024e03ea9e89daf83345b8ec4f0d768 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2149428 > Reviewed-by: Ulan Degenbaev <ulan@chromium.org> > Commit-Queue: Jakob Gruber <jgruber@chromium.org> > Cr-Commit-Position: refs/heads/master@{#67149} TBR=ulan@chromium.org,jgruber@chromium.org Change-Id: Ia36b598844fbad2166772298c2e2ec8f6b4f92b1 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: v8:9496 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2151358Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Commit-Queue: Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#67170}
-
- 15 Apr, 2020 1 commit
-
-
Jakob Gruber authored
... to make real world protector invalidations measurable. Chromium CL: https://crrev.com/c/2149324 Drive-by: Add missing newline in protector tracing. Drive-by: Consistent naming for the regexp species protector. Bug: v8:9496 Change-Id: I3c7238aa8024e03ea9e89daf83345b8ec4f0d768 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2149428Reviewed-by:
Ulan Degenbaev <ulan@chromium.org> Commit-Queue: Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#67149}
-
- 02 Jan, 2020 1 commit
-
-
Joshua Litt authored
The native context can differ from the current isolates raw_native_context, so this DCHECK was never valid. Bug: chromium:1033966 Change-Id: Iecbbdf33a8645ffd6e8768f4ba0eb0292eca269f Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1982582Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Commit-Queue: Joshua Litt <joshualitt@chromium.org> Cr-Commit-Position: refs/heads/master@{#65577}
-
- 26 Sep, 2019 1 commit
-
-
Joshua Litt authored
Bug: v8:9463 Change-Id: I62290f29086c370b1f4f773de9a4d8f926edf313 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1818732Reviewed-by:
Jakob Kummerow <jkummerow@chromium.org> Reviewed-by:
Maya Lekova <mslekova@chromium.org> Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Commit-Queue: Joshua Litt <joshualitt@chromium.org> Cr-Commit-Position: refs/heads/master@{#64005}
-
- 04 Sep, 2019 1 commit
-
-
Joshua Litt authored
Bug: v8:9463 Change-Id: I4d9d35222597925a289a6c3055ef0ca0aaa43a2f Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1775926 Commit-Queue: Joshua Litt <joshualitt@chromium.org> Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#63553}
-
- 29 Aug, 2019 1 commit
-
-
Joshua Litt authored
Adds a simple static class to manage fast path protectors, thereby eventually allowing us to remove a bunch of boilerplate from isolate. Bug: v8:9463 Change-Id: I99306e5c914c16045d0b891bdc3c62cfd98fddfc Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1774187Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Commit-Queue: Joshua Litt <joshualitt@chromium.org> Cr-Commit-Position: refs/heads/master@{#63450}
-