Commit Graph

  • 392ec3465e
    Fix OS X compile with Clang 6.0 Jeffrey Walton 2019-05-31 23:03:24 -0400
  • 4952fa489d
    Use BMI2 when available for MultiplyWordsLoHi, MulAcc and friends Using BMI2 saves about 0.03 ms on a Core i5 6400 @ 2.7 GHz. It is small but measurable. It also gives GCC more freedom in selecting memory or register operands Jeffrey Walton 2019-05-31 09:42:39 -0400
  • fb0bef1eb6
    Use BMI2 when available for MultiplyWordsLoHi, MulAcc and friends Using BMI2 saves about 0.03 ms on a Core i5 6400 @ 2.7 GHz. It is small but measurable. It also gives GCC more freedom in selecting memory or register operands Jeffrey Walton 2019-05-31 05:37:35 -0400
  • aed6e935d6
    Update documentation Jeffrey Walton 2019-05-30 23:22:47 -0400
  • 1f2be58434
    Update Doxygen comments Jeffrey Walton 2019-05-30 22:30:22 -0400
  • 0dd07252d2
    Update comments Jeffrey Walton 2019-05-28 20:19:34 -0400
  • e40de18538
    Update comments Jeffrey Walton 2019-05-28 20:18:58 -0400
  • b61da7acfe
    Update cryptest-autotools script Jeffrey Walton 2019-05-28 06:36:01 -0400
  • a2e7c26f6c
    Add 16-bit rev16 and rbit Jeffrey Walton 2019-05-28 02:50:58 -0400
  • 623059f28c
    Use ARM rev and rbit when appropriate We tried to add a ByteReverse(word64) and BitReverse(word64) overloads but GCC was producing bad code for it. Jeffrey Walton 2019-05-27 14:27:12 -0400
  • 81da61fe7b
    Breakout sha_block_data_order and sha_block_data_order_neon (GH #847) Jeffrey Walton 2019-05-26 22:10:26 -0400
  • d4b533a60f
    Add Thumb and Arm versions of CPU_ProbeARMv7() Jeffrey Walton 2019-05-26 17:06:55 -0400
  • 7cd8d0278a
    Remove VFP_ABI_PUSH and VFP_ABI_POP macros Jeffrey Walton 2019-05-26 02:14:03 -0400
  • 9a3c1e351d
    Clear Valgrind finding in IncrementCounterByOne The single buffer IncrementCounterByOne generated a Valgrind finding on ARM. This commit uses the same pattern for both overloads in case Valgrind wants to fire on the two-buffer version. Jeffrey Walton 2019-05-25 19:49:49 -0400
  • ca11105a40
    Clear sign comparison warning under GCC Jeffrey Walton 2019-05-25 17:00:32 -0400
  • f90c162b68
    Fix IncrementCounterByOne This was introduced earlier in the day when clearing a Valgrind finding. It tested good with the self tests. However, we double process byte[0] if there's a carry. Jeffrey Walton 2019-05-25 07:02:32 -0400
  • fc10a7f1ea
    Fix SHA512 on ARM benchmarks 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. Jeffrey Walton 2019-05-25 06:23:19 -0400
  • 92df2a685f
    Clear Valgrind warnings on ARM I don't believe these should have been findings. They were clear on x86, Aarch64 and PowerPC. Jeffrey Walton 2019-05-25 03:41:05 -0400
  • 1400757fea
    Update comments Jeffrey Walton 2019-05-25 00:43:27 -0400
  • ea96b9d375
    Use CRYPTOGAMS_armcap_P for ARM (GH #846) 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. Jeffrey Walton 2019-05-24 16:33:47 -0400
  • 1650cac3f3
    Update comments Jeffrey Walton 2019-05-23 19:35:05 -0400
  • 2a09376211
    Remove const_cast from CryptogamsArmCaps() Jeffrey Walton 2019-05-23 03:17:17 -0400
  • c5bb85754f
    Add RDRAND and RDSEED test programs These are for Autotools on Solaris. Jeffrey Walton 2019-05-22 21:25:31 -0400
  • fed4a55f39
    Update cryptest-autotools script Jeffrey Walton 2019-05-22 21:03:19 -0400
  • 57b85fafce
    Update Cryptogams SHA headers (GH #846) Jeffrey Walton 2019-05-22 19:11:16 -0400
  • 7eaa5837e0
    Fix "unexpected reloc type 0x03" for ARM shared object (GH #846) Jeffrey Walton 2019-05-22 19:00:08 -0400
  • ce5d5d5c0f
    Use CRYPTOGAMS_armcap_loc for word label Jeffrey Walton 2019-05-22 06:37:16 -0400
  • 0a4b370d3f
    Use CRYPTOGAMS_armcaps It looks like CRYPTOGAMS_armcap was used in some places, and it broke Autotools Jeffrey Walton 2019-05-22 05:46:06 -0400
  • 13e3a19e94
    Remove __KERNEL__ guard Andy's code is used in the Linux kernel. The define is not needed here. Jeffrey Walton 2019-05-22 05:12:16 -0400
  • 073c246595
    Rename CRYPTOGAMS_armcap_P to CRYPTOGAMS_armcap Jeffrey Walton 2019-05-22 05:01:27 -0400
  • 50dd3ad354
    Spelling Jeffrey Walton 2019-05-22 03:04:38 -0400
  • 7287a79669
    Use config_ver.h in change-version script Jeffrey Walton 2019-05-22 02:56:37 -0400
  • 1abab8050e
    Clear documentation warnings Jeffrey Walton 2019-05-22 02:53:26 -0400
  • 879b8c6fe9
    Remove unused CLANG_INTEGRATED_ASSEMBLER from Makefile This is an artifact that should have been removed at CRYPTOPP_DISABLE_MIXED_ASM. Jeffrey Walton 2019-05-21 20:05:44 -0400
  • f396ade93a
    Rename XGETBV to XGETBV64 Jeffrey Walton 2019-05-21 19:44:48 -0400
  • 6f3be56c9d
    Update comments Jeffrey Walton 2019-05-21 19:40:11 -0400
  • 02cdbf61d3
    Rename ExtendedControlRegister to XGETBV Jeffrey Walton 2019-05-21 19:31:13 -0400
  • cf85d768b4
    Fix armv8l-unknown-linux-gnueabihf yet again Jeffrey Walton 2019-05-21 18:48:13 -0400
  • 5e15b46234
    Fix Aarch64 compile in CPU_ProbeARMv7 Previous to the Cryptogams cut-in we could be sloppy and return anything for ARMv8. Now e have real code backing ARMv7 we need to return an accurate value. Jeffrey Walton 2019-05-21 08:13:52 -0400
  • 268ea61f1c
    Cutover to CRYPTOPP_LLVM_CLANG_VERSION (GH #845) We were using CRYPTOPP_CLANG_VERSION in some places. Jeffrey Walton 2019-05-21 07:54:47 -0400
  • 2d4a932c33
    Remove -tvos_simulator_version_min from AppleTVSimulator It did not clear the problem. Jeffrey Walton 2019-05-21 07:08:41 -0400
  • 5b1cae0c63
    Fix compile using MSVC 2013 ARM Jeffrey Walton 2019-05-21 06:54:33 -0400
  • 751515901b
    Limit Cryptogams AES and SHA to Linux distros The Apple assembler cannot translate the source files for iOS. Jeffrey Walton 2019-05-21 05:59:58 -0400
  • ddb9249444
    Fix source warning Jeffrey Walton 2019-05-21 05:44:21 -0400
  • 1973674732
    Add sanity check to setenv-*.sh scripts Prompt user to source the script when required. Whitespace check-in Jeffrey Walton 2019-05-21 05:37:40 -0400
  • 3e897eb0f6
    Use CRYPTOPP_ARM_NEON_AVAILABLE in neon_simd.cpp Jeffrey Walton 2019-05-21 05:11:24 -0400
  • 02baab2307
    Enable Cryptogams AES on ARM using Clang It looks like AES needed -mthumb for Clang. SHA must not use -mthumb under Clang due to a crash. Jeffrey Walton 2019-05-21 04:23:40 -0400
  • 6acbbf1849
    Fix crash in GCM mode on ARM with -mthumb Jeffrey Walton 2019-05-21 04:03:22 -0400
  • 08235400b0
    Add CRYPTOPP_CLANG_VERSION for ARM asm defines We should be using both CRYPTOPP_APPLE_CLANG_VERSION and CRYPTOPP_LLVM_CLANG_VERSION. We'll loop back to it when we have some time. Jeffrey Walton 2019-05-21 03:02:35 -0400
  • 5fb03078eb
    Use void return value for Cryptogams SHA functions Jeffrey Walton 2019-05-21 02:38:30 -0400
  • e8603143dc
    Whitespace check-in We also simplified the CPU_ProbeNEON logic a bit to a vmov.u32 and vshl.u32. Jeffrey Walton 2019-05-21 02:21:15 -0400
  • 40251d9b7f
    Guard CPU_ProbeARMv7 with CRYPTOPP_BOOL_ARM32 (GH #844) We make these queries available on all platforms so folks don't need to guard code. Jeffrey Walton 2019-05-20 23:33:06 -0400
  • c456d6aa69
    Guard CPU_ProbeARMv7 with CRYPTOPP_BOOL_ARM32 (GH #844) We make these queries available on all platforms so folks don't need to guard code. Jeffrey Walton 2019-05-20 23:30:12 -0400
  • cc011d2e44
    Remove Aarch32 and Aarch64 from CPU_QueryARMv7 I believe some of the code may be generated differently. When testing CPU_ProbeARMv7 I had trouble compiling it on ARMv8. Jeffrey Walton 2019-05-20 23:09:57 -0400
  • a9be7ced86
    Fix CPU_QueryARMv7 for Clang (GH #844) This fixes the query under Clang. This appears to be a trickier problem because there is no explicit define for HWCAP_ARMv7. We rely on HWCAP_NEON as a proxy, or fallback to a CPU_ProbeARMv7. Jeffrey Walton 2019-05-20 23:02:36 -0400
  • a164c1f41d
    Fix CPU_ProbeARMv7 for Clang (GH #844) This fixes the probe undr Clang. However, we need to fix the CPU_QueryARMv7 Jeffrey Walton 2019-05-20 21:41:57 -0400
  • c0cff24953
    Update comments Jeffrey Walton 2019-05-20 17:11:59 -0400
  • b1b6ea5b78
    Fold declarations for CRYPTOGAMS_armcaps Also declare storage for CRYPTOGAMS_armcaps. This moves the symbol from BSS to initialized data. The Cryptogams module declares the symbol as common, so they are weak and use our declaration. Jeffrey Walton 2019-05-20 17:03:57 -0400
  • 5c7c092336
    Cleanup Cryptogams defines Jeffrey Walton 2019-05-20 16:39:26 -0400
  • 00155d42cc
    Enable Cryptogams SHA asm for Clang AES is still disabled Jeffrey Walton 2019-05-20 15:29:30 -0400
  • 9590481c7f
    Update cryptest-autotools.sh Jeffrey Walton 2019-05-20 03:48:02 -0400
  • 122529ed4a
    Add test for automake in cryptest-autotools.sh Jeffrey Walton 2019-05-19 21:46:36 -0400
  • e0b60439bf
    Fix Scrypt crash when blockSize is 0 (GH #842) This may change in the future. I prefer to recover, and use default block size when block size is 0. But this stops the immediate problem of a crash. Jeffrey Walton 2019-05-19 21:24:32 -0400
  • 2c0455edf8
    Add additional asserts in Scrypt::ValidateParameters (GH #842) We still need to figure out what to do, but we can start warning users immediately. Jeffrey Walton 2019-05-19 18:52:37 -0400
  • e3788aacc5
    Display C++ for SHA512_AlgorithmProvider on ARM Jeffrey Walton 2019-05-19 18:17:46 -0400
  • 6528561cb3
    Update comments Jeffrey Walton 2019-05-19 18:10:09 -0400
  • e19a6152b5
    Return CRYPTOGAMS_armcaps in CryptogamsArmCaps Jeffrey Walton 2019-05-19 16:51:40 -0400
  • 62d53e6c44
    Disable Cryptogams ASM on static Transform function This needs mmore testing. Jeffrey Walton 2019-05-19 16:46:01 -0400
  • d38e5a954d
    Add ARM SHA512 asm implementation from Cryptogams (GH #841, PR #843) Jeffrey Walton 2019-05-19 16:29:45 -0400
  • 255d10c660
    Use const_cast instead of reinterpret_cast Update comments. Jeffrey Walton 2019-05-19 16:23:49 -0400
  • 65bbba6609
    Fold calls to set CRYPTOGAMS_armcaps into CryptogamsArmCaps Jeffrey Walton 2019-05-19 16:18:20 -0400
  • 6f2a2866e2
    Update comments in sha.cpp Jeffrey Walton 2019-05-19 15:51:09 -0400
  • 711ffc43e7
    Cleanup preprocessor macros Jeffrey Walton 2019-05-19 08:13:42 -0400
  • 86cc94ec1a
    Add ARM SHA512 asm implementation from Cryptogams (GH #841) Jeffrey Walton 2019-05-19 08:10:05 -0400
  • 4c9ca6b723
    Add ARM SHA256 asm implementation from Cryptogams (GH #840, PR #840) Jeffrey Walton 2019-05-19 06:59:12 -0400
  • 223677e470
    Fix sha256_armv4.h header guard Jeffrey Walton 2019-05-19 05:44:48 -0400
  • 47b96311c7
    Add ARM SHA256 asm implementation from Cryptogams (GH #839) Jeffrey Walton 2019-05-19 05:39:59 -0400
  • 8c99b1cd75
    Add call to automake in cryptest-automake.sh Jeffrey Walton 2019-05-19 02:26:44 -0400
  • ffb11da13b
    Add call to automake in cryptest-automake.sh Jeffrey Walton 2019-05-19 02:19:47 -0400
  • 1a63112faf
    Add ARM SHA1 asm implementation from Cryptogams (GH #837, PR #838) Jeffrey Walton 2019-05-18 23:07:17 -0400
  • 995e56d267 Merge branch 'master' of https://github.com/weidai11/cryptopp Jeffrey Walton 2019-05-18 22:14:11 -0400
  • 025982e094
    Update License file to include sha1_armv4.S Jeffrey Walton 2019-05-18 22:12:58 -0400
  • 3bd7d65021
    Add ARM SHA1 asm implementation from Cryptogams (GH #837) Jeffrey Walton 2019-05-18 22:08:05 -0400
  • 4a21619bff
    Regenerate Cryptogams AES assembly file > It does not look like much has changed in the last year. Jeffrey Walton 2019-05-18 06:49:51 -0400
  • 6cc9c81fa5
    Use test_arm_sha1.cxx for feature tests Jeffrey Walton 2019-05-17 23:45:23 -0400
  • 83ee4e1fc0
    Use test_arm_sha1.cxx for feature tests Jeffrey Walton 2019-05-17 23:42:15 -0400
  • f027361369
    Split test_arm_sha.cxx into SHA1 and SHA256 tests Jeffrey Walton 2019-05-17 22:19:26 -0400
  • c51f0ecbfd
    Make config.h more Autoconf friendly (GH #835, PR #836) Jeffrey Walton 2019-05-17 15:18:17 -0400
  • 82e6ca3e98
    Update header guard Jeffrey Walton 2019-05-17 14:58:01 -0400
  • 49161e8d8b
    Update comments Jeffrey Walton 2019-05-17 14:47:07 -0400
  • d00fa82f7b
    Move endian settings to config_misc.h Jeffrey Walton 2019-05-17 14:20:02 -0400
  • e57aad79e0
    Use config_asm.h Jeffrey Walton 2019-05-17 14:09:01 -0400
  • fc13431939
    Clear GCC unknown pragma warning Jeffrey Walton 2019-05-17 04:17:44 -0400
  • d112d4d1b0
    Clear GCC unknown pragma warning Jeffrey Walton 2019-05-17 04:12:32 -0400
  • 88c0789660
    Clear unused variable warning Jeffrey Walton 2019-05-17 03:11:30 -0400
  • 686966d9b7
    Clear unused variable warning Jeffrey Walton 2019-05-17 03:10:54 -0400
  • 732f737f87
    Clear unused variable warning Jeffrey Walton 2019-05-17 03:09:50 -0400
  • c22eb40573
    Clear unused variable warning Jeffrey Walton 2019-05-17 02:48:29 -0400
  • d6f51109a9
    Clear Clang warning for alignment requirements Jeffrey Walton 2019-05-17 02:17:50 -0400
  • 91a65d2e10
    Clear Clang warning for alignment requirements Jeffrey Walton 2019-05-17 00:41:33 -0400