Commit Graph

706 Commits

Author SHA1 Message Date
Jeffrey Walton
e87857f67d Cleared "missing initialization in copy constructor" warning with GCC 5.1 and -Wextra 2015-07-23 19:17:07 -04:00
Jeffrey Walton
5bb0e6fd38 Cleared "unused variable" warning under GCC 5.1 with -Wall 2015-07-23 18:44:51 -04:00
Jeffrey Walton
504ba0ea87 Cleared "comparison between signed and unsigned integer" warning in SafeConvert by providing template specializations 2015-07-23 18:15:29 -04:00
Jeffrey Walton
3fd7a239f0 Backed out Clang integrated assembler changes. LLVM Bug 24232 pushed us over the edge. There is some skeleton code remaining for testing. To activate it, perform "make FORCE_ASM=1" 2015-07-23 16:47:03 -04:00
Jeffrey Walton
07e8319478 Cleared "unused function" warning when using GCC with -Wall 2015-07-23 14:21:06 -04:00
Jeffrey Walton
b2d9be1b80 Cleared "unused variable" warning when using CRYPTOPP_STATIC_ASSERT under GCC. The "__attribute__ ((unused)" was present in GCC 2.95, so it will be available for the GCC's we support. Non-GCC's will get the non-decorated assert 2015-07-23 12:30:13 -04:00
Jeffrey Walton
929967a042 Added CRYTPOPP_ASSERT to cryptest program. The mods also show how to install a debug trap handler such that if CRYPTOPP_ASSERT fires, the program continues 2015-07-23 10:48:43 -04:00
Jeffrey Walton
809a3cbb74 Cleared unknown pragma warning under MinGW 2015-07-23 09:09:50 -04:00
Jeffrey Walton
bdb7ea3bf0 Cleared unknown pragma warning under MinGW 2015-07-23 08:52:08 -04:00
Jeffrey Walton
5af5c553e3 Added default for strip program. Added additional fodder to distclean recipe 2015-07-23 08:39:31 -04:00
Jeffrey Walton
123ca9b76d Added standard makefile targets, including distclean, dist, install-strip. Removed no-lib recipe because there's a proper dependency rule 2015-07-23 07:50:55 -04:00
Jeffrey Walton
7b629dcfa6 Cleared UB in cast.cpp due to use of rotVariable. On PowerPC, the specialization that uses inline assembler will activate. The inline assembly uses __rlwnm which takes a mask and does not suffer C/C++ UB 2015-07-23 05:10:12 -04:00
Jeffrey Walton
ac0f94c23a Removed branch from rotlVariable. The mask ensures it stays well defined 2015-07-23 04:06:10 -04:00
Jeffrey Walton
1303f4bdcc Cutover to CRYPTOPP_ASSERT in misc.h. Posix's behavior of "let's crash the program by raising SIGABRT" in Debug builds has got to be one of the most questionable decisions in the history of computing. The new behavior: if there's a SIGTRAP handler somewhere, then the handler will be invoked. Some platforms, like Apple and Microsoft, provide a default SIGTRAP handler. If there's no SIGTRAP handler, then the program will crash just like it raised a SIGABRT. In this case, there's no effective change in behavior 2015-07-23 03:39:13 -04:00
Jeffrey Walton
5daa168a93 Cleaned up CRYPTOPP_CLANG_INTEGRATED_ASSEMBLER and WORKAROUND_LLVM_BUG_18916 defines 2015-07-23 03:29:21 -04:00
Jeffrey Walton
cd33142f6c Improved flow of setting variables in makefile 2015-07-23 03:17:18 -04:00
Jeffrey Walton
b3924a7b86 Additional changes to support Clang's integrated assembler. They have not been activated though. Uri and other testers will be able to uncomment the TODO line and everything will work as expected 2015-07-23 02:18:57 -04:00
Jeffrey Walton
e6300f52e2 Removed template specializations for Clang using preprocessor for rotFixed due to LLVM Bug 24226. Removed asserts from __rlwinm because the mask ensures the operation is well defined (see the comments in ppc_intrinsics.h) 2015-07-23 01:53:45 -04:00
Jeffrey Walton
fcd5f6df72 Cleared "invalid operand size" under Clang's integrated assembler. After more testing, this might be applied to other assemblers because Clang is probably correct in this instance 2015-07-22 06:14:37 -04:00
Jeffrey Walton
29c4310aab Cleared remaining issues related to Clang's integarted assembler parsing of the syntax string 2015-07-22 03:59:21 -04:00
Jeffrey Walton
6d0dd41eb0 Specialized defines to work with/around Clang integrated assembler. The two defines are WORKAROUND_LLVM_BUG_18916 and CRYPTOPP_USING_CLANG_INTEGRATED_ASSEMBLER. Once the 18916 bug is fixed, the other issues around the integrated assembler will remain 2015-07-22 03:48:10 -04:00
Jeffrey Walton
931ec17224 Added CRYPTOPP_ASSERT (but its not cut-in yet). It required another file because misc.h needed it. (The other options were to force it into misc.h early or drop it in config.h) 2015-07-22 02:11:52 -04:00
Jeffrey Walton
2441817708 Improved comment for GCC_DIAGNOSTIC_AWARE 2015-07-21 19:02:11 -04:00
Jeffrey Walton
3c56063c3f Added CRYPTOPP_CLANG_NO_INTEGRATED_AS as a guard in config.h (disabled by default since integrated-as is default behavior and the bug is active). GNU_ATT_SYNTAX → GNU_AS_ATT_SYNTAX and GNUINTEL_SYNTAX → GNU_AS_INTEL_SYNTAX 2015-07-21 18:05:48 -04:00
Jeffrey Walton
444d1f1a3b Cut-in to utilize GNU_ATT_SYNTAX and GNU_INTEL_SYNTAX macros. Also see LLVM Bug 18916 (https://llvm.org/bugs/show_bug.cgi?id=18916) 2015-07-21 14:37:55 -04:00
Jeffrey Walton
5e8b114e58 Added macro to abstract differences in sytax string parsing between GAS and Clang integrated assembler. Also see LLVM Bug 18916 (https://llvm.org/bugs/show_bug.cgi?id=18916) 2015-07-21 13:48:48 -04:00
Jeffrey Walton
945c358785 Added GNU/GCC a.out artifact 2015-07-21 13:42:48 -04:00
Jeffrey Walton
818828f127 Cleared warnings under Clang 3.4 with -Wall 2015-07-21 09:43:33 -04:00
Jeffrey Walton
1e215722bc Removed unneeded additional ODBC libraries from VC8 project files 2015-07-20 13:14:52 -04:00
Jeffrey Walton
f13511947d Whitespace checkin 2015-07-20 12:19:18 -04:00
Jeffrey Walton
d40eee99c0 Ported relevant GNUmakefile changes to GNUmakefile-cross 2015-07-20 06:55:42 -04:00
Jeffrey Walton
d5a6f4c628 Updated comment on why -Wall is only enabled for Clang 2015-07-20 04:16:40 -04:00
Jeffrey Walton
77556fca7b Backed-off -Wall for GCC due to issues when managing induced warnings when using -Wall. 2015-07-20 03:30:43 -04:00
Jeffrey Walton
821d467b9e Cleared signed/unsigned warnings under Visual Studio 2015-07-20 01:16:02 -04:00
Jeffrey Walton
417994ca6a Cleared signed/unsigned warnings under Visual Studio. 2015-07-20 01:15:35 -04:00
Jeffrey Walton
8e51ab9623 Tightened assert conditions when -DDEBUG is in effect. 2015-07-20 01:15:06 -04:00
Jeffrey Walton
81aa87df02 Cleared -Wunused-but-set-variable from GCC 4.8 and GCC 5.1. The way to handle separators is via locales and facets 2015-07-20 00:18:54 -04:00
Jeffrey Walton
cf43ed07e3 Revert "Cleared -Wreorder from GCC 4.8 on MinGW"
This reverts commit a9082aeee0. While it cleared the issue on MinGW, it introduced reordering issues on BSDs, Linux and OS X.
2015-07-20 00:13:56 -04:00
Jeffrey Walton
a9082aeee0 Cleared -Wreorder from GCC 4.8 on MinGW 2015-07-19 22:34:20 -04:00
Jeffrey Walton
4b4156e6ba Fixed compile for MinGW 2015-07-19 22:09:35 -04:00
Jeffrey Walton
94db43de97 Cleared -Wunknown-pragmas under GCC 5.1/Cygwin on Windows 2015-07-19 15:09:04 -04:00
Jeffrey Walton
c4a5d802e7 Enabled -Wall for GCC 4.7 and above, and Clang 2015-07-19 15:04:57 -04:00
Jeffrey Walton
88f94ed358 Cleared behavior that relied upon undefined behavior 2015-07-19 14:35:30 -04:00
Jeffrey Walton
a56f07709e g_hasISSE -> h_hasSSE. That's how old this function is... 2015-07-19 13:39:57 -04:00
Jeffrey Walton
11eb9957d4 HasISSE -> HasSSE. That's how old this function is... 2015-07-19 13:33:41 -04:00
Jeffrey Walton
ea9081ebc4 Cleared -Wunneeded-internal-declaration from GCC 5.1 2015-07-19 12:30:16 -04:00
Jeffrey Walton
786b3f1660 Cleared warning "GCC diagnostic kind" unknown. It appears to be a Clang warning 2015-07-19 12:16:19 -04:00
Jeffrey Walton
e522574ddd Attempting to clear unknown pragma warning under GCC 5.1. This might be a compiler bug... 2015-07-19 12:12:50 -04:00
Jeffrey Walton
c33a567654 Updated comment with TODO to make it easy to locate in the future via grep/find 2015-07-19 12:04:23 -04:00
Jeffrey Walton
7c0c1f57d5 Cleared -Wparentheses from GCC 5.1 2015-07-19 12:00:17 -04:00