[med-svn] [iqtree] 01/01: Update sse3 removel patch

Gert Wollny gert-guest at moszumanska.debian.org
Thu Mar 10 15:33:54 UTC 2016


This is an automated email from the git hooks/post-receive script.

gert-guest pushed a commit to branch master
in repository iqtree.

commit 5abbd977ca3d2f17e71e337db934fba11bdca58a
Author: Gert Wollny <gw.fossdev at gmail.com>
Date:   Thu Mar 10 14:59:34 2016 +0000

    Update sse3 removel patch
---
 debian/patches/sse.patch | 57 ++++++++++++++++++++++++++++++++++++++++++++++--
 1 file changed, 55 insertions(+), 2 deletions(-)

diff --git a/debian/patches/sse.patch b/debian/patches/sse.patch
index 8a3527a..b21eeed 100644
--- a/debian/patches/sse.patch
+++ b/debian/patches/sse.patch
@@ -5,7 +5,7 @@ Last-Update: Tue, 02 Feb 2016 08:41:45 +0100
 
 --- a/CMakeLists.txt
 +++ b/CMakeLists.txt
-@@ -172,7 +172,7 @@ if(CMAKE_SIZEOF_VOID_P EQUAL 4 OR IQTREE
+@@ -172,7 +172,7 @@
  	endif()
  	SET(EXE_SUFFIX "${EXE_SUFFIX}32")
  	if (GCC OR CLANG) 
@@ -14,7 +14,7 @@ Last-Update: Tue, 02 Feb 2016 08:41:45 +0100
    	endif()
      add_definitions(-DBINARY32)
  else()
-@@ -237,7 +237,7 @@ SET(SSE_FLAGS "")
+@@ -237,7 +237,7 @@
  if (VCC)
  	set(SSE_FLAGS "/arch:SSE2 -D__SSE3__")
  elseif (GCC OR CLANG)
@@ -23,3 +23,56 @@ Last-Update: Tue, 02 Feb 2016 08:41:45 +0100
  elseif (ICC)
  	if (WIN32)
  		set(SSE_FLAGS "/arch:SSE3")
+@@ -246,39 +246,6 @@
+ 	endif()
+ endif()
+ 
+-if (IQTREE_FLAGS MATCHES "fma") # AVX+FMA instruction set
+- 	message("Vectorization : AVX+FMA")
+-	add_definitions(-D__SSE3 -D__AVX) # define both SSE3 and AVX directive
+-	if (VCC)
+-		# Visual C++ has no /mfma flag!, FMA is only included in AVX2 
+-		set(COMBINED_FLAGS "${COMBINED_FLAGS} /arch:AVX2")
+-	elseif (CLANG)
+-		set(COMBINED_FLAGS "${COMBINED_FLAGS} -mavx -mfma")
+-	elseif (GCC)
+-		set(COMBINED_FLAGS "${COMBINED_FLAGS} -mavx -fabi-version=0 -mfma")
+-	elseif (ICC) 
+-		if (WIN32)
+-			 set(COMBINED_FLAGS "${COMBINED_FLAGS} /arch:AVX /Qfma")
+-		else()
+-			 set(COMBINED_FLAGS "${COMBINED_FLAGS} -mavx -mfma")
+-		endif()
+-	endif()
+-
+-	SET(EXE_SUFFIX "${EXE_SUFFIX}-fma")
+-
+-elseif (IQTREE_FLAGS MATCHES "avx") # AVX instruction set
+- 	message("Vectorization : AVX")
+-	add_definitions(-D__SSE3 -D__AVX) # define both SSE3 and AVX directive
+-	set(COMBINED_FLAGS "${COMBINED_FLAGS} ${AVX_FLAGS}")
+-
+-	SET(EXE_SUFFIX "${EXE_SUFFIX}-avx")
+-else() #SSE intruction set
+-	message("Vectorization : SSE3")
+-	add_definitions(-D__SSE3)
+-
+-endif()
+-
+-
+ ##################################################################
+ # Setup compiler flags
+ ##################################################################
+--- a/phylokernel.h
++++ b/phylokernel.h
+@@ -16,7 +16,9 @@
+ #if  INSTRSET >= 3  // SSE3
+     return _mm_hadd_pd(x[0],x[1]);
+ #else
+-#error "You must compile with SSE3 enabled!"
++    Vec2d help0 = _mm_shuffle_pd(x[0], x[1], _MM_SHUFFLE2(0,0));
++    Vec2d help1 = _mm_shuffle_pd(x[0], x[1], _MM_SHUFFLE2(1,1));
++    return _mm_add_pd(help0, help1);
+ #endif
+ }
+ 

-- 
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/debian-med/iqtree.git



More information about the debian-med-commit mailing list