!17 添加sw架构

From: @wuzx065891 
Reviewed-by: @gitee-cmd 
Signed-off-by: @gitee-cmd
This commit is contained in:
openeuler-ci-bot 2022-10-29 01:46:00 +00:00 committed by Gitee
commit 958f457ce8
No known key found for this signature in database
GPG Key ID: 173E9B9CA92EEF8F
2 changed files with 60 additions and 1 deletions

53
fftw-3.3.8-sw.patch Executable file
View File

@ -0,0 +1,53 @@
diff -Naur fftw-3.3.8.org/kernel/cycle.h fftw-3.3.8.sw/kernel/cycle.h
--- fftw-3.3.8.org/kernel/cycle.h 2022-03-03 08:12:02.740000000 +0000
+++ fftw-3.3.8.sw/kernel/cycle.h 2022-03-03 08:14:34.660000000 +0000
@@ -385,6 +385,26 @@
#define HAVE_TICK_COUNTER
#endif
/*----------------------------------------------------------------*/
+#if defined(__GNUC__) && defined(__sw_64__) && !defined(HAVE_TICK_COUNTER)
+/*
+ * The 32-bit cycle counter on sw_64 overflows pretty quickly,
+ * unfortunately. A 1GHz machine overflows in 4 seconds.
+ */
+typedef unsigned int ticks;
+
+static __inline__ ticks getticks(void)
+{
+ unsigned long cc;
+ __asm__ __volatile__ ("rtc %0" : "=r"(cc));
+ return (cc & 0xFFFFFFFF);
+}
+
+INLINE_ELAPSED(__inline__)
+
+#define HAVE_TICK_COUNTER
+#endif
+
+/*----------------------------------------------------------------*/
#if defined(__GNUC__) && defined(__alpha__) && !defined(HAVE_TICK_COUNTER)
/*
* The 32-bit cycle counter on alpha overflows pretty quickly,
@@ -421,6 +441,22 @@
#endif
/*----------------------------------------------------------------*/
+#if (defined(__DECC) || defined(__DECCXX)) && defined(__sw_64) && defined(HAVE_C_ASM_H) && !defined(HAVE_TICK_COUNTER)
+# include <c_asm.h>
+typedef unsigned int ticks;
+
+static __inline ticks getticks(void)
+{
+ unsigned long cc;
+ cc = asm("rtc %v0");
+ return (cc & 0xFFFFFFFF);
+}
+
+INLINE_ELAPSED(__inline)
+
+#define HAVE_TICK_COUNTER
+#endif
+/*----------------------------------------------------------------*/
#if (defined(__DECC) || defined(__DECCXX)) && defined(__alpha) && defined(HAVE_C_ASM_H) && !defined(HAVE_TICK_COUNTER)
# include <c_asm.h>
typedef unsigned int ticks;

View File

@ -11,11 +11,14 @@
Name: fftw Name: fftw
Version: 3.3.8 Version: 3.3.8
Release: 9 Release: 10
Summary: A C subroutine library for computing the discrete Fourier transform Summary: A C subroutine library for computing the discrete Fourier transform
License: GPLv2+ License: GPLv2+
URL: http://www.fftw.org URL: http://www.fftw.org
Source0: http://www.fftw.org/fftw-%{version}.tar.gz Source0: http://www.fftw.org/fftw-%{version}.tar.gz
%ifarch sw_64
Patch1: fftw-3.3.8-sw.patch
%endif
BuildRequires: gcc-gfortran autoconf automake libtool time perl-interpreter gcc_secure make BuildRequires: gcc-gfortran autoconf automake libtool time perl-interpreter gcc_secure make
%global quad 0 %global quad 0
@ -462,6 +465,9 @@ fi
%endif %endif
%changelog %changelog
* Wed Oct 19 2022 wuzx<wuzx1226@qq.com> - 3.3.8-10
- add sw64 patch
* Sat Jul 30 2022 yaoxin <yaoxin30@h-partners.com> - 3.3.8-9 * Sat Jul 30 2022 yaoxin <yaoxin30@h-partners.com> - 3.3.8-9
- Strip the symbol table - Strip the symbol table
- Fix self build fail - Fix self build fail