[eigen3] 02/04: Fix neon vectorization of pmul(Packet1cd, Packet1cd). (Closes: #803552)

Anton Gladky gladk at moszumanska.debian.org
Thu Dec 10 19:54:08 UTC 2015


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

gladk pushed a commit to branch master
in repository eigen3.

commit e0aad2259fc2ae238c4f39cd2deb305ec1742fab
Author: Gael Guennebaud <gael.guennebaud at inria.fr>
Date:   Thu Dec 10 20:45:44 2015 +0100

    Fix neon vectorization of pmul(Packet1cd,Packet1cd). (Closes: #803552)
---
 debian/patches/10_fix_neon_vectorization.patch | 31 ++++++++++++++++++++++++++
 debian/patches/series                          |  1 +
 2 files changed, 32 insertions(+)

diff --git a/debian/patches/10_fix_neon_vectorization.patch b/debian/patches/10_fix_neon_vectorization.patch
new file mode 100644
index 0000000..7af0069
--- /dev/null
+++ b/debian/patches/10_fix_neon_vectorization.patch
@@ -0,0 +1,31 @@
+# HG changeset patch
+# User Gael Guennebaud <g.gael at free.fr>
+# Date 1449759993 -3600
+# Node ID dfa123a3ca2f2478e66776731a8cd760a253b71b
+# Parent  b6e3e2a76f886841b3f2283e743e17897b163b38
+Bug 1103: fix neon vectorization of pmul(Packet1cd,Packet1cd)
+
+Index: eigen3/Eigen/src/Core/arch/NEON/Complex.h
+===================================================================
+--- eigen3.orig/Eigen/src/Core/arch/NEON/Complex.h
++++ eigen3/Eigen/src/Core/arch/NEON/Complex.h
+@@ -73,7 +73,7 @@ template<> EIGEN_STRONG_INLINE Packet2cf
+ 
+   // Get the real values of a | a1_re | a1_re | a2_re | a2_re |
+   v1 = vcombine_f32(vdup_lane_f32(vget_low_f32(a.v), 0), vdup_lane_f32(vget_high_f32(a.v), 0));
+-  // Get the real values of a | a1_im | a1_im | a2_im | a2_im |
++  // Get the imag values of a | a1_im | a1_im | a2_im | a2_im |
+   v2 = vcombine_f32(vdup_lane_f32(vget_low_f32(a.v), 1), vdup_lane_f32(vget_high_f32(a.v), 1));
+   // Multiply the real a with b
+   v1 = vmulq_f32(v1, b.v);
+@@ -325,8 +325,8 @@ template<> EIGEN_STRONG_INLINE Packet1cd
+ 
+   // Get the real values of a 
+   v1 = vdupq_lane_f64(vget_low_f64(a.v), 0);
+-  // Get the real values of a 
+-  v2 = vdupq_lane_f64(vget_high_f64(a.v), 1);
++  // Get the imag values of a
++  v2 = vdupq_lane_f64(vget_high_f64(a.v), 0);
+   // Multiply the real a with b
+   v1 = vmulq_f64(v1, b.v);
+   // Multiply the imag a with b
diff --git a/debian/patches/series b/debian/patches/series
index 2242d34..534680c 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -4,3 +4,4 @@
 06_remove_doc_matrix.patch
 07_remove_compressed_doc.patch
 08_suitesparse-4.4.patch
+10_fix_neon_vectorization.patch

-- 
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/debian-science/packages/eigen3.git



More information about the debian-science-commits mailing list