summaryrefslogtreecommitdiff
path: root/gcm.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Fix SunCC crash when compiling GCMJeffrey Walton2017-08-271-2/+2
|
* Support Base Implementation + SIMD implementation on Solaris (PR #461)Jeffrey Walton2017-08-241-5/+5
|
* Remove BOOL macro value (GH #462)Jeffrey Walton2017-08-201-7/+7
| | | | Currently the CRYPTOPP_BOOL_XXX macros set the macro value to 0 or 1. If we remove setting the 0 value (the #else part of the expression), then the self tests speed up by about 0.3 seconds. I can't explain it, but I have observed it repeatedly. This check-in prepares for the removal in Upstream master
* Update commentsJeffrey Walton2017-08-191-1/+1
|
* Use CRYPTOPP_SSE2_INTRIN_AVAILABLE for consistent namingJeffrey Walton2017-08-181-5/+5
|
* Split source files to support Base Implementation + SIMD implementation (GH ↵Jeffrey Walton2017-08-171-446/+76
| | | | | #461) Split source files to support Base Implementation + SIMD implementation
* Fix more Clang problemsJeffrey Walton2017-08-171-1/+4
| | | | I wish this god damn compiler would stop pretending to be other compilers when it can't consume the same program. Even the GCC devs have told the LLVM devs to stop ding that crap
* Disable Carryless Multiplies for ClangJeffrey Walton2017-08-161-14/+13
| | | | Clang causes too many problems. Early versions of the compiler simply crashes. Later versions of the compiler still have trouble with Intel ASM and still produce incorrect results on occassion. Additionally, we have to special case the integrated assemvler. Its making a mess of the code and causing self test failures
* Cleanup casts due to ClangJeffrey Walton2017-08-131-17/+21
|
* Revert 95ee8975b4fc and 7d21cdd54e95 (Issue 408)Jeffrey Walton2017-08-131-62/+47
| | | | This broke some OS X builds. We need more testing. Ugh...
* Use blockSize in error message thrownJeffrey Walton2017-08-121-1/+3
|
* Convert GCM to use runtime blocksize checking (Issue 408)Jeffrey Walton2017-08-121-6/+19
| | | | GCM is still only defined for 16-byte ciphers, but this is where we need to be when we add the larger polynomials
* Add C++ nullptr support (Issue 383)Jeffrey Walton2017-03-011-6/+6
|
* Change file preamble to include "originally written by Wei Dai"Jeffrey Walton2017-01-271-1/+1
| | | | We have made a fair number of changes, and we don't want WD to receive credit for issues he was not part of
* VEXT_8 -> VEXT_U8Jeffrey Walton2017-01-221-8/+8
|
* Comments and whitespace checkinJeffrey Walton2017-01-201-860/+864
|
* Fix "error: impossible constraint in asm" under Aarch64 (Issue 366)Jeffrey Walton2017-01-201-3/+20
|
* Call vrev64q_u8 after vld1q_u8Jeffrey Walton2017-01-191-11/+11
|
* Switch to vext and remove unnecessary castsJeffrey Walton2017-01-191-10/+11
|
* Add GCC inline ASM for PMULL and PMULL2Jeffrey Walton2017-01-191-28/+108
| | | | The macros that invoke GCC inline ASM have better code generation and speedup GCM ops by about 70 MiB/s on an Opteron 1100. The intrinsics are still available for Windows platforms and Visual Studio 2017 and above
* Avoid C-style casts for NEON vectorsJeffrey Walton2017-01-161-53/+50
| | | | Switch to ARM vector casts like vreinterpretq_u8_u64
* Breakout __ARM_FEATURE_CRYPTO into PMULL, AES and SHA for Apple Clang (Issue ↵Jeffrey Walton2017-01-151-5/+5
| | | | | | 362) It appears Apple Clang disgorges carryless multiply (PMULL) from Crypto (AES and SHA). The breakout added CRYPTOPP_BOOL_ARM_PMULL_INTRINSICS_AVAILABLE for PMULL, and retained CRYPTOPP_BOOL_ARM_CRYPTO_INTRINSICS_AVAILABLE for AES and SHA only
* Remove last of macros targtting _MSC_VER 1200 (Issue 342)Jeffrey Walton2016-12-031-1/+1
|
* Reference 226 and 284 bugs in workaround since the gyrations are not readily ↵Jeffrey Walton2016-09-181-2/+2
| | | | apparent
* Fix SunCC 12.5 failed validation in gcm.cpp (Issue 284)Jeffrey Walton2016-09-181-3/+7
|
* Fix SunCC 12.3 - 12.5 crash in gcm.cppJeffrey Walton2016-09-181-1/+1
| | | | | | | | | /opt/developerstudio12.5/bin/CC -DNDEBUG -g2 -O2 -m64 -native -KPIC -template=no%extdef -c gcm.cpp assertion failed in function pr_post_process_node() @ preopt.c:3868 assert(nd_eq_(scope_first_stmt_(node), first_s)) CC: ube failed for gcm.cpp
* Revert "Fix SunCC 12.3 - 12.5 crash in gcm.cpp"Jeffrey Walton2016-09-181-7/+5
| | | | This reverts commit 519b41e47eee262539ebe5f64019362ef018eeb1. Additional testing cruft was included in the commit.
* Fix SunCC 12.3 - 12.5 crash in gcm.cppJeffrey Walton2016-09-181-5/+7
| | | | | | | | | $ /opt/developerstudio12.5/bin/CC -DNDEBUG -g2 -O2 -D__SSE2__ -D__SSE3__ -D__SSSE3__ -xarch=ssse3 -Wno-deprecated-declarations -m64 -native -KPIC -template=no%extdef -c gcm.cpp assertion failed in function pr_post_process_node() @ preopt.c:3868 assert(nd_eq_(scope_first_stmt_(node), first_s)) CC: ube failed for gcm.cpp
* Merge 'master' into 'trap'Jeffrey Walton2016-09-161-1/+1
|\
| * Fixed gcm.cpp compile under MSC/Visual StudioJeffrey Walton2016-09-161-1/+1
| |
* | Add CRYPTOPP_ASSERT (Issue 277, CVE-2016-7420)Jeffrey Walton2016-09-161-10/+10
|/ | | | trap.h and CRYPTOPP_ASSERT has existed for over a year in Master. We deferred on the cut-over waiting for a minor version bump (5.7). We have to use it now due to CVE-2016-7420
* Fix gcm.cpp compile under i686 Linux after 97282f61cd8b2155Jeffrey Walton2016-09-131-1/+1
|
* Fix gcm.cpp compile under x86_64 Linux after 4f7fb2067df41dd8Jeffrey Walton2016-09-121-0/+3
|
* Fixed comments in macro magicJeffrey Walton2016-09-121-3/+3
|
* Improved comments in macro magicJeffrey Walton2016-09-121-11/+14
|
* Cleaned up use of assembler mnemonicsJeffrey Walton2016-09-121-6/+15
|
* Re-enable AES-NI/CLMUL when using Clang Integrated Assembler (part of Issue 226)Jeffrey Walton2016-09-111-7/+5
|
* Disable CLMUL for SunCC 5.13 and below (Issue 226)Jeffrey Walton2016-09-111-9/+9
|
* Enable AES-NI intrinsics for Clang. Add ARM NEON and PMULL implementationJeffrey Walton2016-08-241-17/+199
|
* Add guard for SunCCJeffrey Walton2016-07-251-1/+1
|
* Fix SunCC crash and failed compile for gcm.cpp. This is the hammer - we ↵Jeffrey Walton2016-07-151-2/+2
| | | | don't enable any ASM for the source file (Issue 227)
* Fix SunCC 12.x compile error with -std=c++11 (Issue 226)Jeffrey Walton2016-07-151-1/+1
|
* Cleared "assertion failed in function pr_post_process_node() @ preopt.c" ↵Jeffrey Walton2016-07-091-2/+6
| | | | under Sun Studio 12.5 (Issue 220)
* Go back to Commit 66ada4cc61d62afcJeffrey Walton2016-07-061-7/+7
|
* Revert "Merge remote-tracking branch 'upstream/master'" - not intended to be ↵Mouse2016-07-061-7/+7
| | | | | | | merged by me This reverts commit 762c315566bce681e380641d1894251f984eac10, reversing changes made to b48866631a5587e9348245fedd6f1e0871df35db.
* Add MacPorts GCC compiler and Clang integrated assembler support. This is a ↵Jeffrey Walton2016-07-051-7/+7
| | | | merge of the development branch 'clang-ia'
* Merge 'solaris' dev branch into 'master'Jeffrey Walton2016-06-151-11/+11
|
* Add C++11 alignas support. Deleting 'alignas' branchJeffrey Walton2016-06-141-1/+2
|
* Cleared -Wcast-align (Issue 122)Jeffrey Walton2016-01-271-15/+15
|
* Cleared -Wcast-align (Issue 122)Jeffrey Walton2016-01-251-1/+4
|