[Mono] Enable generating SIMD intrinsics for System.Numerics.Vector on Arm64 (#65486)
authorFan Yang <52458914+fanyang-mono@users.noreply.github.com>
Tue, 8 Mar 2022 15:20:59 +0000 (10:20 -0500)
committerGitHub <noreply@github.com>
Tue, 8 Mar 2022 15:20:59 +0000 (10:20 -0500)
commit8fe2d2b0bbb7bec841c97372528531c071b29c16
tree5967abe093fcf260388aa27ce6a363364f034048
parent3959a4a9beeb292816008309e12b6d7150c05235
[Mono] Enable generating SIMD intrinsics for System.Numerics.Vector on Arm64 (#65486)

* Enable SIMD intrinsics for System.Numerics.Vector on Arm64

* Minor adjustment

* Use the correct op code for BitwiseAnd, BitwiseOr and Xor

* Check if vector element type is a primitive type or not

* Remove dead code and fix constant formet

* Add type checks for each method and refactor

* Remove extra condition check

* Loose the type check for vector creation methods

* Remove type checks for Create* functions

* Remove some of the type checks
src/mono/mono/mini/llvm-intrinsics-types.h
src/mono/mono/mini/mini-llvm.c
src/mono/mono/mini/simd-intrinsics.c