- 20 Jul, 2020 2 commits
-
-
Marja Hölttä authored
This reverts commit c5845b47. Reason for revert: Too many tests are flaky Original change's description: > Reland [Atomics.waitAsync] Implement Atomics.waitAsync > > Original design doc: > https://docs.google.com/document/d/1dthXsVHMc1Sd_oYf9a-KZSFOd_a8dUgnt4REAG8YIXA > > Design changes: > https://docs.google.com/document/d/1aeEGDm1XSqoJkQQKz9F75WqnuAa2caktxGy_O_KpO9Y > > Previous (reverted) version: https://chromium-review.googlesource.com/c/v8/v8/+/2202981 > > Relanding with fix: tests need --noincremental-marking > > TBR=ishell@chromium.org, ulan@chromium.org, syg@chromium.org, ahaas@chromium.org > > Bug: v8:10239 > Change-Id: Id122225d5d2ed67cbeb3269df115c7208a33a281 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2306791 > Reviewed-by: Marja Hölttä <marja@chromium.org> > Reviewed-by: Andreas Haas <ahaas@chromium.org> > Commit-Queue: Marja Hölttä <marja@chromium.org> > Cr-Commit-Position: refs/heads/master@{#68929} TBR=ulan@chromium.org,marja@chromium.org,ahaas@chromium.org,ishell@chromium.org,syg@chromium.org Change-Id: If06da737749806982d1fb95811f540d6667543d5 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: v8:10239 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2306799Reviewed-by: Marja Hölttä <marja@chromium.org> Commit-Queue: Marja Hölttä <marja@chromium.org> Cr-Commit-Position: refs/heads/master@{#68935}
-
Marja Hölttä authored
Original design doc: https://docs.google.com/document/d/1dthXsVHMc1Sd_oYf9a-KZSFOd_a8dUgnt4REAG8YIXA Design changes: https://docs.google.com/document/d/1aeEGDm1XSqoJkQQKz9F75WqnuAa2caktxGy_O_KpO9Y Previous (reverted) version: https://chromium-review.googlesource.com/c/v8/v8/+/2202981 Relanding with fix: tests need --noincremental-marking TBR=ishell@chromium.org, ulan@chromium.org, syg@chromium.org, ahaas@chromium.org Bug: v8:10239 Change-Id: Id122225d5d2ed67cbeb3269df115c7208a33a281 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2306791Reviewed-by: Marja Hölttä <marja@chromium.org> Reviewed-by: Andreas Haas <ahaas@chromium.org> Commit-Queue: Marja Hölttä <marja@chromium.org> Cr-Commit-Position: refs/heads/master@{#68929}
-
- 17 Jul, 2020 2 commits
-
-
Frank Tang authored
Support more 3 letters timezones and SystemV/XXX timezones Bug: chromium:364374 Change-Id: I710eeee62ba65f7e30203a44a4bd2d95365cc6fc Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2303896 Commit-Queue: Frank Tang <ftang@chromium.org> Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Reviewed-by: Shu-yu Guo <syg@chromium.org> Cr-Commit-Position: refs/heads/master@{#68925}
-
Marijn Kruisselbrink authored
Exposes initial_async_iterator_prototype the same way that initial_iterator_prototype is exposed, to let blink implement async iterables better. Bug: chromium:1087157 Change-Id: I94f65eedb3aad0bf62cb4808935f320fe4bf4e9c Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2300779 Commit-Queue: Marijn Kruisselbrink <mek@chromium.org> Reviewed-by: Toon Verwaest <verwaest@chromium.org> Cr-Commit-Position: refs/heads/master@{#68921}
-
- 16 Jul, 2020 3 commits
-
-
Yuki Shiino authored
Property descriptor interceptor may and may not throw an exception. If it's thrown, V8 has to propagate the exception appropriately. Especially HTML ([1][2]) requires that the cross origin case of getOwnPropertyDescriptor throws a SecurityError. Hence, Blink is going to throw a SecurityError in the cross origin descriptor interceptor. Then, this fix is necessary. [1] https://html.spec.whatwg.org/C#windowproxy-getownproperty [2] https://html.spec.whatwg.org/C#location-getownproperty Change-Id: I7e3a92f1a16f1a2cda3818fd585a89fd83989003 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2297076Reviewed-by: Toon Verwaest <verwaest@chromium.org> Commit-Queue: Yuki Shiino <yukishiino@chromium.org> Cr-Commit-Position: refs/heads/master@{#68898}
-
Victor Gomes authored
Rest arguments were using the builtin NewArgumentsElements to create its backing store. This does work when the rest elements are a suffix of the arguments in the stack, but this is not the case when V8_REVERSE_JSARGS is enabled. This CL ports the builtin to Torque and fix the previous issues with V8_REVERSE_JSARGS. Change-Id: I82db0dfd409d909336f34312f62c379ca5929e1e Bug: v8:10201 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2284988Reviewed-by: Tobias Tebbi <tebbi@chromium.org> Reviewed-by: Jakob Gruber <jgruber@chromium.org> Commit-Queue: Victor Gomes <victorgomes@chromium.org> Cr-Commit-Position: refs/heads/master@{#68888}
-
Tobias Tebbi authored
Bug: v8:7793 Change-Id: Ie573b3feef58329d524e51c942b67cf0525963ff Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2300545 Commit-Queue: Tobias Tebbi <tebbi@chromium.org> Reviewed-by: Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#68885}
-
- 15 Jul, 2020 5 commits
-
-
Igor Sheludko authored
... this will avoid the need to pass AllocationPolicy to every method that can allocate/deallocate and allows to make deallocation method implementation stateful. The latter will also allow implementing accounting of deallocated zone memory. Adding one more field is generally fine because usually these hashmap objects are allocated on the stack or inside other rarely-allocated long-lived objects. The only exception is Scope class. The Scope objects are created very often during parsing and each of them has a VariableMap field. The Scope object size issue will be addressed in a follow-up CL. Bug: v8:10572 Change-Id: I63fbd41246cf2e568c8ba80c213d3e9caffc2c87 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2284992Reviewed-by: Toon Verwaest <verwaest@chromium.org> Reviewed-by: Ross McIlroy <rmcilroy@chromium.org> Reviewed-by: Clemens Backes <clemensb@chromium.org> Reviewed-by: Jakob Gruber <jgruber@chromium.org> Commit-Queue: Igor Sheludko <ishell@chromium.org> Cr-Commit-Position: refs/heads/master@{#68877}
-
Georg Neis authored
Make JSContextSpecialization constant-fold import.meta loads if the meta object has already been created. Most of this CL was contributed by Gus Caplan. This is a verbatim copy of CL https://chromium-review.googlesource.com/c/v8/v8/+/2170982 which could not be landed due to the wrong email address being used. TBR=verwaest@chromium.org TBR=gsathya@chromium.org Bug: v8:7044 Change-Id: Ief45f3082dc756265904ff500305d32717071e81 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2299375Reviewed-by: Georg Neis <neis@chromium.org> Commit-Queue: Georg Neis <neis@chromium.org> Cr-Commit-Position: refs/heads/master@{#68875}
-
Jakob Gruber authored
When creating a new JSFunction (either through Factory::NewFunction or the FastNewClosure builtin), install the cached Code object if one exists. In the former, this happens explicitly; in the former implicitly through %CompileLazy. Drive-by: Clean up nci tracing methods. Drive-by: Rename maybe_has_... to may_have_cached_code. Bug: v8:8888 Change-Id: I98d87df10df496c45749b3fd76c072c36af45b68 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2294662Reviewed-by: Toon Verwaest <verwaest@chromium.org> Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Commit-Queue: Ulan Degenbaev <ulan@chromium.org> Auto-Submit: Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#68863}
-
Daniel Bevenius authored
Change-Id: Icccd7d8d0701ddbf9fb5088f5a47caa992f1b1e2 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2120296Reviewed-by: Marja Hölttä <marja@chromium.org> Commit-Queue: Marja Hölttä <marja@chromium.org> Cr-Commit-Position: refs/heads/master@{#68861}
-
Igor Sheludko authored
This is a follow-up fix for https://chromium-review.googlesource.com/c/v8/v8/+/2292230 In this CL fixes the case when the property cell is added to the dictionary but the value is not actually stored which leaves PropertyCell with the hole in the dictionary. Now the logic for GlobalDictionary matches the logic for NameDictionary - the property cell is added to the dictionary in LookupIterator::ApplyTransitionToDataProperty(). Bug: chromium:1104711, chromium:1105383 Change-Id: I56da16d85d13288fbc41fd60dbce556fec5e7d18 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2297472Reviewed-by: Toon Verwaest <verwaest@chromium.org> Commit-Queue: Igor Sheludko <ishell@chromium.org> Cr-Commit-Position: refs/heads/master@{#68860}
-
- 14 Jul, 2020 6 commits
-
-
Frank Tang authored
Make locales and options required and no default for type in options. Bug: v8:10623 Change-Id: I5df065a95e82ecb3b8b036d1b4738f296aa7243f Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2291617Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Commit-Queue: Frank Tang <ftang@chromium.org> Cr-Commit-Position: refs/heads/master@{#68854}
-
Maya Lekova authored
This reverts commit 2a1abac5. Reason for revert: Breaking Arm CFI bot - https://ci.chromium.org/p/v8/builders/ci/V8%20Linux%20-%20arm64%20-%20sim%20-%20CFI/1354? Original change's description: > [Atomics.waitAsync] Implement Atomics.waitAsync > > Original design doc: > https://docs.google.com/document/d/1dthXsVHMc1Sd_oYf9a-KZSFOd_a8dUgnt4REAG8YIXA > > Design changes: > https://docs.google.com/document/d/1aeEGDm1XSqoJkQQKz9F75WqnuAa2caktxGy_O_KpO9Y > > > Bug: v8:10239 > Change-Id: Iab94ccab85d7b4ff23cff1955774b42edf5be541 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2202981 > Commit-Queue: Marja Hölttä <marja@chromium.org> > Reviewed-by: Igor Sheludko <ishell@chromium.org> > Reviewed-by: Andreas Haas <ahaas@chromium.org> > Reviewed-by: Ulan Degenbaev <ulan@chromium.org> > Reviewed-by: Shu-yu Guo <syg@chromium.org> > Cr-Commit-Position: refs/heads/master@{#68844} TBR=ulan@chromium.org,marja@chromium.org,ahaas@chromium.org,ishell@chromium.org,syg@chromium.org Change-Id: I1a1164ab29112bd0113b8b1823c78a3895cfd6cc No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: v8:10239 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2297469Reviewed-by: Maya Lekova <mslekova@chromium.org> Commit-Queue: Maya Lekova <mslekova@chromium.org> Cr-Commit-Position: refs/heads/master@{#68846}
-
Marja Hölttä authored
Original design doc: https://docs.google.com/document/d/1dthXsVHMc1Sd_oYf9a-KZSFOd_a8dUgnt4REAG8YIXA Design changes: https://docs.google.com/document/d/1aeEGDm1XSqoJkQQKz9F75WqnuAa2caktxGy_O_KpO9Y Bug: v8:10239 Change-Id: Iab94ccab85d7b4ff23cff1955774b42edf5be541 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2202981 Commit-Queue: Marja Hölttä <marja@chromium.org> Reviewed-by: Igor Sheludko <ishell@chromium.org> Reviewed-by: Andreas Haas <ahaas@chromium.org> Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Reviewed-by: Shu-yu Guo <syg@chromium.org> Cr-Commit-Position: refs/heads/master@{#68844}
-
Jakob Gruber authored
... on Code objects. Refactors: create a dedicated WasmCode constructor, hide the internal constructor, constify members, and let SafepointTable handle out-of-line tables. Expose a new Code::SafepointTableAddress() helper as the source of truth. Some safepoint tables may move out-of-line in the near future. Bug: v8:7777,v8:10707 Change-Id: I4e2d954ed2d157235e9dfa3e7a5ca08800896683 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2297459Reviewed-by: Clemens Backes <clemensb@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Auto-Submit: Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#68837}
-
Jakob Gruber authored
Handler tables (and other inlined Code metadata) will have to move outside the .text section. This CL creates Code::HandlerTableAddress() as a single chokepoint for accessing the handler table of a Code object. Drive-by: Create a dedicated constructor for WasmCode handler tables. Bug: v8:7777 Change-Id: I01c5157b732ba509b2c76f2744fde271c2ba1411 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2295605 Commit-Queue: Jakob Gruber <jgruber@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Auto-Submit: Jakob Gruber <jgruber@chromium.org> Reviewed-by: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/master@{#68835}
-
Jakob Gruber authored
.. and move all SharedFunctionInfo implementations from objects.cc to the dedicated shared-function-info.cc. Drive-by: Also move remaining JSRegExp impls. Bug: v8:8888 Change-Id: I59adc3928f379eeb8b70f26d7e51d01c889c9a47 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2292240 Commit-Queue: Jakob Gruber <jgruber@chromium.org> Reviewed-by: Toon Verwaest <verwaest@chromium.org> Cr-Commit-Position: refs/heads/master@{#68832}
-
- 13 Jul, 2020 3 commits
-
-
Frank Tang authored
Sync the implementation with the latest version of https://github.com/tc39/ecma402/pull/347 Bug: v8:10692 Change-Id: I4e2144da9f770607b4d79e7ce32f079dd2eef54c Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2290627Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Reviewed-by: Shu-yu Guo <syg@chromium.org> Commit-Queue: Frank Tang <ftang@chromium.org> Cr-Commit-Position: refs/heads/master@{#68827}
-
Jakob Gruber authored
This adds a new Code section to the compilation cache (aka isolate cache), and inserts generated native context independent code into it. Cache consumption will be implemented in a following CL. Bug: v8:8888 Change-Id: I997c13da0fe547f395627a48f1cb7e5f19dfc3ba Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2288851Reviewed-by: Toon Verwaest <verwaest@chromium.org> Commit-Queue: Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#68824}
-
Milad Farazmand authored
Currently the compilation may fail with the following error: loop will run at most once (loop increment never executed) Change-Id: I79dd1c5212475647c42e803858fe589cd9a05b7e Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2294916Reviewed-by: Jakob Gruber <jgruber@chromium.org> Commit-Queue: Milad Farazmand <miladfar@ca.ibm.com> Cr-Commit-Position: refs/heads/master@{#68823}
-
- 10 Jul, 2020 3 commits
-
-
Leszek Swirski authored
Rather than marking deleted GlobalDictionary entries with a "The Hole" valued PropertyCell, we now remove those PropertyCells entirely and use the standard HashTable deleted item marker (also the Hole). This comes with several simplifications: 1) We no longer need a customizable IsKey method on HastTable shapes, which was only used by GlobalDictionary to mark "The Hole" cells as not real keys, 2) We can get rid of IsLive/IsKey from the Shape entirely, and define it directly in the HashTable, which will also allow us (in the future) to encourage caching of "undefined" and "Hole" where used for IsKey checks, 3) PropertyCell invalidation doesn't necessarily have to allocate a new replacement cell (specifically, on deletion), nor does it have to deal with cells that contain the Hole, 4) kNeedsHoleCheck is renamed to kMatchNeedsHoleCheck (to be explicit that this is only needed to guard IsMatch, which may do an indentity comparison and thus not need the HoleCheck guard). It's also moved out of BaseShape and into the various shapes that define IsMatch, to make them more explicitly think about the value, 5) Modified some while loops into for loops to allow clearer use of "continue" on successful hole checks. Change-Id: If591cbb6b49d59726bdc615413aba4f78fd64632 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2292230 Commit-Queue: Leszek Swirski <leszeks@chromium.org> Auto-Submit: Leszek Swirski <leszeks@chromium.org> Reviewed-by: Igor Sheludko <ishell@chromium.org> Cr-Commit-Position: refs/heads/master@{#68807}
-
Leszek Swirski authored
The map of the HashTable is more a property of the HashTable than part of its shape, so we can move its static map getter (for construction) to to HashTable class itself. Change-Id: I73f4aa7260d6ce749ef51961767fd37d1ab520e4 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2289782 Commit-Queue: Igor Sheludko <ishell@chromium.org> Auto-Submit: Leszek Swirski <leszeks@chromium.org> Reviewed-by: Igor Sheludko <ishell@chromium.org> Cr-Commit-Position: refs/heads/master@{#68805}
-
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}
-
- 09 Jul, 2020 4 commits
-
-
Frank Tang authored
Bug: v8:10686 Change-Id: I5a7b47dd4ed10142a795de56c4739ab072e63421 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2286814 Commit-Queue: Frank Tang <ftang@chromium.org> Reviewed-by: Frank Tang <ftang@chromium.org> Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/master@{#68773}
-
Jakob Gruber authored
After native-context-independent codegen, verify that the resulting Code object does not embed any nc-dependent objects, and that no code dependencies have been created. Bug: v8:8888 Change-Id: I894e74b27e86e7727ff17aa0dbfdd908373a5e55 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2284498 Commit-Queue: Jakob Gruber <jgruber@chromium.org> Reviewed-by: Tobias Tebbi <tebbi@chromium.org> Cr-Commit-Position: refs/heads/master@{#68757}
-
Jakob Kummerow authored
By introducing a globally known map for each generic type. These maps are never used to allocate objects, they only serve as sentinels for generic heap types. Bug: v8:7748 Change-Id: I950a8c712dc1510759a833fe9122b9e9a6222dc2 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2288860 Commit-Queue: Jakob Kummerow <jkummerow@chromium.org> Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Reviewed-by: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/master@{#68755}
-
Leszek Swirski authored
Change-Id: I90612ae0e54b46e7147d9a3392783f56da598b2b Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2287499 Commit-Queue: Leszek Swirski <leszeks@chromium.org> Commit-Queue: Ulan Degenbaev <ulan@chromium.org> Auto-Submit: Leszek Swirski <leszeks@chromium.org> Reviewed-by: Jakob Gruber <jgruber@chromium.org> Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Reviewed-by: Igor Sheludko <ishell@chromium.org> Cr-Commit-Position: refs/heads/master@{#68750}
-
- 08 Jul, 2020 2 commits
-
-
Frank Tang authored
Bug: v8:10684 Change-Id: Id686d9f4d0b08d00ecf63217493e71f608d61b5d Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2286812Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Commit-Queue: Frank Tang <ftang@chromium.org> Cr-Commit-Position: refs/heads/master@{#68739}
-
Igor Sheludko authored
... into src/zone/scoped-list.h src/zone/zone-hashmap.h src/zone/zone-list.h src/zone/zone-fwd.h zone-fwd.h header contains zone-related forward type declarations. Bug: v8:10506 Change-Id: Ic61b6717b3034afa24bdd49fbc0ce758a0e93c75 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2284987 Commit-Queue: Igor Sheludko <ishell@chromium.org> Reviewed-by: Jakob Gruber <jgruber@chromium.org> Reviewed-by: Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/master@{#68734}
-
- 07 Jul, 2020 3 commits
-
-
Jakob Kummerow authored
When rtt.sub is called repeatedly with the same arguments, it should return the same result. This CL introduces a cache for previously created sub-RTTs to achieve that. Bug: v8:7748 Change-Id: Ie6c74eedf0df6f94cd973fdb0b6b6fc0130a9c41 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2275967 Commit-Queue: Jakob Kummerow <jkummerow@chromium.org> Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Cr-Commit-Position: refs/heads/master@{#68715}
-
Mythri A authored
When marking the function for a deopt due a dependency change, we only print the information about the code object. This isn't very useful when looking at the output of --trace-deopt. This cl also adds SharedFunctionInfo which makes it easier to see which function got deoptimized. Also adds these events to the log file so they can be used in profview to print more accurate deoptimization information. Change-Id: I1b7a88b5cc2a1ad1ebb0863cf8a4f7d2e151b76a Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2281001 Commit-Queue: Mythri Alle <mythria@chromium.org> Reviewed-by: Peter Marshall <petermarshall@chromium.org> Reviewed-by: Georg Neis <neis@chromium.org> Reviewed-by: Ross McIlroy <rmcilroy@chromium.org> Cr-Commit-Position: refs/heads/master@{#68705}
-
Ulan Degenbaev authored
This moves marking write barrier related functions from Heap and IncrementalMarking into a separate class: MarkingBarrier. Additionally, a new WriteBarrier class is added at the heap API level that dispatches to MarkingBarrier. Future CLs will move slots recording in MarkingBarrier and apply the same refactoring to the generational barrier. An instance of MarkingBarrier will be added to each LocalHeap and enable it to emit a write barrier from a background thread. Bug: v8:10315 Change-Id: Icc147b48563d88c85d99ead99b1e201f523721d0 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2280083Reviewed-by: Dominik Inführ <dinfuehr@chromium.org> Reviewed-by: Jakob Gruber <jgruber@chromium.org> Commit-Queue: Ulan Degenbaev <ulan@chromium.org> Cr-Commit-Position: refs/heads/master@{#68703}
-
- 06 Jul, 2020 1 commit
-
-
Leszek Swirski authored
This will allow it to take an OffThreadIsolate in the future, without requiring GetIsolate on SharedFunctionInfo. Change-Id: I7db56d5f0587585f829b26e60683c133760d8ff1 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2282534Reviewed-by: Ross McIlroy <rmcilroy@chromium.org> Reviewed-by: Jakob Gruber <jgruber@chromium.org> Commit-Queue: Jakob Gruber <jgruber@chromium.org> Auto-Submit: Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/master@{#68696}
-
- 03 Jul, 2020 1 commit
-
-
Daniel Clifford authored
This change also makes it possible to create Torque references to elements in the context. Change-Id: I064b73dedf8463c8d92b94b0e59f3cb4e366611a Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2280084 Commit-Queue: Daniel Clifford <danno@chromium.org> Reviewed-by: Tobias Tebbi <tebbi@chromium.org> Cr-Commit-Position: refs/heads/master@{#68677}
-
- 02 Jul, 2020 1 commit
-
-
Santiago Aboy Solanes authored
Bug: v8:7790 Change-Id: I1b9116529575f56c890f93488a0ffdebfdfe5763 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2260873 Commit-Queue: Santiago Aboy Solanes <solanes@chromium.org> Reviewed-by: Georg Neis <neis@chromium.org> Cr-Commit-Position: refs/heads/master@{#68649}
-
- 01 Jul, 2020 2 commits
-
-
Santiago Aboy Solanes authored
What we need is a multiple readers single writer (MRSW) lock. The main thread is the only one that is going to be writing, while the readers might be either the main thread or background threads. The shared_mutex is in the isolate itself, so that different isolates will not block each other. Bug: v8:7790 Change-Id: Idd6bb1826bd0cc6279df1c0694a84e00d53a7eae Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2241513 Commit-Queue: Santiago Aboy Solanes <solanes@chromium.org> Reviewed-by: Toon Verwaest <verwaest@chromium.org> Reviewed-by: Georg Neis <neis@chromium.org> Cr-Commit-Position: refs/heads/master@{#68639}
-
Georg Neis authored
Also fix a typo in a log message. Change-Id: I247e5347b7f7d71b08630489896da463dd76b8a3 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2277885 Auto-Submit: Georg Neis <neis@chromium.org> Commit-Queue: Nico Hartmann <nicohartmann@chromium.org> Reviewed-by: Nico Hartmann <nicohartmann@chromium.org> Cr-Commit-Position: refs/heads/master@{#68635}
-
- 30 Jun, 2020 2 commits
-
-
Jake Hughes authored
Whether or not a store requires a write barrier depends on several invariants within V8. Some flags can break these invariants. In particular, it's not possible to use enable_single_generation with incremental marking because marking barriers are omitted in places where it is assumed an object will be allocated in the young generation. This CL introduces a new flag, enable_unconditional_write_barriers, which allows us to specify that full write barriers should always happens. The main purpose of this is to support single generation GC with incremental marking, but it can also aid as a debugging tool to check for missed write barriers. Bug: v8:10614 Change-Id: I3ab640436bcefc118c9c5c34765421cb9ea4896f Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2270546Reviewed-by: Anton Bikineev <bikineev@chromium.org> Reviewed-by: Georg Neis <neis@chromium.org> Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Commit-Queue: Jake Hughes <jakehughes@google.com> Cr-Commit-Position: refs/heads/master@{#68623}
-
Dominik Inführ authored
Release operation uses more expensive operations on some architectures. Change-Id: Iab84d92c84c791d429b6635641daadb2d608f791 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2276039Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Commit-Queue: Dominik Inführ <dinfuehr@chromium.org> Cr-Commit-Position: refs/heads/master@{#68622}
-