diff --git a/CONTRIBUTORS.md b/CONTRIBUTORS.md index 92be1fe42..5378c79bf 100644 --- a/CONTRIBUTORS.md +++ b/CONTRIBUTORS.md @@ -204,6 +204,3 @@ In chronological order: * [2021-11-12] SVE kernels for SGEMM, STRMM and corresponding SVE copy functions * [2022-01-06] SVE kernels for CGEMM, ZGEMM, CTRMM, ZTRMM and corresponding SVE copy functions * [2022-01-18] SVE kernels and copy functions for TRSM - -* Ilya Kurdyukov - * [2021-02-21] Add basic support for the Elbrus E2000 architecture diff --git a/Makefile.e2k b/Makefile.e2k deleted file mode 100644 index a5e50b1f0..000000000 --- a/Makefile.e2k +++ /dev/null @@ -1 +0,0 @@ -COPT = -Wall -O2 # -DGEMMTEST diff --git a/TargetList.txt b/TargetList.txt index a5a07a661..97c8a8f06 100644 --- a/TargetList.txt +++ b/TargetList.txt @@ -115,7 +115,3 @@ C910V 11.LOONGARCH64: LOONGSON3R5 - -12. Elbrus E2000: -E2K - diff --git a/c_check b/c_check index 999f5a7a7..030f5e632 100644 --- a/c_check +++ b/c_check @@ -84,7 +84,6 @@ $os = Haiku if ($data =~ /OS_HAIKU/); $architecture = x86 if ($data =~ /ARCH_X86/); $architecture = x86_64 if ($data =~ /ARCH_X86_64/); -$architecture = e2k if ($data =~ /ARCH_E2K/); $architecture = power if ($data =~ /ARCH_POWER/); $architecture = mips if ($data =~ /ARCH_MIPS/); $architecture = mips64 if ($data =~ /ARCH_MIPS64/); @@ -125,11 +124,6 @@ if ($architecture eq "zarch") { $binary = 64; } -if ($architecture eq "e2k") { - $defined = 1; - $binary = 64; -} - if ($architecture eq "alpha") { $defined = 1; $binary = 64; @@ -229,7 +223,6 @@ if (($architecture eq "mips") || ($architecture eq "mips64")) { $architecture = x86 if ($data =~ /ARCH_X86/); $architecture = x86_64 if ($data =~ /ARCH_X86_64/); -$architecture = e2k if ($data =~ /ARCH_E2K/); $architecture = power if ($data =~ /ARCH_POWER/); $architecture = mips if ($data =~ /ARCH_MIPS/); $architecture = mips64 if ($data =~ /ARCH_MIPS64/); diff --git a/common.h b/common.h index 00d1d0baf..ff5254a5c 100644 --- a/common.h +++ b/common.h @@ -474,10 +474,6 @@ please https://github.com/xianyi/OpenBLAS/issues/246 #include "common_loongarch64.h" #endif -#ifdef ARCH_E2K -#include "common_e2k.h" -#endif - #ifndef ASSEMBLER #ifdef OS_WINDOWSSTORE typedef char env_var_t[MAX_PATH]; diff --git a/common_e2k.h b/common_e2k.h deleted file mode 100644 index 0739c9473..000000000 --- a/common_e2k.h +++ /dev/null @@ -1,64 +0,0 @@ -/***************************************************************************** -Copyright (c) 2011-2016, The OpenBLAS Project -All rights reserved. - -Redistribution and use in source and binary forms, with or without -modification, are permitted provided that the following conditions are -met: - - 1. Redistributions of source code must retain the above copyright - notice, this list of conditions and the following disclaimer. - - 2. Redistributions in binary form must reproduce the above copyright - notice, this list of conditions and the following disclaimer in - the documentation and/or other materials provided with the - distribution. - 3. Neither the name of the OpenBLAS project nor the names of - its contributors may be used to endorse or promote products - derived from this software without specific prior written - permission. - -THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" -AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE -LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL -DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR -SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER -CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, -OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE -USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -**********************************************************************************/ - -#ifndef COMMON_E2K -#define COMMON_E2K - -#ifdef ASSEMBLER -#error -#endif - -#define MB do { __asm__ __volatile__("": : :"memory"); } while (0) -#define WMB do { __asm__ __volatile__("": : :"memory"); } while (0) -#define RMB - -#define INLINE __attribute__((__always_inline__)) inline - -static inline int blas_quickdivide(blasint x, blasint y) { - return x / y; -} - -#ifndef PAGESIZE -#define PAGESIZE ( 4 << 10) -#endif -#define HUGE_PAGESIZE ( 2 << 20) - -#ifndef BUFFERSIZE -#define BUFFER_SIZE (32 << 20) -#else -#define BUFFER_SIZE (32 << BUFFERSIZE) -#endif - -#define SEEK_ADDRESS - -#endif - diff --git a/common_macro.h b/common_macro.h index 9826f1809..cf2a3fd88 100644 --- a/common_macro.h +++ b/common_macro.h @@ -2611,7 +2611,7 @@ #ifndef ASSEMBLER #if defined(ARCH_X86) || defined(ARCH_X86_64) || defined(ARCH_IA64) || defined(ARCH_MIPS64) || defined(ARCH_ARM64)\ -|| defined(ARCH_LOONGARCH64) || defined(ARCH_E2K) +|| defined(ARCH_LOONGARCH64) extern BLASLONG gemm_offset_a; extern BLASLONG gemm_offset_b; extern BLASLONG sbgemm_p; diff --git a/ctest.c b/ctest.c index fc52b43a6..2afd93f68 100644 --- a/ctest.c +++ b/ctest.c @@ -165,7 +165,3 @@ ARCH_LOONGARCH64 HAVE_C11 #endif -#if defined(__e2k__) -ARCH_E2K -#endif - diff --git a/getarch.c b/getarch.c index 00e544bc7..73bbf1892 100644 --- a/getarch.c +++ b/getarch.c @@ -1536,17 +1536,6 @@ USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. #endif -#if defined(FORCE_E2K) || defined(__e2k__) -#define FORCE -#define ARCHITECTURE "E2K" -#define ARCHCONFIG "-DGENERIC " \ - "-DL1_DATA_SIZE=16384 -DL1_DATA_LINESIZE=64 " \ - "-DL2_SIZE=524288 -DL2_LINESIZE=64 " \ - "-DDTB_DEFAULT_ENTRIES=64 -DDTB_SIZE=4096 -DL2_ASSOCIATIVE=8 " -#define LIBNAME "generic" -#define CORENAME "generic" -#endif - #ifndef FORCE #ifdef USER_TARGET diff --git a/kernel/Makefile.L3 b/kernel/Makefile.L3 index bea6cb048..2d5740183 100644 --- a/kernel/Makefile.L3 +++ b/kernel/Makefile.L3 @@ -617,10 +617,6 @@ $(KDIR)zgemm_beta$(TSUFFIX).$(SUFFIX) : $(KERNELDIR)/$(ZGEMM_BETA) $(KDIR)xgemm_beta$(TSUFFIX).$(SUFFIX) : $(KERNELDIR)/$(XGEMM_BETA) $(CC) $(CFLAGS) -c -DXDOUBLE -DCOMPLEX $< -o $@ -ifeq ($(ARCH), E2K) -USE_TRMM = 1 -endif - ifeq ($(BUILD_BFLOAT16), 1) diff --git a/kernel/e2k/KERNEL b/kernel/e2k/KERNEL deleted file mode 100644 index afa8a0881..000000000 --- a/kernel/e2k/KERNEL +++ /dev/null @@ -1,149 +0,0 @@ -SAMAXKERNEL = ../arm/amax.c -DAMAXKERNEL = ../arm/amax.c -CAMAXKERNEL = ../arm/zamax.c -ZAMAXKERNEL = ../arm/zamax.c - -SAMINKERNEL = ../arm/amin.c -DAMINKERNEL = ../arm/amin.c -CAMINKERNEL = ../arm/zamin.c -ZAMINKERNEL = ../arm/zamin.c - -SMAXKERNEL = ../arm/max.c -DMAXKERNEL = ../arm/max.c - -SMINKERNEL = ../arm/min.c -DMINKERNEL = ../arm/min.c - -ISAMAXKERNEL = ../arm/iamax.c -IDAMAXKERNEL = ../arm/iamax.c -ICAMAXKERNEL = ../arm/izamax.c -IZAMAXKERNEL = ../arm/izamax.c - -ISAMINKERNEL = ../arm/iamin.c -IDAMINKERNEL = ../arm/iamin.c -ICAMINKERNEL = ../arm/izamin.c -IZAMINKERNEL = ../arm/izamin.c - -ISMAXKERNEL = ../arm/imax.c -IDMAXKERNEL = ../arm/imax.c - -ISMINKERNEL = ../arm/imin.c -IDMINKERNEL = ../arm/imin.c - -SASUMKERNEL = ../arm/asum.c -DASUMKERNEL = ../arm/asum.c -CASUMKERNEL = ../arm/zasum.c -ZASUMKERNEL = ../arm/zasum.c - -SSUMKERNEL = ../arm/sum.c -DSUMKERNEL = ../arm/sum.c -CSUMKERNEL = ../arm/zsum.c -ZSUMKERNEL = ../arm/zsum.c - -SAXPYKERNEL = ../arm/axpy.c -DAXPYKERNEL = ../arm/axpy.c -CAXPYKERNEL = ../arm/zaxpy.c -ZAXPYKERNEL = ../arm/zaxpy.c - -SCOPYKERNEL = ../arm/copy.c -DCOPYKERNEL = ../arm/copy.c -CCOPYKERNEL = ../arm/zcopy.c -ZCOPYKERNEL = ../arm/zcopy.c - -SDOTKERNEL = ../arm/dot.c -DDOTKERNEL = ../arm/dot.c -CDOTKERNEL = ../arm/zdot.c -ZDOTKERNEL = ../arm/zdot.c -DSDOTKERNEL = ../generic/dot.c - -SNRM2KERNEL = ../arm/nrm2.c -DNRM2KERNEL = ../arm/nrm2.c -CNRM2KERNEL = ../arm/znrm2.c -ZNRM2KERNEL = ../arm/znrm2.c - -SROTKERNEL = ../arm/rot.c -DROTKERNEL = ../arm/rot.c -CROTKERNEL = ../arm/zrot.c -ZROTKERNEL = ../arm/zrot.c - -SSCALKERNEL = ../arm/scal.c -DSCALKERNEL = ../arm/scal.c -CSCALKERNEL = ../arm/zscal.c -ZSCALKERNEL = ../arm/zscal.c - -SSWAPKERNEL = ../arm/swap.c -DSWAPKERNEL = ../arm/swap.c -CSWAPKERNEL = ../arm/zswap.c -ZSWAPKERNEL = ../arm/zswap.c - -SGEMVNKERNEL = ../arm/gemv_n.c -DGEMVNKERNEL = ../arm/gemv_n.c -CGEMVNKERNEL = ../arm/zgemv_n.c -ZGEMVNKERNEL = ../arm/zgemv_n.c - -SGEMVTKERNEL = ../arm/gemv_t.c -DGEMVTKERNEL = ../arm/gemv_t.c -CGEMVTKERNEL = ../arm/zgemv_t.c -ZGEMVTKERNEL = ../arm/zgemv_t.c - -STRMMKERNEL = ../generic/trmmkernel_2x2.c -DTRMMKERNEL = ../generic/trmmkernel_2x2.c -CTRMMKERNEL = ../generic/ztrmmkernel_2x2.c -ZTRMMKERNEL = ../generic/ztrmmkernel_2x2.c - -SGEMMKERNEL = ../generic/gemmkernel_2x2.c -SGEMMONCOPY = ../generic/gemm_ncopy_2.c -SGEMMOTCOPY = ../generic/gemm_tcopy_2.c -SGEMMONCOPYOBJ = sgemm_oncopy$(TSUFFIX).$(SUFFIX) -SGEMMOTCOPYOBJ = sgemm_otcopy$(TSUFFIX).$(SUFFIX) - -DGEMMKERNEL = ../generic/gemmkernel_2x2.c -DGEMMONCOPY = ../generic/gemm_ncopy_2.c -DGEMMOTCOPY = ../generic/gemm_tcopy_2.c -DGEMMONCOPYOBJ = dgemm_oncopy$(TSUFFIX).$(SUFFIX) -DGEMMOTCOPYOBJ = dgemm_otcopy$(TSUFFIX).$(SUFFIX) - -CGEMMKERNEL = ../generic/zgemmkernel_2x2.c -CGEMMONCOPY = ../generic/zgemm_ncopy_2.c -CGEMMOTCOPY = ../generic/zgemm_tcopy_2.c -CGEMMONCOPYOBJ = cgemm_oncopy$(TSUFFIX).$(SUFFIX) -CGEMMOTCOPYOBJ = cgemm_otcopy$(TSUFFIX).$(SUFFIX) - -ZGEMMKERNEL = ../generic/zgemmkernel_2x2.c -ZGEMMONCOPY = ../generic/zgemm_ncopy_2.c -ZGEMMOTCOPY = ../generic/zgemm_tcopy_2.c -ZGEMMONCOPYOBJ = zgemm_oncopy$(TSUFFIX).$(SUFFIX) -ZGEMMOTCOPYOBJ = zgemm_otcopy$(TSUFFIX).$(SUFFIX) - -STRSMKERNEL_LN = ../generic/trsm_kernel_LN.c -STRSMKERNEL_LT = ../generic/trsm_kernel_LT.c -STRSMKERNEL_RN = ../generic/trsm_kernel_RN.c -STRSMKERNEL_RT = ../generic/trsm_kernel_RT.c - -DTRSMKERNEL_LN = ../generic/trsm_kernel_LN.c -DTRSMKERNEL_LT = ../generic/trsm_kernel_LT.c -DTRSMKERNEL_RN = ../generic/trsm_kernel_RN.c -DTRSMKERNEL_RT = ../generic/trsm_kernel_RT.c - -CTRSMKERNEL_LN = ../generic/trsm_kernel_LN.c -CTRSMKERNEL_LT = ../generic/trsm_kernel_LT.c -CTRSMKERNEL_RN = ../generic/trsm_kernel_RN.c -CTRSMKERNEL_RT = ../generic/trsm_kernel_RT.c - -ZTRSMKERNEL_LN = ../generic/trsm_kernel_LN.c -ZTRSMKERNEL_LT = ../generic/trsm_kernel_LT.c -ZTRSMKERNEL_RN = ../generic/trsm_kernel_RN.c -ZTRSMKERNEL_RT = ../generic/trsm_kernel_RT.c - - -SCABS_KERNEL = ../generic/cabs.c -DCABS_KERNEL = ../generic/cabs.c -QCABS_KERNEL = ../generic/cabs.c -LSAME_KERNEL = ../generic/lsame.c - -SGEMM_BETA = ../generic/gemm_beta.c -DGEMM_BETA = ../generic/gemm_beta.c -CGEMM_BETA = ../generic/zgemm_beta.c -ZGEMM_BETA = ../generic/zgemm_beta.c - - diff --git a/kernel/e2k/Makefile b/kernel/e2k/Makefile deleted file mode 100644 index 520349bd6..000000000 --- a/kernel/e2k/Makefile +++ /dev/null @@ -1 +0,0 @@ -clean ::