- 04 Feb, 2020 20 commits
-
-
Maya Lekova authored
This reverts commit 45ea0150. Reason for revert: Breaks UBSan - https://ci.chromium.org/p/v8/builders/ci/V8%20Linux64%20UBSan/9777 Original change's description: > [wasm] Use memcmp to compare module bytes > > This is much faster than std::lexicographical_compare. > > R=clemensb@chromium.org > > Bug: chromium:1048554 > Change-Id: I5f0ba22654e172535b6e6fcf6d2a460e278d3cfd > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2036078 > Reviewed-by: Clemens Backes <clemensb@chromium.org> > Commit-Queue: Thibaud Michaud <thibaudm@chromium.org> > Cr-Commit-Position: refs/heads/master@{#66109} TBR=clemensb@chromium.org,thibaudm@chromium.org Change-Id: Ic4323af356bfd2698043b4f3ecb21367f1044446 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: chromium:1048554 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2037430Reviewed-by: Maya Lekova <mslekova@chromium.org> Commit-Queue: Maya Lekova <mslekova@chromium.org> Cr-Commit-Position: refs/heads/master@{#66111}
-
Clemens Backes authored
The debug side table is indexed by pc offset. Offsets change if breakpoints are added or removed, hence we cannot reuse the debug side table when compiling another version of the function (with a different set of breakpoints). Thus store the debug side table per code object instead of per function. R=thibaudm@chromium.org Bug: v8:10147 Change-Id: Ifd77dd8f43c9b80bc4715ffe5ca8f0adca2aaf42 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2030922Reviewed-by: Thibaud Michaud <thibaudm@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/master@{#66110}
-
Thibaud Michaud authored
This is much faster than std::lexicographical_compare. R=clemensb@chromium.org Bug: chromium:1048554 Change-Id: I5f0ba22654e172535b6e6fcf6d2a460e278d3cfd Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2036078Reviewed-by: Clemens Backes <clemensb@chromium.org> Commit-Queue: Thibaud Michaud <thibaudm@chromium.org> Cr-Commit-Position: refs/heads/master@{#66109}
-
Steve Blackburn authored
These guards are needed since the third part heaps don't use the deserialization reservation system. Bug: v8:9533 Change-Id: I0e8bd7928581979bed15abdfaf639c9fdfc8a30f Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2030908 Commit-Queue: Steve Blackburn <steveblackburn@google.com> Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Reviewed-by: Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#66108}
-
Michael Lippautz authored
Delay completing marking (and thus the atomic GC pause) during JS executions, increasing the chance to finalize the garbage collection from a task. This is beneficial as it avoids stack scanning which is expensive and can keep alive outdated objects in case of unified heap. Completing will be delayed at most by some overshoot factor (10%). In addition, the GC keeps the weighted average of previously recorded time to incremental marking task invocations and bails out if the task is expected to arrive too late. Bug: chromium:1044630 Change-Id: I10e63e6aaa88d8488d4415f311016dce2b4e62a2 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2030906 Commit-Queue: Michael Lippautz <mlippautz@chromium.org> Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Cr-Commit-Position: refs/heads/master@{#66107}
-
Michael Lippautz authored
TracedReference is supposed to be as light-weight as possible without destructor or other callbacks, essentially just representing a plain managed reference. Change-Id: Iae52cf7460e3623f1fb7d183757ecd39b2431369 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2033173 Auto-Submit: Michael Lippautz <mlippautz@chromium.org> Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Commit-Queue: Michael Lippautz <mlippautz@chromium.org> Cr-Commit-Position: refs/heads/master@{#66106}
-
Leszek Swirski authored
This CL templatizes some methods in BigInt on the Isolate type, to allow BigInts to be allocated off-thread from a BigInt literal. A necessary side-effect is exporting the Isolate class in its entirety, to allow it to be used as a specializing type for ' HandleFor' in unittests. Bug: chromium:1011762 Change-Id: I768f9e4d46a4532d6818d9a67c13801bc5952e5d Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2036079 Commit-Queue: Leszek Swirski <leszeks@chromium.org> Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/master@{#66105}
-
Michael Achenbach authored
No-Try: true Bug: chromium:99679 Change-Id: I38af71ff062cb3662034f2e52da86a8f1de9280c Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2036081Reviewed-by: Clemens Backes <clemensb@chromium.org> Reviewed-by: Benedikt Meurer <bmeurer@chromium.org> Commit-Queue: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#66104}
-
Victor Gomes authored
Different contexts have different header sizes now. The function ScopeInfo::ContextHeaderLength should be used instead of Context::MIN_CONTEXT_SLOTS. Bug: chromium:1021884 Change-Id: Ia9ea321cfb19d2a2ae0bc12c7db621f7d35b3b51 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2036074 Commit-Queue: Victor Gomes <victorgomes@chromium.org> Reviewed-by: Victor Gomes <victorgomes@chromium.org> Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Reviewed-by: Peter Marshall <petermarshall@chromium.org> Auto-Submit: Victor Gomes <victorgomes@chromium.org> Cr-Commit-Position: refs/heads/master@{#66103}
-
Clemens Backes authored
This is mostly used for regression tests which don't need that function. If we want to wrap it for inclusion in an existing test file, we can easily add a function around it, and name it properly. R=ahaas@chromium.org Bug: v8:10177 Change-Id: I2aedcdfad09fe1fe07af9f0caa2b8bd45da902f3 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2036077Reviewed-by: Andreas Haas <ahaas@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/master@{#66102}
-
Leszek Swirski authored
The Factory/OffThreadFactory allows us to cleanly separate object construction behaviour between main-thread and off-thread in a syntactically consistent way (so that methods templated on the factory type can be made to work on both). However, there are cases where we also have to access the Isolate, for handle creation or exception throwing. So far we have been pushing more and more "customization points" into the factories to allow these factory-templated methods to dispatch on this isolate behaviour via these factory methods. Unfortunately, this is an increasing layering violation between Factory and Isolate, particularly around exception handling. Now, we introduce an OffThreadIsolate, analogous to Isolate in the same way as OffThreadFactory is analogous to Factory. All methods which were templated on Factory are now templated on Isolate, and methods which used to take an Isolate, and which were recently changed to take a templated Factory, are changed/reverted to take a templated Isolate. OffThreadFactory gets an isolate() method to match Factory's. Notably, FactoryHandle is changed to "HandleFor", where the template argument can be either of the Isolate type or the Factory type (allowing us to dispatch on both depending on what is available). Bug: chromium:1011762 Change-Id: Id144176f7da534dd76f3d535ab2ade008b6845e3 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2030909 Commit-Queue: Leszek Swirski <leszeks@chromium.org> Reviewed-by: Toon Verwaest <verwaest@chromium.org> Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Cr-Commit-Position: refs/heads/master@{#66101}
-
Michael Achenbach authored
Respective differences were fixed and the suppressions didn't fire anymore according to the statistics. No-Try: true Bug: chromium:664068, chromium:667678 Change-Id: I5e1aa802e0b0288a73d0f236c154289ab45314a0 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2035878Reviewed-by: Clemens Backes <clemensb@chromium.org> Commit-Queue: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#66100}
-
Clemens Backes authored
This makes the output of --wasm-fuzzer-gen-test more useful by adding a comment at the end of each line. This prevents clang-format from breaking up individual lines. R=ahaas@chromium.org Bug: v8:10177 Change-Id: I222f7e30c84712357159e837e8b2e36737696669 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2036076Reviewed-by: Andreas Haas <ahaas@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/master@{#66099}
-
Michael Achenbach authored
TBR=mslekova@chromium.org No-Try: true Change-Id: Ib39993d6c82d499d8dc0f278cff4ec7dbfb345d0 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2036075Reviewed-by: Michael Achenbach <machenbach@chromium.org> Reviewed-by: Maya Lekova <mslekova@chromium.org> Commit-Queue: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#66098}
-
Toon Verwaest authored
This changes how we setup modules from being entirely bytecode based to a single fixed array with metadata that's passed into a runtime function DeclareModuleExports, similar to DeclareGlobals. This is preperatory work to replace the bytecode that calls those functions with explicit calls before we even start running the code. In the case of modules that will obviate the need for modules to be generators. Change-Id: Ibf1c913a9dc78041e3001b174c66ab89226d9c8e Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2030733 Commit-Queue: Toon Verwaest <verwaest@chromium.org> Reviewed-by: Leszek Swirski <leszeks@chromium.org> Reviewed-by: Georg Neis <neis@chromium.org> Cr-Commit-Position: refs/heads/master@{#66097}
-
Clemens Backes authored
This method was used to implement deserialization via the value serializer. It was deprecated since this functionality is not used any more, and hence untested. This CL cleans up by removing the deprecated method and two private helper methods. R=adamk@chromium.org Bug: v8:10155 Change-Id: I4dda1949fd4f1b499cb6f8d6e6a76b642179303a Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2033171Reviewed-by: Adam Klein <adamk@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/master@{#66096}
-
Clemens Backes authored
If we need a byte register, but {src} is none, we should definitely use another register. R=ahaas@chromium.org Bug: chromium:1048241 Fixed: chromium:1048241 Change-Id: I3396826986e1823250ad6855b84f4b05faaf3b90 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2036073Reviewed-by: Andreas Haas <ahaas@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/master@{#66095}
-
Yu Yin authored
port c10153b4 https://crrev.com/c/2023399 port 009993ad https://crrev.com/c/2014753 Bug: v8:9909 Change-Id: Ia4f54340f0c6751f14c5852688741fa8fbef1f74 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2035511Reviewed-by: Zhi An Ng <zhin@chromium.org> Commit-Queue: Yu Yin <xwafish@gmail.com> Cr-Commit-Position: refs/heads/master@{#66094}
-
v8-ci-autoroll-builder authored
Rolling v8/build: https://chromium.googlesource.com/chromium/src/build/+log/67cd3fb..2283658 Rolling v8/third_party/catapult: https://chromium.googlesource.com/catapult/+log/0b01653..ebf2bec Rolling v8/third_party/depot_tools: https://chromium.googlesource.com/chromium/tools/depot_tools/+log/906bfde..e931018 Rolling v8/tools/clang: https://chromium.googlesource.com/chromium/src/tools/clang/+log/80ad0bd..9ce85c8 TBR=machenbach@chromium.org,tmrts@chromium.org Change-Id: I1772b79cdf76f43eb1db5361f3d5ff360dbf5a82 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2035735Reviewed-by: v8-ci-autoroll-builder <v8-ci-autoroll-builder@chops-service-accounts.iam.gserviceaccount.com> Commit-Queue: v8-ci-autoroll-builder <v8-ci-autoroll-builder@chops-service-accounts.iam.gserviceaccount.com> Cr-Commit-Position: refs/heads/master@{#66093}
-
Natalie Silvanovich authored
Bug: chromium:1048354 Change-Id: Ib37c33f918e96b100926b8247a2ca034482fb978 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2028840 Commit-Queue: Natalie Silvanovich <natashenka@google.com> Reviewed-by: Toon Verwaest <verwaest@chromium.org> Cr-Commit-Position: refs/heads/master@{#66092}
-
- 03 Feb, 2020 14 commits
-
-
Michael Lippautz authored
When the embedder integrates in V8's garbage collector the performance of the atomic phase is sensitive to how much embedder memory is found through marking the overall transitive closure. Before this patch, V8 would help out tracing the embedder's heap when making progress through tasks but not on allocations. In addition, V8 would complete the garbage collection when it has observed it's own marking worklists as empty 3 times (*). This can create performance cliffs when there's a lot of work still to be done on the embedder side. This patch adds helping steps on allocation that are proportional to the bytes that V8 would otherwise process, guaranteeing some progress as long as there's V8 allocations. This allows us to remove (*). Potential Tradeoffs: - More time spent in V8's garbage collection metrics as we slightly limit the chances for the embedder to mark objects through tasks. - Prolonged V8.execute time (JS execution) + Faster progress + Less memory + Smaller atomic pause time Change-Id: I160f063209f7e129b9c884206f833706b69dadc1 Bug: chromium:1044630 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2025371 Commit-Queue: Michael Lippautz <mlippautz@chromium.org> Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Cr-Commit-Position: refs/heads/master@{#66091}
-
Ng Zhi An authored
This relands commit 7c32fa05. Some test cases need to be updated, since we will bail out to TurboFan where previously Liftoff was happy to run, when SIMD is not supported. Original change's description: > [wasm-simd][liftoff] Check CpuFeatures for SIMD support > > If Wasm simd128 is not supported on this particular hardware, we bail > out to TurboFan. > > Bug: v8:9909 > Change-Id: Ie46e154426783ba099b7c0facc906670cda1bdd0 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2029427 > Reviewed-by: Clemens Backes <clemensb@chromium.org> > Commit-Queue: Zhi An Ng <zhin@chromium.org> > Cr-Commit-Position: refs/heads/master@{#66055} Bug: v8:9909 Bug: v8:10169 Change-Id: I850e1fe6bfbd12fb2eec052aa8367624c09f7a08 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2030354 Commit-Queue: Zhi An Ng <zhin@chromium.org> Reviewed-by: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/master@{#66090}
-
Jakob Kummerow authored
After allowing larger strings on 64-bit builds, this test OOMs on Android devices that don't have enough memory. Tbr: machenbach@chromium.org Change-Id: I05c44d7074388a4306e5266ba1aa9da760c83377 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2035877Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Reviewed-by: Michael Achenbach <machenbach@chromium.org> Commit-Queue: Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/master@{#66089}
-
Ng Zhi An authored
The assembly of sqrtpd when using Sqrtpd macro was wrong, since Sqrtpd(xmm1, xmm1) will incorrect generated vsqrtpd(xmm1, xmm1, xmm1), which is nonsensical, since vsqrtpd only takes two operands. The expected instruction should be vsqrtpd(xmm1, xmm0, xmm1) in terms of the encoding, which is vsqrtpd(xmm1, xmm1). So, move sqrtpd and cvtps2dq out into their own macro list, because they have two operands in their AVX form, unlike the rest of the instructions in SSE2_INSTRUCTION_LIST. Also updated disasm and tests to use this new list. Fixed: v8:10170 Change-Id: Ia9343c9a3ae64596bbc876744556e1dcea2a443b Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2032195Reviewed-by: Deepti Gandluri <gdeepti@chromium.org> Commit-Queue: Zhi An Ng <zhin@chromium.org> Cr-Commit-Position: refs/heads/master@{#66088}
-
Ng Zhi An authored
The implementation is pretty much the same, and we instead delegate to a macro assembler to decide if we want the sse or avx instruction. This unification will simplify optimization of constant shifts later on. Bug: v8:10115 Change-Id: If9a17519a746f0a8474e75dbdebb8e4f5b0d07c4 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2026469Reviewed-by: Deepti Gandluri <gdeepti@chromium.org> Commit-Queue: Zhi An Ng <zhin@chromium.org> Cr-Commit-Position: refs/heads/master@{#66087}
-
Ng Zhi An authored
test-run-wasm-simd/RunWasm_S8x16MultiShuffleFuzz_turbofan was failing reliably with --no-enable-avx. (Even though the shuffle sequences were randomly generated, in practice we quite quickly hit a case where we will get a segfault.) For 32x4swizzle and 32x4 shuffle, they use pshufd, which can take an operand, but needs to be 16-byte aligned, which they are not, current. So force them to be registers for now. This is similar to what we do in the x64 selection too. Bug: v8:9198 Change-Id: If319ff276202d4be095714a6cb18dec0d0551efd Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2032202Reviewed-by: Deepti Gandluri <gdeepti@chromium.org> Commit-Queue: Zhi An Ng <zhin@chromium.org> Cr-Commit-Position: refs/heads/master@{#66086}
-
Michael Achenbach authored
Crashes in the presence of RangeError happen often during differential fuzzing. Until now we have ignored such cases completely. After this change we compare as much output as possible when one or both runs have crashed, dramatically increasing the coverage. No-Try: true Bug: chromium:1048099 Change-Id: I923c10e9064b5dc6cae1e39a254e221d2867e0e7 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2030914 Commit-Queue: Michael Achenbach <machenbach@chromium.org> Reviewed-by: Tamer Tas <tmrts@chromium.org> Cr-Commit-Position: refs/heads/master@{#66085}
-
Sigurd Schneider authored
This CL implements functionality to allow an embedder to mark a debug scope as terminate-on-resume. This results in a termination exception when that debug scope is left and execution is resumed. Execution of JavaScript remains possible after a debug scope is marked as terminate-on-resume (but before execution of the paused code resumes). This is used by blink to correctly prevent resuming JavaScript execution upon reload while being paused at a breakpoint. This is important for handling reloads while paused at a breakpoint in blink. The resume command terminates blink's nested message loop that is used while to keep the frame responsive while the debugger is paused. But if a reload is triggered while execution is paused on a breakpoint, but before execution is actually resumed from the breakpoint (that means before returning into the V8 JavaScript frames that are paused on the stack below the C++ frames that belong to the nested message loop), we re-enter V8 to do tear-down actions of the old frame. In this case Runtime.terminateExecution() cannot be used before Debugger.resume(), because the tear-down actions that re-enter V8 would trigger the termination exception and crash the browser (because the browser expected the tear-down to succeed). Hence we introduce this flag on V8 that says: It is OK if someone re-enters V8 (to execute JS), but upon resuming from the breakpoint (i.e. returning to the paused frames that are on the stack below), generate a termination exception. We deliberated adding a corresponding logic on the blink side (instead of V8) but we think this is the simplest solution. More details in the design doc: https://docs.google.com/document/d/1aO9v0YhoKNqKleqfACGUpwrBUayLFGqktz9ltdgKHMk Bug: chromium:1004038, chromium:1014415 Change-Id: I896692d4c21cb0acae89c1d783d37ce45b73c113 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1924366 Commit-Queue: Sigurd Schneider <sigurds@chromium.org> Reviewed-by: Toon Verwaest <verwaest@chromium.org> Reviewed-by: Dmitry Gozman <dgozman@chromium.org> Reviewed-by: Yang Guo <yangguo@chromium.org> Cr-Commit-Position: refs/heads/master@{#66084}
-
Jakob Kummerow authored
Without pointer compression, the max string length on 64-bit platforms used to be 2**30 (minus header). With pointer-compression, this was accidentally lowered to 2**28 (which is the historical limit for 32-bit platforms). This CL bumps the limit on 64-bit platforms to 2**29, which is the maximum we can support given that any heap object's size in bytes must fit into a Smi (which are now 31-bit on all 64-bit platforms, with or without pointer compression). Change-Id: I263544317d9e6137f6b6a044784a21f41a2761b0 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2030916Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Reviewed-by: Igor Sheludko <ishell@chromium.org> Commit-Queue: Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/master@{#66083}
-
Georgia Kouveli authored
Bug: v8:10026 Change-Id: I8ee836ee6298415a21cf487bc3d0e5f803fc6186 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1965590 Commit-Queue: Georgia Kouveli <georgia.kouveli@arm.com> Reviewed-by: Ross McIlroy <rmcilroy@chromium.org> Reviewed-by: Georg Neis <neis@chromium.org> Cr-Commit-Position: refs/heads/master@{#66082}
-
Thibaud Michaud authored
This is a reland of 9781aa07 Original change's description: > Reland "[wasm] Cache streaming compilation result" > > This is a reland of 015f379a > > Original change's description: > > [wasm] Cache streaming compilation result > > > > Before compiling the code section, check whether the > > bytes received so far match a cached module. If they do, delay > > compilation until we receive the full bytes, since we are likely to find > > a cache entry for them. > > > > R=clemensb@chromium.org > > > > Bug: v8:6847 > > Change-Id: Ie5170d1274da3da6d52ff1b408abc7cb441bbe3c > > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2002823 > > Commit-Queue: Thibaud Michaud <thibaudm@chromium.org> > > Reviewed-by: Clemens Backes <clemensb@chromium.org> > > Cr-Commit-Position: refs/heads/master@{#66000} > > Bug: v8:6847 > Change-Id: I0b5acffa01aeb7dade3dc966392814383d900015 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2022951 > Commit-Queue: Thibaud Michaud <thibaudm@chromium.org> > Reviewed-by: Clemens Backes <clemensb@chromium.org> > Cr-Commit-Position: refs/heads/master@{#66047} Bug: v8:6847 Change-Id: I272f56eee28010f34cc99df475164581c8b63036 Cq-Include-Trybots: luci.v8.try:v8_linux64_tsan_rel Cq-Include-Trybots: luci.v8.try:v8_linux64_msan_rel Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2030741 Commit-Queue: Thibaud Michaud <thibaudm@chromium.org> Reviewed-by: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/master@{#66081}
-
Michael Lippautz authored
Similar to other stack references they don't need to be scanned on incremental marking start. Bug: chromium:1046277 Change-Id: I9fb3ee768df0288b5a61f09e680e321a8cb7b895 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2030915Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Commit-Queue: Michael Lippautz <mlippautz@chromium.org> Cr-Commit-Position: refs/heads/master@{#66080}
-
Pierre Langlois authored
When enabling tracing with the debugger 'trace' command, enable logging everything instead of just disassembly and general purpose registers. This is not only more useful but also consistent with the --trace-sim flag. Change-Id: I4537ceed30edc63f4b3f39f1958ebef0cb303bf1 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2033172Reviewed-by: Ross McIlroy <rmcilroy@chromium.org> Commit-Queue: Pierre Langlois <pierre.langlois@arm.com> Cr-Commit-Position: refs/heads/master@{#66079}
-
Dan Elphick authored
This moves several simple StateValuesAccess methods as well as SparseInputMask::InputIterator::IsReal into their header files so they can be more easily inlined. This gives about a 7% improvement to the BackgroundSelectInstructions runtime call stat. Also marks some methods called by the new methods as V8_PRIVATE_EXPORT so component build test can build. Bug: v8:10051 Change-Id: I3e34977a4fa660d3f4f55fd4f2c0b2370d5d2bc2 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2023559Reviewed-by: Georg Neis <neis@chromium.org> Commit-Queue: Dan Elphick <delphick@chromium.org> Cr-Commit-Position: refs/heads/master@{#66078}
-
- 02 Feb, 2020 2 commits
-
-
Michael Achenbach authored
This ports: https://crrev.com/c/2026424 TBR=mslekova@chromium.org,liviurau@chromium.org No-Tree-Checks: true Bug: chromium:1000907 Change-Id: I436baadb8e8357f11a9150c5118c461b03140260 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2030907Reviewed-by: Michael Achenbach <machenbach@chromium.org> Commit-Queue: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#66077}
-
v8-ci-autoroll-builder authored
Rolling v8/build: https://chromium.googlesource.com/chromium/src/build/+log/7e7da8b..67cd3fb TBR=machenbach@chromium.org,tmrts@chromium.org Change-Id: I831ce7a7b68402df3a58806cf3548d54621c5afc Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2031826Reviewed-by: v8-ci-autoroll-builder <v8-ci-autoroll-builder@chops-service-accounts.iam.gserviceaccount.com> Commit-Queue: v8-ci-autoroll-builder <v8-ci-autoroll-builder@chops-service-accounts.iam.gserviceaccount.com> Cr-Commit-Position: refs/heads/master@{#66076}
-
- 01 Feb, 2020 1 commit
-
-
v8-ci-autoroll-builder authored
Rolling v8/build: https://chromium.googlesource.com/chromium/src/build/+log/96fd652..7e7da8b Rolling v8/third_party/catapult: https://chromium.googlesource.com/catapult/+log/a66ca23..0b01653 Rolling v8/third_party/depot_tools: https://chromium.googlesource.com/chromium/tools/depot_tools/+log/ae510e8..906bfde Rolling v8/tools/clang: https://chromium.googlesource.com/chromium/src/tools/clang/+log/23191fa..80ad0bd Rolling v8/tools/luci-go: git_revision:37a855b64d59b7f079c9a0e5368f2757099d14d3..git_revision:8c17d4a7b01d6257e927c629cc623ebc6a6b3711 Rolling v8/tools/luci-go: git_revision:37a855b64d59b7f079c9a0e5368f2757099d14d3..git_revision:8c17d4a7b01d6257e927c629cc623ebc6a6b3711 Rolling v8/tools/luci-go: git_revision:37a855b64d59b7f079c9a0e5368f2757099d14d3..git_revision:8c17d4a7b01d6257e927c629cc623ebc6a6b3711 TBR=machenbach@chromium.org,tmrts@chromium.org Change-Id: Ib1ff1120322bf8fa515b41f548693f79fa9c32ae Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2031825Reviewed-by: v8-ci-autoroll-builder <v8-ci-autoroll-builder@chops-service-accounts.iam.gserviceaccount.com> Commit-Queue: v8-ci-autoroll-builder <v8-ci-autoroll-builder@chops-service-accounts.iam.gserviceaccount.com> Cr-Commit-Position: refs/heads/master@{#66075}
-
- 31 Jan, 2020 3 commits
-
-
Ng Zhi An authored
Define a macro in code-generator-x64 to help identify cases when the shift value is an immediate/constant. In those cases we can directly emit the shifts without any masking, since the instruction selector would have modulo-ed the shift value. We also don't need any temporaries in this case. This is only x64 codegen, optimizations for other archs will come in future patches (and will probably look very similar to this). The current test case passes the shifts as an immediate, so we add a new path that loads the shift value from memory, thereby exercising the slower path of non-immediate shift value. Bug: v8:10115 Change-Id: Iaf13d81595714882a8f5418734e031b8bc654af3 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2026067Reviewed-by: Deepti Gandluri <gdeepti@chromium.org> Commit-Queue: Zhi An Ng <zhin@chromium.org> Cr-Commit-Position: refs/heads/master@{#66074}
-
Frank Tang authored
Fix changes caused by pull/75 Fix skeleton to unit code which missed the case of ...-per-percent. https://github.com/tc39/proposal-unified-intl-numberformat/pull/75 Bug: v8:10112 Change-Id: I06f4668894c95234f36944cf3dcf2b8dbafb8b8c Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2032713Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Commit-Queue: Frank Tang <ftang@chromium.org> Cr-Commit-Position: refs/heads/master@{#66073}
-
Ng Zhi An authored
This relands commit e8832647. The flaky test failures seems to be related to tiering, Liftoff generating different call descriptors from TurboFan when Simd128 is unsupported (since TurboFan will lower the graph, but Liftoff can continue running simd-call.js just fine). We temporarily disable tiering for this test, until we get a proper fix, like https://crrev.com/c/2029427/, but that fix requires this change since more tests will fail without the lowering fixed. Bug: v8:10169 Bug: v8:10154 Original change's description: > [wasm-simd] Fix scalar lowering of kParameter > > Lowers the call descriptor of a wasm function if it contains simd. > > Also fixes a couple of issues with the lowering of kParameter: > - the old_index == new_index check is incorrect, it would only work if > the s128 parameter is the first parameter > - the old_index was also not adjusted to account for Parameter[0] being > the wasm instance object > - new_index needs to be adjusted to account for the instance object too > > These fixes make it more similar to the lowering of kParameter in > int64-lowering.c. > > Also add a new mjsunit test to exercise this logic. > > Bug: v8:10154 > Change-Id: Ia767a464c26a6a78fd931eab9e6897890a0904e8 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2020521 > Commit-Queue: Zhi An Ng <zhin@chromium.org> > Reviewed-by: Deepti Gandluri <gdeepti@chromium.org> > Reviewed-by: Andreas Haas <ahaas@chromium.org> > Cr-Commit-Position: refs/heads/master@{#66032} Change-Id: I1e27825025aefc5a42aeeb87d0447d6594388fa4 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2029147Reviewed-by: Deepti Gandluri <gdeepti@chromium.org> Reviewed-by: Andreas Haas <ahaas@chromium.org> Commit-Queue: Zhi An Ng <zhin@chromium.org> Cr-Commit-Position: refs/heads/master@{#66072}
-