- 22 Sep, 2021 1 commit
-
-
Peter Kasting authored
Bug: chromium:1203071 Change-Id: Iab81add0c71c4a37b7aa8d9d6f1272781a6bae3d Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3152217 Auto-Submit: Peter Kasting <pkasting@chromium.org> Commit-Queue: Jakob Kummerow <jkummerow@chromium.org> Commit-Queue: Zhi An Ng <zhin@chromium.org> Reviewed-by:
Jakob Kummerow <jkummerow@chromium.org> Reviewed-by:
Zhi An Ng <zhin@chromium.org> Cr-Commit-Position: refs/heads/main@{#76999}
-
- 24 Aug, 2021 1 commit
-
-
Dan Elphick authored
This is a reland of d1b27019 Fixes include: Adding missing file to bazel build Forward-declaring classing before friend-classing them to fix win/gcc Add missing v8-isolate.h include for vtune builds Original change's description: > [include] Split out v8.h > > This moves every single class/function out of include/v8.h into a > separate header in include/, which v8.h then includes so that > externally nothing appears to have changed. > > Every include of v8.h from inside v8 has been changed to a more > fine-grained include. > > Previously inline functions defined at the bottom of v8.h would call > private non-inline functions in the V8 class. Since that class is now > in v8-initialization.h and is rarely included (as that would create > dependency cycles), this is not possible and so those methods have been > moved out of the V8 class into the namespace v8::api_internal. > > None of the previous files in include/ now #include v8.h, which means > if embedders were relying on this transitive dependency then it will > give compile failures. > > v8-inspector.h does depend on v8-scripts.h for the time being to ensure > that Chrome continue to compile but that change will be reverted once > those transitive #includes in chrome are changed to include it directly. > > Full design: > https://docs.google.com/document/d/1rTD--I8hCAr-Rho1WTumZzFKaDpEp0IJ8ejZtk4nJdA/edit?usp=sharing > > Bug: v8:11965 > Change-Id: I53b84b29581632710edc80eb11f819c2097a2877 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3097448 > Reviewed-by: Yang Guo <yangguo@chromium.org> > Reviewed-by: Camillo Bruni <cbruni@chromium.org> > Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> > Reviewed-by: Leszek Swirski <leszeks@chromium.org> > Reviewed-by: Michael Lippautz <mlippautz@chromium.org> > Commit-Queue: Dan Elphick <delphick@chromium.org> > Cr-Commit-Position: refs/heads/main@{#76424} Cq-Include-Trybots: luci.v8.try:v8_linux_vtunejit Bug: v8:11965 Change-Id: I99f5d3a73bf8fe25b650adfaf9567dc4e44a09e6 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3113629Reviewed-by:
Leszek Swirski <leszeks@chromium.org> Reviewed-by:
Camillo Bruni <cbruni@chromium.org> Reviewed-by:
Michael Lippautz <mlippautz@chromium.org> Reviewed-by:
Jakob Kummerow <jkummerow@chromium.org> Reviewed-by:
Simon Zünd <szuend@chromium.org> Commit-Queue: Dan Elphick <delphick@chromium.org> Cr-Commit-Position: refs/heads/main@{#76460}
-
- 23 Aug, 2021 2 commits
-
-
Dan Elphick authored
This reverts commit d1b27019. Reason for revert: Broke vtune build, tsan build and possibly others Original change's description: > [include] Split out v8.h > > This moves every single class/function out of include/v8.h into a > separate header in include/, which v8.h then includes so that > externally nothing appears to have changed. > > Every include of v8.h from inside v8 has been changed to a more > fine-grained include. > > Previously inline functions defined at the bottom of v8.h would call > private non-inline functions in the V8 class. Since that class is now > in v8-initialization.h and is rarely included (as that would create > dependency cycles), this is not possible and so those methods have been > moved out of the V8 class into the namespace v8::api_internal. > > None of the previous files in include/ now #include v8.h, which means > if embedders were relying on this transitive dependency then it will > give compile failures. > > v8-inspector.h does depend on v8-scripts.h for the time being to ensure > that Chrome continue to compile but that change will be reverted once > those transitive #includes in chrome are changed to include it directly. > > Full design: > https://docs.google.com/document/d/1rTD--I8hCAr-Rho1WTumZzFKaDpEp0IJ8ejZtk4nJdA/edit?usp=sharing > > Bug: v8:11965 > Change-Id: I53b84b29581632710edc80eb11f819c2097a2877 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3097448 > Reviewed-by: Yang Guo <yangguo@chromium.org> > Reviewed-by: Camillo Bruni <cbruni@chromium.org> > Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> > Reviewed-by: Leszek Swirski <leszeks@chromium.org> > Reviewed-by: Michael Lippautz <mlippautz@chromium.org> > Commit-Queue: Dan Elphick <delphick@chromium.org> > Cr-Commit-Position: refs/heads/main@{#76424} Bug: v8:11965 Change-Id: Id57313ae992e720c8b19abc975cd69729e1344aa No-Presubmit: true No-Tree-Checks: true No-Try: true Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3113627 Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> Commit-Queue: Leszek Swirski <leszeks@chromium.org> Owners-Override: Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/main@{#76428}
-
Dan Elphick authored
This moves every single class/function out of include/v8.h into a separate header in include/, which v8.h then includes so that externally nothing appears to have changed. Every include of v8.h from inside v8 has been changed to a more fine-grained include. Previously inline functions defined at the bottom of v8.h would call private non-inline functions in the V8 class. Since that class is now in v8-initialization.h and is rarely included (as that would create dependency cycles), this is not possible and so those methods have been moved out of the V8 class into the namespace v8::api_internal. None of the previous files in include/ now #include v8.h, which means if embedders were relying on this transitive dependency then it will give compile failures. v8-inspector.h does depend on v8-scripts.h for the time being to ensure that Chrome continue to compile but that change will be reverted once those transitive #includes in chrome are changed to include it directly. Full design: https://docs.google.com/document/d/1rTD--I8hCAr-Rho1WTumZzFKaDpEp0IJ8ejZtk4nJdA/edit?usp=sharing Bug: v8:11965 Change-Id: I53b84b29581632710edc80eb11f819c2097a2877 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3097448Reviewed-by:
Yang Guo <yangguo@chromium.org> Reviewed-by:
Camillo Bruni <cbruni@chromium.org> Reviewed-by:
Jakob Kummerow <jkummerow@chromium.org> Reviewed-by:
Leszek Swirski <leszeks@chromium.org> Reviewed-by:
Michael Lippautz <mlippautz@chromium.org> Commit-Queue: Dan Elphick <delphick@chromium.org> Cr-Commit-Position: refs/heads/main@{#76424}
-
- 19 Aug, 2021 1 commit
-
-
Nico Weber authored
Like https://chromium-review.googlesource.com/c/v8/v8/+/2994804, but for arm and arm64. Bug: chromium:1066980 Change-Id: I5f3ac0d64a5031a62d4923d55a89f1d4e88cbc8b Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3103905 Auto-Submit: Nico Weber <thakis@chromium.org> Commit-Queue: Jakob Gruber <jgruber@chromium.org> Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/main@{#76374}
-
- 22 Jul, 2021 1 commit
-
-
Dan Elphick authored
Removes unnecessary includes of v8.h from src/diagnostics/gdb-jit.h src/diagnostics/system-jit-win.h src/diagnostics/unwinder.h by predeclaring types or using more appropriate headers. Bug: v8:11879 Change-Id: I17f42acfef8e61133988453d67c3c0d473ff0337 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3045702 Auto-Submit: Dan Elphick <delphick@chromium.org> Commit-Queue: Dan Elphick <delphick@chromium.org> Reviewed-by:
Ross McIlroy <rmcilroy@chromium.org> Cr-Commit-Position: refs/heads/master@{#75870}
-
- 28 Jun, 2021 1 commit
-
-
Daan de Graaf authored
Bug: v8:11546 Change-Id: I40bc4b5e3c813edba4a194b086b63e19d1231e29 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2956729 Commit-Queue: Daan de Graaf <daagra@google.com> Reviewed-by:
Zhi An Ng <zhin@chromium.org> Reviewed-by:
Mythri Alle <mythria@chromium.org> Cr-Commit-Position: refs/heads/master@{#75416}
-
- 22 Jun, 2021 1 commit
-
-
Dan Elphick authored
Moves VSNPrintf, SNPrintf and StrNCpy out of utils/utils.h into base/strings.h. Bug: v8:11879 Change-Id: I0e165cb27c42f89c9acd1c6378514b40a90cd18d Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2972732 Auto-Submit: Dan Elphick <delphick@chromium.org> Reviewed-by:
Clemens Backes <clemensb@chromium.org> Reviewed-by:
Ross McIlroy <rmcilroy@chromium.org> Commit-Queue: Dan Elphick <delphick@chromium.org> Cr-Commit-Position: refs/heads/master@{#75308}
-
- 18 Jun, 2021 1 commit
-
-
Dan Elphick authored
The adding of base:: was mostly prepared using git grep and sed: git grep -l <pattern> | grep -v base/vector.h | \ xargs sed -i 's/\b<pattern>\b/base::<pattern>/ with lots of manual clean-ups due to the resulting v8::internal::base::Vectors. #includes were fixed using: git grep -l "src/utils/vector.h" | \ axargs sed -i 's!src/utils/vector.h!src/base/vector.h!' Bug: v8:11879 Change-Id: I3e6d622987fee4478089c40539724c19735bd625 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2968412Reviewed-by:
Clemens Backes <clemensb@chromium.org> Reviewed-by:
Hannes Payer <hpayer@chromium.org> Commit-Queue: Dan Elphick <delphick@chromium.org> Cr-Commit-Position: refs/heads/master@{#75243}
-
- 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}
-
- 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 2 commits
-
-
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}
-
Zhi An Ng authored
Add a new option to disassembler NEON size encoded in instructions with two registers, 'size2. Rename the current only to 'size3. Clean up existing operations to use this new formatting option. Bug: v8:11074 Change-Id: Ie309d93d24602439c3293c8bbfd6c2ecbc9fdfb7 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2575786Reviewed-by:
Jakob Kummerow <jkummerow@chromium.org> Commit-Queue: Zhi An Ng <zhin@chromium.org> Cr-Commit-Position: refs/heads/master@{#71670}
-
- 07 Dec, 2020 1 commit
-
-
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 2 commits
-
-
Zhi An Ng authored
Bug: v8:11074 Change-Id: I478f4390523ddf7cfb87dd22cef5ed331be5c875 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2558267Reviewed-by:
Andreas Haas <ahaas@chromium.org> Commit-Queue: Zhi An Ng <zhin@chromium.org> Cr-Commit-Position: refs/heads/master@{#71468}
-
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}
-
- 24 Nov, 2020 1 commit
-
-
Zhi An Ng authored
Currently we only correctly disassemble encoding A4, with a list of 4 regs. Also added tests for these encodings. Change-Id: I38066186d19deb8c180129d7a92b49bc589315cd Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2554258Reviewed-by:
Jakob Kummerow <jkummerow@chromium.org> Commit-Queue: Zhi An Ng <zhin@chromium.org> Cr-Commit-Position: refs/heads/master@{#71350}
-
- 02 Nov, 2020 1 commit
-
-
Zhi An Ng authored
Bug: v8:11038 Change-Id: Ifb50d8667b03afa045a957ffc8f3df799252e561 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2500939Reviewed-by:
Jakob Kummerow <jkummerow@chromium.org> Commit-Queue: Zhi An Ng <zhin@chromium.org> Cr-Commit-Position: refs/heads/master@{#70907}
-
- 28 Oct, 2020 2 commits
-
-
Zhi An Ng authored
Introduce a new option for Format, 'size, to print element sizes for Advanced SIMD instructions. Then convert some disassembly to use this new Format option. Bug: v8:10933 Change-Id: I9eab0e3f6d951c315c49b723db01bcdc93dbde02 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2504856Reviewed-by:
Jakob Kummerow <jkummerow@chromium.org> Commit-Queue: Zhi An Ng <zhin@chromium.org> Cr-Commit-Position: refs/heads/master@{#70861}
-
Zhi An Ng authored
We can move the esize (element size) calculation into the other scope, since all but 1 instruction share this. Bug: v8:10933 Change-Id: I43cfef46fdf7e962d54c29949488c2a7c0900334 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2504854Reviewed-by:
Jakob Kummerow <jkummerow@chromium.org> Commit-Queue: Zhi An Ng <zhin@chromium.org> Cr-Commit-Position: refs/heads/master@{#70860}
-
- 27 Oct, 2020 3 commits
-
-
Zhi An Ng authored
Bug: v8:10933 Change-Id: I4a889b087b4d33111533b8b04f151c8ac0fce042 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2497397 Commit-Queue: Zhi An Ng <zhin@chromium.org> Reviewed-by:
Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/master@{#70780}
-
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}
-
Zhi An Ng authored
The SpecialValue field used in the disassembler covers too wide a range, this causes some duplication in the disassembler of instructions like mov, since the SpecialValue includes a bit used for the immediate. Attempt to refactor and follow the decoding guide given in the architecture manual [0], F4.1 A32 instruction set encoding, with the eventual goal for removing the duplicated instruction disassembly. [0] ARM DDI 0487F.b ARMv8 A32 instruction set Bug: v8:10933 Change-Id: Iddf4df317f9a5b29be2544ad2f9f93180e9bcdfc Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2497395 Commit-Queue: Zhi An Ng <zhin@chromium.org> Reviewed-by:
Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/master@{#70775}
-
- 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}
-
- 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 2 commits
-
-
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}
-
Ng Zhi An authored
Bug: v8:10553 Change-Id: I57610afbf676f17d11675da1099ca45633d00402 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2254482 Commit-Queue: Zhi An Ng <zhin@chromium.org> Reviewed-by:
Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/master@{#68497}
-