summaryrefslogtreecommitdiff
path: root/sha.h
diff options
context:
space:
mode:
authorJeffrey Walton <noloader@gmail.com>2018-08-18 04:44:53 -0400
committerGitHub <noreply@github.com>2018-08-18 04:44:53 -0400
commit4282f94712ee7b86c36fc656f377d2ce78532f0c (patch)
tree6057c2539f6c7b3fd9daa6a83d1a6de5e8018392 /sha.h
parent06cf2ede9e043b4c25eb3521cf67fcebb41b7629 (diff)
downloadcryptopp-git-4282f94712ee7b86c36fc656f377d2ce78532f0c.tar.gz
Disable X32 inline assembly (GH #686, PR #704)
Also use CRYPTOPP_DISABLE_XXX_ASM consistently. The pattern is needed for Clang which still can't compile Intel assembly language. Also see http://llvm.org/bugs/show_bug.cgi?id=24232.
Diffstat (limited to 'sha.h')
-rw-r--r--sha.h6
1 files changed, 6 insertions, 0 deletions
diff --git a/sha.h b/sha.h
index f2c3196e..5a2f985f 100644
--- a/sha.h
+++ b/sha.h
@@ -11,6 +11,12 @@
#include "config.h"
#include "iterhash.h"
+// Clang 3.3 integrated assembler crash on Linux. Clang 3.4 due to compiler
+// error with .intel_syntax, http://llvm.org/bugs/show_bug.cgi?id=24232
+#if CRYPTOPP_BOOL_X32 || defined(CRYPTOPP_DISABLE_INTEL_ASM)
+# define CRYPTOPP_DISABLE_SHA_ASM 1
+#endif
+
NAMESPACE_BEGIN(CryptoPP)
/// \brief SHA-1 message digest