From: Michael R. Crusoe <crusoe@debian.org>
Subject: Enable compilation on other 64-bit systems besidex amd64
--- consensuscore.orig/include/ConsensusCore/Edna/EdnaEvaluator.hpp
+++ consensuscore/include/ConsensusCore/Edna/EdnaEvaluator.hpp
@@ -2,8 +2,8 @@
 
 #pragma once
 
-#include <pmmintrin.h>
-#include <xmmintrin.h>
+#define SIMDE_ENABLE_NATIVE_ALIASES
+#include <simde/x86/sse3.h>
 
 #include <algorithm>
 #include <cassert>
--- consensuscore.orig/include/ConsensusCore/LFloat.hpp
+++ consensuscore/include/ConsensusCore/LFloat.hpp
@@ -1,7 +1,8 @@
 // Author: David Alexander
 
 #pragma once
-#include <xmmintrin.h>
+#define SIMDE_ENABLE_NATIVE_ALIASES
+#include <simde/x86/sse.h>
 #include <cfloat>
 #include <ostream>
 
--- consensuscore.orig/include/ConsensusCore/Matrix/DenseMatrix.hpp
+++ consensuscore/include/ConsensusCore/Matrix/DenseMatrix.hpp
@@ -2,7 +2,8 @@
 
 #pragma once
 
-#include <xmmintrin.h>
+#define SIMDE_ENABLE_NATIVE_ALIASES
+#include <simde/x86/sse.h>
 
 #include <boost/numeric/ublas/matrix.hpp>
 #include <utility>
--- consensuscore.orig/include/ConsensusCore/Matrix/SparseMatrix.hpp
+++ consensuscore/include/ConsensusCore/Matrix/SparseMatrix.hpp
@@ -2,7 +2,8 @@
 
 #pragma once
 
-#include <xmmintrin.h>
+#define SIMDE_ENABLE_NATIVE_ALIASES
+#include <simde/x86/sse.h>
 #include <utility>
 #include <vector>
 
--- consensuscore.orig/include/ConsensusCore/Matrix/SparseVector.hpp
+++ consensuscore/include/ConsensusCore/Matrix/SparseVector.hpp
@@ -2,7 +2,8 @@
 
 #pragma once
 
-#include <xmmintrin.h>
+#define SIMDE_ENABLE_NATIVE_ALIASES
+#include <simde/x86/sse.h>
 #include <utility>
 #include <vector>
 
--- consensuscore.orig/include/ConsensusCore/Quiver/QvEvaluator.hpp
+++ consensuscore/include/ConsensusCore/Quiver/QvEvaluator.hpp
@@ -2,8 +2,8 @@
 
 #pragma once
 
-#include <pmmintrin.h>
-#include <xmmintrin.h>
+#define SIMDE_ENABLE_NATIVE_ALIASES
+#include <simde/x86/sse3.h>
 
 #include <algorithm>
 #include <cassert>
--- consensuscore.orig/include/ConsensusCore/Quiver/detail/SseMath.hpp
+++ consensuscore/include/ConsensusCore/Quiver/detail/SseMath.hpp
@@ -2,7 +2,8 @@
 
 #pragma once
 
-#include <xmmintrin.h>
+#define SIMDE_ENABLE_NATIVE_ALIASES
+#include <simde/x86/sse.h>
 #include <limits>
 
 #include <ConsensusCore/Quiver/detail/sse_mathfun.h>
--- consensuscore.orig/src/C++/Edna/EdnaCounts.cpp
+++ consensuscore/src/C++/Edna/EdnaCounts.cpp
@@ -1,7 +1,7 @@
 // Author: Patrick Marks
 
-#include <pmmintrin.h>
-#include <xmmintrin.h>
+#define SIMDE_ENABLE_NATIVE_ALIASES
+#include <simde/x86/sse3.h>
 #include <cassert>
 #include <cfloat>
 #include <climits>
--- consensuscore.orig/make/Defs.mk
+++ consensuscore/make/Defs.mk
@@ -46,10 +46,10 @@
 endif
 
 ifeq ($(GXX),clang++)
-    CXX_FLAGS           = $(GXX_FLAGS) $(CXX_OPT_FLAGS) -msse3 -fPIC -Qunused-arguments -fno-omit-frame-pointer
+    CXX_FLAGS           = $(GXX_FLAGS) $(CXX_OPT_FLAGS) -fPIC -Qunused-arguments -fno-omit-frame-pointer
     CXX_STRICT_FLAGS    = $(GXX_FLAGS) $(CXX_FLAGS) -pedantic -std=$(CPP_STD) -Wall
 else
-    CXX_FLAGS           = $(CXX_OPT_FLAGS) $(CXX_EXTRA_ARGS) -msse3 -fPIC -fno-omit-frame-pointer
+    CXX_FLAGS           = $(CXX_OPT_FLAGS) $(CXX_EXTRA_ARGS) -fPIC -fno-omit-frame-pointer
     CXX_STRICT_FLAGS    = $(CXX_FLAGS) -pedantic -std=$(CPP_STD) -Wall
 endif
 
--- consensuscore.orig/include/ConsensusCore/Quiver/detail/sse_mathfun.h
+++ consensuscore/include/ConsensusCore/Quiver/detail/sse_mathfun.h
@@ -31,7 +31,8 @@
 
 #pragma once
 
-#include <xmmintrin.h>
+#define SIMDE_ENABLE_NATIVE_ALIASES
+#include <simde/x86/sse.h>
 #include <limits>
 #define USE_SSE2
 
@@ -49,7 +50,7 @@
 typedef __m128 v4sf;  // vector of 4 float (sse1)
 
 #ifdef USE_SSE2
-#include <emmintrin.h>
+#include <simde/x86/sse2.h>
 typedef __m128i v4si;  // vector of 4 int (sse2)
 #else
 typedef __m64 v2si;  // vector of 2 int (mmx)
