- 21 Apr, 2022 26 commits
-
-
Joyee Cheung authored
Normally, taking a heap snapshot in the near heap limit would result in a full GC, then the overhead of the promotions would cause another invocation of the heap limit callback and it can raise the limit in the second call to avoid an OOM, so we test that the callback can indeed raise the limit this way in this case. When there is only one generation, however, there would not be the overhead of promotions so the callback may not be triggered again during the generation of the heap snapshot. In that case we only need to check that the callback is called and it can perform GC-triggering operations jsut fine there. Bug: v8:12815 Change-Id: If244417624b56bc068aed480fb3391d26c19005a Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3600357Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Commit-Queue: Joyee Cheung <joyee@igalia.com> Cr-Commit-Position: refs/heads/main@{#80094}
-
Junliang Yan authored
Bug: v8:12161 Change-Id: I65029217e99dd2c59af295b2f02c697415151a59 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3600376Reviewed-by: Milad Farazmand <mfarazma@redhat.com> Commit-Queue: Junliang Yan <junyan@redhat.com> Cr-Commit-Position: refs/heads/main@{#80093}
-
Tobias Tebbi authored
Bug: v8:12822 Change-Id: Idc8225640e132d175d2c06b530d77fcda7362b55 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3599486 Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> Commit-Queue: Tobias Tebbi <tebbi@chromium.org> Cr-Commit-Position: refs/heads/main@{#80092}
-
jameslahm authored
... unittests/objects/concurrent-descriptor-array-unittest. Bug: v8:12781 Change-Id: Iad4e99e256745d2874e6b03c2fe1c91b5599ab30 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3596443Reviewed-by: Leszek Swirski <leszeks@chromium.org> Commit-Queue: 王澳 <wangao.james@bytedance.com> Cr-Commit-Position: refs/heads/main@{#80091}
-
Andreas Haas authored
Change-Id: I4ffcf9792501928e9e59d702c5855b288470cff4 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3599485Reviewed-by: Victor Gomes <victorgomes@chromium.org> Commit-Queue: Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/main@{#80090}
-
Leszek Swirski authored
In the simplest way possible. Bug: v8:7700 Change-Id: I155aaf85192b75c89617820d6f127a2ae04c7d9b Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3599484 Auto-Submit: Leszek Swirski <leszeks@chromium.org> Reviewed-by: Victor Gomes <victorgomes@chromium.org> Commit-Queue: Victor Gomes <victorgomes@chromium.org> Cr-Commit-Position: refs/heads/main@{#80089}
-
Leszek Swirski authored
Additionally, pass the JSFunctionRef directly for inlined functions' compilation units. Bug: v8:7700 Change-Id: Ibdc738c8a9790f8ac45e6a0fd55facdf638562f9 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3599480 Auto-Submit: Leszek Swirski <leszeks@chromium.org> Reviewed-by: Victor Gomes <victorgomes@chromium.org> Commit-Queue: Victor Gomes <victorgomes@chromium.org> Cr-Commit-Position: refs/heads/main@{#80088}
-
Leszek Swirski authored
Bug: v8:7700 Change-Id: I5155fc665f1214dda390fc6d1476ecf1f137166e Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3599483 Auto-Submit: Leszek Swirski <leszeks@chromium.org> Reviewed-by: Victor Gomes <victorgomes@chromium.org> Commit-Queue: Victor Gomes <victorgomes@chromium.org> Cr-Commit-Position: refs/heads/main@{#80087}
-
jameslahm authored
... /utils/bit-vector-unittest. Bug: v8:12781 Change-Id: I26b9c2b8a911b513d65d54476b78a0bbac7aa78f Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3596445Reviewed-by: Leszek Swirski <leszeks@chromium.org> Commit-Queue: 王澳 <wangao.james@bytedance.com> Cr-Commit-Position: refs/heads/main@{#80086}
-
Michael Lippautz authored
This reverts commit 2d394aca. Concurrrent marking for v8::TracedReference requires a single bit in global handles to be written concurrently. While no other bits require concurrent access, initialization still needs to properly publish the the bitfield. Publishing generally allows all bits to be read on any thread which is already used for some. The CL introduces acq/rel semantics on the actual object pointer for publishing the state. Bug: chromium:1315498, v8:12600 Change-Id: Ic50c7c0b647b8b609bcd899f6c9f73bee80303da Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3596125Reviewed-by: Dominik Inführ <dinfuehr@chromium.org> Commit-Queue: Michael Lippautz <mlippautz@chromium.org> Cr-Commit-Position: refs/heads/main@{#80085}
-
jameslahm authored
... /compiler/compiler-unittest. - Add PrintExtension for adding print function. - Add WithPrintExtensionMixin to register PrintExtension. - Add StreamerThread to run a ScriptStreamingTask in a separate thread. Bug: v8:12781 Change-Id: I9d3324f3a8dcf00b5b121db6007c9a3cb2972313 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3596442Reviewed-by: Leszek Swirski <leszeks@chromium.org> Commit-Queue: 王澳 <wangao.james@bytedance.com> Cr-Commit-Position: refs/heads/main@{#80084}
-
Leszek Swirski authored
Fixes the iteration after emitting an unconditional deopt to kill all Jumps along the way, not just ones preceeding a merge point. This fixes several issues: a) That Jump may be to a not yet created merge point, in which case we were getting a nullptr deref. b) Not-yet created merge points would not be detected as merge points, so we'd skip over them and miss killing the control node before them. c) We weren't reducing predecessor counts, so even after fixing the nullptr deref above, merge states created later would have the wrong predecessor count. Now, we check bytecode targets (including fallthrough for non-returning bytecodes) on for every bytecode, and skip over both not-yet created merges, and loop merges that have no predecessors other than the loop jump itself. As part of this, the dead predecessor merging is changed; instead of setting the predecessor to nullptr, we drop the predecessor count by one, and trim any Phis' input counts. Bug: v8:7700 Change-Id: I904c82df7c5dd44d7637e07f6750b35e7e219284 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3599470Reviewed-by: Victor Gomes <victorgomes@chromium.org> Commit-Queue: Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/main@{#80083}
-
Michael Lippautz authored
When moving forward and optimizing internals, these APIs cannot be trusted anymore as their semantics are tangled to the current implementation. Bug: v8:12819 Change-Id: I0e3370724307a420ee42fed8070b55542be9400d Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3599475 Commit-Queue: Michael Lippautz <mlippautz@chromium.org> Auto-Submit: Michael Lippautz <mlippautz@chromium.org> Reviewed-by: Dominik Inführ <dinfuehr@chromium.org> Commit-Queue: Dominik Inführ <dinfuehr@chromium.org> Cr-Commit-Position: refs/heads/main@{#80082}
-
Junliang Yan authored
Change-Id: I1ceb1038c91e43299f4f4b35da684566ecbbef7f Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3596911Reviewed-by: Milad Farazmand <mfarazma@redhat.com> Commit-Queue: Junliang Yan <junyan@redhat.com> Cr-Commit-Position: refs/heads/main@{#80081}
-
Victor Gomes authored
Adds LogFunctionCompilation as a static member of Compiler. Calls the log function after installing the code on the main thread. Bug: v8:12054, v8:12818 Cq-Include-Trybots: luci.v8.try:v8_linux64_tsan_rel_ng Change-Id: I664b2c890292a207720efe311b7c55757c7c6470 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3599472Reviewed-by: Clemens Backes <clemensb@chromium.org> Commit-Queue: Victor Gomes <victorgomes@chromium.org> Cr-Commit-Position: refs/heads/main@{#80080}
-
Omer Katz authored
Bug: chromium:1316121, v8:12612 Change-Id: I5b32211f01a97a6aaee52f0285d62a516381f43c Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3592954Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Commit-Queue: Omer Katz <omerkatz@chromium.org> Cr-Commit-Position: refs/heads/main@{#80079}
-
Michael Lippautz authored
Removes V8-internal support for resurrecting finalizers in the garbage collector. The APIs have already been removed in http://crrev.com/c/3596174 Bug: v8:12672 Change-Id: Ia507e74659b61a2c8c08281d7f395aee51e3fe17 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3584115Reviewed-by: Dominik Inführ <dinfuehr@chromium.org> Reviewed-by: Hannes Payer <hpayer@chromium.org> Commit-Queue: Michael Lippautz <mlippautz@chromium.org> Cr-Commit-Position: refs/heads/main@{#80078}
-
Leszek Swirski authored
Add a --maglev-inlining flag, and add some half-baked support for inlining functions when there is call feedback. When the flag is enabled and there is call feedback, we create a nested MaglevGraphBuilder for the current graph, and pause building the graph of the outer function. We manually set up its prologue to set up its frame with the arguments pass into the call, build the body with the nested graph builder. This inner builder knows that it is building an inlined function, and all Return bytecodes will instead emit a Jump to a single merge block at the end of the function, where execution of the outer function can resume. These inner function basic blocks are wired into the outer graph with new JumpToInline and JumpFromInline control nodes. The idea is that subsequent passes will know what the inline function is, and will use these to manage the function stack (particularly for codegen and especially deopts). Bug: v8:7700 Change-Id: I4e9b153f8cf4d06c56e7be6365e7a18b86a773c0 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3585958 Commit-Queue: Leszek Swirski <leszeks@chromium.org> Reviewed-by: Jakob Linke <jgruber@chromium.org> Cr-Commit-Position: refs/heads/main@{#80077}
-
Leszek Swirski authored
Bug: v8:7700 Change-Id: Ieecdd66e7e540ad27aaa05cf13f270e42377b15e Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3599471 Commit-Queue: Leszek Swirski <leszeks@chromium.org> Auto-Submit: Leszek Swirski <leszeks@chromium.org> Reviewed-by: Victor Gomes <victorgomes@chromium.org> Commit-Queue: Victor Gomes <victorgomes@chromium.org> Cr-Commit-Position: refs/heads/main@{#80076}
-
Leszek Swirski authored
"Iterate" takes an iterable and a function of TNode<Object>, and implements the iterator protocol to iterate the iterable, applying the function to each element. It handles exceptions thrown during iteration and closes the iterator as appropriate -- the hope is that if the body of the iteration has no exception-throwing nodes, TurboFan can dead-code eliminate this close. In the future, we may want to add an array fast-path to this method; centralising the implementation means that this fast-path will then be used by all callers of Iterate. Change-Id: I9fe2f862b78619fe21ea7cb6469ed7ba93f14a30 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3581770Reviewed-by: Frank Tang <ftang@chromium.org> Reviewed-by: Tobias Tebbi <tebbi@chromium.org> Commit-Queue: Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/main@{#80075}
-
jameslahm authored
... /objects/array-list-unittest. Bug: v8:12781 Change-Id: I8bf50cd6680b6a875fb7029a6767eebc39ed8b13 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3596444Reviewed-by: Leszek Swirski <leszeks@chromium.org> Commit-Queue: 王澳 <wangao.james@bytedance.com> Cr-Commit-Position: refs/heads/main@{#80074}
-
Benoît Lizé authored
So don't test it. This was changed in https://chromium-review.googlesource.com/c/v8/v8/+/3596164, breaking this test on low-RAM ARM64 Android devices. Bug: v8:12814 Change-Id: I25caf748607c33f5f632eb5236643ea5e327f867 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3596129Reviewed-by: Leszek Swirski <leszeks@chromium.org> Commit-Queue: Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/main@{#80073}
-
Michael Lippautz authored
Bug: v8:12813 Change-Id: I27bbf5190165a0d919f021bbcf089e203dfed83f Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3592955Reviewed-by: Dominik Inführ <dinfuehr@chromium.org> Commit-Queue: Michael Lippautz <mlippautz@chromium.org> Cr-Commit-Position: refs/heads/main@{#80072}
-
Dominik Inführ authored
When an object changes layout, OLD_TO_SHARED slots need to be invalidated for it as well. Bug: v8:11708 Change-Id: I28ea181012955fddef986e8f8806a7477307df28 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3596175Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Commit-Queue: Dominik Inführ <dinfuehr@chromium.org> Cr-Commit-Position: refs/heads/main@{#80071}
-
Michael Lippautz authored
Removes support for specifying weak handles with finalizers that allow for object resurrection. This CL removes the public facing APIs. Internal support will be removed in a follow up. Bug: v8:12672 Change-Id: Ia6ea269093aaa128caadb7508aca2e5a1254923c Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3596174 Auto-Submit: Michael Lippautz <mlippautz@chromium.org> Reviewed-by: Dominik Inführ <dinfuehr@chromium.org> Commit-Queue: Dominik Inführ <dinfuehr@chromium.org> Cr-Commit-Position: refs/heads/main@{#80070}
-
v8-ci-autoroll-builder authored
Rolling v8/build: https://chromium.googlesource.com/chromium/src/build/+log/3dce554..28bea73 Rolling v8/third_party/catapult: https://chromium.googlesource.com/catapult/+log/e356f14..960c656 Rolling v8/third_party/zlib: https://chromium.googlesource.com/chromium/src/third_party/zlib/+log/be2c378..a0906c7 Rolling v8/tools/clang: https://chromium.googlesource.com/chromium/src/tools/clang/+log/7d4922a..4dd2e32 R=v8-waterfall-sheriff@grotations.appspotmail.com,mtv-sf-v8-sheriff@grotations.appspotmail.com Change-Id: Ief025d20148a03362b05f27c63741eb7c6ce3188 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3595972 Commit-Queue: v8-ci-autoroll-builder <v8-ci-autoroll-builder@chops-service-accounts.iam.gserviceaccount.com> Bot-Commit: v8-ci-autoroll-builder <v8-ci-autoroll-builder@chops-service-accounts.iam.gserviceaccount.com> Cr-Commit-Position: refs/heads/main@{#80069}
-
- 20 Apr, 2022 14 commits
-
-
Shu-yu Guo authored
This reverts commit a7d6bf96. Reason for revert: GN breakage preventing lkgr: https://ci.chromium.org/ui/p/v8/builders/ci/V8%20Blink%20Linux/16971/overview Original change's description: > [test] Move tracing cctest to unittests > > Bug: v8:12781 > Change-Id: Idc50a20f17de3af25372833b28cb16ac9a0e6485 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3574552 > Auto-Submit: Leszek Swirski <leszeks@chromium.org> > Reviewed-by: Michael Lippautz <mlippautz@chromium.org> > Commit-Queue: Michael Lippautz <mlippautz@chromium.org> > Cr-Commit-Position: refs/heads/main@{#80065} Bug: v8:12781 Change-Id: Icb295f7203cec4aef4bda491d08a39ce0c66fa0b No-Presubmit: true No-Tree-Checks: true No-Try: true Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3597242 Auto-Submit: Shu-yu Guo <syg@chromium.org> Commit-Queue: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> Cr-Commit-Position: refs/heads/main@{#80068}
-
Shu-yu Guo authored
See https://ci.chromium.org/ui/p/chromium/builders/try/linux-chromeos-rel/1172178/overview Change-Id: I97d25fd36c4b5fce4eb1d86c423443c2395af793 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3598030Reviewed-by: Igor Sheludko <ishell@chromium.org> Commit-Queue: Shu-yu Guo <syg@chromium.org> Cr-Commit-Position: refs/heads/main@{#80067}
-
legendecas authored
As ecma262 normative change https://github.com/tc39/ecma262/pull/2683, exception thrown on PromiseResolve the broken promises need to be caught and use it to reject the promise returned by `AsyncGenerator.prototype.return`. AsyncGeneratorReturn didn't handle the exception thrown by Await. This CL add an exception handler around it and pass through the caught exception to the returned promise and resume the generator by AsyncGeneratorAwaitResume if the generator is not closed, otherwise reject the promise by AsyncGeneratorReject and drain the queue. Bug: v8:12770 Change-Id: Ic3cac4ce36a6d8ecfeb5d7d762a37a2e0524831c Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3581158Reviewed-by: Shu-yu Guo <syg@chromium.org> Commit-Queue: Chengzhong Wu <legendecas@gmail.com> Cr-Commit-Position: refs/heads/main@{#80066}
-
Leszek Swirski authored
Bug: v8:12781 Change-Id: Idc50a20f17de3af25372833b28cb16ac9a0e6485 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3574552 Auto-Submit: Leszek Swirski <leszeks@chromium.org> Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Commit-Queue: Michael Lippautz <mlippautz@chromium.org> Cr-Commit-Position: refs/heads/main@{#80065}
-
Marja Hölttä authored
This enables downloading web snapshots with XMLHttpRequest and deserializing them. Bug: v8:11525 Change-Id: I498f1e99795d474a1715fce9aa1d8c1a34651c42 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3585961Reviewed-by: Camillo Bruni <cbruni@chromium.org> Commit-Queue: Marja Hölttä <marja@chromium.org> Cr-Commit-Position: refs/heads/main@{#80064}
-
Junliang Yan authored
Change-Id: I55a68f23106d4fed8a8f3ea7fc29c31a1aeba711 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3596126Reviewed-by: Milad Farazmand <mfarazma@redhat.com> Commit-Queue: Junliang Yan <junyan@redhat.com> Cr-Commit-Position: refs/heads/main@{#80063}
-
Liu Yu authored
Besides, enable float support on simulator. Port commit 098f31f4 Port commit a6da8161 As defined in https://loongson.github.io/LoongArch-Documentation/LoongArch-ELF-ABI-EN.html#_procedure_calling_convention Loongarch calling convention uses GP to pass floating-point arguments when no FP is available. Bug: v8:12614, chromium:1052746 Change-Id: I33d4115674604604b2b7e9178a306efb6000222b Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3448195Reviewed-by: Maya Lekova <mslekova@chromium.org> Reviewed-by: Thibaud Michaud <thibaudm@chromium.org> Reviewed-by: Toon Verwaest <verwaest@chromium.org> Commit-Queue: Yu Liu <liuyu@loongson.cn> Auto-Submit: Yu Liu <liuyu@loongson.cn> Cr-Commit-Position: refs/heads/main@{#80062}
-
Junliang Yan authored
Change-Id: If7588aed75d12a12d5a125f95ccc3db9743e4a00 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3596170Reviewed-by: Milad Farazmand <mfarazma@redhat.com> Commit-Queue: Junliang Yan <junyan@redhat.com> Cr-Commit-Position: refs/heads/main@{#80061}
-
Michael Lippautz authored
Change-Id: Iac90033d689111e8a2384bee357e7f282cc33db7 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3596168Reviewed-by: Hannes Payer <hpayer@chromium.org> Commit-Queue: Michael Lippautz <mlippautz@chromium.org> Reviewed-by: Dominik Inführ <dinfuehr@chromium.org> Cr-Commit-Position: refs/heads/main@{#80060}
-
Junliang Yan authored
Change-Id: I57eac5fdeddd49ecf8b45e293fbe9f98f068b86b Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3597310Reviewed-by: Milad Farazmand <mfarazma@redhat.com> Commit-Queue: Junliang Yan <junyan@redhat.com> Cr-Commit-Position: refs/heads/main@{#80059}
-
Camillo Bruni authored
- Use explicit options when running gmcole.py from run-gcmole.py - Use gcmole.py-relative paths to find the default V8 root dir for maximum convenience when running locally Change-Id: Iba0da90b99b0321129f1c4099f437c76dabb1186 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3582386Reviewed-by: Maya Lekova <mslekova@chromium.org> Commit-Queue: Camillo Bruni <cbruni@chromium.org> Auto-Submit: Camillo Bruni <cbruni@chromium.org> Cr-Commit-Position: refs/heads/main@{#80058}
-
Camillo Bruni authored
We do change CWD in the script which breaks relative input paths to d8 and .js files for instance. Drive-by-fix: - Show clear warning if `perf record` failed Change-Id: Ib900ca6b53307e13be459beba1e96ddfc8ee9b79 No-try: true Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3593784Reviewed-by: Victor Gomes <victorgomes@chromium.org> Commit-Queue: Camillo Bruni <cbruni@chromium.org> Cr-Commit-Position: refs/heads/main@{#80057}
-
Al Muthanna Athamina authored
Bug: v8:12802 Change-Id: I2573ed6b59fe51a135bbec5734ff1b7414316b0a Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3596163Reviewed-by: Leszek Swirski <leszeks@chromium.org> Commit-Queue: Almothana Athamneh <almuthanna@chromium.org> Reviewed-by: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/main@{#80056}
-
Thibaud Michaud authored
R=clemensb@chromium.org CC=gdeepti@chromium.org Bug: v8:12284 Change-Id: Idddb0b7648b29612fa0308520ca2fc2a3e5647f9 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3593218Reviewed-by: Clemens Backes <clemensb@chromium.org> Commit-Queue: Thibaud Michaud <thibaudm@chromium.org> Cr-Commit-Position: refs/heads/main@{#80055}
-