- 08 Mar, 2021 1 commit
-
-
Clemens Backes authored
This removes all includes of src/wasm from src/deoptimizer, by #if'ing out wasm-related parts. This will allow to later exclude the whole src/wasm directory from compilation. Drive-by: Inline DecodeWasmReturnKind and EncodeWasmReturnKind to avoid more #ifs. R=jgruber@chromium.org Bug: v8:11238 Change-Id: Ia49ed26fc217b3e80756a363dcd397d9060f6835 Cq-Include-Trybots: luci.v8.try:v8_linux64_no_wasm_compile_rel Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2739653Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/master@{#73261}
-
- 26 Feb, 2021 1 commit
-
-
Clemens Backes authored
This renames more fields holding "ValueKind" or methods operating on "ValueKind" to contain "kind" instead of "type". It also renames "is_reference_type" to "is_reference" on both ValueType and ValueKind, as the "_type" prefix is kind of implicit from the argument. R=manoskouk@chromium.org, jgruber@chromium.org Bug: v8:11477 Change-Id: I7809f1af6e983aebca96e03fe1fbc6ccaa22db72 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2718063 Commit-Queue: Clemens Backes <clemensb@chromium.org> Reviewed-by:
Manos Koukoutos <manoskouk@chromium.org> Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#73070}
-
- 22 Feb, 2021 1 commit
-
-
Clemens Backes authored
Backends do not care about the concrete type, they only need to know the "kind" (e.g. "ref" or "i32"). In order to prepare Liftoff to use the value kind instead of the value type for all stored data, this CL moves the kind out of the ValueType and makes it a top-level enum. R=manoskouk@chromium.org Bug: v8:11477 Change-Id: I489d6c5207e6ff1b66e2afbe78a156d66df27eb3 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2707169 Commit-Queue: Clemens Backes <clemensb@chromium.org> Reviewed-by:
Manos Koukoutos <manoskouk@chromium.org> Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#72896}
-
- 04 Feb, 2021 2 commits
-
-
Jakob Gruber authored
TranslationArrays (TA) are large and rarely used, thus could benefit from compression. This CL adds a --turbo-compress-translation-arrays flag (off by default) to experiment with that. Each optimized Code object has an associated translation array (Code->DeoptimizationData->TranslationArray). These translation arrays have roughly the same size as the Code object itself. They are used only rarely: when deoptimizing, and when traversing the stack and looking into optimized frames. Neither of these code paths are especially performance critical. TA's contain only immutable, untagged data. They are thus good candidates for compression. The trade-off is between TA memory consumption and time spent in decompression/compression. This CL keeps everything on the main thread, but it would also be possible to move compression (the more expensive operation by a factor of 5 to 10) to a worker thread. Numbers from a local Octane2 run: Sum of Code instructions sizes: 4.6MB Sum of uncompressed TA sizes: 4.1MB Sum of compressed TA sizes: 0.6MB Compression times depend on the selected compression quality, but roughly: Compression: 50ms (40us avg per compilation) Decompression: 7us avg per compilation Drive-by: Translation arrays currently use run-length encoding; I disabled this for when --turbo-compress-translation-arrays is enabled (no need to compress twice). Bug: v8:11354 Change-Id: I7828d7d91eb074816b383b02f883c5d7b7e318b7 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2652497 Commit-Queue: Jakob Gruber <jgruber@chromium.org> Reviewed-by:
Michael Stanton <mvstanton@chromium.org> Cr-Commit-Position: refs/heads/master@{#72533}
-
Sathya Gunasekaran authored
ZoneChunkList has more overhead than a simple ZoneVector for storing uint8_t bytes. Bug: v8:9684 Change-Id: I5e22286f2628ae2010086e9d82cadbebb176dbee Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2661459Reviewed-by:
Sathya Gunasekaran <gsathya@chromium.org> Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Commit-Queue: Sathya Gunasekaran <gsathya@chromium.org> Cr-Commit-Position: refs/heads/master@{#72525}
-
- 25 Jan, 2021 1 commit
-
-
Jakob Gruber authored
The final CL of this chain, this extracts translation opcodes into the TranslationOpcode class, and merges logic for TranslationArray creation into TranslationArrayBuilder. Drive-by: Pull TranslationArray printing logic into translation-state.cc. Bug: v8:11332 Change-Id: Ia4bbb6cdd15ea3318dfb9b7edb6eb881530dda54 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2642254 Commit-Queue: Jakob Gruber <jgruber@chromium.org> Reviewed-by:
Nico Hartmann <nicohartmann@chromium.org> Cr-Commit-Position: refs/heads/master@{#72278}
-
- 21 Jan, 2021 1 commit
-
-
Jakob Gruber authored
deoptimized-frame-info: Used only by the debugger. translated-state: Combines translations and current frame states to describe in- and output frames. translation-array: Utils for accessing the on-heap TranslationArray object. Bug: v8:11332 Change-Id: I86757bed370d6d9e493862eb24a9e92533f80933 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2640414 Commit-Queue: Jakob Gruber <jgruber@chromium.org> Reviewed-by:
Nico Hartmann <nicohartmann@chromium.org> Cr-Commit-Position: refs/heads/master@{#72229}
-