summaryrefslogtreecommitdiff
path: root/sha512_armv4.S
Commit message (Collapse)AuthorAgeFilesLines
* Consistently use cryptogams_ prefix for Andy Polyakov's code (PR #952)Jeffrey Walton2020-12-261-12/+12
|
* Breakout sha_block_data_order and sha_block_data_order_neon (GH #847)Jeffrey Walton2019-05-261-15/+6
|
* Remove VFP_ABI_PUSH and VFP_ABI_POP macrosJeffrey Walton2019-05-261-5/+2
|
* Fix SHA512 on ARM benchmarksJeffrey Walton2019-05-251-9/+8
| | | | This was a mistake when porting from Cryptogams to Crypto++. The macros VFP_ABI_PUSH and VFP_ABI_POP needed to be defined because they save and restore SIMD register state. They were originally missing during the port. The benchmarks would hang because the doubles we used for benchmarking were blown away in sha512_block_data_order_neon.
* Use CRYPTOGAMS_armcap_P for ARM (GH #846)Jeffrey Walton2019-05-241-3/+19
| | | | Andy advised against removing the global caps variable. This commit reintroduces CRYPTOGAMS_armcap_P. However, due to the shared object symbol loading problem, we needed to use CRYPTOGAMS_armcap_P as a global, and not CRYPTOGAMS_armcap as a local. Using CRYPTOGAMS_armcap_P directly caused the symbol to be marked as R_ARM_ABS32 which avoids the problem with R_ARM_REL32.
* Update Cryptogams SHA headers (GH #846)Jeffrey Walton2019-05-221-4/+0
|
* Fix "unexpected reloc type 0x03" for ARM shared object (GH #846)Jeffrey Walton2019-05-221-21/+2
|
* Use CRYPTOGAMS_armcap_loc for word labelJeffrey Walton2019-05-221-2/+2
|
* Use CRYPTOGAMS_armcapsJeffrey Walton2019-05-221-6/+6
| | | | It looks like CRYPTOGAMS_armcap was used in some places, and it broke Autotools
* Rename CRYPTOGAMS_armcap_P to CRYPTOGAMS_armcapJeffrey Walton2019-05-221-4/+4
|
* Add ARM SHA512 asm implementation from Cryptogams (GH #841, PR #843)Jeffrey Walton2019-05-191-0/+1881
Cryptogams is Andy Polyakov's project used to create high speed crypto algorithms and share them with other developers. Cryptogams has a dual license. First is the OpenSSL license because Andy contributes to OpenSSL. Second is a BSD license for those who want a more permissive license. Andy's implementation runs about 45% faster than C/C++ code. Testing on a 1.8 GHz Cortex-A17 shows Cryptograms at 45 cpb, and C++ at 79 cpb. The integration instructions are documented at [Cryptogams SHA](https://wiki.openssl.org/index.php/Cryptogams_SHA) on the OpenSSL wiki.