- 17 Feb, 2022 2 commits
-
-
Milad Fa authored
Change-Id: I86f34d698bf34590359a980282fa60d6501a6da9 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3469628Reviewed-by:
Junliang Yan <junyan@redhat.com> Commit-Queue: Milad Farazmand <mfarazma@redhat.com> Cr-Commit-Position: refs/heads/main@{#79157}
-
Milad Fa authored
Change-Id: Id5295f5afe3bc850f2e8726d696f42fd26f07a51 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3470565Reviewed-by:
Junliang Yan <junyan@redhat.com> Commit-Queue: Milad Farazmand <mfarazma@redhat.com> Cr-Commit-Position: refs/heads/main@{#79152}
-
- 16 Feb, 2022 2 commits
-
-
Milad Fa authored
Change-Id: I45f3379b3656ee2bc939c97c37d3f15bd730de5a Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3469177Reviewed-by:
Junliang Yan <junyan@redhat.com> Commit-Queue: Milad Farazmand <mfarazma@redhat.com> Cr-Commit-Position: refs/heads/main@{#79132}
-
Milad Fa authored
Change-Id: I0d6258cae0e75b6bd4916cb4c559161f7eac2170 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3465739Reviewed-by:
Junliang Yan <junyan@redhat.com> Commit-Queue: Milad Farazmand <mfarazma@redhat.com> Cr-Commit-Position: refs/heads/main@{#79128}
-
- 15 Feb, 2022 1 commit
-
-
Milad Fa authored
Change-Id: I809ebfb3e7c11a7cf61873043abae85dc069ed66 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3464914Reviewed-by:
Junliang Yan <junyan@redhat.com> Commit-Queue: Milad Farazmand <mfarazma@redhat.com> Cr-Commit-Position: refs/heads/main@{#79108}
-
- 11 Feb, 2022 2 commits
-
-
Milad Fa authored
Change-Id: I26a9c7567c36422c01c089d9f71411b3e73c681d Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3457684Reviewed-by:
Junliang Yan <junyan@redhat.com> Commit-Queue: Milad Farazmand <mfarazma@redhat.com> Cr-Commit-Position: refs/heads/main@{#79057}
-
Milad Fa authored
Change-Id: I39049c88f48c81b2f8ce84e9589e05405abce3a6 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3453783Reviewed-by:
Junliang Yan <junyan@redhat.com> Commit-Queue: Milad Farazmand <mfarazma@redhat.com> Cr-Commit-Position: refs/heads/main@{#79056}
-
- 10 Feb, 2022 2 commits
-
-
Thibaud Michaud authored
R=ahaas@chromium.org Bug: chromium:1294384 Change-Id: Iaf20d01b00966ef3dc0c8b38f520663b8ca75f8b Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3451715Reviewed-by:
Andreas Haas <ahaas@chromium.org> Commit-Queue: Thibaud Michaud <thibaudm@chromium.org> Cr-Commit-Position: refs/heads/main@{#79027}
-
Milad Fa authored
Change-Id: If7a0742b694d3dc475442a6aee3f6c967291eda1 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3451360Reviewed-by:
Junliang Yan <junyan@redhat.com> Commit-Queue: Milad Farazmand <mfarazma@redhat.com> Cr-Commit-Position: refs/heads/main@{#79020}
-
- 09 Feb, 2022 1 commit
-
-
Milad Fa authored
Change-Id: I346ff7d125027caeb14cbfead74eba0bd30c6f2d Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3450900Reviewed-by:
Junliang Yan <junyan@redhat.com> Commit-Queue: Milad Farazmand <mfarazma@redhat.com> Cr-Commit-Position: refs/heads/main@{#79018}
-
- 08 Feb, 2022 2 commits
-
-
Milad Fa authored
Change-Id: Ie5eac61238442bedcb5f9d61a67cc47de261655a Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3447692Reviewed-by:
Junliang Yan <junyan@redhat.com> Commit-Queue: Milad Farazmand <mfarazma@redhat.com> Cr-Commit-Position: refs/heads/main@{#79002}
-
Milad Fa authored
Change-Id: If5f8aef98dcfbff14ba457669c4a5fba5c9226b8 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3447376Reviewed-by:
Junliang Yan <junyan@redhat.com> Commit-Queue: Milad Farazmand <mfarazma@redhat.com> Cr-Commit-Position: refs/heads/main@{#79001}
-
- 07 Feb, 2022 1 commit
-
-
Milad Fa authored
all_ones and all_zero is also moved to the macro assembler which will be used later. Change-Id: I72787c9bb217dd78f6fd8a818b95939e936bc68d Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3439916Reviewed-by:
Junliang Yan <junyan@redhat.com> Commit-Queue: Milad Farazmand <mfarazma@redhat.com> Cr-Commit-Position: refs/heads/main@{#78982}
-
- 04 Feb, 2022 1 commit
-
-
Milad Fa authored
Change-Id: I709253796b8493cf365f21247c367974ffbb3106 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3440435Reviewed-by:
Junliang Yan <junyan@redhat.com> Commit-Queue: Milad Farazmand <mfarazma@redhat.com> Cr-Commit-Position: refs/heads/main@{#78954}
-
- 03 Feb, 2022 4 commits
-
-
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}
-
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}
-
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}
-
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}
-
- 02 Feb, 2022 2 commits
-
-
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}
-
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}
-
- 01 Feb, 2022 2 commits
-
-
Milad Fa authored
Port 276355cb Original Commit Message: The 32-bit value is zero-extended to pointer size, which is a no-op on 32-bit systems. The operation changes nothing about the signedness of the value, so the old name was a bit misleading. We also provide one unified no-op implementation for all 32-bit systems. R=clemensb@chromium.org, joransiu@ca.ibm.com, junyan@redhat.com, midawson@redhat.com BUG= LOG=N Change-Id: Ica443175725f12e44e69ad22e5fe347c56ea6c13 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3429208Reviewed-by:
Junliang Yan <junyan@redhat.com> Commit-Queue: Milad Farazmand <mfarazma@redhat.com> Cr-Commit-Position: refs/heads/main@{#78889}
-
Clemens Backes authored
The 32-bit value is zero-extended to pointer size, which is a no-op on 32-bit systems. The operation changes nothing about the signedness of the value, so the old name was a bit misleading. We also provide one unified no-op implementation for all 32-bit systems. R=thibaudm@chromium.org Bug: v8:10949, chromium:1281995 Change-Id: Id04641fe793155ea98bf878b6789e4afce3da7df Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3424493Reviewed-by:
Thibaud Michaud <thibaudm@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/main@{#78881}
-
- 31 Jan, 2022 3 commits
-
-
Milad Fa authored
Change-Id: Ide34fe0b2e5c12640a084b001ae17ff316de3f3e Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3423578Reviewed-by:
Junliang Yan <junyan@redhat.com> Commit-Queue: Milad Farazmand <mfarazma@redhat.com> Cr-Commit-Position: refs/heads/main@{#78877}
-
Milad Fa authored
Change-Id: Ia103e4010faa67daa3ebd504449e495652a55a3b Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3425098Reviewed-by:
Junliang Yan <junyan@redhat.com> Commit-Queue: Milad Farazmand <mfarazma@redhat.com> Cr-Commit-Position: refs/heads/main@{#78872}
-
Manos Koukoutos authored
Since inheritance depth of every type is known in the isorecursive hybrid type system, rtts with depth are removed. This enables simplification of type checks in Liftoff and Turbofan, as well as decoding of object allocation instructions. Bug: v8:7748 Change-Id: I6b52579b584191d92644de1c6e805d9f054641d3 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3422626Reviewed-by:
Jakob Kummerow <jkummerow@chromium.org> Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Commit-Queue: Manos Koukoutos <manoskouk@chromium.org> Cr-Commit-Position: refs/heads/main@{#78860}
-
- 28 Jan, 2022 1 commit
-
-
Milad Fa authored
Change-Id: Ie596dbb2041456e334d5cd7956a0717ccc7005c6 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3420832Reviewed-by:
Junliang Yan <junyan@redhat.com> Commit-Queue: Milad Farazmand <mfarazma@redhat.com> Cr-Commit-Position: refs/heads/main@{#78846}
-
- 27 Jan, 2022 2 commits
-
-
Manos Koukoutos authored
This CL replaces the equirecursive type system for wasm-gc with the isorecursive hybrid type system presented here: https://github.com/WebAssembly/gc/issues/257. In broad strokes, this includes the following changes: - In the module decoder, remove equirecursive types. Implement recursive type groups, subtype definitions, and function/struct/array definitions. Treat nominal modules as syntactic sugar of an isorecursive module, where all types belong in the same recursive group. - Remove rtt.sub and all related infrastructure. - Change subtyping to work with explicit supertypes only. - Add ValidSubtypeDefinition in subtyping, to check that subtype declarations are valid during decoding. - Remove the subtyping cache. - Add support for functions to have specific signature index in WasmModuleBuilder and in test-gc.cc. - Adapt tests. Current restrictions: - Recursive groups are not stored beyond decoding. - Type canonicalization is not implemented. No tests relying on types being considered identical post-canonicalization. - No cross-module subtyping is possible. Tests relying on cross-module subtyping have been commented out. Bug: v8:7748 Change-Id: I69fd04ecc5611f6230c95d5c89d1c520163fffae Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3416239Reviewed-by:
Tobias Tebbi <tebbi@chromium.org> Reviewed-by:
Jakob Kummerow <jkummerow@chromium.org> Commit-Queue: Manos Koukoutos <manoskouk@chromium.org> Cr-Commit-Position: refs/heads/main@{#78816}
-
Samuel Groß authored
This field points to the start of the WASM memory buffer for the instance, which is an ArrayBuffer and so guaranteed to be located inside the sandbox if it is enabled. As such, this simply turns the field into a sandboxed pointer field. Bug: chromium:1218005 Change-Id: I847aebf5c29fcf1ab1163809350204db5b685a10 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/+/3359630Reviewed-by:
Clemens Backes <clemensb@chromium.org> Commit-Queue: Samuel Groß <saelo@chromium.org> Cr-Commit-Position: refs/heads/main@{#78805}
-
- 26 Jan, 2022 3 commits
-
-
Milad Fa authored
Change-Id: I6c24b0930d489a9af7e877e783663f2493168604 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3417920Reviewed-by:
Junliang Yan <junyan@redhat.com> Commit-Queue: Milad Farazmand <mfarazma@redhat.com> Cr-Commit-Position: refs/heads/main@{#78793}
-
Milad Fa authored
Implementations are added to macro-assembler to be shared between liftoff and TF code generator. Change-Id: I0d1c9e8bcd2dfd89b5ed4a273821766763565f54 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3417438Reviewed-by:
Junliang Yan <junyan@redhat.com> Commit-Queue: Milad Farazmand <mfarazma@redhat.com> Cr-Commit-Position: refs/heads/main@{#78790}
-
Manos Koukoutos authored
Bug: v8:7748 Change-Id: Iee5afc3ce21f3a09fdb810beb6a73123bf21afdf Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3401594Reviewed-by:
Jakob Kummerow <jkummerow@chromium.org> Commit-Queue: Manos Koukoutos <manoskouk@chromium.org> Cr-Commit-Position: refs/heads/main@{#78766}
-
- 25 Jan, 2022 1 commit
-
-
Milad Fa authored
Implementations are added to macro-assembler to be shared between liftoff and code generator. Change-Id: I6bde65dc50f1e52b8fbca150854e0b0863dff301 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3416190Reviewed-by:
Junliang Yan <junyan@redhat.com> Commit-Queue: Milad Farazmand <mfarazma@redhat.com> Cr-Commit-Position: refs/heads/main@{#78760}
-
- 24 Jan, 2022 4 commits
-
-
Milad Fa authored
Implementations are added to macro-assembler to be shared between liftoff and code generator. Change-Id: I3fac2b82686836106cefa9a78f5feda6105679d4 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3412359Reviewed-by:
Junliang Yan <junyan@redhat.com> Commit-Queue: Milad Farazmand <mfarazma@redhat.com> Cr-Commit-Position: refs/heads/main@{#78748}
-
Milad Fa authored
Implementations are added to macro-assembler to be shared between liftoff and code generator. Change-Id: Ia26b82de3f0af076ace3d53e285917029d2d5ac4 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3407794Reviewed-by:
Junliang Yan <junyan@redhat.com> Commit-Queue: Milad Farazmand <mfarazma@redhat.com> Cr-Commit-Position: refs/heads/main@{#78746}
-
Clemens Backes authored
Moves between stack slots are rare; they mostly happen for tail calls or for multi-return blocks. The bug exists since a long time, but was only uncovered by the fuzzer now. R=ahaas@chromium.org Bug: chromium:1289678 Change-Id: Ibb0917717c6b7a468f5fcbb01be34267ba06a449 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3406749Reviewed-by:
Andreas Haas <ahaas@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/main@{#78736}
-
Manos Koukoutos authored
Changes: - Rename kWasmTrapDataSegmentDropped to the more accurate ~OutOfBounds. - Drop unused argument from {WasmCompiler::ArrayInit}. - Rename {Factory::NewWasmArray} -> NewWasmArrayFromElements. - Add error handling to {InitExprInterface}. - Allow the data count section to appear anywhere in the module under --experimental-wasm-gc. Add the same capability in wasm-module-builder.js. - Add {WasmArray::MaxLength(uint32_t element_size_log2)}. - Add kTrapArrayTooLarge in wasm-module-builder.js. - Small test improvements in gc-nominal.js. Bug: v8:7748 Change-Id: I68ca0e8b08f906503f0d82e5866395018d216382 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3401593Reviewed-by:
Jakob Kummerow <jkummerow@chromium.org> Commit-Queue: Manos Koukoutos <manoskouk@chromium.org> Cr-Commit-Position: refs/heads/main@{#78730}
-
- 17 Jan, 2022 1 commit
-
-
Milad Fa authored
Implementations are added to macro-assembler to be shared between liftoff and code generator. Change-Id: Ic38677b3266399e5e170a4b2d6a8f90d0b830d47 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3389090Reviewed-by:
Junliang Yan <junyan@redhat.com> Commit-Queue: Milad Farazmand <mfarazma@redhat.com> Cr-Commit-Position: refs/heads/main@{#78650}
-
- 14 Jan, 2022 1 commit
-
-
Milad Fa authored
Implementations are added to macro-assembler to be shared between liftoff and code generator. Change-Id: I945e312b45d87e021ffd64948bdfd69d0642fb83 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3387608Reviewed-by:
Junliang Yan <junyan@redhat.com> Commit-Queue: Milad Farazmand <mfarazma@redhat.com> Cr-Commit-Position: refs/heads/main@{#78630}
-
- 12 Jan, 2022 2 commits
-
-
Milad Fa authored
Implementations are added to macro-assembler to be shared between liftoff and code generator. Change-Id: Ibe326a80f71cad41dadbb62ebbcb9b8797f1871f Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3384540Reviewed-by:
Junliang Yan <junyan@redhat.com> Commit-Queue: Milad Farazmand <mfarazma@redhat.com> Cr-Commit-Position: refs/heads/main@{#78593}
-
Manos Koukoutos authored
Bug: v8:7748 Change-Id: I5280a22240ef5e920f701e991ed13d8b8881fc6b Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3377122Reviewed-by:
Jakob Kummerow <jkummerow@chromium.org> Commit-Queue: Manos Koukoutos <manoskouk@chromium.org> Cr-Commit-Position: refs/heads/main@{#78584}
-