- 25 May, 2021 2 commits
-
-
Milad Fa authored
This CL assures builds with "v8_enable_webassembly = false" compile successfully. It is an addition on top of this original port: e73c7b21 Change-Id: Ic27b3006087e4d4de6fe599a9f469d1f80cf8a8f Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2918136Reviewed-by:
Junliang Yan <junyan@redhat.com> Commit-Queue: Milad Fa <mfarazma@redhat.com> Cr-Commit-Position: refs/heads/master@{#74769}
-
Milad Fa authored
Change-Id: Idb38b9f97b5a507abd6f65f0d6c126255069f979 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2917914Reviewed-by:
Junliang Yan <junyan@redhat.com> Commit-Queue: Milad Fa <mfarazma@redhat.com> Cr-Commit-Position: refs/heads/master@{#74765}
-
- 21 Apr, 2021 1 commit
-
-
Manos Koukoutos authored
Bug: v8:11510 Change-Id: I6cb4bdb45a735bd85adfa02b92f01cd144517560 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2840324Reviewed-by:
Georg Neis <neis@chromium.org> Commit-Queue: Manos Koukoutos <manoskouk@chromium.org> Cr-Commit-Position: refs/heads/master@{#74084}
-
- 19 Apr, 2021 1 commit
-
-
Milad Fa authored
Port ede5e814 Original Commit Message: This reverts commit d16eefe0. It is not correct to check for node equality during the graph construction phase, because we can have optimizations that will combine same nodes. So it can happen that in wasm-compiler, the inputs to shuffle are not the same, so we canonicalize using that knowledge that it will not be the same, and allow indices > 15. But later we can have optimizations that combine the 2 inputs (e.g. splat of the same constants), and the instruction selector will see that the input nodes are the same. R=zhin@chromium.org, joransiu@ca.ibm.com, junyan@redhat.com, midawson@redhat.com BUG= LOG=N Change-Id: I0d388c814dc1c45f978d749218b8120bfd53bb03 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2835397Reviewed-by:
Junliang Yan <junyan@redhat.com> Commit-Queue: Milad Fa <mfarazma@redhat.com> Cr-Commit-Position: refs/heads/master@{#74042}
-
- 13 Apr, 2021 1 commit
-
-
Andreas Haas authored
R=thibaudm@chromium.org, jgruber@chromium.org Bug: v8:10740 Change-Id: Iceb20f00f6f8505885856400a0c0228708ff3979 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2807610 Commit-Queue: Andreas Haas <ahaas@chromium.org> Reviewed-by:
Thibaud Michaud <thibaudm@chromium.org> Reviewed-by:
Georg Neis <neis@chromium.org> Cr-Commit-Position: refs/heads/master@{#73933}
-
- 12 Apr, 2021 1 commit
-
-
Milad Fa authored
Port 5e0b94c4 Original Commit Message: This CL adds features to pack/unpack map words. Currently V8 cannot store extra metadata in object headers -- because V8 objects do not have a proper header, but only a map pointer at the start of the object. To store per-object metadata like marking data, a side table is required as the per-object metadata storage. This CL enables V8 to use higher unused bits in a 64-bit map word as per-object metadata storage. Map pointer stores come with an extra step to encode the metadata into the pointer (we call it "map packing"). Map pointer loads will also remove the metadata bits as well (we call it "map packing"). Since the map word is no longer a valid pointer after packing, we also change the tag of the packed map word to make it looks like a Smi. This helps various GC and barrier code to correctly skip them instead of blindly dereferencing this invalid pointer. A ninja flag `v8_enable_map_packing` is provided to turn this map-packing feature on and off. It is disabled by default. * Only works on x64 platform, with `v8_enable_pointer_compression` set to `false` R=wenyu.zhao@anu.edu.au, joransiu@ca.ibm.com, junyan@redhat.com, midawson@redhat.com BUG= LOG=N Change-Id: I4a13093e7b20bb38990d947c697008a920cfe715 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2821649Reviewed-by:
Junliang Yan <junyan@redhat.com> Commit-Queue: Milad Fa <mfarazma@redhat.com> Cr-Commit-Position: refs/heads/master@{#73923}
-
- 23 Mar, 2021 1 commit
-
-
Manos Koukoutos authored
LoadImmutable represents a load from a position in memory that is known to be immutable, e.g. an immutable IsolateRoot or an immutable field of a WasmInstanceObject. Because the returned value cannot change through the execution of a function, LoadImmutable is a pure operator and does not have effect or control edges. This will allow more aggressive optimizations of loads of fields of the Isolate and Instance that are known to be immutable. Requires that the memory in question has been initialized at function start even through inlining. Note: We may reconsider this approach once we have escape analysis for wasm, and replace it with immutable load/initialize operators that live inside the effect chain and are less restriced. Bug: v8:11510 Change-Id: I5e8e4f27d7008f39f01175ffa95a9c531ba63e66 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2775568Reviewed-by:
Andreas Haas <ahaas@chromium.org> Reviewed-by:
Georg Neis <neis@chromium.org> Commit-Queue: Manos Koukoutos <manoskouk@chromium.org> Cr-Commit-Position: refs/heads/master@{#73594}
-
- 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}
-
- 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}
-
- 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}
-
- 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 2 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}
-
- 10 Feb, 2021 1 commit
-
-
Milad Fa authored
Vector register lane numbers on IBM machines are reversed compared to x64. For example, doing an I32x4 extract_lane with lane number 0 on x64 will be equal to lane number 3 on IBM machines. Vector registers are only used for compiling Wasm code at the moment. Wasm is also little endian enforced. On s390 native, we manually do a reverse byte whenever values are loaded/stored from memory to a Simd register. On the simulator however, we do not reverse the bytes and data is just copied as is from one memory location to another location which represents a register. To keep the Wasm simulation accurate, we need to make sure accessing a lane is correctly simulated and as such we reverse the lane number on the getters and setters. We need to be careful when getting/setting values on the Low or High side of a simulated register. In the simulation, "Low" is equal to the MSB and "High" is equal to the LSB on memory. As a result, many of the "#ifdef V8_TARGET_BIG_ENDIAN" blocks on Simd opcodes are not needed anymore as we are now simulating native behaviour. Change-Id: Idfa80cdef7382febb4311c75eb6d3e1d110141fa Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2687756 Commit-Queue: Milad Fa <mfarazma@redhat.com> Reviewed-by:
Junliang Yan <junyan@redhat.com> Reviewed-by:
Joran Siu <joransiu@ca.ibm.com> Reviewed-by:
Milad Fa <mfarazma@redhat.com> Cr-Commit-Position: refs/heads/master@{#72642}
-
- 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 2 commits
-
-
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}
-
- 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
-
-
Bill Budge authored
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/+/2640890Reviewed-by:
Bill Budge <bbudge@chromium.org> Commit-Queue: Bill Budge <bbudge@chromium.org> Cr-Commit-Position: refs/heads/master@{#72209}
-
- 20 Jan, 2021 2 commits
-
-
Clemens Backes authored
This reverts commit 1694925c. Reason for revert: Link error in CFI release build: https://ci.chromium.org/ui/p/v8/builders/ci/V8%20Clusterfuzz%20Linux64%20CFI%20-%20release%20builder/19756/overview 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} TBR=bbudge@chromium.org,neis@chromium.org,ahaas@chromium.org Change-Id: Ic94763925195c3a3552930e61a0eb0b7f0c0c756 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: v8:9198 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2640474Reviewed-by:
Clemens Backes <clemensb@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/master@{#72197}
-
Bill Budge authored
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}
-
- 18 Jan, 2021 1 commit
-
-
Victor Gomes authored
Removes: - v8_disable_arguments_adaptor GN flag - ArgumentsAdaptorTrampoline - ArgumentsAdaptorFrame class Change-Id: I382ebe6c25c3c172bee5df3e86e762fca10fa392 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2622911Reviewed-by:
Toon Verwaest <verwaest@chromium.org> Reviewed-by:
Igor Sheludko <ishell@chromium.org> Reviewed-by:
Andreas Haas <ahaas@chromium.org> Reviewed-by:
Georg Neis <neis@chromium.org> Commit-Queue: Victor Gomes <victorgomes@chromium.org> Cr-Commit-Position: refs/heads/master@{#72133}
-
- 14 Jan, 2021 1 commit
-
-
Milad Fa authored
Port f9e76d6d Original Commit Message: - Modify InstructionSelectors to track both padding and multiple slot values to correctly adjust stack pointers when pushing arguments. Pass stack offset as an immediate operand. - Modify CodeGenerators to handle alignment padding. R=bbudge@chromium.org, joransiu@ca.ibm.com, junyan@redhat.com, midawson@redhat.com BUG= LOG=N Change-Id: I639b6394f33e5e694882cb98c43b58edf5d93775 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2629947Reviewed-by:
Junliang Yan <junyan@redhat.com> Commit-Queue: Milad Fa <mfarazma@redhat.com> Cr-Commit-Position: refs/heads/master@{#72104}
-
- 13 Jan, 2021 1 commit
-
-
Milad Fa authored
kS390_Push will also reserve the needed space on the stack so there is no need for StackClaim anymore. Change-Id: I0f7f410d7dbd8ec880335fcbdf29f492d3dd3858 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2627867Reviewed-by:
Junliang Yan <junyan@redhat.com> Commit-Queue: Milad Fa <mfarazma@redhat.com> Cr-Commit-Position: refs/heads/master@{#72080}
-
- 12 Jan, 2021 2 commits
-
-
Milad Fa authored
Also fix the simulator to avoid overrating dst register during VectorPack. Bug: v8:10971 Change-Id: I137e3cf4f73ddfc12c50099d519668858f95ecf3 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2625487Reviewed-by:
Junliang Yan <junyan@redhat.com> Commit-Queue: Milad Fa <mfarazma@redhat.com> Cr-Commit-Position: refs/heads/master@{#72051}
-
Milad Fa authored
Port acbdaa4c Original Commit Message: Also remove some ifdefs since it is implemented on all architectures. R=zhin@chromium.org, joransiu@ca.ibm.com, junyan@redhat.com, midawson@redhat.com BUG= LOG=N Change-Id: I2ec501c15dda5a0aa970b8b7d18a995e60f71b60 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2624747Reviewed-by:
Junliang Yan <junyan@redhat.com> Commit-Queue: Milad Fa <mfarazma@redhat.com> Cr-Commit-Position: refs/heads/master@{#72046}
-
- 17 Dec, 2020 1 commit
-
-
Milad Fa authored
PPC will be implemented separately. Change-Id: I358f5a73275a40f8083e9c07b7028d162969f836 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2597578Reviewed-by:
Junliang Yan <junyan@redhat.com> Commit-Queue: Milad Fa <mfarazma@redhat.com> Cr-Commit-Position: refs/heads/master@{#71834}
-
- 14 Dec, 2020 1 commit
-
-
Junliang Yan authored
Change-Id: I232585076ecf6a824cdbe2e989eadaf96adcc1d8 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2587241Reviewed-by:
Milad Fa <mfarazma@redhat.com> Commit-Queue: Junliang Yan <junyan@redhat.com> Cr-Commit-Position: refs/heads/master@{#71737}
-
- 10 Dec, 2020 1 commit
-
-
Bill Budge authored
This reverts commit cddaf66c. Reason for revert: Multiple fuzzer failures TBR=neis@chromium.org,ahaas@chromium.org 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} 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: Ib26d016df6f30f333d30b5ac14eed9630bba8252 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2584200 Commit-Queue: Bill Budge <bbudge@chromium.org> Reviewed-by:
Bill Budge <bbudge@chromium.org> Cr-Commit-Position: refs/heads/master@{#71703}
-
- 07 Dec, 2020 1 commit
-
-
Bill Budge authored
- 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}
-