diff --git a/Support-for-AARCH64.md b/Support-for-AARCH64.md new file mode 100644 index 0000000..0f970d2 --- /dev/null +++ b/Support-for-AARCH64.md @@ -0,0 +1,12 @@ +Development is begining to provide support for ARM 64 bit CPUs using the aarch64 architecture. + +Current status: nothing publicly released. +Coding is progressing with many issues translating SSE to NEON. Some things are done very differently and some things may not be possible. +The lack of flexible lane shuffling is a major problem. Some shuffles may have to be done by inserting one lane at a time. +Current expectations are best performance will be with sha256 based algos and some algos that use AES. Current issues exist with AES for echo & fugue. +Parallel 4 way hashing will not be provided initially but will be added later. +Current problem algos include anything with Echo or Fugue, there are problems with the AES implementation. +Simd has a problem with multiplication that I haven't resolved. +Scrypt has issues with the lack of a blend instruction in NEON that requires a workaround. The lack of mask creating doesn't make it any easier. +Yespower/yescrypt also have issues that aren't fully understood due to the complexity of the current code. +Unresolved issues will result in using completely unoptimized "reference" code. \ No newline at end of file