- 15 Feb, 2021 1 commit
-
-
Leszek Swirski authored
Add a new StackFrame class for unoptimized frames (which are either interpreted or baseline). BaselineFrame becomes a subclass of this rather than InterpretedFrame, and the various frame constants helpers are similarly amended. Bug: v8:11420, v8:11429 Change-Id: I87e9368aef48ef06a39476bf826f379ce1441528 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2692208 Commit-Queue: Leszek Swirski <leszeks@chromium.org> Auto-Submit: Leszek Swirski <leszeks@chromium.org> Reviewed-by: Jakob Gruber <jgruber@chromium.org> Reviewed-by: Ross McIlroy <rmcilroy@chromium.org> Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Cr-Commit-Position: refs/heads/master@{#72743}
-
- 09 Feb, 2021 1 commit
-
-
Ng Zhi An authored
Bug: v8:11347,v8:11348,chromium:1174498 Change-Id: I9afaacefcab55a6d7eb48f6e9d1848b714f64eb6 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2666147Reviewed-by: Deepti Gandluri <gdeepti@chromium.org> Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Commit-Queue: Zhi An Ng <zhin@chromium.org> Cr-Commit-Position: refs/heads/master@{#72603}
-
- 05 Feb, 2021 1 commit
-
-
Clemens Backes authored
Avoid duplicating the list of parameter registers to push in the WasmCompileLazy builtin by reusing the existing arrays from wasm-linkage.h. Also verify the computed results against different constants. R=zhin@chromium.org Bug: v8:11377 Change-Id: I727d4dcd1f1a0d3ae0e1a6ec03f0fb40c08564ed Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2668767 Commit-Queue: Clemens Backes <clemensb@chromium.org> Reviewed-by: Zhi An Ng <zhin@chromium.org> Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/master@{#72547}
-
- 29 Jan, 2021 1 commit
-
-
Ng Zhi An authored
Bug: v8:11074 Change-Id: I21926f3c8f640d26b9e067569455b49211321148 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2658075Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Commit-Queue: Zhi An Ng <zhin@chromium.org> Cr-Commit-Position: refs/heads/master@{#72438}
-
- 19 Jan, 2021 1 commit
-
-
Seth Brenith authored
On arm64, Windows Performance Recorder gets confused by the fact that fp in Builtins_JSEntry doesn't point to the saved {fp, lr} pair for the caller frame. The expected usage of fp is documented in [1]: The frame pointer (x29) is required for compatibility with fast stack walking used by ETW and other services. It must point to the previous {x29, x30} pair on the stack. In slightly more detail, the Windows function RtlWalkFrameChain is responsible for generating stack traces during profiling with Windows Performance Recorder, and that function relies on the rule quoted above. Notably, it does not make any effort to read the unwinding data that one could obtain with RtlLookupFunctionEntry. Stack walks using that data, such as those performed by WinDbg and the cctest StackUnwindingWin64, work fine. It would be convenient if we could use fp in a more standard way during JSEntry so that Windows profiling tools work correctly. (We can also reduce JSEntry by two instructions in doing so.) Both arm and arm64 currently put a -1 value on the stack at the location that fp points to. This could prevent accidental access during the epilog of JSEntry, where fp might be zero. However, we believe that this protection is no longer necessary, and any bug that causes a read from fp during the end of JSEntry would cause various CQ failures. [1] https://docs.microsoft.com/en-us/cpp/build/arm64-windows-abi-conventions?view=msvc-160 Change-Id: Iece5666129b9188fc4c12007809b50f046f4044f Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2607636 Commit-Queue: Seth Brenith <seth.brenith@microsoft.com> Reviewed-by: Jakob Gruber <jgruber@chromium.org> Reviewed-by: Ross McIlroy <rmcilroy@chromium.org> Cr-Commit-Position: refs/heads/master@{#72165}
-
- 12 Jan, 2021 1 commit
-
-
Zhi An Ng authored
Removing ifdef guards since our 4 supported architectures implement this now. Bug: v8:10971 Change-Id: Ic0295b1492a6316df61340a38f3e6d06d8fe64ed Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2620900 Commit-Queue: Zhi An Ng <zhin@chromium.org> Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Reviewed-by: Bill Budge <bbudge@chromium.org> Cr-Commit-Position: refs/heads/master@{#72023}
-
- 14 Dec, 2020 1 commit
-
-
Zhi An Ng authored
This is the same as the original implementation in https://crrev.com/c/2567534 which was speculatively reverted due to flaky tests. Since then, there have been some changes to fix those tests, so trying to get this in again. Bug: v8:11002 Change-Id: I5bd0f63d3aec4cf6db403b35737f8b695b0f4e37 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2589063Reviewed-by: Bill Budge <bbudge@chromium.org> Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Commit-Queue: Zhi An Ng <zhin@chromium.org> Cr-Commit-Position: refs/heads/master@{#71746}
-
- 10 Dec, 2020 1 commit
-
-
Zhi An Ng authored
Implement vclt and add some assembler tests. Bug: v8:10983 Change-Id: I78c701180ddc90af4b59db86a25188f281167366 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2575783 Commit-Queue: Zhi An Ng <zhin@chromium.org> Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Reviewed-by: Bill Budge <bbudge@chromium.org> Cr-Commit-Position: refs/heads/master@{#71685}
-
- 09 Dec, 2020 1 commit
-
-
Zhi An Ng authored
Add new instruction vpaddl for signed and unsigned integers, adding assembler, disassembler, simulator support, and also tests. The signed and unsigned opcodes for vpaddl are separate enums, because the helper EncodeNeonUnaryOp only takes a NeonSize (not NeonDataType). I considered changing the signature, but none of the other instructions use a NeonDataType, so it seems unnecessary. Bug: v8:11086 Change-Id: I5e6694ae407779c1fd3604c5a40ca0a1b6ce061b Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2578233Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Reviewed-by: Bill Budge <bbudge@chromium.org> Commit-Queue: Zhi An Ng <zhin@chromium.org> Cr-Commit-Position: refs/heads/master@{#71671}
-
- 07 Dec, 2020 3 commits
-
-
Zhi An Ng authored
Stick more closely to the decoding guide laid out in the manual, and also take the chance to remove some duplicate code. Drive-by fix a clang-tidy warning for bool literal. Bug: v8:11074 Change-Id: I91aa8db7cd3db30b250e8bfc9bb146c8bb56dcd1 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2567530 Commit-Queue: Zhi An Ng <zhin@chromium.org> Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/master@{#71630}
-
Zhi An Ng authored
Bug: v8:11008 Change-Id: Ic7be8370e3e820d225558995a9ad2295811e98a4 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2567531Reviewed-by: Bill Budge <bbudge@chromium.org> Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Commit-Queue: Zhi An Ng <zhin@chromium.org> Cr-Commit-Position: refs/heads/master@{#71629}
-
Zhi An Ng authored
Prototype v128.{load,store}{8,16,32,64}_lane on arm. Bug: v8:10975 Change-Id: I649f567f39f8a5ba6992a86b761f93f62619c139 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2565079 Commit-Queue: Zhi An Ng <zhin@chromium.org> Reviewed-by: Bill Budge <bbudge@chromium.org> Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/master@{#71628}
-
- 03 Dec, 2020 2 commits
-
-
Zhi An Ng authored
This reverts commit d0f7c6a8. Reason for revert: Causing flaky tests https://ci.chromium.org/ui/p/v8/builders/ci/V8%20Mac64%20-%20debug/31929/overview Original change's description: > Reland "[wasm-simd][arm] Prototype i8x16.popcnt" > > This is a reland of e2aa734a > > The original change was speculatively reverted in > https://crrev.com/c/2568925 but seems unrelated to the flakey > test failures (which are on x64). > > Original change's description: > > [wasm-simd][arm] Prototype i8x16.popcnt > > > > Bug: v8:11002 > > Change-Id: Ib97e51ed52249a1af7a4b879396b70a016991719 > > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2567534 > > Commit-Queue: Zhi An Ng <zhin@chromium.org> > > Reviewed-by: Bill Budge <bbudge@chromium.org> > > Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> > > Cr-Commit-Position: refs/heads/master@{#71552} > > Bug: v8:11002 > Change-Id: I714918e2640d27d29953f940e3bedeb9ea2f8a08 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2567243 > Commit-Queue: Zhi An Ng <zhin@chromium.org> > Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> > Reviewed-by: Bill Budge <bbudge@chromium.org> > Cr-Commit-Position: refs/heads/master@{#71585} TBR=bbudge@chromium.org,jkummerow@chromium.org,v8-arm-ports@googlegroups.com,zhin@chromium.org Change-Id: Ib8454a4c20937495c2b83b7ceb3ad594b1b9e7e5 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: v8:11002 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2569559Reviewed-by: Zhi An Ng <zhin@chromium.org> Commit-Queue: Zhi An Ng <zhin@chromium.org> Cr-Commit-Position: refs/heads/master@{#71586}
-
Zhi An Ng authored
This is a reland of e2aa734a The original change was speculatively reverted in https://crrev.com/c/2568925 but seems unrelated to the flakey test failures (which are on x64). Original change's description: > [wasm-simd][arm] Prototype i8x16.popcnt > > Bug: v8:11002 > Change-Id: Ib97e51ed52249a1af7a4b879396b70a016991719 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2567534 > Commit-Queue: Zhi An Ng <zhin@chromium.org> > Reviewed-by: Bill Budge <bbudge@chromium.org> > Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> > Cr-Commit-Position: refs/heads/master@{#71552} Bug: v8:11002 Change-Id: I714918e2640d27d29953f940e3bedeb9ea2f8a08 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2567243 Commit-Queue: Zhi An Ng <zhin@chromium.org> Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Reviewed-by: Bill Budge <bbudge@chromium.org> Cr-Commit-Position: refs/heads/master@{#71585}
-
- 02 Dec, 2020 2 commits
-
-
Sathya Gunasekaran authored
This reverts commit e2aa734a. Reason for revert: speculative revert for https://ci.chromium.org/ui/p/v8/builders/ci/V8%20Mac64%20-%20debug/31901/blamelist Original change's description: > [wasm-simd][arm] Prototype i8x16.popcnt > > Bug: v8:11002 > Change-Id: Ib97e51ed52249a1af7a4b879396b70a016991719 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2567534 > Commit-Queue: Zhi An Ng <zhin@chromium.org> > Reviewed-by: Bill Budge <bbudge@chromium.org> > Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> > Cr-Commit-Position: refs/heads/master@{#71552} TBR=bbudge@chromium.org,jkummerow@chromium.org,v8-arm-ports@googlegroups.com,zhin@chromium.org Change-Id: Id1ae2dbaae52d45eb81ba8636178236ca8e9f7e0 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: v8:11002 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2568925Reviewed-by: Sathya Gunasekaran <gsathya@chromium.org> Commit-Queue: Sathya Gunasekaran <gsathya@chromium.org> Cr-Commit-Position: refs/heads/master@{#71554}
-
Zhi An Ng authored
Bug: v8:11002 Change-Id: Ib97e51ed52249a1af7a4b879396b70a016991719 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2567534 Commit-Queue: Zhi An Ng <zhin@chromium.org> Reviewed-by: Bill Budge <bbudge@chromium.org> Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/master@{#71552}
-
- 30 Nov, 2020 1 commit
-
-
Zhi An Ng authored
This is a reland of 21e47944 The fix is in the encoding of vmov. Bit 23 (the U bit) should be 0, whether the NeonDataType is NeonS32 or NeonU32. Also added a DCHECK in the simulator to assert this. Original change's description: > [wasm-simd][arm] Prototype i64x2.bitmask > > Cleanup to simulator to remove repetitive logic to get instruction > fields. > > Bug: v8:10997 > Change-Id: I01f0b99f85788b41e4cab505fc94362d637c396f > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2554256 > Commit-Queue: Zhi An Ng <zhin@chromium.org> > Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> > Reviewed-by: Bill Budge <bbudge@chromium.org> > Cr-Commit-Position: refs/heads/master@{#71391} Bug: v8:10997 Change-Id: I93b5d2168a50446d4a3b487ad83d6af8ea9ba8ab Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2558262 Commit-Queue: Zhi An Ng <zhin@chromium.org> Reviewed-by: Bill Budge <bbudge@chromium.org> Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/master@{#71467}
-
- 25 Nov, 2020 2 commits
-
-
Zhi An Ng authored
This reverts commit 21e47944. Reason for revert: Broke build https://ci.chromium.org/p/v8/builders/ci/V8%20Arm%20-%20debug/16872? Original change's description: > [wasm-simd][arm] Prototype i64x2.bitmask > > Cleanup to simulator to remove repetitive logic to get instruction > fields. > > Bug: v8:10997 > Change-Id: I01f0b99f85788b41e4cab505fc94362d637c396f > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2554256 > Commit-Queue: Zhi An Ng <zhin@chromium.org> > Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> > Reviewed-by: Bill Budge <bbudge@chromium.org> > Cr-Commit-Position: refs/heads/master@{#71391} TBR=bbudge@chromium.org,jkummerow@chromium.org,v8-arm-ports@googlegroups.com,zhin@chromium.org Change-Id: I15513cc5923db7d189d08a9faf5051e57af7190b No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: v8:10997 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2558260Reviewed-by: Zhi An Ng <zhin@chromium.org> Commit-Queue: Zhi An Ng <zhin@chromium.org> Cr-Commit-Position: refs/heads/master@{#71393}
-
Zhi An Ng authored
Cleanup to simulator to remove repetitive logic to get instruction fields. Bug: v8:10997 Change-Id: I01f0b99f85788b41e4cab505fc94362d637c396f Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2554256 Commit-Queue: Zhi An Ng <zhin@chromium.org> Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Reviewed-by: Bill Budge <bbudge@chromium.org> Cr-Commit-Position: refs/heads/master@{#71391}
-
- 17 Nov, 2020 1 commit
-
-
John Xu authored
Bug: v8:10927 Change-Id: Icbdc0d7329ddd466e7d67a954246a35795b4dece Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2507310 Commit-Queue: Ulan Degenbaev <ulan@chromium.org> Reviewed-by: Peter Marshall <petermarshall@chromium.org> Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Reviewed-by: Clemens Backes <clemensb@chromium.org> Reviewed-by: Toon Verwaest <verwaest@chromium.org> Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Reviewed-by: Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#71220}
-
- 10 Nov, 2020 1 commit
-
-
Zhi An Ng authored
Introduce some helper functions to implement NEON operations that were performing unary operations or binary operations lane-wise. Not everything uses these helpers yet, in particular pairwise operations, or zip/transpose. Bug: v8:11074 Change-Id: Ia7e5b13ae79cd166c47535139d92adb7f7a7c1ab Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2516301 Commit-Queue: Zhi An Ng <zhin@chromium.org> Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/master@{#71067}
-
- 09 Nov, 2020 1 commit
-
-
Zhi An Ng authored
There was already a method to clobber/thrash caller-saved registers. Enhance it to also clobber vfp registers, and call this function after each runtime call. Bug: v8:11067 Change-Id: Id867f9a27161102ecdd239c9d52b61b5c0b303d6 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2522733 Commit-Queue: Zhi An Ng <zhin@chromium.org> Reviewed-by: Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#71033}
-
- 03 Nov, 2020 3 commits
-
-
Sathya Gunasekaran authored
This reverts commit 8156dd85. Reason for revert: https://ci.chromium.org/ui/p/v8/builders/ci/V8%20Win64%20ASAN/15800/overview Original change's description: > GetCurrentStackPosition() -> base::Stack::GetCurrentStackPosition() > > Remove the duplicate utility function and use the base::Stack > equivalent instead which provides more stack utilitiy functionality. > > Change-Id: Ia7a79f2530b64ceb6e2ce33445c876980b4b2a3d > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2509595 > Reviewed-by: Toon Verwaest <verwaest@chromium.org> > Reviewed-by: Clemens Backes <clemensb@chromium.org> > Commit-Queue: Michael Lippautz <mlippautz@chromium.org> > Cr-Commit-Position: refs/heads/master@{#70930} TBR=mlippautz@chromium.org,clemensb@chromium.org,verwaest@chromium.org Change-Id: Id18949a3c82171e74370e729cd303607d46c8805 No-Presubmit: true No-Tree-Checks: true No-Try: true Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2515431Reviewed-by: Sathya Gunasekaran <gsathya@chromium.org> Commit-Queue: Sathya Gunasekaran <gsathya@chromium.org> Cr-Commit-Position: refs/heads/master@{#70940}
-
Zhi An Ng authored
Following the disassembler, break up these opcodes into a separate function. The decoding follows the disassembler quite closely, except in places where the simulator implementation grouped opcodes together to share code. Code is all copy paste, more clean ups to follow. Bug: v8:11074 Change-Id: I426d3542715a27e7c3a49e2118efebe595c7baa4 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2509091 Commit-Queue: Zhi An Ng <zhin@chromium.org> Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/master@{#70933}
-
Zhi An Ng authored
These correspond to the SpecialValue 4 and 6, I extracted them out into their own section, following the decoding guide in the manual (and used in the disassembler). Mostly copy paste, actual code changes limited to breaking up logic for separate opcodes so they end up in different clauses. Bug: v8:11074 Change-Id: I15d9ed4a65291a55c76a11db3d24803cd79100ef Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2509090Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Commit-Queue: Zhi An Ng <zhin@chromium.org> Cr-Commit-Position: refs/heads/master@{#70932}
-
- 02 Nov, 2020 2 commits
-
-
Michael Lippautz authored
Remove the duplicate utility function and use the base::Stack equivalent instead which provides more stack utilitiy functionality. Change-Id: Ia7a79f2530b64ceb6e2ce33445c876980b4b2a3d Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2509595Reviewed-by: Toon Verwaest <verwaest@chromium.org> Reviewed-by: Clemens Backes <clemensb@chromium.org> Commit-Queue: Michael Lippautz <mlippautz@chromium.org> Cr-Commit-Position: refs/heads/master@{#70930}
-
Zhi An Ng authored
Similar to the changes in the disassembly, break up simulator changes into smaller functions. This change only copy pastes implementation into various helper function, and does not follow the decoding rules in the manual yet, it is still using SpecialValue. Subsequent changes will clean this up. Bug: v8:11074 Change-Id: Ic2905406e905fc3df01825047763d083aa0fbff4 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2505248Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Commit-Queue: Zhi An Ng <zhin@chromium.org> Cr-Commit-Position: refs/heads/master@{#70906}
-
- 27 Oct, 2020 2 commits
-
-
Jakob Gruber authored
The actual number of double regs available on arm depends on the current CPU. In some cases, we care about the max count of double regs (e.g. around Save/RestoreFPRegs which always reserves spaces for the max); in others, we care about the actual count. Use DwVfpRegister::kNumRegisters to fetch the max (= 32). Use DwVfpRegister::SupportedRegisterCount() for the actual count (16 or 32). Bug: v8:11062 Change-Id: I7d0c3f1263433ef5dc8efa69a68dff92a7168ae6 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2501842Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Commit-Queue: Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#70795}
-
Zhi An Ng authored
Implement these two instructions on arm. Bug: v8:11038 Change-Id: I23d9c7291f60e29415cfbebced1bff323fd2465a Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2485250 Commit-Queue: Zhi An Ng <zhin@chromium.org> Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Reviewed-by: Bill Budge <bbudge@chromium.org> Cr-Commit-Position: refs/heads/master@{#70779}
-
- 20 Oct, 2020 1 commit
-
-
Santiago Aboy Solanes authored
Bug: v8:10799 Change-Id: Id912520b6a27e439e204bac47c0723a8f613be4b Fixed: v8:10799 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2472000 Commit-Queue: Santiago Aboy Solanes <solanes@chromium.org> Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Reviewed-by: Ross McIlroy <rmcilroy@chromium.org> Cr-Commit-Position: refs/heads/master@{#70656}
-
- 15 Oct, 2020 1 commit
-
-
Ng Zhi An authored
Rename AddSaturate and SubSaturate to the shorter version, AddSat and SubSat, following the spec. Bug: v8:10946,v8:10933 Change-Id: Idf74b3a1eb2e2f6d4e37d2b8e5fa6d96ea090db4 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2436615Reviewed-by: Tobias Tebbi <tebbi@chromium.org> Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Reviewed-by: Bill Budge <bbudge@chromium.org> Commit-Queue: Zhi An Ng <zhin@chromium.org> Cr-Commit-Position: refs/heads/master@{#70549}
-
- 18 Sep, 2020 1 commit
-
-
Ng Zhi An authored
vmin should return the default NaN if any input is a NaN (regardless of the default NaN mode), so turn the default NaN mode, canonicalize, then reset it. Bug: v8:10835 Change-Id: Ia83c9fbcbc2070029f35bbd07cbb4abf857b594d Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2416399Reviewed-by: Bill Budge <bbudge@chromium.org> Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Commit-Queue: Zhi An Ng <zhin@chromium.org> Cr-Commit-Position: refs/heads/master@{#70005}
-
- 02 Sep, 2020 1 commit
-
-
Victor Gomes authored
This adds the argument count (as intptr) to the standard frame. StandardFrames are now in the same shape as OptimizedFrames. The argument count in the stack will be used to tear down the arguments when we remove the arguments adaptor frame. Change-Id: If9cc2946321bc1bb0abb776521e2d5b683ab0532 Bug: v8:10201 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2312783 Commit-Queue: Victor Gomes <victorgomes@chromium.org> Reviewed-by: Ross McIlroy <rmcilroy@chromium.org> Reviewed-by: Igor Sheludko <ishell@chromium.org> Reviewed-by: Tobias Tebbi <tebbi@chromium.org> Cr-Commit-Position: refs/heads/master@{#69663}
-
- 27 Aug, 2020 1 commit
-
-
Santiago Aboy Solanes authored
Reading the proper pc, fp and sp in a JSEntry frame is in a different offset than in the regular frames. Bug: v8:10779, v8:10833 Fixes: v8:10779 Change-Id: I9aec44276fba0aab95b761ab17a16ec3767f4eb8 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2369173 Commit-Queue: Santiago Aboy Solanes <solanes@chromium.org> Reviewed-by: Ross McIlroy <rmcilroy@chromium.org> Cr-Commit-Position: refs/heads/master@{#69582}
-
- 11 Aug, 2020 1 commit
-
-
Ng Zhi An authored
This is a reland of 57242a05 no-sse4.1 builds were failing due to missing simd-scalar-lowering for s128.const, this reland adds that implementation. Original change's description: > [wasm-simd][arm] Use vmov to move all ones to register > > vceq(dst, dst, dst) does not seem to always set the register to all > ones. The right way should be be to use vmov (immediate) anyway. This > was not supported in the assembler yet, so we need changes to the > assembler, diassembler, and simulator. > > There is an unfortunate fork in logic in the simulator, due to the way > the switches are set up, vmov (imm) logic is duplicated across two > different cases, because the switch looks at the top bit of the > immediate. Refactoring this will be a bigger change that is irrelevant > for this bug, so I'm putting that off for now. Instead we extract the > core of vmov (imm) into helpers and call it in the two cases. > > Bug: chromium:1112124 > Change-Id: I283dbcd86cb0572e5ee720835f897b51fae96701 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2337503 > Commit-Queue: Zhi An Ng <zhin@chromium.org> > Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> > Reviewed-by: Bill Budge <bbudge@chromium.org> > Cr-Commit-Position: refs/heads/master@{#69315} Bug: chromium:1112124 Change-Id: Id450e5cea41f7a569e49be8386a7788ca8f00658 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2346937Reviewed-by: Bill Budge <bbudge@chromium.org> Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Commit-Queue: Zhi An Ng <zhin@chromium.org> Cr-Commit-Position: refs/heads/master@{#69346}
-
- 10 Aug, 2020 2 commits
-
-
Bill Budge authored
This reverts commit 57242a05. Reason for revert: regression tests fails: https://ci.chromium.org/p/v8/builders/ci/V8%20Linux%20-%20debug/31477 Original change's description: > [wasm-simd][arm] Use vmov to move all ones to register > > vceq(dst, dst, dst) does not seem to always set the register to all > ones. The right way should be be to use vmov (immediate) anyway. This > was not supported in the assembler yet, so we need changes to the > assembler, diassembler, and simulator. > > There is an unfortunate fork in logic in the simulator, due to the way > the switches are set up, vmov (imm) logic is duplicated across two > different cases, because the switch looks at the top bit of the > immediate. Refactoring this will be a bigger change that is irrelevant > for this bug, so I'm putting that off for now. Instead we extract the > core of vmov (imm) into helpers and call it in the two cases. > > Bug: chromium:1112124 > Change-Id: I283dbcd86cb0572e5ee720835f897b51fae96701 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2337503 > Commit-Queue: Zhi An Ng <zhin@chromium.org> > Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> > Reviewed-by: Bill Budge <bbudge@chromium.org> > Cr-Commit-Position: refs/heads/master@{#69315} TBR=bbudge@chromium.org,jkummerow@chromium.org,v8-arm-ports@googlegroups.com,zhin@chromium.org Change-Id: I5d9d1dcb81771f71001d959ec5a03a43a11c4233 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: chromium:1112124 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2347211Reviewed-by: Bill Budge <bbudge@chromium.org> Commit-Queue: Bill Budge <bbudge@chromium.org> Cr-Commit-Position: refs/heads/master@{#69316}
-
Ng Zhi An authored
vceq(dst, dst, dst) does not seem to always set the register to all ones. The right way should be be to use vmov (immediate) anyway. This was not supported in the assembler yet, so we need changes to the assembler, diassembler, and simulator. There is an unfortunate fork in logic in the simulator, due to the way the switches are set up, vmov (imm) logic is duplicated across two different cases, because the switch looks at the top bit of the immediate. Refactoring this will be a bigger change that is irrelevant for this bug, so I'm putting that off for now. Instead we extract the core of vmov (imm) into helpers and call it in the two cases. Bug: chromium:1112124 Change-Id: I283dbcd86cb0572e5ee720835f897b51fae96701 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2337503 Commit-Queue: Zhi An Ng <zhin@chromium.org> Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Reviewed-by: Bill Budge <bbudge@chromium.org> Cr-Commit-Position: refs/heads/master@{#69315}
-
- 25 Jun, 2020 1 commit
-
-
Ng Zhi An authored
This implements I32x4DotI16x8S for arm. Bug: v8:10583 Change-Id: I4541f4f5bc7daba03c6ab2040589893c8ef571bc Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2230787Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Reviewed-by: Deepti Gandluri <gdeepti@chromium.org> Commit-Queue: Zhi An Ng <zhin@chromium.org> Cr-Commit-Position: refs/heads/master@{#68550}
-
- 24 Jun, 2020 1 commit
-
-
Ng Zhi An authored
Prototype f32x4.nearest on ARM for both ARM v7 and ARM v8. ARM v8 has support for vrintn, and for ARM v7 we fallback to runtime. Since ARM v8 uses vrintn, which is the same instruction used for F32RoundTiesEven (scalar), wasm-compiler reuses the Float32RoundTiesEven check. Bug: v8:10553 Change-Id: I066b8c5f10fd86294afe1c530c516493deeb7b53 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2258037Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Reviewed-by: Deepti Gandluri <gdeepti@chromium.org> Commit-Queue: Zhi An Ng <zhin@chromium.org> Cr-Commit-Position: refs/heads/master@{#68526}
-
- 23 Jun, 2020 1 commit
-
-
Ng Zhi An authored
Prototype f32x4.trunc on ARM for both ARM v7 and ARM v8. ARM v8 has support for vrintz, and for ARM v7 we fallback to runtime. Since ARM v8 uses vrintz, which is the same instruction used for F32 trunc (scalar), wasm-compiler reuses the Float32RoundTruncate check. Bug: v8:10553 Change-Id: I65ddc36ccff21f8f0ff21a6e768184c084ffcfea Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2256770 Commit-Queue: Zhi An Ng <zhin@chromium.org> Reviewed-by: Deepti Gandluri <gdeepti@chromium.org> Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/master@{#68498}
-