- 01 Apr, 2021 2 commits
-
-
Milad Fa authored
This includes the simulator, PPC64 Linux (little endian) and PPC64 AIX (Big endian) running on P9. Also enable the related simd tests for PPC64. Qfma opcodes are added to the selector as part of the enablement. Change-Id: Idf2bf2eaa9cee489e7315031976bc412358b9868 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2799942Reviewed-by:
Zhi An Ng <zhin@chromium.org> Reviewed-by:
Deepti Gandluri <gdeepti@chromium.org> Reviewed-by:
Junliang Yan <junyan@redhat.com> Commit-Queue: Milad Fa <mfarazma@redhat.com> Cr-Commit-Position: refs/heads/master@{#73782}
-
Milad Fa authored
Change-Id: If3bcdafa9be33065b96bb5737b69a095ccdba559 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2799932Reviewed-by:
Junliang Yan <junyan@redhat.com> Commit-Queue: Milad Fa <mfarazma@redhat.com> Cr-Commit-Position: refs/heads/master@{#73776}
-
- 31 Mar, 2021 1 commit
-
-
Milad Fa authored
Change-Id: Icec47ff9263368a0f061e71648e99ffbe5f1a0ea Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2798214Reviewed-by:
Junliang Yan <junyan@redhat.com> Commit-Queue: Milad Fa <mfarazma@redhat.com> Cr-Commit-Position: refs/heads/master@{#73758}
-
- 29 Mar, 2021 1 commit
-
-
Milad Fa authored
Change-Id: Id9c82a83dca73aedd3ce98b648fc195aecb00c90 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2791562Reviewed-by:
Junliang Yan <junyan@redhat.com> Commit-Queue: Milad Fa <mfarazma@redhat.com> Cr-Commit-Position: refs/heads/master@{#73714}
-
- 25 Mar, 2021 2 commits
-
-
Milad Fa authored
We will need to use both the vector multiply even and odd instructions. Change-Id: I1af3517dc3359d395682e3d661068b429edba8f1 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2785427Reviewed-by:
Junliang Yan <junyan@redhat.com> Commit-Queue: Milad Fa <mfarazma@redhat.com> Cr-Commit-Position: refs/heads/master@{#73662}
-
Sam Parker authored
Add Float32Select and Float64Select as OptionalOperators and insert these, if supported, when handling a Select expression in the wasm graph builder. FlagsContinuation have been modified to support the select operation and code generation support has been added for arm64. This improves the 'Bullet' physics benchmark by ~2-3%. Change-Id: I928c3085c9136ad8baeeb34c71c47c1c8338844c Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2763871 Commit-Queue: Martyn Capewell <martyn.capewell@arm.com> Reviewed-by:
Andreas Haas <ahaas@chromium.org> Reviewed-by:
Georg Neis <neis@chromium.org> Cr-Commit-Position: refs/heads/master@{#73657}
-
- 24 Mar, 2021 1 commit
-
-
Milad Fa authored
Change-Id: I2fe3b9431fbb22ee045090ba199bfa3b6fd5e19d Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2785424Reviewed-by:
Junliang Yan <junyan@redhat.com> Commit-Queue: Milad Fa <mfarazma@redhat.com> Cr-Commit-Position: refs/heads/master@{#73648}
-
- 22 Mar, 2021 2 commits
-
-
Milad Fa authored
Change-Id: I88af87b611415753d1063d0b203f3c846fdecd57 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2778082Reviewed-by:
Junliang Yan <junyan@redhat.com> Commit-Queue: Milad Fa <mfarazma@redhat.com> Cr-Commit-Position: refs/heads/master@{#73579}
-
Milad Fa authored
Change-Id: Icd46c44519a7cf524eba8a9ee3affdfb8f589bde Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2775716Reviewed-by:
Junliang Yan <junyan@redhat.com> Commit-Queue: Milad Fa <mfarazma@redhat.com> Cr-Commit-Position: refs/heads/master@{#73564}
-
- 18 Mar, 2021 1 commit
-
-
Milad Fa authored
Port d16eefe0 Original Commit Message: We currently canonicalize shuffles in the architecture specific instruction selector. This has the drawback that if we want to pattern match on nodes that have a shuffle as input, they need to individually canonicalize the shuffle. There can also be a subtle bug if we canonicalize the same shuffle node twice (see bug for details). This moves the canonicalization to "construction time", in wasm-compiler, when building the graph. As such, any pattern matches in instruction-selector will only need to deal with canonicalized shuffles. We introduce a new kind of parameter for shuffle nodes, ShuffleParameter, to store the 16 bytes plus a bool indicating if this is a swizzle. A swizzle essentially: inputs to the shuffle are the same or all indices only touch 1 input. We calculate this when canonicalizing, so store this bit of information inside of the node's parameter. We update the tests in x64 to handle special cases where, even though the node's inputs are not swapped (due to canonicalization), they need to be swapped for the specific instruction selected (e.g. palignr). The test data also contains canonicalized shuffles, so we have to manually canonicalize them. R=zhin@chromium.org, joransiu@ca.ibm.com, junyan@redhat.com, midawson@redhat.com BUG= LOG=N Change-Id: I9872fcdaa06739c8972f02d81e77bcbf372126c2 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2773138Reviewed-by:
Junliang Yan <junyan@redhat.com> Commit-Queue: Milad Fa <mfarazma@redhat.com> Cr-Commit-Position: refs/heads/master@{#73512}
-
- 17 Mar, 2021 2 commits
-
-
Ng Zhi An authored
We currently canonicalize shuffles in the architecture specific instruction selector. This has the drawback that if we want to pattern match on nodes that have a shuffle as input, they need to individually canonicalize the shuffle. There can also be a subtle bug if we canonicalize the same shuffle node twice (see bug for details). This moves the canonicalization to "construction time", in wasm-compiler, when building the graph. As such, any pattern matches in instruction-selector will only need to deal with canonicalized shuffles. We introduce a new kind of parameter for shuffle nodes, ShuffleParameter, to store the 16 bytes plus a bool indicating if this is a swizzle. A swizzle essentially: inputs to the shuffle are the same or all indices only touch 1 input. We calculate this when canonicalizing, so store this bit of information inside of the node's parameter. We update the tests in x64 to handle special cases where, even though the node's inputs are not swapped (due to canonicalization), they need to be swapped for the specific instruction selected (e.g. palignr). The test data also contains canonicalized shuffles, so we have to manually canonicalize them. Bug: v8:11542 Change-Id: I4e78082267bd03d6caedf43d68d81ef3f5f364a8 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2762420Reviewed-by:
Bill Budge <bbudge@chromium.org> Commit-Queue: Zhi An Ng <zhin@chromium.org> Cr-Commit-Position: refs/heads/master@{#73495}
-
Milad Fa authored
Also added multiply low/high and vector merge instructions to the simulator. Change-Id: I889004b5572ee7df75be706c424ac2e83e53e8b3 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2769058 Commit-Queue: Milad Fa <mfarazma@redhat.com> Reviewed-by:
Junliang Yan <junyan@redhat.com> Cr-Commit-Position: refs/heads/master@{#73492}
-
- 16 Mar, 2021 1 commit
-
-
Milad Fa authored
Change-Id: I575dffb8810ccc9e73cae2413c7993e0f4fdbbdd Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2764623 Commit-Queue: Milad Fa <mfarazma@redhat.com> Reviewed-by:
Junliang Yan <junyan@redhat.com> Cr-Commit-Position: refs/heads/master@{#73447}
-
- 11 Mar, 2021 1 commit
-
-
Milad Fa authored
Port 3f9ff062 Original Commit Message: This is a reland of 80f5dfda. A condition in pipeline.cc was inverted, which lead to a CSA verifier error. Original change's description: > [no-wasm] Exclude src/wasm from compilation > > This is the biggest chunk, including > - all of src/wasm, > - torque file for wasm objects, > - torque file for wasm builtins, > - wasm builtins, > - wasm runtime functions, > - int64 lowering, > - simd scala lowering, > - WasmGraphBuilder (TF graph construction for wasm), > - wasm frame types, > - wasm interrupts, > - the JSWasmCall opcode, > - wasm backing store allocation. > > Those components are all recursively entangled, so I found no way to > split this change up further. > > Some includes that were recursively included by wasm headers needed to > be added explicitly now. > > backing-store-unittest.cc is renamed to wasm-backing-store-unittest.cc > because it only tests wasm backing stores. This file is excluded from > no-wasm builds then. > > R=jkummerow@chromium.org, jgruber@chromium.org, mlippautz@chromium.org, petermarshall@chromium.org > > Bug: v8:11238 > Change-Id: I7558f2d12d2dd6c65128c4de7b79173668c80b2b > Cq-Include-Trybots: luci.v8.try:v8_linux64_no_wasm_compile_rel > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2742955 > Commit-Queue: Clemens Backes <clemensb@chromium.org> > Reviewed-by: Peter Marshall <petermarshall@chromium.org> > Reviewed-by: Toon Verwaest <verwaest@chromium.org> > Reviewed-by: Michael Lippautz <mlippautz@chromium.org> > Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> > Reviewed-by: Jakob Gruber <jgruber@chromium.org> > Cr-Commit-Position: refs/heads/master@{#73344} R=clemensb@chromium.org, joransiu@ca.ibm.com, junyan@redhat.com, midawson@redhat.com BUG= LOG=N Change-Id: I006f32407aea051c960f32942f9353f415547116 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2753143Reviewed-by:
Junliang Yan <junyan@redhat.com> Commit-Queue: Milad Fa <mfarazma@redhat.com> Cr-Commit-Position: refs/heads/master@{#73357}
-
- 10 Mar, 2021 1 commit
-
-
Ng Zhi An authored
This is done with a script that does something like: files=$(ag 'v\d\d?x\d\d?[._]?all_?true' -l) sed -i 's/V\(8x16\|16x8\|32x4\|64x2\)\([._]\?\)\([aA]ll_\?[tT]rue\)/I\1\2\3/g' $(files) sed -i 's/v\(8x16\|16x8\|32x4\|64x2\)\([._]\?\)\([aA]ll_\?[tT]rue\)/i\1\2\3/g' $(files) And manual fixups in test-run-wasm-simd.cc and wasm-opcodes-inl.h. Bug: v8:10946 Change-Id: Ib5dad388dd6dd9cd0fb575ad961dffc189a2e6ef Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2740488Reviewed-by:
Bill Budge <bbudge@chromium.org> Commit-Queue: Zhi An Ng <zhin@chromium.org> Cr-Commit-Position: refs/heads/master@{#73309}
-
- 08 Mar, 2021 1 commit
-
-
Junliang Yan authored
Port c2a1d633 Drive-by: port code-generator-s390.cc changes Change-Id: I2090cf136d62cc9db1f17d158b88a1e58cc430d9 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2740341Reviewed-by:
Milad Fa <mfarazma@redhat.com> Commit-Queue: Junliang Yan <junyan@redhat.com> Cr-Commit-Position: refs/heads/master@{#73273}
-
- 06 Mar, 2021 1 commit
-
-
Bill Budge authored
- Renames StackParameterCount to ParameterSlotCount, to avoid confusion between slots and parameters, which are not in general equivalent. - Similarly, renames StackReturnCount to ReturnSlotCount. - Adjusts the result of GetFirstUnusedStackSlot to return one more than the last slot of the argument area, not including padding. - Renames GetFirstUnusedStackSlot to GetOffsetToFirstUnusedStackSlot to reflect that the result is an offset from callee to caller frames. - GetReturnsOffset is a little clearer, with adjustment for the different semantics of GetFirstUnusedStackSlot. - Renames 'optional_padding_slot' and 'first_unused_stack_slot' variables in Tailcall codegen to reflect that these are offsets. Bug: v8:9198 Change-Id: Ib73c52710dc1f3ead640d488a6fdeb605b7b665e Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2700099 Commit-Queue: Bill Budge <bbudge@chromium.org> Reviewed-by:
Georg Neis <neis@chromium.org> Cr-Commit-Position: refs/heads/master@{#73242}
-
- 05 Mar, 2021 1 commit
-
-
Bill Budge authored
This is a reland of 352b9ecb The test/fix CL has been merged in, as the fixes to return slot accounting are needed to fix Arm64 issues turned up by the fuzzers: https://chromium-review.googlesource.com/c/v8/v8/+/2644139 The reverted fix for Wasm return slot allocation is added in patchset #2, to avoid fuzzer issues that it fixed: https://chromium-review.googlesource.com/c/v8/v8/+/2683024 TBR=neis@chromium.org Original change's description: > Reland "Reland "[compiler][wasm] Align Frame slots to value size"" > > This is a reland of 1694925c > > Minor fix to linkage for constexpr. > > TBR=ahaas@chromium.org,neis@chromium.org > > Original change's description: > > Reland "[compiler][wasm] Align Frame slots to value size" > > > > This is a reland of cddaf66c > > > > Original change's description: > > > [compiler][wasm] Align Frame slots to value size > > > > > > - Adds an AlignedSlotAllocator class and tests, to unify slot > > > allocation. This attempts to use alignment holes for smaller > > > values. > > > - Reworks Frame to use the new allocator for stack slots. > > > - Reworks LinkageAllocator to use the new allocator for stack > > > slots and for ARMv7 FP register aliasing. > > > - Fixes the RegisterAllocator to align spill slots. > > > - Fixes InstructionSelector to align spill slots. > > > > > > Bug: v8:9198 > > > > > > Change-Id: Ida148db428be89ef95de748ec5fc0e7b0358f523 > > > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2512840 > > > Commit-Queue: Bill Budge <bbudge@chromium.org> > > > Reviewed-by: Georg Neis <neis@chromium.org> > > > Reviewed-by: Andreas Haas <ahaas@chromium.org> > > > Cr-Commit-Position: refs/heads/master@{#71644} > > > > Bug: v8:9198 > > Change-Id: Ib91fa6746370c38496706341e12d05c7bf999389 > > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2633390 > > Commit-Queue: Bill Budge <bbudge@chromium.org> > > Reviewed-by: Andreas Haas <ahaas@chromium.org> > > Reviewed-by: Georg Neis <neis@chromium.org> > > Cr-Commit-Position: refs/heads/master@{#72195} > > Bug: v8:9198 > Change-Id: I91e02b823af8ec925dacf075388fb22e3eeb3384 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2640890 > Reviewed-by: Bill Budge <bbudge@chromium.org> > Commit-Queue: Bill Budge <bbudge@chromium.org> > Cr-Commit-Position: refs/heads/master@{#72209} Bug: v8:9198 Change-Id: Ia5cf63af4e5991bc7cf42da9972ffd044fc829f0 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2733177 Commit-Queue: Bill Budge <bbudge@chromium.org> Reviewed-by:
Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#73238}
-
- 04 Mar, 2021 2 commits
-
-
Milad Fa authored
Port 430407cd Original Commit Message: This is a reland of 77838343 No changes in this reland, this wasn't causing the failures, see https://crbug.com/1163833 for the actual cause. Original change's description: > [wasm-simd] Remove add horiz instructions > > Bug: v8:6020 > Change-Id: I0605798d03f2e9f9c3c07c49141289889a10a3b0 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2727204 > Reviewed-by: Deepti Gandluri <gdeepti@chromium.org> > Commit-Queue: Zhi An Ng <zhin@chromium.org> > Cr-Commit-Position: refs/heads/master@{#73180} R=zhin@chromium.org, joransiu@ca.ibm.com, junyan@redhat.com, midawson@redhat.com BUG= LOG=N Change-Id: I1d69a63c2394e8a703e1bcd8b18a4f9f666f03b5 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2737066Reviewed-by:
Junliang Yan <junyan@redhat.com> Commit-Queue: Milad Fa <mfarazma@redhat.com> Cr-Commit-Position: refs/heads/master@{#73203}
-
Milad Fa authored
Port 75d7d127 Original Commit Message: This removes many wasm-specific code paths from codegen, such that includes from src/wasm can be removed. After src/wasm is fully excluded from no-wasm builds, we can also clean up unused enum values, but for now they are still being referenced. R=clemensb@chromium.org, joransiu@ca.ibm.com, junyan@redhat.com, midawson@redhat.com BUG= LOG=N Change-Id: I009225a7e76afb31b264f79904253817ca564b57 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2736516 Commit-Queue: Milad Fa <mfarazma@redhat.com> Reviewed-by:
Junliang Yan <junyan@redhat.com> Reviewed-by:
Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/master@{#73201}
-
- 01 Mar, 2021 1 commit
-
-
Milad Fa authored
Port 7c78ad80 Original Commit Message: These were prototyped and not merged into the SIMD proposal. R=zhin@chromium.org, joransiu@ca.ibm.com, junyan@redhat.com, midawson@redhat.com BUG= LOG=N Change-Id: Ic6f604891908d0b4f1554951a57ef45e6e7d285e Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2727655Reviewed-by:
Junliang Yan <junyan@redhat.com> Commit-Queue: Milad Fa <mfarazma@redhat.com> Cr-Commit-Position: refs/heads/master@{#73106}
-
- 25 Feb, 2021 1 commit
-
-
Milad Fa authored
Port 47ffa7a5 Original Commit Message: This instruction is not in the final SIMD proposal. R=zhin@chromium.org, joransiu@ca.ibm.com, junyan@redhat.com, midawson@redhat.com BUG= LOG=N Change-Id: I7e701fb6a995fb62737e9473cdf76a33c5518cac Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2716055Reviewed-by:
Junliang Yan <junyan@redhat.com> Commit-Queue: Milad Fa <mfarazma@redhat.com> Cr-Commit-Position: refs/heads/master@{#73061}
-
- 23 Feb, 2021 2 commits
-
-
Milad Fa authored
Port 1bd29073 R=zhin@chromium.org, joransiu@ca.ibm.com, junyan@redhat.com, midawson@redhat.com BUG= LOG=N Bug: v8:11086 Change-Id: I777874397514a4cbde6b6630aff9f6804568ea95 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2715184Reviewed-by:
Junliang Yan <junyan@redhat.com> Commit-Queue: Milad Fa <mfarazma@redhat.com> Cr-Commit-Position: refs/heads/master@{#72962}
-
Bill Budge authored
This reverts commit 9da4e363. Reason for revert: Fuzzers revealed that Liftoff doesn't use the CallDescriptor when pushing arguments, breaking linkage. tbr=ahaas@chromium.org,neis@chromium.org,jgruber@chromium.org Original change's description: > Reland "Reland "Reland "[compiler][wasm] Align Frame slots to value size""" > > This is a reland of 352b9ecb > > The test/fix CL has been merged in, as the fixes to return slot > accounting are needed to fix Arm64 issues turned up by the fuzzers: > > https://chromium-review.googlesource.com/c/v8/v8/+/2644139 > > Original change's description: > > Reland "Reland "[compiler][wasm] Align Frame slots to value size"" > > > > This is a reland of 1694925c > > > > Minor fix to linkage for constexpr. > > > > TBR=ahaas@chromium.org,neis@chromium.org > > > > Original change's description: > > > Reland "[compiler][wasm] Align Frame slots to value size" > > > > > > This is a reland of cddaf66c > > > > > > Original change's description: > > > > [compiler][wasm] Align Frame slots to value size > > > > > > > > - Adds an AlignedSlotAllocator class and tests, to unify slot > > > > allocation. This attempts to use alignment holes for smaller > > > > values. > > > > - Reworks Frame to use the new allocator for stack slots. > > > > - Reworks LinkageAllocator to use the new allocator for stack > > > > slots and for ARMv7 FP register aliasing. > > > > - Fixes the RegisterAllocator to align spill slots. > > > > - Fixes InstructionSelector to align spill slots. > > > > > > > > Bug: v8:9198 > > > > > > > > Change-Id: Ida148db428be89ef95de748ec5fc0e7b0358f523 > > > > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2512840 > > > > Commit-Queue: Bill Budge <bbudge@chromium.org> > > > > Reviewed-by: Georg Neis <neis@chromium.org> > > > > Reviewed-by: Andreas Haas <ahaas@chromium.org> > > > > Cr-Commit-Position: refs/heads/master@{#71644} > > > > > > Bug: v8:9198 > > > Change-Id: Ib91fa6746370c38496706341e12d05c7bf999389 > > > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2633390 > > > Commit-Queue: Bill Budge <bbudge@chromium.org> > > > Reviewed-by: Andreas Haas <ahaas@chromium.org> > > > Reviewed-by: Georg Neis <neis@chromium.org> > > > Cr-Commit-Position: refs/heads/master@{#72195} > > > > Bug: v8:9198 > > Change-Id: I91e02b823af8ec925dacf075388fb22e3eeb3384 > > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2640890 > > Reviewed-by: Bill Budge <bbudge@chromium.org> > > Commit-Queue: Bill Budge <bbudge@chromium.org> > > Cr-Commit-Position: refs/heads/master@{#72209} > > Bug: v8:9198 > Change-Id: I8258f87463f66417c7028b9a1fed4b9b6d82a3be > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2669892 > Reviewed-by: Georg Neis <neis@chromium.org> > Reviewed-by: Andreas Haas <ahaas@chromium.org> > Commit-Queue: Bill Budge <bbudge@chromium.org> > Cr-Commit-Position: refs/heads/master@{#72506} Bug: v8:9198 Change-Id: I7f344e4d018ce3c02333b0b08efeecdd8cddf082 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2713207Reviewed-by:
Bill Budge <bbudge@chromium.org> Reviewed-by:
Zhi An Ng <zhin@chromium.org> Reviewed-by:
Adam Klein <adamk@chromium.org> Commit-Queue: Bill Budge <bbudge@chromium.org> Cr-Commit-Position: refs/heads/master@{#72937}
-
- 17 Feb, 2021 1 commit
-
-
Milad Fa authored
Bug: v8:11416 Change-Id: I0c993ee564358f5c5f8880cbae1bce9ff2128087 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2698308 Commit-Queue: Milad Fa <mfarazma@redhat.com> Reviewed-by:
Junliang Yan <junyan@redhat.com> Cr-Commit-Position: refs/heads/master@{#72798}
-
- 16 Feb, 2021 3 commits
-
-
Milad Fa authored
Bug: v8:11415 Change-Id: I0101d88d19e5cad20d5f0fa6926cf0ebd9d000e9 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2698091 Commit-Queue: Milad Fa <mfarazma@redhat.com> Reviewed-by:
Joran Siu <joransiu@ca.ibm.com> Cr-Commit-Position: refs/heads/master@{#72796}
-
Milad Fa authored
Change-Id: I66c3dc4a92f814b7ee1771136a5ab794bae9cd98 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2697649Reviewed-by:
Junliang Yan <junyan@redhat.com> Commit-Queue: Milad Fa <mfarazma@redhat.com> Cr-Commit-Position: refs/heads/master@{#72786}
-
Andreas Haas authored
Bug: v8:11384 Change-Id: I08bf27af977e94e6d441a83a62cae49eeaf856e8 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2697198Reviewed-by:
Georg Neis <neis@chromium.org> Commit-Queue: Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#72776}
-
- 09 Feb, 2021 2 commits
-
-
Milad Fa authored
Port 257c303f R=zhin@chromium.org, joransiu@ca.ibm.com, junyan@redhat.com, midawson@redhat.com BUG= LOG=N Change-Id: I47fd3af2d1382ec12fcf64ca6eee72d3d41050bb Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2685120Reviewed-by:
Zhi An Ng <zhin@chromium.org> Commit-Queue: Milad Fa <mfarazma@redhat.com> Cr-Commit-Position: refs/heads/master@{#72608}
-
Milad Fa authored
Port 3b6eb335 Original Commit Message: Prototype these 6 instructions on arm: - f64x2.convert_low_i32x4_s - f64x2.convert_low_i32x4_u - i32x4.trunc_sat_f64x2_s_zero - i32x4.trunc_sat_f64x2_u_zero - f32x4.demote_f64x2_zero - f64x2.promote_low_f32x4 For all these instructions we rely on having Q registers that map to S registers, which means we can only use q0 to q7. We fix the src/dst to q0 arbitrarily. R=zhin@chromium.org, joransiu@ca.ibm.com, junyan@redhat.com, midawson@redhat.com BUG= LOG=N Bug: v8:11265 Change-Id: Ibef0b05fe1066cd79ddcda12787441b09cc8ede2 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2684360Reviewed-by:
Junliang Yan <junyan@redhat.com> Commit-Queue: Milad Fa <mfarazma@redhat.com> Cr-Commit-Position: refs/heads/master@{#72600}
-
- 03 Feb, 2021 3 commits
-
-
Milad Fa authored
Port 8798b3ef Port 1d3c80d3 Original Commit Message: - Fixes some incorrect assumptions about padding in the code generation. Slots may have apparent extra padding when allocation fragments go unused. - Reworks 32 bit push code to simplify skipping slot gaps when 'push' instructions are used. - Adds a ElementSizeInPointers function on machine representations. R=bbudge@chromium.org, joransiu@ca.ibm.com, junyan@redhat.com, midawson@redhat.com BUG= LOG=N Change-Id: I076ae8396434610c52fed040ace5e0f49ea3ef88 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2673142 Commit-Queue: Milad Fa <mfarazma@redhat.com> Reviewed-by:
Junliang Yan <junyan@redhat.com> Cr-Commit-Position: refs/heads/master@{#72516}
-
Milad Fa authored
Implementation for PPC will be added in a later CL. Port dd90d107 Original Commit Message: Code sequence from https://github.com/WebAssembly/simd/pull/379, and exactly the same as x64, with minor tweaks for ExternalReferenceAsOperand. R=zhin@chromium.org, joransiu@ca.ibm.com, junyan@redhat.com, midawson@redhat.com BUG= LOG=N Change-Id: I2be8a9cf04d0b327c15f47c2575877925238353c Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2672706Reviewed-by:
Junliang Yan <junyan@redhat.com> Commit-Queue: Milad Fa <mfarazma@redhat.com> Cr-Commit-Position: refs/heads/master@{#72510}
-
Bill Budge authored
This is a reland of 352b9ecb The test/fix CL has been merged in, as the fixes to return slot accounting are needed to fix Arm64 issues turned up by the fuzzers: https://chromium-review.googlesource.com/c/v8/v8/+/2644139 Original change's description: > Reland "Reland "[compiler][wasm] Align Frame slots to value size"" > > This is a reland of 1694925c > > Minor fix to linkage for constexpr. > > TBR=ahaas@chromium.org,neis@chromium.org > > Original change's description: > > Reland "[compiler][wasm] Align Frame slots to value size" > > > > This is a reland of cddaf66c > > > > Original change's description: > > > [compiler][wasm] Align Frame slots to value size > > > > > > - Adds an AlignedSlotAllocator class and tests, to unify slot > > > allocation. This attempts to use alignment holes for smaller > > > values. > > > - Reworks Frame to use the new allocator for stack slots. > > > - Reworks LinkageAllocator to use the new allocator for stack > > > slots and for ARMv7 FP register aliasing. > > > - Fixes the RegisterAllocator to align spill slots. > > > - Fixes InstructionSelector to align spill slots. > > > > > > Bug: v8:9198 > > > > > > Change-Id: Ida148db428be89ef95de748ec5fc0e7b0358f523 > > > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2512840 > > > Commit-Queue: Bill Budge <bbudge@chromium.org> > > > Reviewed-by: Georg Neis <neis@chromium.org> > > > Reviewed-by: Andreas Haas <ahaas@chromium.org> > > > Cr-Commit-Position: refs/heads/master@{#71644} > > > > Bug: v8:9198 > > Change-Id: Ib91fa6746370c38496706341e12d05c7bf999389 > > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2633390 > > Commit-Queue: Bill Budge <bbudge@chromium.org> > > Reviewed-by: Andreas Haas <ahaas@chromium.org> > > Reviewed-by: Georg Neis <neis@chromium.org> > > Cr-Commit-Position: refs/heads/master@{#72195} > > Bug: v8:9198 > Change-Id: I91e02b823af8ec925dacf075388fb22e3eeb3384 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2640890 > Reviewed-by: Bill Budge <bbudge@chromium.org> > Commit-Queue: Bill Budge <bbudge@chromium.org> > Cr-Commit-Position: refs/heads/master@{#72209} Bug: v8:9198 Change-Id: I8258f87463f66417c7028b9a1fed4b9b6d82a3be Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2669892Reviewed-by:
Georg Neis <neis@chromium.org> Reviewed-by:
Andreas Haas <ahaas@chromium.org> Commit-Queue: Bill Budge <bbudge@chromium.org> Cr-Commit-Position: refs/heads/master@{#72506}
-
- 01 Feb, 2021 1 commit
-
-
Milad Fa authored
Port 6d3a53e7 Original Commit Message: This is a reland of commit 9c09c227. The fix for gc stress failure is merged: https://crrev.com/c/2656857. Original change's description: > Bug: v8:11331 > Change-Id: Ie394ec841a1a1c4030c4f589eac2cee8a6a2a1f9 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2639033 > Reviewed-by: Georg Neis <neis@chromium.org> > Reviewed-by: Deepti Gandluri <gdeepti@chromium.org> > Commit-Queue: Zhi An Ng <zhin@chromium.org> > Cr-Commit-Position: refs/heads/master@{#72304} R=zhin@chromium.org, joransiu@ca.ibm.com, junyan@redhat.com, midawson@redhat.com BUG= LOG=N Change-Id: I68991b81c18e06714d272f019dab7994419692bb Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2665894Reviewed-by:
Junliang Yan <junyan@redhat.com> Commit-Queue: Milad Fa <mfarazma@redhat.com> Cr-Commit-Position: refs/heads/master@{#72467}
-
- 30 Jan, 2021 1 commit
-
-
Bill Budge authored
This reverts commit 352b9ecb. Reason for revert: fuzzers turned up more problems: https://bugs.chromium.org/p/chromium/issues/detail?id=1171759 https://bugs.chromium.org/p/chromium/issues/detail?id=1171846 tbr=ahaas@chromium.org,neis@chromium.org Original change's description: > Reland "Reland "[compiler][wasm] Align Frame slots to value size"" > > This is a reland of 1694925c > > Minor fix to linkage for constexpr. > > TBR=ahaas@chromium.org,neis@chromium.org > > Original change's description: > > Reland "[compiler][wasm] Align Frame slots to value size" > > > > This is a reland of cddaf66c > > > > Original change's description: > > > [compiler][wasm] Align Frame slots to value size > > > > > > - Adds an AlignedSlotAllocator class and tests, to unify slot > > > allocation. This attempts to use alignment holes for smaller > > > values. > > > - Reworks Frame to use the new allocator for stack slots. > > > - Reworks LinkageAllocator to use the new allocator for stack > > > slots and for ARMv7 FP register aliasing. > > > - Fixes the RegisterAllocator to align spill slots. > > > - Fixes InstructionSelector to align spill slots. > > > > > > Bug: v8:9198 > > > > > > Change-Id: Ida148db428be89ef95de748ec5fc0e7b0358f523 > > > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2512840 > > > Commit-Queue: Bill Budge <bbudge@chromium.org> > > > Reviewed-by: Georg Neis <neis@chromium.org> > > > Reviewed-by: Andreas Haas <ahaas@chromium.org> > > > Cr-Commit-Position: refs/heads/master@{#71644} > > > > Bug: v8:9198 > > Change-Id: Ib91fa6746370c38496706341e12d05c7bf999389 > > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2633390 > > Commit-Queue: Bill Budge <bbudge@chromium.org> > > Reviewed-by: Andreas Haas <ahaas@chromium.org> > > Reviewed-by: Georg Neis <neis@chromium.org> > > Cr-Commit-Position: refs/heads/master@{#72195} > > Bug: v8:9198 > Change-Id: I91e02b823af8ec925dacf075388fb22e3eeb3384 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2640890 > Reviewed-by: Bill Budge <bbudge@chromium.org> > Commit-Queue: Bill Budge <bbudge@chromium.org> > Cr-Commit-Position: refs/heads/master@{#72209} TBR=bbudge@chromium.org,neis@chromium.org,ahaas@chromium.org # Not skipping CQ checks because original CL landed > 1 day ago. Bug: v8:9198 Change-Id: Ifee566e3e82f2e774525996b038ce135190d0be1 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2660378 Commit-Queue: Bill Budge <bbudge@chromium.org> Reviewed-by:
Bill Budge <bbudge@chromium.org> Cr-Commit-Position: refs/heads/master@{#72447}
-
- 29 Jan, 2021 1 commit
-
-
Thibaud Michaud authored
MiscField was still used in places where it should be replaced with the new AccessModeField, to avoid conflicts with the LaneSizeField. LaneSizeField is only used on arm64, but update other architectures too for consistency. Bug: v8:11098 Change-Id: Ib012ab7b1243f3bd586a8d824ca686d914f482bb Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2658322Reviewed-by:
Nico Hartmann <nicohartmann@chromium.org> Commit-Queue: Thibaud Michaud <thibaudm@chromium.org> Cr-Commit-Position: refs/heads/master@{#72424}
-
- 27 Jan, 2021 1 commit
-
-
Milad Fa authored
Port 848137c4 Original Commit Message: Define a new macro list, since this has 1 immediate operand (lane index) compared to other SIMD load/stores. Also remove all the ifdef guards. R=zhin@chromium.org, joransiu@ca.ibm.com, junyan@redhat.com, midawson@redhat.com BUG= LOG=N Bug: v8:10975 Change-Id: I5eb08035c178808fb5033d001e0800956105c8f1 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2654186Reviewed-by:
Junliang Yan <junyan@redhat.com> Commit-Queue: Milad Fa <mfarazma@redhat.com> Cr-Commit-Position: refs/heads/master@{#72381}
-
- 26 Jan, 2021 1 commit
-
-
Milad Fa authored
Port 906b9644 Original Commit Message: This is merged into the proposal: https://github.com/WebAssembly/simd/issues/419#issuecomment-765675472. R=zhin@chromium.org, joransiu@ca.ibm.com, junyan@redhat.com, midawson@redhat.com BUG= LOG=N Change-Id: I801c4337e2ea4671ef82cb1244b8da251d56fc2f Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2650242Reviewed-by:
Zhi An Ng <zhin@chromium.org> Commit-Queue: Milad Fa <mfarazma@redhat.com> Cr-Commit-Position: refs/heads/master@{#72341}
-
- 22 Jan, 2021 1 commit
-
-
Milad Fa authored
Port ec8fbed7 Original Commit Message: These instructions were accepted into the proposal: https://github.com/WebAssembly/simd/pull/290 R=zhin@chromium.org, joransiu@ca.ibm.com, junyan@redhat.com, midawson@redhat.com BUG= LOG=N Change-Id: I69bbe90ab3af30d7748332a7e99b7812c95f96b4 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2644939Reviewed-by:
Junliang Yan <junyan@redhat.com> Reviewed-by:
Milad Fa <mfarazma@redhat.com> Commit-Queue: Milad Fa <mfarazma@redhat.com> Cr-Commit-Position: refs/heads/master@{#72257}
-
- 21 Jan, 2021 1 commit
-
-
Milad Fa authored
Code fo Instruction Selection is added to the comments and should be added when opcode is moved out of being a prototype. Bug: v8:10983 Change-Id: I55948208e0ba0e903b267e0ca3e5815cb673d264 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2642155Reviewed-by:
Junliang Yan <junyan@redhat.com> Commit-Queue: Milad Fa <mfarazma@redhat.com> Cr-Commit-Position: refs/heads/master@{#72241}
-