summaryrefslogtreecommitdiff
path: root/GNUmakefile
diff options
context:
space:
mode:
Diffstat (limited to 'GNUmakefile')
-rwxr-xr-xGNUmakefile12
1 files changed, 9 insertions, 3 deletions
diff --git a/GNUmakefile b/GNUmakefile
index 97652470..25dc0546 100755
--- a/GNUmakefile
+++ b/GNUmakefile
@@ -106,9 +106,6 @@ ifeq ($(GCC_COMPILER)$(OSXPORT_COMPILER),11)
ifeq ($(findstring -Wa,-q,$(CXXFLAGS)),)
CXXFLAGS += -Wa,-q
endif
- ifeq ($(findstring -DCRYPTOPP_CLANG_INTEGRATED_ASSEMBLER,$(CXXFLAGS)),)
- CXXFLAGS += -DCRYPTOPP_CLANG_INTEGRATED_ASSEMBLER=1
- endif
endif
# Hack to skip CPU feature tests for some recipes
@@ -418,6 +415,15 @@ ifeq ($(findstring -DCRYPTOPP_DISABLE_ASM,$(CXXFLAGS)),)
endif
endif
+# Most Clang cannot handle mixed asm with positional arguments, where the
+# body is Intel style with no prefix and the templates are AT&T style.
+# Also see https://bugs.llvm.org/show_bug.cgi?id=39895 .
+TPROG = TestPrograms/test_mixed_asm.cxx
+HAVE_OPT = $(shell $(CXX) $(TCXXFLAGS) $(ZOPT) $(TPROG) -o $(TOUT) 2>&1 | tr ' ' '\n' | wc -l)
+ifneq ($(strip $(HAVE_OPT)),0)
+ CXXFLAGS += -DCRYPTOPP_DISABLE_MIXED_ASM
+endif
+
# IS_X86, IS_X32 and IS_X64
endif