- 04 Feb, 2022 3 commits
-
-
Michael Achenbach authored
This fixes all Python3 problems in scripts and tests running via v8_presubmit.py. It includes: - Test runner - Release tools - Perf runner - Torque formatter - V8's main presubmit On bots, v8_presubmit is run with vpython, hence we also add the required dependencies. After the Python3 migration, most of the transitional code in this CL can be removed again. Bug: chromium:1293709,chromium:1292016 Change-Id: Ic25e5965948b212c047e9d5194d2a4b6db1fa91b Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3432213Reviewed-by: Liviu Rau <liviurau@chromium.org> Commit-Queue: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/main@{#78936}
-
v8-ci-autoroll-builder authored
Rolling v8/third_party/icu: https://chromium.googlesource.com/chromium/deps/icu/+log/609143a..2e0f298 Revert "Move back to a single android icu dat file" (Michael Cui) https://chromium.googlesource.com/chromium/deps/icu/+/2e0f298 Suppress C++20 warnings (Mark Schott) https://chromium.googlesource.com/chromium/deps/icu/+/cd7e36d Move back to a single android icu dat file (Mohamed Heikal) https://chromium.googlesource.com/chromium/deps/icu/+/44f2bbf R=v8-waterfall-sheriff@grotations.appspotmail.com,mtv-sf-v8-sheriff@grotations.appspotmail.com,ftang@chromium.org Change-Id: I45c34640ec98629a0185141789e969ad4e62b15e Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3439165 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@{#78935}
-
v8-ci-autoroll-builder authored
Rolling v8/build: https://chromium.googlesource.com/chromium/src/build/+log/5ba6fa4..3a9b7ad Rolling v8/buildtools: https://chromium.googlesource.com/chromium/src/buildtools/+log/f78b4b9..8ccda4f Rolling v8/third_party/catapult: https://chromium.googlesource.com/catapult/+log/1e084a5..79dc3ff Rolling v8/third_party/depot_tools: https://chromium.googlesource.com/chromium/tools/depot_tools/+log/fa5989b..0faae1c Rolling v8/tools/clang: https://chromium.googlesource.com/chromium/src/tools/clang/+log/853a56c..f246ca2 R=v8-waterfall-sheriff@grotations.appspotmail.com,mtv-sf-v8-sheriff@grotations.appspotmail.com Change-Id: I4df24450e536837079fe8cacc12c9208f66c5c23 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3438468 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@{#78934}
-
- 03 Feb, 2022 22 commits
-
-
Frank Tang authored
Bug: v8:11544 Change-Id: I59e5a448385b2e67927c18c9609f24f4d66f3756 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3380305Reviewed-by: Shu-yu Guo <syg@chromium.org> Commit-Queue: Frank Tang <ftang@chromium.org> Cr-Commit-Position: refs/heads/main@{#78933}
-
Milad Fa authored
Change-Id: I37ebc9b8470ba0df8c62af7ccc02edf4eb38b6bd Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3437414Reviewed-by: Junliang Yan <junyan@redhat.com> Commit-Queue: Milad Farazmand <mfarazma@redhat.com> Cr-Commit-Position: refs/heads/main@{#78932}
-
Junliang Yan authored
Change-Id: I9ccd6181437017aea627373b9f323efa6b4a183d Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3437825Reviewed-by: Milad Farazmand <mfarazma@redhat.com> Commit-Queue: Junliang Yan <junyan@redhat.com> Cr-Commit-Position: refs/heads/main@{#78931}
-
Junliang Yan authored
Change-Id: I04813fbb55b60d60a829dbb8970637a7cd32c813 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3437407Reviewed-by: Milad Farazmand <mfarazma@redhat.com> Commit-Queue: Junliang Yan <junyan@redhat.com> Cr-Commit-Position: refs/heads/main@{#78930}
-
Clemens Backes authored
Instead of always loading the instance from the frame, try to use the cached instance register instead. This is totally not performance critical since we do a C call afterwards anyway, but it's just as easy to use the cached instance than loading it fresh from the stack. R=thibaudm@chromium.org Change-Id: Ia815e9e6f8ab2efc665b2e3aefcdc7b4aa95739f Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3427461Reviewed-by: Thibaud Michaud <thibaudm@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/main@{#78929}
-
Junliang Yan authored
Change-Id: I0f42cf86182782b5357d905bfdef1874f6efb909 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3437406Reviewed-by: Milad Farazmand <mfarazma@redhat.com> Commit-Queue: Junliang Yan <junyan@redhat.com> Cr-Commit-Position: refs/heads/main@{#78928}
-
Junliang Yan authored
Change-Id: I0ca1d28774c58bce52f8553a08351d7191ff0f40 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3436806Reviewed-by: Milad Farazmand <mfarazma@redhat.com> Commit-Queue: Junliang Yan <junyan@redhat.com> Cr-Commit-Position: refs/heads/main@{#78927}
-
Camillo Bruni authored
Change-Id: I913e36afd76fe0f212e8c0c9b97e5ac52b2342d1 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3437045Reviewed-by: Victor Gomes <victorgomes@chromium.org> Commit-Queue: Camillo Bruni <cbruni@chromium.org> Cr-Commit-Position: refs/heads/main@{#78926}
-
Manos Koukoutos authored
The stack guard may update a shared memory's size. Therefore, we need to update the size in the instance cache in Turbofan when StackCheck is invoked for loops. Change-Id: I1b000adad991a6b799ad37ba36c9a33c67559d3a Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3423780Reviewed-by: Clemens Backes <clemensb@chromium.org> Reviewed-by: Tobias Tebbi <tebbi@chromium.org> Commit-Queue: Manos Koukoutos <manoskouk@chromium.org> Cr-Commit-Position: refs/heads/main@{#78925}
-
Clemens Backes authored
On all platform, the method is implemented identical to {LoadInstanceFromFrame}. So remove {FillInstanceInto} and keep {LoadInstanceFromFrame} which is a better name. R=thibaudm@chromium.org Bug: v8:12425 Change-Id: Ia9e6a3e2478628f8d31ff4faaab8d5250fda7796 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3429203Reviewed-by: Thibaud Michaud <thibaudm@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/main@{#78924}
-
Leszek Swirski authored
This reverts commit 9ae463bc. Reason for revert: ODROID failure https://ci.chromium.org/ui/p/v8/builders/ci/V8%20Arm%20GC%20Stress/22085/overview Original change's description: > [heap-stats] Fix heap-stats with ptr-cage > > - Heap-stats was trying to load the map without explicitly passing in > the PtrComprBase causing failures with Code objects in external code > space > - Extend the debugPrint.js tests to run with some more debugging and > testing flags to prevent future regressions > > Change-Id: I1f0d03cb31480f316fe533b507ff98fe3befbe8e > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3432386 > Reviewed-by: Igor Sheludko <ishell@chromium.org> > Auto-Submit: Camillo Bruni <cbruni@chromium.org> > Reviewed-by: Dominik Inführ <dinfuehr@chromium.org> > Commit-Queue: Dominik Inführ <dinfuehr@chromium.org> > Cr-Commit-Position: refs/heads/main@{#78919} Change-Id: I4a5e9d8a4ce2f608b7a42dcf5d7e799daf9cc1c5 No-Presubmit: true No-Tree-Checks: true No-Try: true Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3436285 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@{#78923}
-
Thibaud Michaud authored
This is a reland of f942f656 Changes: Change the order of initialization for wasm continuations to ensure object integrity if a GC happens during allocation. Also add missing handles. Original change's description: > Reland "[wasm] Resume suspender on resolved promise" > > This is a reland of a865d16b > > Changes: > - Make the next ID atomic > - Leave more space for runtime calls in debug mode > > Original change's description: > > [wasm] Resume suspender on resolved promise > > > > Implement the WasmResume builtin, which resumes a wasm suspender > > when the corresponding JS promise resolves. > > > > Drive-by 1: Fix detection of empty stacks in the stack frame iterator. > > Drive-by 2: Add a stack ID for better tracing. > > > > R=ahaas@chromium.org > > CC=fgm@chromium.org > > > > Bug: v8:12191 > > Change-Id: Ifa3f00c4259f802292b04d426c739e9b551f87b9 > > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3420827 > > Reviewed-by: Andreas Haas <ahaas@chromium.org> > > Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> > > Commit-Queue: Thibaud Michaud <thibaudm@chromium.org> > > Cr-Commit-Position: refs/heads/main@{#78842} > > Bug: v8:12191 > Change-Id: I3c231690b27be79a0c00e13043342bb4a3628886 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3427203 > Reviewed-by: Andreas Haas <ahaas@chromium.org> > Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> > Commit-Queue: Thibaud Michaud <thibaudm@chromium.org> > Cr-Commit-Position: refs/heads/main@{#78890} Bug: v8:12191 Change-Id: I0e1362d3a9da1fd8c0d600ad9776ce2fd26c6a52 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3434145Reviewed-by: Andreas Haas <ahaas@chromium.org> Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Commit-Queue: Thibaud Michaud <thibaudm@chromium.org> Cr-Commit-Position: refs/heads/main@{#78922}
-
Clemens Backes authored
Since the equality operator uses the whole encoded bitfield, also the hash value should use that. Otherwise get get unnecessary hash collisions, resulting in bad hash table performance (e.g. in the signature map). R=manoskouk@chromium.org Bug: v8:12593 Change-Id: I6f9b8ed1789ee937c90ece15d78b2bf5a3c357a6 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3435189Reviewed-by: Manos Koukoutos <manoskouk@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/main@{#78921}
-
Omer Katz authored
The methods in explicit_management.h should be called via the public variants in the subtle namespace. Calling the variants in the internal namespace directly skips asserts and required size coversions. Doing so may cause misuse of the api that may break GC inernals Change-Id: I58a0f324ca1ee0839bb85eb9b53ce57785dc7b91 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3435187Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Commit-Queue: Omer Katz <omerkatz@chromium.org> Cr-Commit-Position: refs/heads/main@{#78920}
-
Camillo Bruni authored
- Heap-stats was trying to load the map without explicitly passing in the PtrComprBase causing failures with Code objects in external code space - Extend the debugPrint.js tests to run with some more debugging and testing flags to prevent future regressions Change-Id: I1f0d03cb31480f316fe533b507ff98fe3befbe8e Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3432386Reviewed-by: Igor Sheludko <ishell@chromium.org> Auto-Submit: Camillo Bruni <cbruni@chromium.org> Reviewed-by: Dominik Inführ <dinfuehr@chromium.org> Commit-Queue: Dominik Inführ <dinfuehr@chromium.org> Cr-Commit-Position: refs/heads/main@{#78919}
-
Clemens Backes authored
This makes the bulk memory operations respect the memory type, i.e. using i64 values for memory offsets if memory64 is enabled. The called C functions now expect memory offsets to be passed as {uintptr_t}, such that we can address any memory on all systems. For 64-bit memories on 32-bit systems, the upper half of the 64-bit value is checked in compiled code before passing the lower half to the C function. Liftoff support turned out to be a bit harder than expected, because we cannot hold three 64-bit values in registers on ia32 (not enough registers...). Thus implement that in a follow-up CL. R=thibaudm@chromium.org Bug: v8:10949, chromium:1281995 Change-Id: Ie77636145f94cc579d479c4e7c346ba3c682679d Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3427206Reviewed-by: Thibaud Michaud <thibaudm@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/main@{#78918}
-
Dominik Inführ authored
Each GC thread needs their own instance of ConcurrentAllocator for allocation. The LAB is always considered thread-local. Bug: v8:12582, v8:11708 Change-Id: I39200202ec9fd07fa33b3ababa88e84a1a270778 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3429294Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Commit-Queue: Dominik Inführ <dinfuehr@chromium.org> Cr-Commit-Position: refs/heads/main@{#78917}
-
Clemens Backes authored
The {WasmCodeManager::Decommit} method is called for ranges that do not contain any live code any more. Instead of setting permissions to {kNoAccess} and discarding the pages, do actually decommit them. The difference is subtle, but decommitting tries harder to actually free the underlying physical pages (whereas discarding is more a hint to the operating system). After both operations, the memory is not accessible afterwards, so any further access results in a signal, and thus a crash of the process. R=jkummerow@chromium.org, mlippautz@chromium.org Change-Id: Iddeda5c4ed864682c4df589b6ea6e359bf03847a Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3427459Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/main@{#78916}
-
Dominik Inführ authored
* Map may be forwarded here, so use IsMapOrForwardedMap in DCHECK * Code didn't expect a slot in the map word. Bug: v8:12578 Change-Id: I8dd9cd57fb1336e0014812b7a2e35dc209f78a2c Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3429292Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Commit-Queue: Dominik Inführ <dinfuehr@chromium.org> Cr-Commit-Position: refs/heads/main@{#78915}
-
v8-ci-autoroll-builder authored
Rolling v8/third_party/google_benchmark/src: https://chromium.googlesource.com/external/github.com/google/benchmark/+log/14eee07..1ee7bee Use Win32 API only for Win32 apps (#1333) (batortaller) https://chromium.googlesource.com/external/github.com/google/benchmark/+/1ee7bee R=v8-waterfall-sheriff@grotations.appspotmail.com,mtv-sf-v8-sheriff@grotations.appspotmail.com,mlippautz@chromium.org Change-Id: I9d7480c5ede64550b4e8434d62fcc8c29ae038b9 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3435329 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@{#78914}
-
v8-ci-autoroll-builder authored
Rolling v8/build: https://chromium.googlesource.com/chromium/src/build/+log/a0549e2..5ba6fa4 Rolling v8/buildtools/third_party/libunwind/trunk: https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libunwind/+log/d0ad43c..659c7d9 Rolling v8/third_party/depot_tools: https://chromium.googlesource.com/chromium/tools/depot_tools/+log/60206c4..fa5989b Rolling v8/third_party/googletest/src: https://chromium.googlesource.com/external/github.com/google/googletest/+log/4517697..25ad42a Rolling v8/tools/clang: https://chromium.googlesource.com/chromium/src/tools/clang/+log/cb91247..853a56c Rolling v8/tools/luci-go: git_revision:d46a9c7ad4e38935bbacb01602fc1d09a162884b..git_revision:462d0a9cdbe947cd652fcd0c54f64ebc712858a5 Rolling v8/tools/luci-go: git_revision:d46a9c7ad4e38935bbacb01602fc1d09a162884b..git_revision:462d0a9cdbe947cd652fcd0c54f64ebc712858a5 R=v8-waterfall-sheriff@grotations.appspotmail.com,mtv-sf-v8-sheriff@grotations.appspotmail.com Change-Id: I8442c5410c92fd1029cc13bc89dbd75b08fe4f43 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3435325 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@{#78913}
-
Anton Bikineev authored
This CL adds invalidations for slots that reside in promptly freed or shrunk storage. Bug: chromium:1029379 Change-Id: I05e0ede55c202c952b26f452053b8777d1a2ffae Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3431488Reviewed-by: Omer Katz <omerkatz@chromium.org> Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Commit-Queue: Anton Bikineev <bikineev@chromium.org> Cr-Commit-Position: refs/heads/main@{#78912}
-
- 02 Feb, 2022 15 commits
-
-
Nikolaos Papaspyrou authored
Conceptually, a full GC cycle completes when the sweeping phase is finished. As sweeping is performed concurrently, this happens after Heap::CollectGarbage has returned and, at the latest, before the next full GC cycle begins. However, an arbitrary number of young GC cycles may happen in the meantime. Tracing information for the sweeping phase must be added to the corresponding full GC cycle event. Until now, this was not done correctly: this information was added to the GCTracer's current event and could thus be attributed to a subsequent young or full GC cycle. This CL introduces methods GCTracer::(Start|Stop)Cycle to delimit a cycle (still allowing for full GC cycles to be interrupted by young GC cycles). These methods are different from (Start|Stop)ObservablePause, which delimit the observable pause of each GC. The events of "pending" full GC cycles are kept until they are properly amended and reported, when the sweeping phase is finished. This is a reland of 4ad20bff which was reviewed here: https://crrev.com/3404733 Bug: v8:12503 Bug: chromium:1154636 Change-Id: Icc315b53cff1f3b19b8efe49db34340a5608bcd2 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3432211Reviewed-by: Omer Katz <omerkatz@chromium.org> Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Commit-Queue: Nikolaos Papaspyrou <nikolaos@chromium.org> Cr-Commit-Position: refs/heads/main@{#78911}
-
Milad Fa authored
Change-Id: I251df1abd2f7facc1ee5adad7a7dbf70c1554d22 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3432985Reviewed-by: Junliang Yan <junyan@redhat.com> Commit-Queue: Milad Farazmand <mfarazma@redhat.com> Cr-Commit-Position: refs/heads/main@{#78910}
-
Gus Caplan authored
Bug: v8:12494 Change-Id: Iba2684173296aa236f1a1c73a5606c21472eff06 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3426634Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Commit-Queue: Gus Caplan <snek@chromium.org> Cr-Commit-Position: refs/heads/main@{#78909}
-
Leszek Swirski authored
This reverts commit 4ad20bff. Reason for revert: New test seems to be failing on TSAN/incremental marking stress (https://ci.chromium.org/ui/p/v8/builders/ci/V8%20Linux64%20TSAN%20-%20stress-incremental-marking/6346/overview) Original change's description: > heap: Fix the tracing of GC cycles > > Conceptually, a full GC cycle completes when the sweeping phase is > finished. As sweeping is performed concurrently, this happens after > Heap::CollectGarbage has returned and, at the latest, before the next > full GC cycle begins. However, an arbitrary number of young GC cycles > may happen in the meantime. Tracing information for the sweeping phase > must be added to the corresponding full GC cycle event. Until now, this > was not done correctly: this information was added to the GCTracer's > current event and could thus be attributed to a subsequent young or full > GC cycle. > > This CL introduces methods GCTracer::(Start|Stop)Cycle to delimit a > cycle (still allowing for full GC cycles to be interrupted by young GC > cycles). These methods are different from (Start|Stop)ObservablePause, > which delimit the observable pause of each GC. The events of "pending" > full GC cycles are kept until they are properly amended and reported, > when the sweeping phase is finished. > > Bug: chromium:1154636 > Change-Id: I2fbc65d4807c78656d4abc8c451043f6f86211b1 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3404733 > Reviewed-by: Michael Lippautz <mlippautz@chromium.org> > Reviewed-by: Omer Katz <omerkatz@chromium.org> > Commit-Queue: Nikolaos Papaspyrou <nikolaos@chromium.org> > Cr-Commit-Position: refs/heads/main@{#78905} Bug: chromium:1154636 Change-Id: Id6688cfe982f9d8159c66d715b7079782a371bed No-Presubmit: true No-Tree-Checks: true No-Try: true Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3431489 Auto-Submit: Leszek Swirski <leszeks@chromium.org> Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> Owners-Override: Leszek Swirski <leszeks@chromium.org> Commit-Queue: Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/main@{#78908}
-
Milad Fa authored
I32x4UConvertF32x4 is also slightly optimized by removing 2 instructions. Change-Id: Ie61fbd34628beb2410ae3ef916de7c3119c7ad9c Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3429463Reviewed-by: Junliang Yan <junyan@redhat.com> Commit-Queue: Milad Farazmand <mfarazma@redhat.com> Cr-Commit-Position: refs/heads/main@{#78907}
-
Benedikt Meurer authored
This is the second step towards moving away from sending `url` with every call frame when emitting the `Debugger.paused` event. Bug: chromium:1270316, chromium:1271078 Change-Id: Ib4f996024b5200cded155bd8a564d01d36856400 Doc: https://bit.ly/devtools-debugger-callframe-url Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3431485 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@{#78906}
-
Nikolaos Papaspyrou authored
Conceptually, a full GC cycle completes when the sweeping phase is finished. As sweeping is performed concurrently, this happens after Heap::CollectGarbage has returned and, at the latest, before the next full GC cycle begins. However, an arbitrary number of young GC cycles may happen in the meantime. Tracing information for the sweeping phase must be added to the corresponding full GC cycle event. Until now, this was not done correctly: this information was added to the GCTracer's current event and could thus be attributed to a subsequent young or full GC cycle. This CL introduces methods GCTracer::(Start|Stop)Cycle to delimit a cycle (still allowing for full GC cycles to be interrupted by young GC cycles). These methods are different from (Start|Stop)ObservablePause, which delimit the observable pause of each GC. The events of "pending" full GC cycles are kept until they are properly amended and reported, when the sweeping phase is finished. Bug: chromium:1154636 Change-Id: I2fbc65d4807c78656d4abc8c451043f6f86211b1 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3404733Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Reviewed-by: Omer Katz <omerkatz@chromium.org> Commit-Queue: Nikolaos Papaspyrou <nikolaos@chromium.org> Cr-Commit-Position: refs/heads/main@{#78905}
-
Clemens Backes authored
UpdateDispatchTables is the hottest function during Wasm instantiation, thus dehandlify it, as it does not allocate on the JS heap anyway. This saves ~20% of instantiation time locally. R=manoskouk@chromium.org Bug: v8:12593 Cq-Include-Trybots: luci.v8.try:v8_linux_gc_stress_dbg_ng Cq-Include-Trybots: luci.v8.try:v8_mac64_gc_stress_dbg_ng Change-Id: Ifdd3f8fcd2e31950b591b179a62a0d397c41c339 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3429205Reviewed-by: Manos Koukoutos <manoskouk@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/main@{#78904}
-
Clemens Backes authored
Some of the numeric opcodes have a variadic signature, e.g. table.grow or table.fill, and soon also the bulk memory opcodes because their consumed types depend on the memory type. For those opcodes, remove the signature definition from the opcode macro lists, because using it might result in bugs. R=thibaudm@chromium.org Bug: v8:10949, chromium:1281995 Change-Id: I350e75db7197d97a561f8219cedba5fe85b5c9c9 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3424494Reviewed-by: Thibaud Michaud <thibaudm@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/main@{#78903}
-
Camillo Bruni authored
This is a reland of 7ddacd68 - Allocate JSObject only after the properties are fully deserialized Original change's description: > [web snapshot] Dehandlify more parts of the deserializer > > - Use Heap::AddGCEpilogueCallback to update often accessed FixedArrays > in the WebSnapshotDeserializer. > - ReadValue returns now a raw value to avoid handle creation in more > cases > - Drop representation support for now in ReadValue > - Avoid a few more handles when setting up objects > > Bug v8:11525 > > Change-Id: I6955b56887834bc655bdaa9c390016d9a17db82d > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3416242 > Reviewed-by: Marja Hölttä <marja@chromium.org> > Commit-Queue: Camillo Bruni <cbruni@chromium.org> > Cr-Commit-Position: refs/heads/main@{#78862} Change-Id: I2b64e59df02d4d723f76e157aad045f94a22d2b9 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3427202 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@{#78902}
-
Anton Bikineev authored
The CL does following: 1) Makes sure young generation works and tests pass; 2) Provides CollectGarbageInYoungGenerationForTesting() that is needed to support remaining tests in Blink; 3) Moved cppgc_enable_young_generation GN flag to v8.gni to refer to it from Blink; 4) Bails out from marking TracedReferences in UnifiedHeapMarkingState; 5) Disables (temporarily) prompt freeing for young generation; 6) Fixes remembered set visitation for nullptr|kSentinel slots. Bug: chromium:1029379 Change-Id: I5165fa22c8a0eaa708ef7a35a9978cb12e1cb13e Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3429202Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Auto-Submit: Anton Bikineev <bikineev@chromium.org> Reviewed-by: Michael Achenbach <machenbach@chromium.org> Commit-Queue: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/main@{#78901}
-
George Wort authored
RecordWrite uses callee saved registers, so only the clobbered registers need to be saved by the caller. This change gives us a 1% reduction in embedded blob size for arm64. No change is seen for arm as the STM instruction can store and load multiple registers. Change-Id: I8e41da43851e96d3454a01c7093d76f2e0378214 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3406744Reviewed-by: Camillo Bruni <cbruni@chromium.org> Reviewed-by: Leszek Swirski <leszeks@chromium.org> Commit-Queue: Martyn Capewell <martyn.capewell@arm.com> Cr-Commit-Position: refs/heads/main@{#78900}
-
http://crbug/1206289Emanuel Ziegler authored
Bug: chromium:1206289 Change-Id: Ib0cc2a0d159b763efa4fe33502b0a6562973b430 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3429501Reviewed-by: Lutz Vahl <vahl@chromium.org> Commit-Queue: Lutz Vahl <vahl@chromium.org> Cr-Commit-Position: refs/heads/main@{#78899}
-
Igor Sheludko authored
... instead of obj.IsCode() because it's not safe to use the latter during GC which might have already moved the object. Bug: v8:11880, chromium:1292688 Change-Id: Idbe973c0b1919a79c6aa66a8f490d952266aa66d Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3429209 Auto-Submit: Igor Sheludko <ishell@chromium.org> Reviewed-by: Jakob Gruber <jgruber@chromium.org> Commit-Queue: Igor Sheludko <ishell@chromium.org> Cr-Commit-Position: refs/heads/main@{#78898}
-
Shu-yu Guo authored
Bug: v8:12563 Change-Id: I564c973d5d03c198bffc8edba8d9a3b7ec66c8e6 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3423581 Auto-Submit: Shu-yu Guo <syg@chromium.org> Reviewed-by: Leszek Swirski <leszeks@chromium.org> Commit-Queue: Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/main@{#78897}
-