- 03 Jun, 2020 13 commits
-
-
Dan Elphick authored
This moves several fields that will be needed by ReadOnlySpace pages when it stops using MemoryChunk into BasicMemoryChunk. Additionally AllocationStats is moved from spaces.h into allocation-stats.h. Bug: v8:10473, v8:10454 Change-Id: I76a66565a260126e629bd7588a5418267dfa8423 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2228722Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Commit-Queue: Dan Elphick <delphick@chromium.org> Cr-Commit-Position: refs/heads/master@{#68134}
-
Igor Sheludko authored
... collected via --trace-zone-stats flag or v8.zone_stats trace category. This is an initial version inspired by heap-stats UI. Bug: v8:10572 Change-Id: Ib87cf0b4e120bc99683227eef02668a2a5c3d594 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2226855Reviewed-by: Camillo Bruni <cbruni@chromium.org> Commit-Queue: Igor Sheludko <ishell@chromium.org> Cr-Commit-Position: refs/heads/master@{#68133}
-
Peter Ralbovsky authored
Fuzzilli is open source fuzzer by Samuel Groß (saelo@google.com) that can be used to find bugs in v8 javascript engine. As we want to automate fuzzing for current versions of v8, we want to merge fuzzilli toolkit into v8 code, so that fuzzer can automatically update to the newest version. So far Fuzzilli has been maintained at https://github.com/googleprojectzero/fuzzilli . Bug tracker Id: https://bugs.chromium.org/p/v8/issues/detail?id=10571 Change-Id: I83ddc7e8bb31664c19e4044395bb9044a1c12031 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2201760Reviewed-by: Tamer Tas <tmrts@chromium.org> Reviewed-by: Michael Achenbach <machenbach@chromium.org> Reviewed-by: Clemens Backes <clemensb@chromium.org> Reviewed-by: Michael Stanton <mvstanton@chromium.org> Reviewed-by: Tobias Tebbi <tebbi@chromium.org> Commit-Queue: Michael Stanton <mvstanton@chromium.org> Cr-Commit-Position: refs/heads/master@{#68132}
-
Camillo Bruni authored
Passing tests that are marked as fail in a status file are not immediately visible as such. - Always show "--- FAILED ---" for failing tests - Show "--- UNEXPECTED PASS ---" for unexpectedly passing tests Drive-by-fixes: - Color failures in red with --progress=color - Color repro command in yellow with --progress=color Change-Id: Id43ecec348dbfd4ff627ea6aa4ba458a2e5a8445 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2213434Reviewed-by: Michael Achenbach <machenbach@chromium.org> Commit-Queue: Camillo Bruni <cbruni@chromium.org> Cr-Commit-Position: refs/heads/master@{#68131}
-
Thibaud Michaud authored
On x86-64, we spend significant time constructing and copying operands in Liftoff (around 5% locally). Inlining the constructor and helper functions removes most of the overhead. R=clemensb@chromium.org Bug: v8:10576 Change-Id: I1663e3e92abe7683eba9320e77fce9be8f84b4ca Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2225023 Commit-Queue: Thibaud Michaud <thibaudm@chromium.org> Reviewed-by: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/master@{#68130}
-
Iain Ireland authored
https://crrev.com/c/2072858 rewrote the implementation of non-unicode ignore-case matches to comply with the JS spec in some corner cases. It fixed character matches and character class matches. We missed a similar bug in the implementation of back references. This CL fixes that bug. The main change is in regexp-macro-assembler.cc, where CaseInsensitiveCompareUC16 is split into CaseInsensitiveCompareUnicode (which has the same semantics as before) and CaseInsensitiveCompareNonUnicode (which has the semantics described here: https://tc39.es/ecma262/#sec-runtime-semantics-canonicalize-ch). Most of the rest of the patch undoes https://crrev.com/c/2081816 to once again make the unicode flag available to the macroassembler, so that we can decide which helper function to call. The testcase is a version of test/intl/regress-10248.js, modified to test backreferences. Bug: v8:10573 Change-Id: I70ef7d134d37f99b1f75a5eba17020e82d59f1b9 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2219284Reviewed-by: Jakob Gruber <jgruber@chromium.org> Commit-Queue: Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#68129}
-
Jakob Gruber authored
This CL makes the test stricter by requiring specific string shapes; before it was possible to skip verification if strings were short-circuited, which I believe is no longer possible due to thin strings. I also added a regression test for the linked bug, which requires a String.p.split call on a two-byte-in-one-byte string with an empty string separator argument. Bug: chromium:1088179 Change-Id: Ibb3180afe612a64fcf6a506d18bbc415840526a8 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2228609Reviewed-by: Leszek Swirski <leszeks@chromium.org> Commit-Queue: Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#68128}
-
Dominik Inführ authored
Bug: v8:10315 Change-Id: I0144b89696933afcd02f63b0440118dd33a7d5ad Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2225025Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Commit-Queue: Dominik Inführ <dinfuehr@chromium.org> Cr-Commit-Position: refs/heads/master@{#68127}
-
Georg Neis authored
Also change the component from Runtime to Compiler. Change-Id: Ifb19e0d584b279b5f9bc6bc60531e64d4fecb4ad Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2218285 Commit-Queue: Georg Neis <neis@chromium.org> Reviewed-by: Benedikt Meurer <bmeurer@chromium.org> Reviewed-by: Tobias Tebbi <tebbi@chromium.org> Reviewed-by: Sigurd Schneider <sigurds@chromium.org> Cr-Commit-Position: refs/heads/master@{#68126}
-
Anton Bikineev authored
This fixes the gcov build. Bug: chromium:1056170 Change-Id: I40ac42b6fce77367c6a366544abf89fc21075cdc Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2228510 Commit-Queue: Anton Bikineev <bikineev@chromium.org> Commit-Queue: Michael Lippautz <mlippautz@chromium.org> Auto-Submit: Anton Bikineev <bikineev@chromium.org> Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Reviewed-by: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#68125}
-
Jakob Gruber authored
It's possible for a one-byte string to wrap a two-byte string. For example: CONS_ONE_BYTE_STRING_TYPE wraps THIN_STRING_TYPE wraps EXTERNAL_INTERNALIZED_STRING_TYPE We thus have to validate the extracted instance type when relying on the string being one-byte. Bug: chromium:1088179 Change-Id: Id0f996761a3ae2f1233e12c95e663e77d4a5ebf9 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2226752Reviewed-by: Leszek Swirski <leszeks@chromium.org> Commit-Queue: Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#68124}
-
Ng Zhi An authored
Bug: v8:10180 Change-Id: Ic3dc7394962439adca0482750593a1c22c840054 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2225091Reviewed-by: Deepti Gandluri <gdeepti@chromium.org> Commit-Queue: Zhi An Ng <zhin@chromium.org> Cr-Commit-Position: refs/heads/master@{#68123}
-
Ng Zhi An authored
Bug: v8:10506 Change-Id: I896d0d614524bb9515593fb1fb2b1e3e9892a026 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2225938Reviewed-by: Deepti Gandluri <gdeepti@chromium.org> Commit-Queue: Zhi An Ng <zhin@chromium.org> Cr-Commit-Position: refs/heads/master@{#68122}
-
- 02 Jun, 2020 27 commits
-
-
Ng Zhi An authored
Making them private was a way to hide the constructor, we can explicitly delete them, which give a better compilation error message as well. Also see: https://stackoverflow.com/q/55205874 Bug: v8:10488 Change-Id: I624efdb03edb4d1d07f95e756f2c87baba4b3ffe Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2223236Reviewed-by: Clemens Backes <clemensb@chromium.org> Commit-Queue: Zhi An Ng <zhin@chromium.org> Cr-Commit-Position: refs/heads/master@{#68121}
-
Ng Zhi An authored
See https://clang.llvm.org/extra/clang-tidy/checks/modernize-use-override.html for more on this warning. Bug: v8:10488 Change-Id: Icfb54d8f4ab0efe0fdf51bd1920511b7505207d0 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2223234Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Commit-Queue: Zhi An Ng <zhin@chromium.org> Cr-Commit-Position: refs/heads/master@{#68120}
-
Frank Tang authored
Implement the spec changes in https://github.com/tc39/ecma402/pull/430 Bug: v8:10554 Change-Id: I421d6feb94810027cf17ff58a4ec5357940ef44a Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2212889Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Commit-Queue: Frank Tang <ftang@chromium.org> Cr-Commit-Position: refs/heads/master@{#68119}
-
Clemens Backes authored
Since the interpreter cannot call out to JS any more, there cannot be more than one activation at a time. Hence remove the concept of activations. R=ahaas@chromium.org Bug: v8:10389 Change-Id: Ifda5624e192464a1aed2943787bc6860d1917719 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2219942Reviewed-by: Andreas Haas <ahaas@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/master@{#68118}
-
Clemens Backes authored
This reverts commit 76debfda. Reason for revert: Nullptr access in new test: https://ci.chromium.org/p/v8/builders/ci/V8%20Linux/37265 Original change's description: > [wasm-simd][liftoff] Fix I64x2Mul > > The I64x2Mul overwrote the lhs/rhs if they are the same as dst. So when > deciding if we need temporaries, we should not only check the > cache_state, but whether they alias dst or not. > > Bug: chromium:1088273 > Change-Id: I82efa9b45e0a3d321a06efde60971ce95b21490f > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2225796 > Commit-Queue: Zhi An Ng <zhin@chromium.org> > Reviewed-by: Clemens Backes <clemensb@chromium.org> > Cr-Commit-Position: refs/heads/master@{#68114} TBR=clemensb@chromium.org,zhin@chromium.org Change-Id: I5fd337b71d82d262d36ff410077a11c17b50036b No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: chromium:1088273 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2226756Reviewed-by: Clemens Backes <clemensb@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/master@{#68117}
-
Clemens Backes authored
In production, we will always pass a pointer to the decoded module. The only reason for the existance of the nullptr checks is that tests sometimes don't pass a module here. Hence we pay in production code for a test-only feature. This CL fixes this by always passing a module pointer from the decoder tests. This even simplifies the code a lot by removing redundant code. The {TestModuleBuilder} class was moved before the definitions of the {FunctionBodyDecoderTest} class in order to be able to reuse it there. It's unmodified otherwise. R=ahaas@chromium.org Bug: v8:10576 Change-Id: I7d876bfc8a27b50fe713afb8848fb4f642287cfa Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2226749Reviewed-by: Andreas Haas <ahaas@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/master@{#68116}
-
Shu-yu Guo authored
This reverts commit c342ba82. Reason for revert: Incorrectly parsed destructuring + logical assignment Original change's description: > Set .name of anonymous functions on the RHS of logical assignment. > > https://github.com/tc39/proposal-logical-assignment/pull/24 reached > consensus in June TC39. > > Drive-by refactoring of testing for logical assignment ops using > IsInRange. > > Bug: v8:10579 > Change-Id: I5a203ba552a905cd28f75c5d223998431a1966ce > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2225809 > Reviewed-by: Marja Hölttä <marja@chromium.org> > Commit-Queue: Shu-yu Guo <syg@chromium.org> > Cr-Commit-Position: refs/heads/master@{#68101} TBR=marja@chromium.org,syg@chromium.org Change-Id: I7992941bb31ad063611a45a65d20517803910475 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: v8:10579 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2227059Reviewed-by: Shu-yu Guo <syg@chromium.org> Commit-Queue: Shu-yu Guo <syg@chromium.org> Cr-Commit-Position: refs/heads/master@{#68115}
-
Ng Zhi An authored
The I64x2Mul overwrote the lhs/rhs if they are the same as dst. So when deciding if we need temporaries, we should not only check the cache_state, but whether they alias dst or not. Bug: chromium:1088273 Change-Id: I82efa9b45e0a3d321a06efde60971ce95b21490f Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2225796 Commit-Queue: Zhi An Ng <zhin@chromium.org> Reviewed-by: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/master@{#68114}
-
Ng Zhi An authored
Making them private was a way to hide the constructor, we can explicitly delete them, which give a better compilation error message as well. Also see: https://stackoverflow.com/q/55205874 Bug: v8:10488 Change-Id: Ie9200b317e4d2f47b9e869701149960341878d3c Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2223235Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Commit-Queue: Zhi An Ng <zhin@chromium.org> Cr-Commit-Position: refs/heads/master@{#68113}
-
Clemens Backes authored
The SourcePositionTableBuilder unconditionally allocates heap memory for every Liftoff compilation. This shows up with 1-2% of compilation time in profiles. Hence move the vector contained in the SourcePositionTableBuilder into the compilation zone. Such a zone already exists for both Liftoff and TurboFan, so we can easily save allocations this way. R=thibaudm@chromium.org Bug: v8:10576 Change-Id: Ia83d05cc8c36c775ebff6ec2064e9c3f8cc4d384 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2224221 Commit-Queue: Clemens Backes <clemensb@chromium.org> Reviewed-by: Thibaud Michaud <thibaudm@chromium.org> Reviewed-by: Ross McIlroy <rmcilroy@chromium.org> Cr-Commit-Position: refs/heads/master@{#68112}
-
Dominik Inführ authored
All tests pass now with --concurrent-allocation and --local-heaps flags set to true. Bug: v8:10315 Change-Id: I03a70933aa0db4d9e74933ad2fc4cb81105cb889 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2218061Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Commit-Queue: Dominik Inführ <dinfuehr@chromium.org> Cr-Commit-Position: refs/heads/master@{#68111}
-
Junliang Yan authored
We need to reserve two pages for young objects and objects on the evacuation candidate page. Change-Id: I0c4e8f85971676c0b50dfd947678a33dd1b56084 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2224364Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Commit-Queue: Ulan Degenbaev <ulan@chromium.org> Cr-Commit-Position: refs/heads/master@{#68110}
-
Milad Farazmand authored
Port aa5bcc09 Original Commit Message: This relands commit d04b5e47. The fix here is in the assembler for pmovmskb, emit_optional_rex_32 should be called after emitting the prefix byte. Original change's description: > [wasm-simd][liftoff][ia32][x64] Implement bitmask > > Implements i8x16 i16x8 i32x4 bitmask. > > This was merged into the proposal in > https://github.com/WebAssembly/simd/pull/201/. > > Bug: v8:9909,v8:10308 > Change-Id: I882f0c2697213cdf593e745112e0897cee252009 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2222607 > Commit-Queue: Zhi An Ng <zhin@chromium.org> > Reviewed-by: Clemens Backes <clemensb@chromium.org> > Cr-Commit-Position: refs/heads/master@{#68090} R=zhin@chromium.org, joransiu@ca.ibm.com, jyan@ca.ibm.com, michael_dawson@ca.ibm.com BUG= LOG=N Change-Id: Id73795d3628067199ac6ac592a9b0b1c57fc65a4 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2226311Reviewed-by: Zhi An Ng <zhin@chromium.org> Commit-Queue: Milad Farazmand <miladfar@ca.ibm.com> Cr-Commit-Position: refs/heads/master@{#68109}
-
Anton Bikineev authored
This moves from Blink: 1) implementation of the marking write barrier; 2) WriteBarrierWorklist to Marker; 3) incremental/concurrent marking options. Bug: chromium:1056170 Change-Id: Ia3e31ffd920a99803420b1453695fe2fb8d843b8 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2218064 Commit-Queue: Anton Bikineev <bikineev@chromium.org> Reviewed-by: Omer Katz <omerkatz@chromium.org> Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Cr-Commit-Position: refs/heads/master@{#68108}
-
Ng Zhi An authored
Implement i8x16 i16x8 i32x4 bitmask for arm and arm64. The instruction sequence is the same as TurboFan, we have some special handling for getting the second temporary Q register, reuse src if possible. Bug: v8:9909,v8:10308 Change-Id: I1c6fe0d076f0e14d05c4cc532e4d976f4ebcce30 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2222608 Commit-Queue: Zhi An Ng <zhin@chromium.org> Reviewed-by: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/master@{#68107}
-
Ng Zhi An authored
This relands commit d04b5e47. The fix here is in the assembler for pmovmskb, emit_optional_rex_32 should be called after emitting the prefix byte. Original change's description: > [wasm-simd][liftoff][ia32][x64] Implement bitmask > > Implements i8x16 i16x8 i32x4 bitmask. > > This was merged into the proposal in > https://github.com/WebAssembly/simd/pull/201/. > > Bug: v8:9909,v8:10308 > Change-Id: I882f0c2697213cdf593e745112e0897cee252009 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2222607 > Commit-Queue: Zhi An Ng <zhin@chromium.org> > Reviewed-by: Clemens Backes <clemensb@chromium.org> > Cr-Commit-Position: refs/heads/master@{#68090} Bug: v8:9909, v8:10308 Change-Id: I4897585c86b87f72dc8f142b275171276d135a24 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2225090Reviewed-by: Clemens Backes <clemensb@chromium.org> Commit-Queue: Zhi An Ng <zhin@chromium.org> Cr-Commit-Position: refs/heads/master@{#68106}
-
gengjiawen authored
See: https://github.com/nodejs/node-v8/issues/158#issuecomment-636909258 Change-Id: I50c732cd682cd4627a463822a4dfd1678dff266e Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2226121Reviewed-by: Leszek Swirski <leszeks@chromium.org> Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Commit-Queue: Ulan Degenbaev <ulan@chromium.org> Cr-Commit-Position: refs/heads/master@{#68105}
-
Seth Brenith authored
This change adds more granular control to the behavior that was previously controlled by the single flag --turbo-profiling. With this change, it becomes possible to: - output information only about builtins, ignoring functions compiled at runtime - skip the very slow process of writing the schedule and disassembly for all builtins, if you only want the block counts and don't need verbose output This change also moves the output step from Shell::OnExit to Isolate::DumpAndResetStats so that it's more consistent with other features and works in hosts other than d8. Bug: v8:10470, v8:9119 Change-Id: I19b1caca3ff27a2e4a6fdc7ad2f8174f8d678b3a Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2216717Reviewed-by: Ross McIlroy <rmcilroy@chromium.org> Reviewed-by: Jakob Gruber <jgruber@chromium.org> Commit-Queue: Seth Brenith <seth.brenith@microsoft.com> Cr-Commit-Position: refs/heads/master@{#68104}
-
Jakob Gruber authored
This unifies functionality between release-mode ShortPrint and debug-mode Print: - Prefixes and suffixes are now consistent. 'u' for two-byte, '#' for internalized, 'c' for cons, '>' for thin. - Logic was simplified and is now based on 3 functions: PrefixForDebugPrint, PrintUC16, SuffixForDebugPrint. - %DebugPrint no longer interprets strings as 'code markers'. - The ancient and unused use_verbose_printer flag was removed. Bug: v8:10581 Change-Id: Iebc6a746a2683f9f5a8ef60579836e7f66a188fa Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2224868Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Commit-Queue: Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#68103}
-
George Wort authored
Display UsePositions in the intervals in live ranges in turbolizer. Uses are shown as vertical red lines. Bug: v8:7327 Change-Id: Iab8d08989b9113d1b7d393252de5988e8b25b8de Notry: true Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2224215 Commit-Queue: Santiago Aboy Solanes <solanes@chromium.org> Reviewed-by: Georg Neis <neis@chromium.org> Reviewed-by: Santiago Aboy Solanes <solanes@chromium.org> Cr-Commit-Position: refs/heads/master@{#68102}
-
Shu-yu Guo authored
https://github.com/tc39/proposal-logical-assignment/pull/24 reached consensus in June TC39. Drive-by refactoring of testing for logical assignment ops using IsInRange. Bug: v8:10579 Change-Id: I5a203ba552a905cd28f75c5d223998431a1966ce Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2225809Reviewed-by: Marja Hölttä <marja@chromium.org> Commit-Queue: Shu-yu Guo <syg@chromium.org> Cr-Commit-Position: refs/heads/master@{#68101}
-
Jakob Gruber authored
If --turbo-nci is enabled, use compare op builtins with feedback collection during generic lowering. Bug: v8:8888 Change-Id: I886020e2ee280f65388d9987c70958546f99e0f3 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2215821Reviewed-by: Georg Neis <neis@chromium.org> Commit-Queue: Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#68100}
-
Clemens Backes authored
The allocation of heap storage for the vectors shows up in profiles, and also the destruction of the contained elements. Since we already have a compilation zone available, we can easily move the vectors and all contained elements into the zone, where they will be deallocated together with all other data at once. R=thibaudm@chromium.org Bug: v8:10576 Change-Id: I2c3d318f9b19b1b8c2e4e57e7523cd1c79192cc6 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2224220Reviewed-by: Thibaud Michaud <thibaudm@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/master@{#68099}
-
Dominik Inführ authored
Cannot verify whether slots are cleared from a concurrent sweeping task, the OLD_TO_NEW remembered set is owned by the main thread. Bug: v8:10562 Change-Id: I0c880f7f96350aa35b44d2966c9621576825374c Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2215820 Commit-Queue: Dominik Inführ <dinfuehr@chromium.org> Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Cr-Commit-Position: refs/heads/master@{#68098}
-
Clemens Backes authored
Unconditionally check for errors (instead of a DCHECK), and print a better error message (including the file path) if the file cannot be opened. R=tebbi@chromium.org CC=machenbach@chromium.org Bug: chromium:1087039 Change-Id: Ia5cb76b309e78631ecf9462de6c7cd3eb4bf9e59 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2224226Reviewed-by: Tobias Tebbi <tebbi@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/master@{#68097}
-
Clemens Backes authored
This adds support for multiple isolates sharing the same module but setting different breakpoints. This is simulated by having a debugger test that runs in the "--isolates" variant, i.e. two isolates running the same test at the same time. Both isolates will set and remove breakpoints. The DebugInfo will keep a separate list of breakpoints per isolate, and when recompiling a function for debugging it will respect all breakpoints in all isolates. In order to ensure consistency if multiple isolates are setting or removing breakpoints simultaneously, we go back to a more coarse-grained locking scheme, where the DebugInfo lock is held while re-compiling Liftoff functions. While recompilation will install the code in the module-global code table and jump table (and hence all isolates will use it for future calls), only the stack of the requesting isolate is rewritten to immediately use new code. This is OK, because other isolates are not interested in the new breakpoint(s) anyway. On {SetBreakpoint}, we always need to rewrite the stack of the requesting isolate though, even if the breakpoint was set before by another isolate. Drive-by: Some fixes in SharedFunctionInfo in order to support setting breakpoints via the Debug mirror. R=thibaudm@chromium.org Bug: v8:10359 Change-Id: If659afb273260fc5e8124b4b617fb4322de473c7 Cq-Include-Trybots: luci.v8.try:v8_linux64_tsan_rel Cq-Include-Trybots: luci.v8.try:v8_linux64_tsan_isolates_rel_ng Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2218059Reviewed-by: Benedikt Meurer <bmeurer@chromium.org> Reviewed-by: Thibaud Michaud <thibaudm@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/master@{#68096}
-
Georg Neis authored
Bug: chromium:1085804 Change-Id: I98f12da97334bd5fd32bd01b1eca56be895dc0a8 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2218286 Commit-Queue: Georg Neis <neis@chromium.org> Reviewed-by: Tobias Tebbi <tebbi@chromium.org> Cr-Commit-Position: refs/heads/master@{#68095}
-