summaryrefslogtreecommitdiff
path: root/gcm.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 /gcm.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 'gcm.h')
-rw-r--r--gcm.h6
1 files changed, 6 insertions, 0 deletions
diff --git a/gcm.h b/gcm.h
index fa1bac55..b285c89b 100644
--- a/gcm.h
+++ b/gcm.h
@@ -10,6 +10,12 @@
#include "authenc.h"
#include "modes.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_GCM_ASM 1
+#endif
+
NAMESPACE_BEGIN(CryptoPP)
/// \enum GCM_TablesOption