summaryrefslogtreecommitdiff
path: root/misc.h
Commit message (Collapse)AuthorAgeFilesLines
* Fix use of <x86intrin.h> for MSVC (GH #1198)Jeffrey Walton2023-04-151-2/+4
| | | | It seems Microsoft now defines GCC defines, like __BMI__
* Use std namespace for memset, memcpy, memcmp (#1204)Jeffrey Walton2023-04-151-6/+6
|
* Cleanup after merging PR #1043Jeffrey Walton2022-02-141-43/+2
|
* Fix issue with VS runtime checks for data truncation (#1043)ejl1032022-02-141-2/+44
| | | | | | | | | When running VS with the 'c' runtime check on for data truncation (see https://docs.microsoft.com/en-us/cpp/build/reference/rtc-run-time-error-checks?view=msvc-160) This code will throw errors because the 64 bit ptr gets truncated to a 32bit value. Normally I'd disable this using the pragma specifically for this code, but sadly that doesn't work for template functions, so I have come up with a way to get the appropriate masking type for any template combinations and using the recommended way to silence the error without impacting the quality of the generated code. This code could be more concise in modern C++ but it seems the project expects to support C++03 so this should work fine there. All tests passed locally for me on Windows (some asserts but verified they were the same before my changes)
* Clear unused variable warningsJeffrey Walton2022-01-131-2/+6
|
* Add word128 overloads to misc.hJeffrey Walton2022-01-131-1/+154
|
* Update documentationJeffrey Walton2022-01-131-5/+71
|
* Add ByteReverse(word128 value)Jeffrey Walton2022-01-121-0/+13
| | | | This speeds up XTS mode on x86_64 by 0.11 cpb
* Update documentationJeffrey Walton2021-03-101-6/+6
|
* Fix spellingJeffrey Walton2021-03-101-23/+32
|
* Add EnumToInt conversion macro for enum-enum conversion warnings (GH #1016)Jeffrey Walton2021-03-091-0/+11
|
* Revert e235ac57e85b (GH #992)Jeffrey Walton2020-12-281-4/+3
| | | | These damn aligned arrays are going to be the death of us...
* Use pointer-to-T in IsAligned<T> (GH #992)Jeffrey Walton2020-12-281-3/+4
|
* Update documentationJeffrey Walton2020-12-251-2/+2
|
* Update documentationJeffrey Walton2020-12-251-2/+2
|
* Update documentationJeffrey Walton2020-12-251-6/+5
|
* Use \return and \throw consitently in the docsJeffrey Walton2020-12-071-42/+42
|
* Fix Clang version numbers for memset_zJeffrey Walton2020-09-151-2/+2
|
* Update documentation (GH #966)Jeffrey Walton2020-09-151-8/+11
|
* Use define CRYPTOPP_CXX11_STATIC_INIT nameJeffrey Walton2020-08-071-1/+1
|
* Remove __BIGGEST_ALIGNMENT__ from GetAlignmentOfJeffrey Walton2020-08-061-5/+0
|
* Use CRYPTOPP_CXX11_ATOMIC defineJeffrey Walton2020-08-061-2/+2
|
* Fix define CRYPTOPP_CXX17_STATIC_ASSERT nameJeffrey Walton2020-08-051-1/+1
| | | | That's a C++17 feature, not C++11
* Fix spellingJeffrey Walton2020-07-071-2/+2
|
* Whitespace check-inJeffrey Walton2020-05-111-227/+227
|
* Clean GCC 10 Analyzer warningsJeffrey Walton2020-05-111-6/+6
|
* Clean GCC 10 Analyzer warningsJeffrey Walton2020-05-101-1/+2
|
* Clean GCC 10 Analyzer warningsJeffrey Walton2020-05-101-1/+2
|
* Clear signed/unsigned warnings under ClangJeffrey Walton2019-10-051-22/+22
|
* Don't add semicolon to CRYPTOPP_CONSTANT abd DOCUMENTED_TYPEDEF (GH #889)Jeffrey Walton2019-10-031-16/+16
| | | | This issue is a recurring issue. Let's try fixing it in the #define this time.
* Add BytePtr and ConstBytePtr overloads for SecByteBlock (GH #890)Jeffrey Walton2019-10-031-2/+25
|
* Avoid circular dependency using AlignedAllocate (GH #885)Jeffrey Walton2019-09-281-56/+4
|
* Whitespace check-inJeffrey Walton2019-07-271-1/+1
|
* Fix macro paste in CRYPTOPP_ASSERT_JOINJeffrey Walton2019-07-141-5/+3
|
* Fix macro paste in CRYPTOPP_ASSERT_JOINJeffrey Walton2019-07-141-2/+3
|
* CRYPTOPP_CXX11_STATIC_ASSERT -> CRYPTOPP_CXX14_STATIC_ASSERTJeffrey Walton2019-07-141-1/+1
| | | | WHoops, this is a C++14 feature
* Use C++ static_assert from N3928 when availableJeffrey Walton2019-07-141-12/+19
|
* Update documentationJeffrey Walton2019-07-141-8/+10
|
* Avoid preprocessor error in SIZE_MAX (GH #864)Jeffrey Walton2019-07-141-2/+2
|
* Update documentationJeffrey Walton2019-07-061-5/+6
|
* Use CRYPTOPP_CXX11_DELETED_FUNCTIONS in NotCopyableJeffrey Walton2019-07-011-4/+9
|
* Avoid ARM rev on Aarch64Jeffrey Walton2019-06-041-20/+16
| | | | This broke Aarch64
* Fix compile on iOSJeffrey Walton2019-06-011-2/+4
|
* Fix OS X compile with Clang later than 6.0Jeffrey Walton2019-05-311-5/+14
| | | | It looks like Apple Clang 6.0 does not provide _blsr_u32 and friends. Later versions of Clang defines _blsr_u32 and it causes a stream of warnings.
* Fix OS X compile with Clang 6.0Jeffrey Walton2019-05-311-0/+9
|
* Add 16-bit rev16 and rbitJeffrey Walton2019-05-281-3/+11
|
* Use ARM rev and rbit when appropriateJeffrey Walton2019-05-271-11/+41
| | | | We tried to add a ByteReverse(word64) and BitReverse(word64) overloads but GCC was producing bad code for it.
* Clear Valgrind finding in IncrementCounterByOneJeffrey Walton2019-05-251-6/+18
| | | | 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.
* Fix IncrementCounterByOneJeffrey Walton2019-05-251-3/+0
| | | | 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.
* Clear Valgrind warnings on ARMJeffrey Walton2019-05-251-3/+10
| | | | I don't believe these should have been findings. They were clear on x86, Aarch64 and PowerPC.