- 05 Jan, 2022 2 commits
-
-
v8-ci-autoroll-builder authored
Rolling v8/build: https://chromium.googlesource.com/chromium/src/build/+log/44c14db..ccc9811 Rolling v8/third_party/catapult: https://chromium.googlesource.com/catapult/+log/1227b26..ec88714 Rolling v8/third_party/depot_tools: https://chromium.googlesource.com/chromium/tools/depot_tools/+log/54c265e..02d65ea Rolling v8/tools/clang: https://chromium.googlesource.com/chromium/src/tools/clang/+log/8b73305..2d10229 R=v8-waterfall-sheriff@grotations.appspotmail.com,mtv-sf-v8-sheriff@grotations.appspotmail.com Change-Id: Iade1fe67ff6f3dea3eacc7b614150da806e3ed20 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3365993 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@{#78488}
-
Hao Xu authored
Change-Id: I7b20a32973c7592c6e47477b1d98bb0d72b27e33 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3347571Reviewed-by: Victor Gomes <victorgomes@chromium.org> Commit-Queue: Hao A Xu <hao.a.xu@intel.com> Cr-Commit-Position: refs/heads/main@{#78487}
-
- 04 Jan, 2022 19 commits
-
-
Piotr Sikora authored
There is no reason for bazel/config to be used as an external dependency (we can replace "@v8//bazel/config" as easily as "@config") and it makes integration with other Bazel workspaces much harded than it needs to be. Signed-off-by: Piotr Sikora <piotrsikora@google.com> Change-Id: Idb818c3237d6840ebaa1dfc85b8be686b06d8a2f Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3331591Reviewed-by: Victor Gomes <victorgomes@chromium.org> Cr-Commit-Position: refs/heads/main@{#78486}
-
Piotr Sikora authored
Signed-off-by: Piotr Sikora <piotrsikora@google.com> Change-Id: I521c3f0c8be13df4b4661a0c1e67d9dd278acbe8 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3364916Reviewed-by: Victor Gomes <victorgomes@chromium.org> Cr-Commit-Position: refs/heads/main@{#78485}
-
Milad Fa authored
Naming a class member function the same as a class name could cause compilation issues with gcc: ``` error: changes meaning of 'StackFrameInfo' from 'class v8::internal::StackFrameInfo' ``` This CL changes the function name to fix the problem. Change-Id: I085018504deefefa99dbf2ff8638bc0e872fdbc8 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3366703Reviewed-by: Benedikt Meurer <bmeurer@chromium.org> Commit-Queue: Milad Farazmand <mfarazma@redhat.com> Cr-Commit-Position: refs/heads/main@{#78484}
-
Clemens Backes authored
If a fixed register is defined for an input, we did only spill the sibling SIMD register if the other sibling was allocated. This is not correct. If only the sibling is in use (e.g. s1 colliding with q0) we also have to spill that sibling. R=mslekova@chromium.org Bug: chromium:1283042, v8:12330 Change-Id: I6a22eaf461774a0b4603ec3ff17062134a528161 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3359615Reviewed-by: Tobias Tebbi <tebbi@chromium.org> Reviewed-by: Maya Lekova <mslekova@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/main@{#78483}
-
Clemens Backes authored
The mid-tier register allocator did not handle block merges correctly where a SIMD register was partially overlapping with a non-SIMD register. This CL fixes that, and reorders the code to allow for early exits. R=mslekova@chromium.org Bug: chromium:1282224, v8:12330 Change-Id: I2e9275d5c1aaa764ecb63fbf8fa197b68d6b6c3c Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3358294Reviewed-by: Tobias Tebbi <tebbi@chromium.org> Reviewed-by: Maya Lekova <mslekova@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/main@{#78482}
-
Clemens Backes authored
If such a frame is near the top of the stack frame, move to the frame below instead, which is the caller of OS::DebugBreak. Also, rename dcheck_stop_handler to v8_stop_handler since we handle more than DCHECKs there. R=leszeks@chromium.org No-Try: true Change-Id: Ib31c2dc8278ec779a00babfdc952453e66e5f110 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3366238Reviewed-by: Leszek Swirski <leszeks@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/main@{#78481}
-
Samuel Groß authored
Previously, guard regions were created by allocating pages with PROT_NONE and relying on an allocation hint. This could fail however, for example on Fuchsia (where it would allocate a VMO to back the guard region) and possibly on Windows (where a placeholder mapping was replaced by a "real" mapping). Introducing an explicit VirtualAddressSpace::AllocateGuardRegion routine now makes this operation more efficient and effectively guarantees that it cannot fail if used correctly: in a regular subspace, there is no need to allocate anything when creating guard regions since the address space reservation backing the subspace is guaranteed to be inaccessible when no pages are allocated in it. Bug: chromium:1218005 Change-Id: I6945f17616b6b8dad47241af96d4cb1f660e8858 Cq-Include-Trybots: luci.v8.try:v8_linux64_heap_sandbox_dbg_ng,v8_linux_arm64_sim_heap_sandbox_dbg_ng Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3366237Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Commit-Queue: Samuel Groß <saelo@chromium.org> Cr-Commit-Position: refs/heads/main@{#78480}
-
Benedikt Meurer authored
This change fixes the implementation of the previously introduced API `Runtime.setMaxCallStackSizeToCapture` to work correctly and also apply (consistently) to stack traces captured by V8 when exceptions are thrown. It does so in a fully backwards compatible manner. This change thus makes the previous fix for catapult (which landed in http://crrev.com/c/3347789) effective, and therefore ensures that real world performance benchmarks aren't affected by the use of the `Runtime` domain in the catapult test framework. Note this is basically a reland of crrev.com/c/3361839, but without touching the stack traces for console messages (which led to the regressions in crbug/1283516, crbug/1283523, etc.). Fixed: chromium:1280831 Bug: chromium:1283162, chromium:1278650, chromium:1258599 Bug: chromium:1280803, chromium:1280832, chromium:1280818 Doc: https://bit.ly/v8-cheaper-inspector-stack-traces Change-Id: I3dcec7b75d76ca267fac8bd6fcb2cda60d5e60dd Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3364086Reviewed-by: Yang Guo <yangguo@chromium.org> Commit-Queue: Benedikt Meurer <bmeurer@chromium.org> Auto-Submit: Benedikt Meurer <bmeurer@chromium.org> Cr-Commit-Position: refs/heads/main@{#78479}
-
Piotr Sikora authored
Signed-off-by: Piotr Sikora <piotrsikora@google.com> Change-Id: I8545294056e3ee330383e5f3bd50127f8221d9ad Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3337367Reviewed-by: Victor Gomes <victorgomes@chromium.org> Commit-Queue: Victor Gomes <victorgomes@chromium.org> Cr-Commit-Position: refs/heads/main@{#78478}
-
Benedikt Meurer authored
This sprinkles some more trace events in the disabled by default "v8.inspector" category, to help with understanding performance impact of stack trace capturing better. Bug: chromium:1283162 Change-Id: I6085d587f241635fbb6934bef3adc95f58c5d2aa Doc: https://bit.ly/v8-cheaper-inspector-stack-traces Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3364085Reviewed-by: Yang Guo <yangguo@chromium.org> Auto-Submit: Benedikt Meurer <bmeurer@chromium.org> Commit-Queue: Benedikt Meurer <bmeurer@chromium.org> Cr-Commit-Position: refs/heads/main@{#78477}
-
Manos Koukoutos authored
We unify the implementation of element segment expression entries with other initializer expressions: we represent them with a {WireBytesRef} and decode them with {InitExprInterface}. Except for reducing code duplication, this also fixes a bug where {global.get} entries in element segments could reference invalid globals. Changes: - Change {WasmElemSegment::Entry} to a union of a {WireBytesRef} initializer expression and a {uint32_t} function index. - In module-decoder, change parsing of expression entries to use {consume_init_expr}. Add type checking to {consume_element_func_index}, to complement type checking happening in {consume_init_expr}. - In module-instantiate.cc: - Move instantiation of indirect tables before loading of element segments. This way, when we call {UpdateDispatchTables} in {SetTableEntry}, the indirect table for the current table will also be updated. - Consolidate table entry instantiation into {SetTableEntry}, which handles lazily instantiated functions, or dispatches to {WasmTableObject::Set}. - Rename {InitializeIndirectFunctionTables} to {InitializeNonDefaultableTables}. - Change {InitializeNonDefaultableTables} and {LoadElemSegmentImpl} to use {EvaluateInitExpression}. - Add a test to exclude mutable/non-imported globals from the element section. - Update tests as needed. - Update .js module emission in wasm-fuzzer-common. Change-Id: I29c541bbca8531e8d0312ed95869c8e78a5a0c57 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3364082Reviewed-by: Andreas Haas <ahaas@chromium.org> Commit-Queue: Manos Koukoutos <manoskouk@chromium.org> Cr-Commit-Position: refs/heads/main@{#78476}
-
Omer Katz authored
Chromium builds indicate that moving an optional doesn't reset the source, and the source still indicates it has a value. That may be a bug in base::optional, but we should fix it here first to resolve current crashes. Bug: chromium:1154636 Cq-Include-Trybots: luci.v8.try:v8_linux_blink_rel Change-Id: Ibfb53b6d06d5f0310e68b200cc27ca318a5a57e5 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3366235Reviewed-by: Clemens Backes <clemensb@chromium.org> Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Commit-Queue: Omer Katz <omerkatz@chromium.org> Cr-Commit-Position: refs/heads/main@{#78475}
-
Clemens Backes authored
The virtual register should be prefixed with a 'v' to match the printing of virtual registers in other places. R=mslekova@chromium.org Bug: v8:12330 Change-Id: Ib79ace97b1c497efa3de85e1e48f5b07bb76d6cb Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3358293Reviewed-by: Tobias Tebbi <tebbi@chromium.org> Reviewed-by: Maya Lekova <mslekova@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/main@{#78474}
-
Clemens Backes authored
The mid-tier register allocator already did some consistency checks; this CL extends them, and removes a redundant check. The added check ensures that no two virtual registers are assigned to the same register. A separate check for the correctness of the {allocated_registers_bits_} bitset is folded into {CheckConsistency}. A second check that an allocated register is contained in {allocated_registers_bits_} is removed. R=mslekova@chromium.org Bug: v8:12330 Change-Id: I6420eede145f88006c49e6ab16fdbeabffb8c9c7 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3358291Reviewed-by: Tobias Tebbi <tebbi@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/main@{#78473}
-
Clemens Backes authored
This fixes an unbalanced return stack that was caused by popping the return address and jumping to it, instead of pushing it back and returning properly. R=leszeks@chromium.org Bug: v8:11246 Change-Id: I5c58c587cc0f5433c0a3595f5ed4c765e90d1a30 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3365267Reviewed-by: Leszek Swirski <leszeks@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/main@{#78472}
-
Maya Lekova authored
Change-Id: I6893f37b7b56759341a1d43c21fa52b3836fde27 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3353368 Auto-Submit: Maya Lekova <mslekova@chromium.org> Reviewed-by: Clemens Backes <clemensb@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/main@{#78471}
-
Manos Koukoutos authored
See related CL for context. Changes: - In InitExprInterface, add the ability to evaluate function references as index only. Remove the global buffers and use the ones passed with the instance object instead. - In WasmElemSegment, add a field indicating if elements should be parsed as expressions or indices. Change module-decoder.cc to reflect this change. - In module-instantiate, change the signatures of LoadElemSegment, LoadElemSegmentImpl, and EvaluateInitExpr. Move the latter out of InstanceBuilder. Change-Id: I1df54393b2005fba49380654bdd40429bd4869dd Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3364081Reviewed-by: Andreas Haas <ahaas@chromium.org> Commit-Queue: Manos Koukoutos <manoskouk@chromium.org> Cr-Commit-Position: refs/heads/main@{#78470}
-
Clemens Backes authored
For low-cost exception handling, it's important to be able to quickly drop frames from the stack until reaching the exception handler. The Intel shadow stack offers an instruction to avoid offending stack discipline, incsspq, which drops N values from the stack. This CL integrates that instruction for v8 exception handling. Bug: v8:11246 Change-Id: I908f0ab8bb3de6c36e6078e27b65132287328f2d Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3289637Reviewed-by: Jakob Gruber <jgruber@chromium.org> Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Reviewed-by: Clemens Backes <clemensb@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/main@{#78469}
-
v8-ci-autoroll-builder authored
Rolling v8/build: https://chromium.googlesource.com/chromium/src/build/+log/555c8b4..44c14db Rolling v8/buildtools/third_party/libc++abi/trunk: https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libcxxabi/+log/2715a6c..c884e7a Rolling v8/buildtools/third_party/libunwind/trunk: https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libunwind/+log/4ead610..6a10e3e R=v8-waterfall-sheriff@grotations.appspotmail.com,mtv-sf-v8-sheriff@grotations.appspotmail.com Change-Id: I8cc3640b698cba2d84b0e1c11d97ec1eedbb743e Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3364392 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@{#78468}
-
- 03 Jan, 2022 7 commits
-
-
Anton Bershanskiy authored
Commit 84f3877c moved IsInRange to base::IsInRange and updated src/parsing/keywords-gen.h, but did not update tools/gen-keywords-gen-h.py. Bug: v8:12507 Change-Id: I914ba73feac3bac6fd5d08d14d17149faf6c5c76 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3356200Reviewed-by: Clemens Backes <clemensb@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/main@{#78467}
-
Benedikt Meurer authored
This changes the StackFrameInfo to either hold on to a pair of (Script,source position) or a pair of (SharedFunctioInfo,bytecode offset) similar to what we do for MessageLocation. The idea here is to defer the costly bytecode offset to source position lookup until really needed, and in particular, avoid the costly lookup during stack trace capturing. On the `standalone.js` benchmark in crbug.com/1283162#c1, this reduces overall average execution time by roughly 25%, and the performance is almost back to where it was before crrev.com/c/3302794 (being only 12% slower than before on the `standalone.js` test case). Note that due to unrelated limitations we cannot encode -1 as bytecode offset in the flags field of the StackFrameInfo, and so we treat this case specially (happens when stack trace capturing is triggered in the function entry sequence) and just eagerly resolve it to the source position. Bug: chromium:1278650, chromium:1283162, chromium:1280803 Bug: chromium:1280818, chromium:1280831, chromium:1280832 Doc: https://bit.ly/v8-cheaper-inspector-stack-traces Change-Id: If7cf62fce48d32c0f188895d1f8c9eee51b9e70d Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3359633Reviewed-by: Yang Guo <yangguo@chromium.org> Reviewed-by: Leszek Swirski <leszeks@chromium.org> Commit-Queue: Benedikt Meurer <bmeurer@chromium.org> Cr-Commit-Position: refs/heads/main@{#78466}
-
Samuel Groß authored
This is in line with PartitionAlloc's DiscardSystemPagesInternal. When the sandbox is enabled, OS::DiscardSystemPages is used instead of PA's version. As such, these two implementations should ideally be mostly identical. Using MADV_FREE instead of MADV_DONTNEED as was previously done appears to cause some memory regressions. Bug: chromium:1276887 Change-Id: Ied92b106e9894d428e599801d753ab4c8cffd874 Cq-Include-Trybots: luci.v8.try:v8_linux64_heap_sandbox_dbg_ng,v8_linux_arm64_sim_heap_sandbox_dbg_ng Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3364090Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Commit-Queue: Samuel Groß <saelo@chromium.org> Cr-Commit-Position: refs/heads/main@{#78465}
-
Omer Katz authored
Clear cached events if there is no embedder recorder. Bug: chromium:1154636 Change-Id: I9ad3b752ea242d07b417ce3022936789c47afc6a Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3358292Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Commit-Queue: Omer Katz <omerkatz@chromium.org> Cr-Commit-Position: refs/heads/main@{#78464}
-
Manos Koukoutos authored
Int64Lowering may produce projection nodes with floating control input. When inlining, we need to connect such nodes to the caller's start node instead of the control dependency of the call node. Bug: v8:12506, v8:12166 Change-Id: I1a726dc7b0ad40e98f3b745298062c2f7194288a Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3352221Reviewed-by: Clemens Backes <clemensb@chromium.org> Commit-Queue: Manos Koukoutos <manoskouk@chromium.org> Cr-Commit-Position: refs/heads/main@{#78463}
-
Benedikt Meurer authored
This reverts commit 34f73cc7. Reason for revert: Performance regressions throughout a lot of system health and browsing benchmarks. Original change's description: > [inspector] Fix `Runtime.setMaxCallStackSizeToCapture`. > > This change fixes the implementation of the previously introduced API > `Runtime.setMaxCallStackSizeToCapture` to work correctly and also apply > (consistently) to stack traces captured by V8 when exceptions are > thrown. It does so in a fully backwards compatible manner. > > This change thus makes the previous fix for catapult (which landed in > http://crrev.com/c/3347789) effective, and therefore ensures that real > world performance benchmarks aren't affected by the use of the `Runtime` > domain in the catapult test framework. > > Bug: chromium:1283162, chromium:1278650, chromium:1258599 > Bug: chromium:1280803, chromium:1280832, chromium:1280818 > Fixed: chromium:1280831 > Doc: https://bit.ly/v8-cheaper-inspector-stack-traces > Change-Id: I4ec951a858317fa49096cd4023deb0104d92c9c9 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3361839 > Commit-Queue: Benedikt Meurer <bmeurer@chromium.org> > Auto-Submit: Benedikt Meurer <bmeurer@chromium.org> > Reviewed-by: Yang Guo <yangguo@chromium.org> > Cr-Commit-Position: refs/heads/main@{#78458} Bug: chromium:1283162, chromium:1278650, chromium:1258599 Bug: chromium:1280803, chromium:1280832, chromium:1280818 Bug: chromium:1280831 Change-Id: Id1efaffa2f7f08c47f833f68b8a297494edee21e Fixed: chromium:1283751, chromium:1283749, chromium:1283746 Fixed: chromium:1283729, chromium:1283700, chromium:1283700 Fixed: chromium:1283691, chromium:1283687, chromium:1283678 Fixed: chromium:1283677, chromium:1283676, chromium:1283675 Fixed: chromium:1283674, chromium:1283618, chromium:1283536 Fixed: chromium:1283523, chromium:1283516 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3364078 Commit-Queue: Benedikt Meurer <bmeurer@chromium.org> Auto-Submit: Benedikt Meurer <bmeurer@chromium.org> Commit-Queue: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> Reviewed-by: Yang Guo <yangguo@chromium.org> Cr-Commit-Position: refs/heads/main@{#78462}
-
v8-ci-autoroll-builder authored
Rolling v8/build: https://chromium.googlesource.com/chromium/src/build/+log/6c5151b..555c8b4 R=v8-waterfall-sheriff@grotations.appspotmail.com,mtv-sf-v8-sheriff@grotations.appspotmail.com Change-Id: Ie93c78b95a8dae9f353a49d4ba1f90a7e575f8b2 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3364387 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@{#78461}
-
- 02 Jan, 2022 1 commit
-
-
v8-ci-autoroll-builder authored
Rolling v8/build: https://chromium.googlesource.com/chromium/src/build/+log/916b7d3..6c5151b R=v8-waterfall-sheriff@grotations.appspotmail.com,mtv-sf-v8-sheriff@grotations.appspotmail.com Change-Id: I0d849177ee2889d23749e93bc0940a4fc5b2a9bf Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3362900 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@{#78460}
-
- 01 Jan, 2022 1 commit
-
-
v8-ci-autoroll-builder authored
Rolling v8/build: https://chromium.googlesource.com/chromium/src/build/+log/97d5e5f..916b7d3 R=v8-waterfall-sheriff@grotations.appspotmail.com,mtv-sf-v8-sheriff@grotations.appspotmail.com Change-Id: I1172bb4706966effe9a9e55a26ff8b9da7573435 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3362898 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@{#78459}
-
- 31 Dec, 2021 2 commits
-
-
Benedikt Meurer authored
This change fixes the implementation of the previously introduced API `Runtime.setMaxCallStackSizeToCapture` to work correctly and also apply (consistently) to stack traces captured by V8 when exceptions are thrown. It does so in a fully backwards compatible manner. This change thus makes the previous fix for catapult (which landed in http://crrev.com/c/3347789) effective, and therefore ensures that real world performance benchmarks aren't affected by the use of the `Runtime` domain in the catapult test framework. Bug: chromium:1283162, chromium:1278650, chromium:1258599 Bug: chromium:1280803, chromium:1280832, chromium:1280818 Fixed: chromium:1280831 Doc: https://bit.ly/v8-cheaper-inspector-stack-traces Change-Id: I4ec951a858317fa49096cd4023deb0104d92c9c9 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3361839 Commit-Queue: Benedikt Meurer <bmeurer@chromium.org> Auto-Submit: Benedikt Meurer <bmeurer@chromium.org> Reviewed-by: Yang Guo <yangguo@chromium.org> Cr-Commit-Position: refs/heads/main@{#78458}
-
v8-ci-autoroll-builder authored
Rolling v8/build: https://chromium.googlesource.com/chromium/src/build/+log/4e188b4..97d5e5f Rolling v8/buildtools: https://chromium.googlesource.com/chromium/src/buildtools/+log/d7bdd6f..f78b4b9 Rolling v8/third_party/catapult: https://chromium.googlesource.com/catapult/+log/f57af59..1227b26 R=v8-waterfall-sheriff@grotations.appspotmail.com,mtv-sf-v8-sheriff@grotations.appspotmail.com Change-Id: Ib5206af9683bccc3b6ceea958f59809d9c4c608e Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3362895 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@{#78457}
-
- 30 Dec, 2021 6 commits
-
-
Benedikt Meurer authored
Bug: none Change-Id: Idef3596192deb3dfe66e500d3f9ff2560b113649 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3361836 Auto-Submit: Benedikt Meurer <bmeurer@chromium.org> Reviewed-by: Igor Sheludko <ishell@chromium.org> Commit-Queue: Igor Sheludko <ishell@chromium.org> Cr-Commit-Position: refs/heads/main@{#78456}
-
Liu Yu authored
Port commit 7d3c3cfb Change-Id: Iade0031b35c07f8142b9fa42ba14401e9d40336d Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3361784 Auto-Submit: Yu Liu <liuyu@loongson.cn> Reviewed-by: Zhao Jiazhong <zhaojiazhong-hf@loongson.cn> Reviewed-by: Yu Liu <liuyu@loongson.cn> Commit-Queue: Yu Liu <liuyu@loongson.cn> Cr-Commit-Position: refs/heads/main@{#78455}
-
Benedikt Meurer authored
The `Console` domain has been deprecated (in favor of `Log` and `Runtime`) since over four years now, and its use is strongly discouraged. However, making `Runtime.setMaxCallStackSizeToCapture` useful (in light of the refactorings for crbug.com/1283162) and more correct (wrt. to the anticipated behavior), would be complicated seriously if we also need to worry about `Console` domain interference. So this CL simply removes the feature that `Console.enable` turns on stack trace capturing for error and message objects, and won't send `line`, `column`, and `url` with `Console.Message` events if they aren't present on the `v8_inspector::V8ConsoleMessage` instance (these fields have always been optional anyways). Bug: chromium:1283162 Change-Id: I78bd1e040fe15a2372639c403bfc2f4579fd4d0c Doc: https://bit.ly/v8-cheaper-inspector-stack-traces Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3361837 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@{#78454}
-
Benedikt Meurer authored
The v8-debug.h and its implementations in api.cc are effectively owned by the DevTools team. Bug: none Change-Id: I0eacb901bad771fca9aff19ded6bde0c34753174 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3361835 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@{#78453}
-
Benedikt Meurer authored
This introduces a new `GetLocation()` method for `v8::StackFrame`s, which returns both line and column number at the same time (using the existing `v8::Location` class). Since `v8::StackFrame` instances store only the source position (per https://bit.ly/v8-stack-frame), we currently need to look up the source position in the Script's line table twice, once when we request the line number, and another time when we request the column number. With `GetLocation()` we perform only a single lookup in the Script's line table and return both line and column number at the same time. This cuts roughly 8% of the average execution time from the `standalone.js` benchmark mentioned in crbug.com/1280519. Bug: chromium:1280519, chromium:1278650, chromium:1069425 Bug: chromium:1077657, chromium:1283162 Doc: https://bit.ly/v8-cheaper-inspector-stack-traces Change-Id: Ia3a0502990b6230363112a358b59875283399404 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3359628Reviewed-by: Yang Guo <yangguo@chromium.org> Commit-Queue: Benedikt Meurer <bmeurer@chromium.org> Cr-Commit-Position: refs/heads/main@{#78452}
-
v8-ci-autoroll-builder authored
Rolling v8/build: https://chromium.googlesource.com/chromium/src/build/+log/9a4395e..4e188b4 R=v8-waterfall-sheriff@grotations.appspotmail.com,mtv-sf-v8-sheriff@grotations.appspotmail.com Change-Id: I2dbf4aee9752b3c2c205d9cbec75efab22b086bd Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3361635 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@{#78451}
-
- 29 Dec, 2021 2 commits
-
-
Benedikt Meurer authored
Previously the `Debugger.CallFrame`s in `Debugger.paused` events would report locations relative to the surrounding document in case of inline scripts with `//@ sourceURL` annotations (while `Runtime.CallFrame` was already fixed previously as part of crrev.com/c/3069289). With this CL the locations in `Debugger.CallFrame` are also appropriately adjusted. Drive-by-fix: Several inspector tests were (incorrectly) relying on this wrong treatment, and were also unnecessarily using //# sourceURL annotations. So part of this CL also addresses that problem and makes the tests more robust, using addInlineScript() helper. Fixed: chromium:1283049 Bug: chromium:1183990, chromium:578269 Change-Id: I6e3b215d951c3453c0a9cfc9bccf3dc3d5e92fd6 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3359619 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@{#78450}
-
Omer Katz authored
On concurrent threads, CppMarkingState allocates its own cppgc::internal::MarkingStateBase. On the mutator thread, CppMarkingState reuses the same MarkingStateBase as CppHeap's mutator thread visitor. That means the mutator thread doesn't need to rely on publishing segments to push object from V8 to CppHeap. Bug: v8:12407 Change-Id: I161adf8dcdc9aa960de65b47feb2abd3b605df7c Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3295454Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Commit-Queue: Omer Katz <omerkatz@chromium.org> Cr-Commit-Position: refs/heads/main@{#78449}
-