- 07 Apr, 2022 28 commits
-
-
Dominik Inführ authored
Removing slots in the Iterate() method performs an atomic CAS operation on a cell. This is not necessary, we can simply keep slots and drop the whole SlotSet with all buckets after iteration. Bug: v8:12760 Change-Id: I6aeb656d21e5fea6f7e15238d4105013c84ffb2a Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3574558Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Commit-Queue: Dominik Inführ <dinfuehr@chromium.org> Cr-Commit-Position: refs/heads/main@{#79863}
-
Milad Fa authored
Port 9ca0bfef Original Commit Message: This adds feedback collection to count the number of executions of call_direct instructions in Liftoff code. The purpose is better inlining decisions in Turbofan, which are enabled by having call count information for all kinds of calls. The new feature is gated on --wasm-speculative-inlining. While direct calls don't need to speculate about their target, the whole feedback collection infrastructure depends on that flag. R=jkummerow@chromium.org, joransiu@ca.ibm.com, junyan@redhat.com, midawson@redhat.com BUG= LOG=N Change-Id: Id94a8a00e00877213b017d1ccf06ae0ea988539b Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3576126Reviewed-by: Joran Siu <joransiu@ca.ibm.com> Reviewed-by: Junliang Yan <junyan@redhat.com> Commit-Queue: Milad Farazmand <mfarazma@redhat.com> Cr-Commit-Position: refs/heads/main@{#79862}
-
Jakob Kummerow authored
The key idea is that we can now use call count feedback into account consistently for all kinds of calls that support inlining. Bug: v8:12166 Change-Id: I764b8686b6c825a9b24f0032e81f7d1217ef1371 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3574554Reviewed-by: Tobias Tebbi <tebbi@chromium.org> Reviewed-by: Manos Koukoutos <manoskouk@chromium.org> Commit-Queue: Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/main@{#79861}
-
Bryant Chandler authored
This reverts commit 3111db91. Reason for revert: This has runtime failures because including cmx fragments isn't working ocrrectly. Still investigating why this wasn't discovered by CQ. Original change's description: > [fuchsia] Use SDK provided gn templates for d8 > > cr_fuchsia_package is deprecated in favor of using the Fuchsia > SDK provided rules directly. > > This CL adds a cmx file specifically for v8_unittests. CMX > files define fuchsia components, see > https://chromium-review.googlesource.com/c/chromium/src/+/3529652 > for more info. > > Bug: chromium:1092804 > Change-Id: Ibf1d866ec6b94a0e1a7a7c7c443a6ee80e3b1042 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3537885 > Reviewed-by: Victor Gomes <victorgomes@chromium.org> > Reviewed-by: Wez <wez@chromium.org> > Reviewed-by: Camillo Bruni <cbruni@chromium.org> > Commit-Queue: Bryant Chandler <bryantchandler@chromium.org> > Cr-Commit-Position: refs/heads/main@{#79760} Bug: chromium:1092804 Change-Id: Ib9a4d4f8e04c6cd7f3bd289e7c956b6115a77a25 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3572004 Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> Reviewed-by: Wez <wez@chromium.org> Reviewed-by: Michael Achenbach <machenbach@chromium.org> Reviewed-by: Camillo Bruni <cbruni@chromium.org> Commit-Queue: Bryant Chandler <bryantchandler@chromium.org> Cr-Commit-Position: refs/heads/main@{#79860}
-
Camillo Bruni authored
- Always return a MaybeLocal<String> - Don't crash on long filenames Bug: chromium:1311923 Change-Id: I96e10337ceb32aeafafe0b73c78651a1ac38fb9f Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3576122Reviewed-by: Maya Lekova <mslekova@chromium.org> Commit-Queue: Camillo Bruni <cbruni@chromium.org> Cr-Commit-Position: refs/heads/main@{#79859}
-
henrika authored
Local tests on Windows using the --enable-system-instrumentation flag in combination with ETW have shown that parts of the JS stack miss symbols and most of these missing parts comes from code-creation,Bytecodehandler events. The CL fixes this issue. Bug: v8:11043 Change-Id: I77b150742e689a4002dbc5937d6daa08a0795ab9 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3574545Reviewed-by: Camillo Bruni <cbruni@chromium.org> Commit-Queue: Henrik Andreasson <henrika@chromium.org> Cr-Commit-Position: refs/heads/main@{#79858}
-
Jakob Gruber authored
Fixed: v8:12161 Change-Id: Ie6e83dd4f261fff2d1fa8613116e83ef6b61561f Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3576116 Auto-Submit: Jakob Linke <jgruber@chromium.org> Reviewed-by: Leszek Swirski <leszeks@chromium.org> Commit-Queue: Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/main@{#79857}
-
Nico Hartmann authored
This CL adds the requirements to port object definitions back to C++. A @cppObjectDefinition is introduced to annotate classes for which Torque shall merely generate asserts to check that offsets match between Torque and C++. As a first object, this CL ports Oddball back to C++. Bug: v8:12710 Change-Id: I1304d8980f6318ffccbc2ef7284cb9d46ff579e8 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3523046Reviewed-by: Camillo Bruni <cbruni@chromium.org> Reviewed-by: Tobias Tebbi <tebbi@chromium.org> Reviewed-by: Dominik Inführ <dinfuehr@chromium.org> Commit-Queue: Nico Hartmann <nicohartmann@chromium.org> Cr-Commit-Position: refs/heads/main@{#79856}
-
Leszek Swirski authored
This reverts commit 51b99213. Reason for revert: Speculative revert for MSAN failure https://ci.chromium.org/ui/p/v8/builders/ci/V8%20Linux%20-%20arm64%20-%20sim%20-%20MSAN/43080/overview Original change's description: > [osr] Add an install-by-offset mechanism > > .. for concurrent OSR. There, the challenge is to hit the correct > JumpLoop bytecode once compilation completes, since execution has > moved on in the meantime. > > This CL adds a new mechanism to request installation at a specific > bytecode offset. We add a new `osr_install_target` field to the > BytecodeArray: > > bitfield struct OSRUrgencyAndInstallTarget extends uint16 { > osr_urgency: uint32: 3 bit; > osr_install_target: uint32: 13 bit; > } > > // [...] > osr_urgency_and_install_target: OSRUrgencyAndInstallTarget; > bytecode_age: uint16; // Only 3 bits used. > // [...] > > Note urgency and install target are packed into one 16 bit field, > we can thus merge both checks into one comparison within JumpLoop. > Note also that these fields are adjacent to the bytecode age; we > still reset both OSR state and age with a single (now 32-bit) > store. > > The install target is the lowest 13 bits of the bytecode offset. > When set, every reached JumpLoop will check `is this my offset?`, > and if yes, jump into runtime to tier up. > > Drive-by: Rename BaselineAssembler::LoadByteField to LoadWord8Field. > > Bug: v8:12161 > Change-Id: I275d468b19df3a4816392a2fec0713a8d211ef80 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3571812 > Reviewed-by: Leszek Swirski <leszeks@chromium.org> > Commit-Queue: Jakob Linke <jgruber@chromium.org> > Cr-Commit-Position: refs/heads/main@{#79853} Bug: v8:12161 Change-Id: I0c47499544465c80b5b23a492c00ec1c62815caa No-Presubmit: true No-Tree-Checks: true No-Try: true Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3576121 Auto-Submit: Leszek Swirski <leszeks@chromium.org> Owners-Override: Leszek Swirski <leszeks@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@{#79855}
-
Clemens Backes authored
This improves the code generated for float to int64 conversions on x64. Instead of explicitly checking the input for specific values and executing conditional jumps, just convert the integer back to a float and check if this results in the rounded input. The "success value" is then materialized via vmov + and instead of via branches. old: 7 c4e1fb2cd9 vcvttsd2siq rbx,xmm1 c ba01000000 movl rdx,0x1 11 49ba000000000000e0c3 REX.W movq r10,0xc3e0000000000000 1b c441f96efa vmovq xmm15,r10 20 c5792ef9 vucomisd xmm15,xmm1 24 7a08 jpe 0x3599421714ee <+0x2e> 26 7408 jz 0x3599421714f0 <+0x30> 28 4883fb01 REX.W cmpq rbx,0x1 2c 7102 jno 0x3599421714f0 <+0x30> 2e 33d2 xorl rdx,rdx new: 7 c463010bf90b vroundsd xmm15,xmm15,xmm1,0xb d c4e1fb2cd9 vcvttsd2siq rbx,xmm1 12 c4e1832ac3 vcvtqsi2sd xmm0,xmm15,rbx 17 c4c17bc2c700 vcmpss xmm0,xmm0,xmm15, (eq) 1d c4e1f97ec2 vmovq rdx,xmm0 22 83e201 andl rdx,0x1 A follow-up step would be to replace the explicitly materialized success value by a direct jump to the code handling the error case, but that requires more rewrite in TurboFan. R=tebbi@chromium.org Bug: v8:10005 Change-Id: Iaedc3f395fb3a8c11c936faa8c6e55c2dfe86cd9 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3560434Reviewed-by: Tobias Tebbi <tebbi@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/main@{#79854}
-
Jakob Gruber authored
.. for concurrent OSR. There, the challenge is to hit the correct JumpLoop bytecode once compilation completes, since execution has moved on in the meantime. This CL adds a new mechanism to request installation at a specific bytecode offset. We add a new `osr_install_target` field to the BytecodeArray: bitfield struct OSRUrgencyAndInstallTarget extends uint16 { osr_urgency: uint32: 3 bit; osr_install_target: uint32: 13 bit; } // [...] osr_urgency_and_install_target: OSRUrgencyAndInstallTarget; bytecode_age: uint16; // Only 3 bits used. // [...] Note urgency and install target are packed into one 16 bit field, we can thus merge both checks into one comparison within JumpLoop. Note also that these fields are adjacent to the bytecode age; we still reset both OSR state and age with a single (now 32-bit) store. The install target is the lowest 13 bits of the bytecode offset. When set, every reached JumpLoop will check `is this my offset?`, and if yes, jump into runtime to tier up. Drive-by: Rename BaselineAssembler::LoadByteField to LoadWord8Field. Bug: v8:12161 Change-Id: I275d468b19df3a4816392a2fec0713a8d211ef80 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3571812Reviewed-by: Leszek Swirski <leszeks@chromium.org> Commit-Queue: Jakob Linke <jgruber@chromium.org> Cr-Commit-Position: refs/heads/main@{#79853}
-
Benedikt Meurer authored
Since the inspector does not longer hold on strongly to Script objects after they were collected by V8, this test was relying on the GC to not collect the scripts too eagerly in case where nothing else holds on to the script. So explicitly adding a global object property assignment here in those cases to ensure that the Script is kept alive. Fixed: chromium:1314212, v8:12699 Bug: chromium:1246884, chromium:1295659 Change-Id: Ia16fcf841aeb29bf131fc6fa066f120d342f94b2 Doc: https://bit.ly/v8-inspector-script-caching Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3576117 Commit-Queue: Benedikt Meurer <bmeurer@chromium.org> Auto-Submit: Benedikt Meurer <bmeurer@chromium.org> Reviewed-by: Yang Guo <yangguo@chromium.org> Commit-Queue: Yang Guo <yangguo@chromium.org> Cr-Commit-Position: refs/heads/main@{#79852}
-
Leszek Swirski authored
Bug: v8:12781 Change-Id: I7dfddd886571a16a180bffb8f9fc7a946d5667bc Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3576113 Auto-Submit: Leszek Swirski <leszeks@chromium.org> Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Commit-Queue: Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/main@{#79851}
-
jameslahm authored
This is a follow up CL for https://crrev.com/c/3538284. Tests credited to https://crrev.com/c/3468352. - Add unicode filename path test. - Convert ansi encoded filename argv to utf8 encoded on windows. Because the ansi encoded filename argv may lose some information for unicode filename, and we need to use GetCommandLineW to get the actual unicode filename argument. And we convert it to utf8 encoded to be consistent with subsequent processing. - Use REPLACEMENT CHARACTER to replace the characters which cannot be encoded with sys.stdout.encoding in progress.py. This CL should be **reverted** if new unicode filenames cause problems. Bug: v8:12541 Change-Id: Ic5c5ae342b3a5b11c3119452af03c9165d429ed7 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3568926Reviewed-by: Clemens Backes <clemensb@chromium.org> Reviewed-by: Michael Achenbach <machenbach@chromium.org> Commit-Queue: 王澳 <wangao.james@bytedance.com> Cr-Commit-Position: refs/heads/main@{#79850}
-
Leszek Swirski authored
Bug: v8:12781 Change-Id: I0df1c8a17482f13d210f7d2424a15e15c71108c0 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3576115 Auto-Submit: Leszek Swirski <leszeks@chromium.org> Reviewed-by: Samuel Groß <saelo@chromium.org> Commit-Queue: Samuel Groß <saelo@chromium.org> Cr-Commit-Position: refs/heads/main@{#79849}
-
Clemens Backes authored
Use C++17's std::conjunction together with std::is_same instead. R=leszeks@chromium.org Bug: v8:12425 Change-Id: I75a973f14f0642b00d390aa6ab4eb1ce0208c074 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3568478Reviewed-by: Leszek Swirski <leszeks@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/main@{#79848}
-
Dominik Inführ authored
We can perform these DCHECKs on all pages, not just pages in old space. Bug: v8:12760 Change-Id: I202e1a96190d305b86c69cd6616bdb5ecc812044 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3574560Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Commit-Queue: Dominik Inführ <dinfuehr@chromium.org> Cr-Commit-Position: refs/heads/main@{#79847}
-
Jakob Kummerow authored
This adds feedback collection to count the number of executions of call_direct instructions in Liftoff code. The purpose is better inlining decisions in Turbofan, which are enabled by having call count information for all kinds of calls. The new feature is gated on --wasm-speculative-inlining. While direct calls don't need to speculate about their target, the whole feedback collection infrastructure depends on that flag. Bug: v8:12166 Change-Id: Ie24a988fcea631f370188dc21e60a5fac923dd3d Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3571807Reviewed-by: Manos Koukoutos <manoskouk@chromium.org> Commit-Queue: Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/main@{#79846}
-
Clemens Backes authored
Some test variants and fuzzers set their own GC interval, so the flag specified in the regression test causes flag contradictions. The test failure was flaky anyway, so this change is only a slight reduction in reproducability, and the test will still be used as seed for the fuzzers. R=machenbach@chromium.org Bug: chromium:1313475 Change-Id: I7c7084ab34fe46d691b841921d42a487cc8a1cad Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3576114Reviewed-by: Michael Achenbach <machenbach@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/main@{#79845}
-
Nikolaos Papaspyrou authored
Minor MC heap verification requires heap iterability. This however was not directly ensured. Coincidentally, there was an unrelated call to `Heap::Verify` that ensured `Heap::MakeHeapIterable` had been called, so the precondition was met. This call was moved to an earlier point by https://crrev.com/c/3497318 and, because of that, some combination of flags now results in a crash. This CL fixes the issue by directly ensuring heap iterability. It also moves back the call to `Heap::Verify`, so that it takes place inside the GC safepoint. Bug: v8:12768 Change-Id: I2c66de0d0a735b84dd9435ff503e78bb3611ce55 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3569224Reviewed-by: Dominik Inführ <dinfuehr@chromium.org> Commit-Queue: Nikolaos Papaspyrou <nikolaos@chromium.org> Cr-Commit-Position: refs/heads/main@{#79844}
-
Clemens Backes authored
They can be replaced by std::conjunction and c++17 folding expressions. R=tebbi@chromium.org Bug: v8:12425 Change-Id: I109ac904245aab431f11752eff5129fd4361de8a Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3570428Reviewed-by: Tobias Tebbi <tebbi@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/main@{#79843}
-
Georgia Kouveli authored
Callee saved registers do not include the LR anymore, so we can now remove the last place where we pass a non-default template argument to PushCPURegList/PopCPURegList (in the code generator). This makes the template argument redundant, so we can remove the template altogether. Change-Id: I07f0c0a10840817df8a5afc1dc74330e290ce5bf Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3571816Reviewed-by: Jakob Linke <jgruber@chromium.org> Commit-Queue: Georgia Kouveli <georgia.kouveli@arm.com> Cr-Commit-Position: refs/heads/main@{#79842}
-
Dominik Inführ authored
Turn this assertion also on for release builds for now. This shouldn't regress sweeping performance because we do the same work as in the last release. Bug: v8:12760 Change-Id: I02f78157d20780f46bb4aebf59ce96a7b52f0a27 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3571810Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Commit-Queue: Dominik Inführ <dinfuehr@chromium.org> Cr-Commit-Position: refs/heads/main@{#79841}
-
Marja Hölttä authored
Bug: v8:11111 Change-Id: I722702faa062e6083496d55cd96ee33d3952998b Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3571809Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Reviewed-by: Shu-yu Guo <syg@chromium.org> Commit-Queue: Marja Hölttä <marja@chromium.org> Cr-Commit-Position: refs/heads/main@{#79840}
-
Camillo Bruni authored
Change-Id: I97d29623e163ceee450814f03fba745d478082ff Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3574550 Auto-Submit: Camillo Bruni <cbruni@chromium.org> Reviewed-by: Marja Hölttä <marja@chromium.org> Commit-Queue: Marja Hölttä <marja@chromium.org> Cr-Commit-Position: refs/heads/main@{#79839}
-
jiepan authored
Bug: v8:12228 Change-Id: Iab09881d9c8bcd851fd89bf5d6bbd3f2cfb0f3d0 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3303808Reviewed-by: Deepti Gandluri <gdeepti@chromium.org> Commit-Queue: Jie Pan <jie.pan@intel.com> Cr-Commit-Position: refs/heads/main@{#79838}
-
v8-ci-autoroll-builder authored
Rolling v8/build: https://chromium.googlesource.com/chromium/src/build/+log/e5b74ea..38ea770 Rolling v8/buildtools/linux64: git_revision:5eb3845ec2d8296b4f41da4eca85302eb111fe69..git_revision:ab9104586734cb45aa77c70ca5042edbcc9f6aa5 Rolling v8/buildtools/third_party/libc++abi/trunk: https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libcxxabi/+log/1850510..ac492da Rolling v8/third_party/catapult: https://chromium.googlesource.com/catapult/+log/ec5b008..5ff11ff Rolling v8/third_party/depot_tools: https://chromium.googlesource.com/chromium/tools/depot_tools/+log/b8a4c0b..ba94bbe Rolling v8/third_party/zlib: https://chromium.googlesource.com/chromium/src/third_party/zlib/+log/3b1df9d..c61f267 Rolling v8/tools/clang: https://chromium.googlesource.com/chromium/src/tools/clang/+log/bd06a4f..3436376 R=v8-waterfall-sheriff@grotations.appspotmail.com,mtv-sf-v8-sheriff@grotations.appspotmail.com Change-Id: I74d1f9ea47a455438c1371227238bb25784775ff Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3573514 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@{#79837}
-
Lu Yahan authored
Port d36f596e Change-Id: I13c9d23bb06841e1f6cbb07c68968fb3cc9eb01a Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3573784 Auto-Submit: Yahan Lu <yahan@iscas.ac.cn> Reviewed-by: ji qiu <qiuji@iscas.ac.cn> Commit-Queue: ji qiu <qiuji@iscas.ac.cn> Cr-Commit-Position: refs/heads/main@{#79836}
-
- 06 Apr, 2022 12 commits
-
-
Corentin Pescheloche authored
This CL adds support for interacting with CpuProfile with their integer id. A String ID is problematic because it forces an allocation when stopping or cancelling a Profiler which can happen during a GC when this is not allowed. Change-Id: I9a8e754bd67214be0bbc5ca051bcadf52bf71a68 Bug: chromium:1297283 Co-Authored-By: Nicolas Dubus <nicodubus@fb.com> Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3522896Reviewed-by: Camillo Bruni <cbruni@chromium.org> Auto-Submit: Corentin Pescheloche <cpescheloche@fb.com> Commit-Queue: Corentin Pescheloche <cpescheloche@fb.com> Cr-Commit-Position: refs/heads/main@{#79835}
-
David Benjamin authored
Bug: v8:12518 Change-Id: Ie22303416749affc0629d60fbed6f9dc4288b09d Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3494443Reviewed-by: Igor Sheludko <ishell@chromium.org> Commit-Queue: David Benjamin <davidben@chromium.org> Cr-Commit-Position: refs/heads/main@{#79834}
-
Shu-yu Guo authored
Bug: v8:12744 Change-Id: I3e356c16554e8bc19afc06b18f4afd7fed2f228e Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3563540 Commit-Queue: Shu-yu Guo <syg@chromium.org> Auto-Submit: Shu-yu Guo <syg@chromium.org> Reviewed-by: Marja Hölttä <marja@chromium.org> Cr-Commit-Position: refs/heads/main@{#79833}
-
Kevin Babbitt authored
Embedders can currently specify a callback for OOM errors during Isolate initialization. However, there are cases where an OOM error can be thrown in a context where we don't have access to an Isolate, for example on a task posted to a worker thread. This CL introduces an initialization API to allow the embedder to specify a process-wide OOM callback. Bug: chromium:614440 Change-Id: I326753d80767679f677e85104d9edeef92e19086 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3561916Reviewed-by: Toon Verwaest <verwaest@chromium.org> Commit-Queue: Kevin Babbitt <kbabbitt@microsoft.com> Cr-Commit-Position: refs/heads/main@{#79832}
-
Michael Lippautz authored
IM::Finalize() was merely finishing marking through the incremental marking in the atomic pause. Avoid the Hurry() call since the marking worklists would anyways be drained with parallel marking. Bug: v8:12775 Change-Id: Ice72a8bb5f900368eadec7f62bf18e03d568454b Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3574547Reviewed-by: Hannes Payer <hpayer@chromium.org> Reviewed-by: Dominik Inführ <dinfuehr@chromium.org> Commit-Queue: Michael Lippautz <mlippautz@chromium.org> Cr-Commit-Position: refs/heads/main@{#79831}
-
Jakob Gruber authored
With kLazy deopts gone, we can remove the stored DeoptimizeKind from Deoptimize nodes and all related spots - all Deoptimize nodes are eager deopts. Bug: v8:12765 Change-Id: I8e727e046c498198e50d9b7dba25442fb54f5da9 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3568456 Auto-Submit: Jakob Linke <jgruber@chromium.org> Reviewed-by: Tobias Tebbi <tebbi@chromium.org> Commit-Queue: Tobias Tebbi <tebbi@chromium.org> Cr-Commit-Position: refs/heads/main@{#79830}
-
Leszek Swirski authored
Also add a mixin for using the single-threaded default platform instead of swapping it in with SetPlatformForTesting. Bug: v8:12781 Change-Id: I304303e58ed713e5558d108cd7eb826c17abb40f Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3574553 Commit-Queue: Leszek Swirski <leszeks@chromium.org> Auto-Submit: Leszek Swirski <leszeks@chromium.org> Reviewed-by: Camillo Bruni <cbruni@chromium.org> Commit-Queue: Camillo Bruni <cbruni@chromium.org> Cr-Commit-Position: refs/heads/main@{#79829}
-
Alexander Schulze authored
Currently, v8_presubmit uses the system version of depot_tools for C++ and JS linting. This is an issue for branches which rely on a specific depot_tools version for linting. This CL proposes the use of the depot_tools version defined in DEPS. This change was evaluated in https://crrev.com/c/3571813. The first v8_presubmit attempt uses the system-defined depot_tools version, while the second attempt is rebased on this CL and uses the DEPS defined version. Bug: v8:12743 Change-Id: I87e14ea5c1e3dc20b34106ff56f608d55ec3253d Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3571805Reviewed-by: Michael Achenbach <machenbach@chromium.org> Commit-Queue: Alexander Schulze <alexschulze@chromium.org> Reviewed-by: Tamer Tas <tmrts@chromium.org> Cr-Commit-Position: refs/heads/main@{#79828}
-
Seth Brenith authored
Currently, the category named “(compiled code)” contains Code, SharedFunctionInfo, and Script objects. However, there are various other object types that are allocated per script function, such as BytecodeArray and FeedbackVector. There are also plain FixedArrays which are used for function-specific data such as polymorphic feedback and code deoptimization data. I propose we move all of this to the “(compiled code)” category, because this memory usage is related to the number of functions in the script, the size of those functions, and/or the number of times those functions have been called. Bug: v8:12769 Change-Id: Ib5e0265a9ef88063596c17419f5b65f683156c52 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3569876Reviewed-by: Benedikt Meurer <bmeurer@chromium.org> Commit-Queue: Seth Brenith <seth.brenith@microsoft.com> Cr-Commit-Position: refs/heads/main@{#79827}
-
Camillo Bruni authored
This is no longer actively used. Change-Id: I88b0695732ead8652a21ed5d59f3d9752c0c88d1 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3574551Reviewed-by: Igor Sheludko <ishell@chromium.org> Commit-Queue: Camillo Bruni <cbruni@chromium.org> Cr-Commit-Position: refs/heads/main@{#79826}
-
Clemens Backes authored
A worker might be terminated while creating a new Realm. While this was handled mostly correctly already, a DCHECK was places slightly too early, which is fixed by this CL. Also, we avoid printing an error message if we fail to install an extension due to isolate termination. As this is externally triggered, it's not really an error condition. R=jkummerow@chromium.org Bug: chromium:1313475 Change-Id: I67b7fd27002d9b9a33439378d8336fefb2a2371a Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3571811Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/main@{#79825}
-
Omer Katz authored
A lot of the space/chunk methods can be trivially marked as const. There are more methods that can be made const but these will require creating new const object iterators, so those are left out for now. Bug: v8:12612 Change-Id: I753b8b3f7a200ecf255596c7825917e4eb600b81 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3571815Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Reviewed-by: Dominik Inführ <dinfuehr@chromium.org> Commit-Queue: Omer Katz <omerkatz@chromium.org> Cr-Commit-Position: refs/heads/main@{#79824}
-