Compare commits
2 commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
507b60f474 | ||
|
|
2bdec42289 |
2 changed files with 102 additions and 12 deletions
|
|
@ -0,0 +1,87 @@
|
|||
From 080786fb620f30a2f22e7c8dd01ce2ae3818bf5f Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Marcus=20M=C3=BCller?= <mmueller@gnuradio.org>
|
||||
Date: Sat, 9 Aug 2025 14:58:16 +0200
|
||||
Subject: [PATCH] rotator2: disable SSE 4.1 kernels, wildly incorrect results
|
||||
in ctest
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
see https://github.com/gnuradio/volk/issues/794
|
||||
|
||||
Signed-off-by: Marcus Müller <mmueller@gnuradio.org>
|
||||
---
|
||||
kernels/volk/volk_32fc_s32fc_rotator2puppet_32fc.h | 4 ++--
|
||||
kernels/volk/volk_32fc_s32fc_x2_rotator2_32fc.h | 4 ++--
|
||||
kernels/volk/volk_32fc_s32fc_x2_rotator_32fc.h | 4 ++--
|
||||
3 files changed, 6 insertions(+), 6 deletions(-)
|
||||
|
||||
diff --git a/kernels/volk/volk_32fc_s32fc_rotator2puppet_32fc.h b/kernels/volk/volk_32fc_s32fc_rotator2puppet_32fc.h
|
||||
index 1ae8ad9..9213065 100644
|
||||
--- a/kernels/volk/volk_32fc_s32fc_rotator2puppet_32fc.h
|
||||
+++ b/kernels/volk/volk_32fc_s32fc_rotator2puppet_32fc.h
|
||||
@@ -55,7 +55,7 @@ static inline void volk_32fc_s32fc_rotator2puppet_32fc_neon(lv_32fc_t* outVector
|
||||
#endif /* LV_HAVE_NEON */
|
||||
|
||||
|
||||
-#ifdef LV_HAVE_SSE4_1
|
||||
+#ifdef LV_HAVE_SSE4_1__DISABLED
|
||||
#include <smmintrin.h>
|
||||
|
||||
static inline void
|
||||
@@ -75,7 +75,7 @@ volk_32fc_s32fc_rotator2puppet_32fc_a_sse4_1(lv_32fc_t* outVector,
|
||||
#endif /* LV_HAVE_SSE4_1 */
|
||||
|
||||
|
||||
-#ifdef LV_HAVE_SSE4_1
|
||||
+#ifdef LV_HAVE_SSE4_1__DISABLED
|
||||
#include <smmintrin.h>
|
||||
static inline void
|
||||
volk_32fc_s32fc_rotator2puppet_32fc_u_sse4_1(lv_32fc_t* outVector,
|
||||
diff --git a/kernels/volk/volk_32fc_s32fc_x2_rotator2_32fc.h b/kernels/volk/volk_32fc_s32fc_x2_rotator2_32fc.h
|
||||
index e668e3c..0f63673 100644
|
||||
--- a/kernels/volk/volk_32fc_s32fc_x2_rotator2_32fc.h
|
||||
+++ b/kernels/volk/volk_32fc_s32fc_x2_rotator2_32fc.h
|
||||
@@ -204,7 +204,7 @@ static inline void volk_32fc_s32fc_x2_rotator2_32fc_neon(lv_32fc_t* outVector,
|
||||
#endif /* LV_HAVE_NEON */
|
||||
|
||||
|
||||
-#ifdef LV_HAVE_SSE4_1
|
||||
+#ifdef LV_HAVE_SSE4_1__DISABLED
|
||||
#include <smmintrin.h>
|
||||
|
||||
static inline void volk_32fc_s32fc_x2_rotator2_32fc_a_sse4_1(lv_32fc_t* outVector,
|
||||
@@ -307,7 +307,7 @@ static inline void volk_32fc_s32fc_x2_rotator2_32fc_a_sse4_1(lv_32fc_t* outVecto
|
||||
#endif /* LV_HAVE_SSE4_1 for aligned */
|
||||
|
||||
|
||||
-#ifdef LV_HAVE_SSE4_1
|
||||
+#ifdef LV_HAVE_SSE4_1__DISABLED
|
||||
#include <smmintrin.h>
|
||||
|
||||
static inline void volk_32fc_s32fc_x2_rotator2_32fc_u_sse4_1(lv_32fc_t* outVector,
|
||||
diff --git a/kernels/volk/volk_32fc_s32fc_x2_rotator_32fc.h b/kernels/volk/volk_32fc_s32fc_x2_rotator_32fc.h
|
||||
index c0def35..4603ecc 100644
|
||||
--- a/kernels/volk/volk_32fc_s32fc_x2_rotator_32fc.h
|
||||
+++ b/kernels/volk/volk_32fc_s32fc_x2_rotator_32fc.h
|
||||
@@ -113,7 +113,7 @@ static inline void volk_32fc_s32fc_x2_rotator_32fc_neon(lv_32fc_t* outVector,
|
||||
#endif /* LV_HAVE_NEON */
|
||||
|
||||
|
||||
-#ifdef LV_HAVE_SSE4_1
|
||||
+#ifdef LV_HAVE_SSE4_1__DISABLED
|
||||
|
||||
static inline void volk_32fc_s32fc_x2_rotator_32fc_a_sse4_1(lv_32fc_t* outVector,
|
||||
const lv_32fc_t* inVector,
|
||||
@@ -128,7 +128,7 @@ static inline void volk_32fc_s32fc_x2_rotator_32fc_a_sse4_1(lv_32fc_t* outVector
|
||||
#endif /* LV_HAVE_SSE4_1 for aligned */
|
||||
|
||||
|
||||
-#ifdef LV_HAVE_SSE4_1
|
||||
+#ifdef LV_HAVE_SSE4_1__DISABLED
|
||||
|
||||
static inline void volk_32fc_s32fc_x2_rotator_32fc_u_sse4_1(lv_32fc_t* outVector,
|
||||
const lv_32fc_t* inVector,
|
||||
--
|
||||
2.50.1
|
||||
|
||||
27
volk.spec
27
volk.spec
|
|
@ -1,12 +1,15 @@
|
|||
Name: volk
|
||||
Version: 3.1.2
|
||||
Release: 5%{?dist}
|
||||
Release: 7%{?dist}
|
||||
Summary: The Vector Optimized Library of Kernels
|
||||
License: GPL-3.0-or-later
|
||||
License: LGPL-3.0-or-later
|
||||
URL: https://github.com/gnuradio/%{name}
|
||||
Source0: https://github.com/gnuradio/%{name}/releases/download/v%{version}/%{name}-%{version}.tar.gz
|
||||
Source1: https://github.com/gnuradio/volk/releases/download/v%{version}/%{name}-%{version}.tar.gz.asc
|
||||
Source2: https://github.com/gnuradio/volk/releases/download/v2.4.1/gpg_volk_release_key.asc
|
||||
# Patches:
|
||||
# https://github.com/gnuradio/volk/issues/794
|
||||
Patch1: 0001-rotator2-disable-SSE-4.1-kernels-wildly-incorrect-re.patch
|
||||
|
||||
BuildRequires: gnupg2
|
||||
BuildRequires: make
|
||||
|
|
@ -64,22 +67,15 @@ sed -i '1 {/#!\s*\/usr\/bin\/env\s\+python/ d}' __init__.py cfg.py
|
|||
popd
|
||||
|
||||
%build
|
||||
# workaround, the code is not yet compatible with the strict-aliasing
|
||||
export CFLAGS="%{optflags} -fno-strict-aliasing"
|
||||
export CXXFLAGS="$CFLAGS"
|
||||
%cmake
|
||||
%cmake_build
|
||||
|
||||
# Use make_build for EL8 compat
|
||||
%make_build -C %{__cmake_builddir} volk_doc
|
||||
|
||||
|
||||
# temporally disabled the testsuite due to https://github.com/gnuradio/volk/issues/442
|
||||
# gnuradio (and all volk consumers) could coredump on s390x and ppc64le under some
|
||||
# circumstances, see https://bugzilla.redhat.com/show_bug.cgi?id=1917625#c6
|
||||
#%%check
|
||||
#cd %{__cmake_builddir}
|
||||
#make test
|
||||
%check
|
||||
cd %{__cmake_builddir}
|
||||
ctest --output-on-failure
|
||||
|
||||
|
||||
%install
|
||||
|
|
@ -111,6 +107,13 @@ cp -a %{__cmake_builddir}/html %{buildroot}%{_docdir}/%{name}
|
|||
|
||||
|
||||
%changelog
|
||||
* Tue Aug 12 2025 Jaroslav Škarvada <jskarvad@redhat.com> - 3.1.2-7
|
||||
- Re-enabled tests, dropped compiler flags workaround, backport from f44
|
||||
|
||||
* Wed Mar 12 2025 Jaroslav Škarvada <jskarvad@redhat.com> - 3.1.2-6
|
||||
- Fixed license tag
|
||||
Resolves: rhbz#2346827
|
||||
|
||||
* Sun Jan 19 2025 Fedora Release Engineering <releng@fedoraproject.org> - 3.1.2-5
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue