MIPS n32 ABI and build time mips simd support check
Signed-off-by: Shivraj Patil <shivraj.patil@imgtec.com>
This commit is contained in:
parent
d1c6469283
commit
9687437928
4
Makefile
4
Makefile
|
@ -228,8 +228,8 @@ ifndef NOFORTRAN
|
||||||
-@echo "LOADOPTS = $(FFLAGS) $(EXTRALIB)" >> $(NETLIB_LAPACK_DIR)/make.inc
|
-@echo "LOADOPTS = $(FFLAGS) $(EXTRALIB)" >> $(NETLIB_LAPACK_DIR)/make.inc
|
||||||
-@echo "CC = $(CC)" >> $(NETLIB_LAPACK_DIR)/make.inc
|
-@echo "CC = $(CC)" >> $(NETLIB_LAPACK_DIR)/make.inc
|
||||||
-@echo "override CFLAGS = $(LAPACK_CFLAGS)" >> $(NETLIB_LAPACK_DIR)/make.inc
|
-@echo "override CFLAGS = $(LAPACK_CFLAGS)" >> $(NETLIB_LAPACK_DIR)/make.inc
|
||||||
-@echo "AR = $(AR)" >> $(NETLIB_LAPACK_DIR)/make.inc
|
-@echo "ARCH = $(AR)" >> $(NETLIB_LAPACK_DIR)/make.inc
|
||||||
-@echo "ARFLAGS = -ru" >> $(NETLIB_LAPACK_DIR)/make.inc
|
-@echo "ARCHFLAGS = -ru" >> $(NETLIB_LAPACK_DIR)/make.inc
|
||||||
-@echo "RANLIB = $(RANLIB)" >> $(NETLIB_LAPACK_DIR)/make.inc
|
-@echo "RANLIB = $(RANLIB)" >> $(NETLIB_LAPACK_DIR)/make.inc
|
||||||
-@echo "LAPACKLIB = ../$(LIBNAME)" >> $(NETLIB_LAPACK_DIR)/make.inc
|
-@echo "LAPACKLIB = ../$(LIBNAME)" >> $(NETLIB_LAPACK_DIR)/make.inc
|
||||||
-@echo "TMGLIB = ../$(LIBNAME)" >> $(NETLIB_LAPACK_DIR)/make.inc
|
-@echo "TMGLIB = ../$(LIBNAME)" >> $(NETLIB_LAPACK_DIR)/make.inc
|
||||||
|
|
|
@ -525,18 +525,18 @@ FCOMMON_OPT += -march=mips64
|
||||||
endif
|
endif
|
||||||
|
|
||||||
ifeq ($(CORE), P5600)
|
ifeq ($(CORE), P5600)
|
||||||
CCOMMON_OPT += -mips32r5 -mnan=2008 -mtune=p5600 $(MIPS_SIMD_FLAGS)
|
CCOMMON_OPT += -mips32r5 -mnan=2008 -mtune=p5600 $(MSA_FLAGS)
|
||||||
FCOMMON_OPT += -mips32r5 -mnan=2008 -mtune=p5600 $(MIPS_SIMD_FLAGS)
|
FCOMMON_OPT += -mips32r5 -mnan=2008 -mtune=p5600 $(MSA_FLAGS)
|
||||||
endif
|
endif
|
||||||
|
|
||||||
ifeq ($(CORE), I6400)
|
ifeq ($(CORE), I6400)
|
||||||
CCOMMON_OPT += -mips64r6 -mnan=2008 -mtune=i6400 $(MIPS_SIMD_FLAGS)
|
CCOMMON_OPT += -mips64r6 -mnan=2008 -mtune=i6400 $(MSA_FLAGS)
|
||||||
FCOMMON_OPT += -mips64r6 -mnan=2008 -mtune=i6400 $(MIPS_SIMD_FLAGS)
|
FCOMMON_OPT += -mips64r6 -mnan=2008 -mtune=i6400 $(MSA_FLAGS)
|
||||||
endif
|
endif
|
||||||
|
|
||||||
ifeq ($(CORE), P6600)
|
ifeq ($(CORE), P6600)
|
||||||
CCOMMON_OPT += -mips64r6 -mnan=2008 -mtune=p6600 $(MIPS_SIMD_FLAGS)
|
CCOMMON_OPT += -mips64r6 -mnan=2008 -mtune=p6600 $(MSA_FLAGS)
|
||||||
FCOMMON_OPT += -mips64r6 -mnan=2008 -mtune=p6600 $(MIPS_SIMD_FLAGS)
|
FCOMMON_OPT += -mips64r6 -mnan=2008 -mtune=p6600 $(MSA_FLAGS)
|
||||||
endif
|
endif
|
||||||
|
|
||||||
ifeq ($(OSNAME), AIX)
|
ifeq ($(OSNAME), AIX)
|
||||||
|
@ -1132,6 +1132,8 @@ export HAVE_VFP
|
||||||
export HAVE_VFPV3
|
export HAVE_VFPV3
|
||||||
export HAVE_VFPV4
|
export HAVE_VFPV4
|
||||||
export HAVE_NEON
|
export HAVE_NEON
|
||||||
|
export HAVE_MSA
|
||||||
|
export MSA_FLAGS
|
||||||
export KERNELDIR
|
export KERNELDIR
|
||||||
export FUNCTION_PROFILE
|
export FUNCTION_PROFILE
|
||||||
export TARGET_CORE
|
export TARGET_CORE
|
||||||
|
|
32
c_check
32
c_check
|
@ -159,24 +159,22 @@ if ($?) {
|
||||||
die 1;
|
die 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
$mips_simd = 1;
|
$have_msa = 0;
|
||||||
if (($architecture eq "mips") || ($architecture eq "mips64")) {
|
if (($architecture eq "mips") || ($architecture eq "mips64")) {
|
||||||
$code = '"addvi.b $w0, $w1, 1"';
|
$code = '"addvi.b $w0, $w1, 1"';
|
||||||
$msa_flags = "-mmsa -mfp64 -msched-weight -mload-store-pairs";
|
$msa_flags = "-mmsa -mfp64 -msched-weight -mload-store-pairs";
|
||||||
print $tmpf "#include <msa.h>\n\n";
|
print $tmpf "#include <msa.h>\n\n";
|
||||||
print $tmpf "void main(void){ __asm__ volatile($code); }\n";
|
print $tmpf "void main(void){ __asm__ volatile($code); }\n";
|
||||||
|
|
||||||
$ret = 0;
|
$args = "$msa_flags -o $tmpf.o -x c $tmpf";
|
||||||
$args = "$msa_flags -o $tmpf.o -x c $tmpf";
|
my @cmd = ("$compiler_name $args");
|
||||||
my @cmd = ("$compiler_name $args");
|
|
||||||
system(@cmd) == 0;
|
system(@cmd) == 0;
|
||||||
if ($? != 0) {
|
if ($? != 0) {
|
||||||
$ret = ($? >> 8);
|
$have_msa = 0;
|
||||||
|
} else {
|
||||||
|
$have_msa = 1;
|
||||||
}
|
}
|
||||||
unlink("$tmpf.o");
|
unlink("$tmpf.o");
|
||||||
if($ret != 0) {
|
|
||||||
$mips_simd = 0;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
$architecture = x86 if ($data =~ /ARCH_X86/);
|
$architecture = x86 if ($data =~ /ARCH_X86/);
|
||||||
|
@ -273,8 +271,8 @@ print MAKEFILE "FU=$need_fu\n" if $need_fu ne "";
|
||||||
print MAKEFILE "CROSS_SUFFIX=$cross_suffix\n" if $cross != 0 && $cross_suffix ne "";
|
print MAKEFILE "CROSS_SUFFIX=$cross_suffix\n" if $cross != 0 && $cross_suffix ne "";
|
||||||
print MAKEFILE "CROSS=1\n" if $cross != 0;
|
print MAKEFILE "CROSS=1\n" if $cross != 0;
|
||||||
print MAKEFILE "CEXTRALIB=$linker_L $linker_l $linker_a\n";
|
print MAKEFILE "CEXTRALIB=$linker_L $linker_l $linker_a\n";
|
||||||
print MAKEFILE "MIPS_SIMD=1\n" if $mips_simd eq 1;
|
print MAKEFILE "HAVE_MSA=1\n" if $have_msa eq 1;
|
||||||
print MAKEFILE "MIPS_SIMD_FLAGS=$msa_flags\n" if $mips_simd eq 1;
|
print MAKEFILE "MSA_FLAGS=$msa_flags\n" if $have_msa eq 1;
|
||||||
|
|
||||||
$os =~ tr/[a-z]/[A-Z]/;
|
$os =~ tr/[a-z]/[A-Z]/;
|
||||||
$architecture =~ tr/[a-z]/[A-Z]/;
|
$architecture =~ tr/[a-z]/[A-Z]/;
|
||||||
|
@ -286,7 +284,7 @@ print CONFFILE "#define C_$compiler\t1\n";
|
||||||
print CONFFILE "#define __32BIT__\t1\n" if $binformat eq bin32;
|
print CONFFILE "#define __32BIT__\t1\n" if $binformat eq bin32;
|
||||||
print CONFFILE "#define __64BIT__\t1\n" if $binformat eq bin64;
|
print CONFFILE "#define __64BIT__\t1\n" if $binformat eq bin64;
|
||||||
print CONFFILE "#define FUNDERSCORE\t$need_fu\n" if $need_fu ne "";
|
print CONFFILE "#define FUNDERSCORE\t$need_fu\n" if $need_fu ne "";
|
||||||
print CONFFILE "#define MIPS_SIMD\t1\n" if $mips_simd eq 1;
|
print CONFFILE "#define HAVE_MSA\t1\n" if $have_msa eq 1;
|
||||||
|
|
||||||
if ($os eq "LINUX") {
|
if ($os eq "LINUX") {
|
||||||
|
|
||||||
|
|
|
@ -4,7 +4,6 @@ endif
|
||||||
|
|
||||||
TOPDIR = ..
|
TOPDIR = ..
|
||||||
include $(TOPDIR)/Makefile.system
|
include $(TOPDIR)/Makefile.system
|
||||||
include $(TOPDIR)/Makefile.conf
|
|
||||||
|
|
||||||
ifdef TARGET_CORE
|
ifdef TARGET_CORE
|
||||||
override CFLAGS += -DBUILD_KERNEL -DTABLE_NAME=gotoblas_$(TARGET_CORE)
|
override CFLAGS += -DBUILD_KERNEL -DTABLE_NAME=gotoblas_$(TARGET_CORE)
|
||||||
|
|
|
@ -30,7 +30,7 @@ IDMAXKERNEL = ../mips/imax.c
|
||||||
ISMINKERNEL = ../mips/imin.c
|
ISMINKERNEL = ../mips/imin.c
|
||||||
IDMINKERNEL = ../mips/imin.c
|
IDMINKERNEL = ../mips/imin.c
|
||||||
|
|
||||||
ifdef MIPS_SIMD
|
ifdef HAVE_MSA
|
||||||
SASUMKERNEL = ../mips/sasum_msa.c
|
SASUMKERNEL = ../mips/sasum_msa.c
|
||||||
DASUMKERNEL = ../mips/dasum_msa.c
|
DASUMKERNEL = ../mips/dasum_msa.c
|
||||||
CASUMKERNEL = ../mips/casum_msa.c
|
CASUMKERNEL = ../mips/casum_msa.c
|
||||||
|
@ -52,7 +52,7 @@ DCOPYKERNEL = ../mips/copy.c
|
||||||
CCOPYKERNEL = ../mips/zcopy.c
|
CCOPYKERNEL = ../mips/zcopy.c
|
||||||
ZCOPYKERNEL = ../mips/zcopy.c
|
ZCOPYKERNEL = ../mips/zcopy.c
|
||||||
|
|
||||||
ifdef MIPS_SIMD
|
ifdef HAVE_MSA
|
||||||
SDOTKERNEL = ../mips/sdot_msa.c
|
SDOTKERNEL = ../mips/sdot_msa.c
|
||||||
DDOTKERNEL = ../mips/ddot_msa.c
|
DDOTKERNEL = ../mips/ddot_msa.c
|
||||||
CDOTKERNEL = ../mips/cdot_msa.c
|
CDOTKERNEL = ../mips/cdot_msa.c
|
||||||
|
@ -84,7 +84,7 @@ DSWAPKERNEL = ../mips/swap.c
|
||||||
CSWAPKERNEL = ../mips/zswap.c
|
CSWAPKERNEL = ../mips/zswap.c
|
||||||
ZSWAPKERNEL = ../mips/zswap.c
|
ZSWAPKERNEL = ../mips/zswap.c
|
||||||
|
|
||||||
ifdef MIPS_SIMD
|
ifdef HAVE_MSA
|
||||||
SGEMVNKERNEL = ../mips/sgemv_n_msa.c
|
SGEMVNKERNEL = ../mips/sgemv_n_msa.c
|
||||||
DGEMVNKERNEL = ../mips/dgemv_n_msa.c
|
DGEMVNKERNEL = ../mips/dgemv_n_msa.c
|
||||||
CGEMVNKERNEL = ../mips/cgemv_n_msa.c
|
CGEMVNKERNEL = ../mips/cgemv_n_msa.c
|
||||||
|
@ -96,7 +96,7 @@ CGEMVNKERNEL = ../mips/zgemv_n.c
|
||||||
ZGEMVNKERNEL = ../mips/zgemv_n.c
|
ZGEMVNKERNEL = ../mips/zgemv_n.c
|
||||||
endif
|
endif
|
||||||
|
|
||||||
ifdef MIPS_SIMD
|
ifdef HAVE_MSA
|
||||||
SGEMVTKERNEL = ../mips/sgemv_t_msa.c
|
SGEMVTKERNEL = ../mips/sgemv_t_msa.c
|
||||||
DGEMVTKERNEL = ../mips/dgemv_t_msa.c
|
DGEMVTKERNEL = ../mips/dgemv_t_msa.c
|
||||||
CGEMVTKERNEL = ../mips/cgemv_t_msa.c
|
CGEMVTKERNEL = ../mips/cgemv_t_msa.c
|
||||||
|
@ -108,7 +108,7 @@ CGEMVTKERNEL = ../mips/zgemv_t.c
|
||||||
ZGEMVTKERNEL = ../mips/zgemv_t.c
|
ZGEMVTKERNEL = ../mips/zgemv_t.c
|
||||||
endif
|
endif
|
||||||
|
|
||||||
ifdef MIPS_SIMD
|
ifdef HAVE_MSA
|
||||||
SGEMMKERNEL = ../mips/sgemm_kernel_8x8_msa.c
|
SGEMMKERNEL = ../mips/sgemm_kernel_8x8_msa.c
|
||||||
SGEMMONCOPY = ../mips/sgemm_ncopy_8_msa.c
|
SGEMMONCOPY = ../mips/sgemm_ncopy_8_msa.c
|
||||||
SGEMMOTCOPY = ../mips/sgemm_tcopy_8_msa.c
|
SGEMMOTCOPY = ../mips/sgemm_tcopy_8_msa.c
|
||||||
|
@ -122,7 +122,7 @@ SGEMMONCOPYOBJ = sgemm_oncopy.o
|
||||||
SGEMMOTCOPYOBJ = sgemm_otcopy.o
|
SGEMMOTCOPYOBJ = sgemm_otcopy.o
|
||||||
endif
|
endif
|
||||||
|
|
||||||
ifdef MIPS_SIMD
|
ifdef HAVE_MSA
|
||||||
DGEMMKERNEL = ../mips/dgemm_kernel_8x4_msa.c
|
DGEMMKERNEL = ../mips/dgemm_kernel_8x4_msa.c
|
||||||
DGEMMINCOPY = ../mips/dgemm_ncopy_8_msa.c
|
DGEMMINCOPY = ../mips/dgemm_ncopy_8_msa.c
|
||||||
DGEMMITCOPY = ../mips/dgemm_tcopy_8_msa.c
|
DGEMMITCOPY = ../mips/dgemm_tcopy_8_msa.c
|
||||||
|
@ -140,7 +140,7 @@ DGEMMONCOPYOBJ = dgemm_oncopy.o
|
||||||
DGEMMOTCOPYOBJ = dgemm_otcopy.o
|
DGEMMOTCOPYOBJ = dgemm_otcopy.o
|
||||||
endif
|
endif
|
||||||
|
|
||||||
ifdef MIPS_SIMD
|
ifdef HAVE_MSA
|
||||||
CGEMMKERNEL = ../mips/cgemm_kernel_8x4_msa.c
|
CGEMMKERNEL = ../mips/cgemm_kernel_8x4_msa.c
|
||||||
CGEMMINCOPY = ../mips/cgemm_ncopy_8_msa.c
|
CGEMMINCOPY = ../mips/cgemm_ncopy_8_msa.c
|
||||||
CGEMMITCOPY = ../mips/cgemm_tcopy_8_msa.c
|
CGEMMITCOPY = ../mips/cgemm_tcopy_8_msa.c
|
||||||
|
@ -158,7 +158,7 @@ CGEMMONCOPYOBJ = cgemm_oncopy.o
|
||||||
CGEMMOTCOPYOBJ = cgemm_otcopy.o
|
CGEMMOTCOPYOBJ = cgemm_otcopy.o
|
||||||
endif
|
endif
|
||||||
|
|
||||||
ifdef MIPS_SIMD
|
ifdef HAVE_MSA
|
||||||
ZGEMMKERNEL = ../mips/zgemm_kernel_4x4_msa.c
|
ZGEMMKERNEL = ../mips/zgemm_kernel_4x4_msa.c
|
||||||
ZGEMMONCOPY = ../mips/zgemm_ncopy_4_msa.c
|
ZGEMMONCOPY = ../mips/zgemm_ncopy_4_msa.c
|
||||||
ZGEMMOTCOPY = ../mips/zgemm_tcopy_4_msa.c
|
ZGEMMOTCOPY = ../mips/zgemm_tcopy_4_msa.c
|
||||||
|
@ -172,7 +172,7 @@ ZGEMMONCOPYOBJ = zgemm_oncopy.o
|
||||||
ZGEMMOTCOPYOBJ = zgemm_otcopy.o
|
ZGEMMOTCOPYOBJ = zgemm_otcopy.o
|
||||||
endif
|
endif
|
||||||
|
|
||||||
ifdef MIPS_SIMD
|
ifdef HAVE_MSA
|
||||||
STRSMKERNEL_LN = ../mips/strsm_kernel_LN_8x8_msa.c
|
STRSMKERNEL_LN = ../mips/strsm_kernel_LN_8x8_msa.c
|
||||||
STRSMKERNEL_LT = ../mips/strsm_kernel_LT_8x8_msa.c
|
STRSMKERNEL_LT = ../mips/strsm_kernel_LT_8x8_msa.c
|
||||||
STRSMKERNEL_RN = ../mips/strsm_kernel_RN_8x8_msa.c
|
STRSMKERNEL_RN = ../mips/strsm_kernel_RN_8x8_msa.c
|
||||||
|
@ -184,7 +184,7 @@ STRSMKERNEL_RN = ../generic/trsm_kernel_RN.c
|
||||||
STRSMKERNEL_RT = ../generic/trsm_kernel_RT.c
|
STRSMKERNEL_RT = ../generic/trsm_kernel_RT.c
|
||||||
endif
|
endif
|
||||||
|
|
||||||
ifdef MIPS_SIMD
|
ifdef HAVE_MSA
|
||||||
DTRSMKERNEL_LN = ../mips/dtrsm_kernel_LN_8x4_msa.c
|
DTRSMKERNEL_LN = ../mips/dtrsm_kernel_LN_8x4_msa.c
|
||||||
DTRSMKERNEL_LT = ../mips/dtrsm_kernel_LT_8x4_msa.c
|
DTRSMKERNEL_LT = ../mips/dtrsm_kernel_LT_8x4_msa.c
|
||||||
DTRSMKERNEL_RN = ../mips/dtrsm_kernel_RN_8x4_msa.c
|
DTRSMKERNEL_RN = ../mips/dtrsm_kernel_RN_8x4_msa.c
|
||||||
|
@ -196,7 +196,7 @@ DTRSMKERNEL_RN = ../generic/trsm_kernel_RN.c
|
||||||
DTRSMKERNEL_RT = ../generic/trsm_kernel_RT.c
|
DTRSMKERNEL_RT = ../generic/trsm_kernel_RT.c
|
||||||
endif
|
endif
|
||||||
|
|
||||||
ifdef MIPS_SIMD
|
ifdef HAVE_MSA
|
||||||
CTRSMKERNEL_LN = ../generic/trsm_kernel_LN.c
|
CTRSMKERNEL_LN = ../generic/trsm_kernel_LN.c
|
||||||
CTRSMKERNEL_LT = ../generic/trsm_kernel_LT.c
|
CTRSMKERNEL_LT = ../generic/trsm_kernel_LT.c
|
||||||
CTRSMKERNEL_RN = ../generic/trsm_kernel_RN.c
|
CTRSMKERNEL_RN = ../generic/trsm_kernel_RN.c
|
||||||
|
@ -208,7 +208,7 @@ CTRSMKERNEL_RN = ../generic/trsm_kernel_RN.c
|
||||||
CTRSMKERNEL_RT = ../generic/trsm_kernel_RT.c
|
CTRSMKERNEL_RT = ../generic/trsm_kernel_RT.c
|
||||||
endif
|
endif
|
||||||
|
|
||||||
ifdef MIPS_SIMD
|
ifdef HAVE_MSA
|
||||||
ZTRSMKERNEL_LN = ../generic/trsm_kernel_LN.c
|
ZTRSMKERNEL_LN = ../generic/trsm_kernel_LN.c
|
||||||
ZTRSMKERNEL_LT = ../generic/trsm_kernel_LT.c
|
ZTRSMKERNEL_LT = ../generic/trsm_kernel_LT.c
|
||||||
ZTRSMKERNEL_RN = ../generic/trsm_kernel_RN.c
|
ZTRSMKERNEL_RN = ../generic/trsm_kernel_RN.c
|
||||||
|
|
|
@ -138,26 +138,26 @@ ALLOBJ=$(SBLAS1) $(SBLAS2) $(SBLAS3) $(DBLAS1) $(DBLAS2) $(DBLAS3) \
|
||||||
$(ZBLAS2) $(ZBLAS3) $(ALLBLAS)
|
$(ZBLAS2) $(ZBLAS3) $(ALLBLAS)
|
||||||
|
|
||||||
$(BLASLIB): $(ALLOBJ)
|
$(BLASLIB): $(ALLOBJ)
|
||||||
$(AR) $(ARFLAGS) $@ $(ALLOBJ)
|
$(ARCH) $(ARCHFLAGS) $@ $(ALLOBJ)
|
||||||
$(RANLIB) $@
|
$(RANLIB) $@
|
||||||
|
|
||||||
single: $(SBLAS1) $(ALLBLAS) $(SBLAS2) $(SBLAS3)
|
single: $(SBLAS1) $(ALLBLAS) $(SBLAS2) $(SBLAS3)
|
||||||
$(AR) $(ARFLAGS) $(BLASLIB) $(SBLAS1) $(ALLBLAS) \
|
$(ARCH) $(ARCHFLAGS) $(BLASLIB) $(SBLAS1) $(ALLBLAS) \
|
||||||
$(SBLAS2) $(SBLAS3)
|
$(SBLAS2) $(SBLAS3)
|
||||||
$(RANLIB) $(BLASLIB)
|
$(RANLIB) $(BLASLIB)
|
||||||
|
|
||||||
double: $(DBLAS1) $(ALLBLAS) $(DBLAS2) $(DBLAS3)
|
double: $(DBLAS1) $(ALLBLAS) $(DBLAS2) $(DBLAS3)
|
||||||
$(AR) $(ARFLAGS) $(BLASLIB) $(DBLAS1) $(ALLBLAS) \
|
$(ARCH) $(ARCHFLAGS) $(BLASLIB) $(DBLAS1) $(ALLBLAS) \
|
||||||
$(DBLAS2) $(DBLAS3)
|
$(DBLAS2) $(DBLAS3)
|
||||||
$(RANLIB) $(BLASLIB)
|
$(RANLIB) $(BLASLIB)
|
||||||
|
|
||||||
complex: $(CBLAS1) $(CB1AUX) $(ALLBLAS) $(CBLAS2) $(CBLAS3)
|
complex: $(CBLAS1) $(CB1AUX) $(ALLBLAS) $(CBLAS2) $(CBLAS3)
|
||||||
$(AR) $(ARFLAGS) $(BLASLIB) $(CBLAS1) $(CB1AUX) \
|
$(ARCH) $(ARCHFLAGS) $(BLASLIB) $(CBLAS1) $(CB1AUX) \
|
||||||
$(ALLBLAS) $(CBLAS2) $(CBLAS3)
|
$(ALLBLAS) $(CBLAS2) $(CBLAS3)
|
||||||
$(RANLIB) $(BLASLIB)
|
$(RANLIB) $(BLASLIB)
|
||||||
|
|
||||||
complex16: $(ZBLAS1) $(ZB1AUX) $(ALLBLAS) $(ZBLAS2) $(ZBLAS3)
|
complex16: $(ZBLAS1) $(ZB1AUX) $(ALLBLAS) $(ZBLAS2) $(ZBLAS3)
|
||||||
$(AR) $(ARFLAGS) $(BLASLIB) $(ZBLAS1) $(ZB1AUX) \
|
$(ARCH) $(ARCHFLAGS) $(BLASLIB) $(ZBLAS1) $(ZB1AUX) \
|
||||||
$(ALLBLAS) $(ZBLAS2) $(ZBLAS3)
|
$(ALLBLAS) $(ZBLAS2) $(ZBLAS3)
|
||||||
$(RANLIB) $(BLASLIB)
|
$(RANLIB) $(BLASLIB)
|
||||||
|
|
||||||
|
|
|
@ -44,6 +44,6 @@ FFLAGS = -O3
|
||||||
# Archive programs and flags
|
# Archive programs and flags
|
||||||
#-----------------------------------------------------------------------------
|
#-----------------------------------------------------------------------------
|
||||||
|
|
||||||
AR = ar
|
ARCH = ar
|
||||||
ARFLAGS = cr
|
ARCHFLAGS = cr
|
||||||
RANLIB = ranlib
|
RANLIB = ranlib
|
||||||
|
|
|
@ -73,27 +73,27 @@ alev1 = $(slev1) $(dlev1) $(clev1) $(zlev1) $(sclev1)
|
||||||
|
|
||||||
# Single real precision
|
# Single real precision
|
||||||
slib1: $(slev1) $(sclev1)
|
slib1: $(slev1) $(sclev1)
|
||||||
$(AR) $(ARFLAGS) $(CBLASLIB) $(slev1) $(sclev1)
|
$(ARCH) $(ARCHFLAGS) $(CBLASLIB) $(slev1) $(sclev1)
|
||||||
$(RANLIB) $(CBLASLIB)
|
$(RANLIB) $(CBLASLIB)
|
||||||
|
|
||||||
# Double real precision
|
# Double real precision
|
||||||
dlib1: $(dlev1)
|
dlib1: $(dlev1)
|
||||||
$(AR) $(ARFLAGS) $(CBLASLIB) $(dlev1)
|
$(ARCH) $(ARCHFLAGS) $(CBLASLIB) $(dlev1)
|
||||||
$(RANLIB) $(CBLASLIB)
|
$(RANLIB) $(CBLASLIB)
|
||||||
|
|
||||||
# Single complex precision
|
# Single complex precision
|
||||||
clib1: $(clev1) $(sclev1)
|
clib1: $(clev1) $(sclev1)
|
||||||
$(AR) $(ARFLAGS) $(CBLASLIB) $(clev1) $(sclev1)
|
$(ARCH) $(ARCHFLAGS) $(CBLASLIB) $(clev1) $(sclev1)
|
||||||
$(RANLIB) $(CBLASLIB)
|
$(RANLIB) $(CBLASLIB)
|
||||||
|
|
||||||
# Double complex precision
|
# Double complex precision
|
||||||
zlib1: $(zlev1)
|
zlib1: $(zlev1)
|
||||||
$(AR) $(ARFLAGS) $(CBLASLIB) $(zlev1)
|
$(ARCH) $(ARCHFLAGS) $(CBLASLIB) $(zlev1)
|
||||||
$(RANLIB) $(CBLASLIB)
|
$(RANLIB) $(CBLASLIB)
|
||||||
|
|
||||||
# All precisions
|
# All precisions
|
||||||
all1: $(alev1)
|
all1: $(alev1)
|
||||||
$(AR) $(ARFLAGS) $(CBLASLIB) $(alev1)
|
$(ARCH) $(ARCHFLAGS) $(CBLASLIB) $(alev1)
|
||||||
$(RANLIB) $(CBLASLIB)
|
$(RANLIB) $(CBLASLIB)
|
||||||
|
|
||||||
#
|
#
|
||||||
|
@ -146,27 +146,27 @@ alev2 = $(slev2) $(dlev2) $(clev2) $(zlev2)
|
||||||
|
|
||||||
# Single real precision
|
# Single real precision
|
||||||
slib2: $(slev2) $(errhand)
|
slib2: $(slev2) $(errhand)
|
||||||
$(AR) $(ARFLAGS) $(CBLASLIB) $(slev2) $(errhand)
|
$(ARCH) $(ARCHFLAGS) $(CBLASLIB) $(slev2) $(errhand)
|
||||||
$(RANLIB) $(CBLASLIB)
|
$(RANLIB) $(CBLASLIB)
|
||||||
|
|
||||||
# Double real precision
|
# Double real precision
|
||||||
dlib2: $(dlev2) $(errhand)
|
dlib2: $(dlev2) $(errhand)
|
||||||
$(AR) $(ARFLAGS) $(CBLASLIB) $(dlev2) $(errhand)
|
$(ARCH) $(ARCHFLAGS) $(CBLASLIB) $(dlev2) $(errhand)
|
||||||
$(RANLIB) $(CBLASLIB)
|
$(RANLIB) $(CBLASLIB)
|
||||||
|
|
||||||
# Single complex precision
|
# Single complex precision
|
||||||
clib2: $(clev2) $(errhand)
|
clib2: $(clev2) $(errhand)
|
||||||
$(AR) $(ARFLAGS) $(CBLASLIB) $(clev2) $(errhand)
|
$(ARCH) $(ARCHFLAGS) $(CBLASLIB) $(clev2) $(errhand)
|
||||||
$(RANLIB) $(CBLASLIB)
|
$(RANLIB) $(CBLASLIB)
|
||||||
|
|
||||||
# Double complex precision
|
# Double complex precision
|
||||||
zlib2: $(zlev2) $(errhand)
|
zlib2: $(zlev2) $(errhand)
|
||||||
$(AR) $(ARFLAGS) $(CBLASLIB) $(zlev2) $(errhand)
|
$(ARCH) $(ARCHFLAGS) $(CBLASLIB) $(zlev2) $(errhand)
|
||||||
$(RANLIB) $(CBLASLIB)
|
$(RANLIB) $(CBLASLIB)
|
||||||
|
|
||||||
# All precisions
|
# All precisions
|
||||||
all2: $(alev2) $(errhand)
|
all2: $(alev2) $(errhand)
|
||||||
$(AR) $(ARFLAGS) $(CBLASLIB) $(alev2) $(errhand)
|
$(ARCH) $(ARCHFLAGS) $(CBLASLIB) $(alev2) $(errhand)
|
||||||
$(RANLIB) $(CBLASLIB)
|
$(RANLIB) $(CBLASLIB)
|
||||||
#
|
#
|
||||||
#
|
#
|
||||||
|
@ -211,32 +211,32 @@ alev3 = $(slev3) $(dlev3) $(clev3) $(zlev3)
|
||||||
|
|
||||||
# Single real precision
|
# Single real precision
|
||||||
slib3: $(slev3) $(errhand)
|
slib3: $(slev3) $(errhand)
|
||||||
$(AR) $(ARFLAGS) $(CBLASLIB) $(slev3) $(errhand)
|
$(ARCH) $(ARCHFLAGS) $(CBLASLIB) $(slev3) $(errhand)
|
||||||
$(RANLIB) $(CBLASLIB)
|
$(RANLIB) $(CBLASLIB)
|
||||||
|
|
||||||
# Double real precision
|
# Double real precision
|
||||||
dlib3: $(dlev3) $(errhand)
|
dlib3: $(dlev3) $(errhand)
|
||||||
$(AR) $(ARFLAGS) $(CBLASLIB) $(dlev3) $(errhand)
|
$(ARCH) $(ARCHFLAGS) $(CBLASLIB) $(dlev3) $(errhand)
|
||||||
$(RANLIB) $(CBLASLIB)
|
$(RANLIB) $(CBLASLIB)
|
||||||
|
|
||||||
# Single complex precision
|
# Single complex precision
|
||||||
clib3: $(clev3) $(errhand)
|
clib3: $(clev3) $(errhand)
|
||||||
$(AR) $(ARFLAGS) $(CBLASLIB) $(clev3) $(errhand)
|
$(ARCH) $(ARCHFLAGS) $(CBLASLIB) $(clev3) $(errhand)
|
||||||
$(RANLIB) $(CBLASLIB)
|
$(RANLIB) $(CBLASLIB)
|
||||||
|
|
||||||
# Single complex precision
|
# Single complex precision
|
||||||
zlib3: $(zlev3) $(errhand)
|
zlib3: $(zlev3) $(errhand)
|
||||||
$(AR) $(ARFLAGS) $(CBLASLIB) $(zlev3) $(errhand)
|
$(ARCH) $(ARCHFLAGS) $(CBLASLIB) $(zlev3) $(errhand)
|
||||||
$(RANLIB) $(CBLASLIB)
|
$(RANLIB) $(CBLASLIB)
|
||||||
|
|
||||||
# All precisions
|
# All precisions
|
||||||
all3: $(alev3) $(errhand)
|
all3: $(alev3) $(errhand)
|
||||||
$(AR) $(ARFLAGS) $(CBLASLIB) $(alev3)
|
$(ARCH) $(ARCHFLAGS) $(CBLASLIB) $(alev3)
|
||||||
$(RANLIB) $(CBLASLIB)
|
$(RANLIB) $(CBLASLIB)
|
||||||
|
|
||||||
# All levels and precisions
|
# All levels and precisions
|
||||||
cblaslib: $(alev)
|
cblaslib: $(alev)
|
||||||
$(AR) $(ARFLAGS) $(CBLASLIB) $(alev)
|
$(ARCH) $(ARCHFLAGS) $(CBLASLIB) $(alev)
|
||||||
$(RANLIB) $(CBLASLIB)
|
$(RANLIB) $(CBLASLIB)
|
||||||
|
|
||||||
FRC:
|
FRC:
|
||||||
|
|
|
@ -466,7 +466,7 @@ TIMER = EXT_ETIME
|
||||||
Refer to the section~\ref{second} to get more information.
|
Refer to the section~\ref{second} to get more information.
|
||||||
|
|
||||||
|
|
||||||
Next, you will need to modify \texttt{AR}, \texttt{ARFLAGS}, and \texttt{RANLIB} to specify archiver,
|
Next, you will need to modify \texttt{ARCH}, \texttt{ARCHFLAGS}, and \texttt{RANLIB} to specify archiver,
|
||||||
archiver options, and ranlib for your machine. If your architecture
|
archiver options, and ranlib for your machine. If your architecture
|
||||||
does not require \texttt{ranlib} to be run after each archive command (as
|
does not require \texttt{ranlib} to be run after each archive command (as
|
||||||
is the case with CRAY computers running UNICOS, Hewlett Packard
|
is the case with CRAY computers running UNICOS, Hewlett Packard
|
||||||
|
|
|
@ -52,9 +52,9 @@ CFLAGS = -O4
|
||||||
# The archiver and the flag(s) to use when building archive (library)
|
# The archiver and the flag(s) to use when building archive (library)
|
||||||
# If you system has no ranlib, set RANLIB = echo.
|
# If you system has no ranlib, set RANLIB = echo.
|
||||||
#
|
#
|
||||||
AR = ar
|
ARCH = ar
|
||||||
ARFLAGS = cr
|
ARCHFLAGS= cr
|
||||||
RANLIB = ranlib
|
RANLIB = ranlib
|
||||||
#
|
#
|
||||||
# Location of the extended-precision BLAS (XBLAS) Fortran library
|
# Location of the extended-precision BLAS (XBLAS) Fortran library
|
||||||
# used for building and testing extended-precision routines. The
|
# used for building and testing extended-precision routines. The
|
||||||
|
|
|
@ -52,9 +52,9 @@ CFLAGS =
|
||||||
# The archiver and the flag(s) to use when building archive (library)
|
# The archiver and the flag(s) to use when building archive (library)
|
||||||
# If you system has no ranlib, set RANLIB = echo.
|
# If you system has no ranlib, set RANLIB = echo.
|
||||||
#
|
#
|
||||||
AR = ar
|
ARCH = ar
|
||||||
ARFLAGS = cr
|
ARCHFLAGS= cr
|
||||||
RANLIB = echo
|
RANLIB = echo
|
||||||
#
|
#
|
||||||
# Location of the extended-precision BLAS (XBLAS) Fortran library
|
# Location of the extended-precision BLAS (XBLAS) Fortran library
|
||||||
# used for building and testing extended-precision routines. The
|
# used for building and testing extended-precision routines. The
|
||||||
|
|
|
@ -55,9 +55,9 @@ CFLAGS = -O3
|
||||||
# The archiver and the flag(s) to use when building archive (library)
|
# The archiver and the flag(s) to use when building archive (library)
|
||||||
# If you system has no ranlib, set RANLIB = echo.
|
# If you system has no ranlib, set RANLIB = echo.
|
||||||
#
|
#
|
||||||
AR = ar
|
ARCH = ar
|
||||||
ARFLAGS = cr
|
ARCHFLAGS= cr
|
||||||
RANLIB = echo
|
RANLIB = echo
|
||||||
#
|
#
|
||||||
# Location of the extended-precision BLAS (XBLAS) Fortran library
|
# Location of the extended-precision BLAS (XBLAS) Fortran library
|
||||||
# used for building and testing extended-precision routines. The
|
# used for building and testing extended-precision routines. The
|
||||||
|
|
|
@ -55,9 +55,9 @@ CFLAGS = -O3
|
||||||
# The archiver and the flag(s) to use when building archive (library)
|
# The archiver and the flag(s) to use when building archive (library)
|
||||||
# If you system has no ranlib, set RANLIB = echo.
|
# If you system has no ranlib, set RANLIB = echo.
|
||||||
#
|
#
|
||||||
AR = ar
|
ARCH = ar
|
||||||
ARFLAGS = cr
|
ARCHFLAGS= cr
|
||||||
RANLIB = echo
|
RANLIB = echo
|
||||||
#
|
#
|
||||||
# Location of the extended-precision BLAS (XBLAS) Fortran library
|
# Location of the extended-precision BLAS (XBLAS) Fortran library
|
||||||
# used for building and testing extended-precision routines. The
|
# used for building and testing extended-precision routines. The
|
||||||
|
|
|
@ -52,9 +52,9 @@ CFLAGS = -O4
|
||||||
# The archiver and the flag(s) to use when building archive (library)
|
# The archiver and the flag(s) to use when building archive (library)
|
||||||
# If you system has no ranlib, set RANLIB = echo.
|
# If you system has no ranlib, set RANLIB = echo.
|
||||||
#
|
#
|
||||||
AR = ar
|
ARCH = ar
|
||||||
ARFLAGS = cr
|
ARCHFLAGS= cr
|
||||||
RANLIB = echo
|
RANLIB = echo
|
||||||
#
|
#
|
||||||
# Location of the extended-precision BLAS (XBLAS) Fortran library
|
# Location of the extended-precision BLAS (XBLAS) Fortran library
|
||||||
# used for building and testing extended-precision routines. The
|
# used for building and testing extended-precision routines. The
|
||||||
|
|
|
@ -52,9 +52,9 @@ CFLAGS = -O3
|
||||||
# The archiver and the flag(s) to use when building archive (library)
|
# The archiver and the flag(s) to use when building archive (library)
|
||||||
# If you system has no ranlib, set RANLIB = echo.
|
# If you system has no ranlib, set RANLIB = echo.
|
||||||
#
|
#
|
||||||
AR = ar
|
ARCH = ar
|
||||||
ARFLAGS = cr
|
ARCHFLAGS= cr
|
||||||
RANLIB = ranlib
|
RANLIB = ranlib
|
||||||
#
|
#
|
||||||
# Location of the extended-precision BLAS (XBLAS) Fortran library
|
# Location of the extended-precision BLAS (XBLAS) Fortran library
|
||||||
# used for building and testing extended-precision routines. The
|
# used for building and testing extended-precision routines. The
|
||||||
|
|
|
@ -56,9 +56,9 @@ CFLAGS = -O3
|
||||||
# The archiver and the flag(s) to use when building archive (library)
|
# The archiver and the flag(s) to use when building archive (library)
|
||||||
# If you system has no ranlib, set RANLIB = echo.
|
# If you system has no ranlib, set RANLIB = echo.
|
||||||
#
|
#
|
||||||
AR = ar
|
ARCH = ar
|
||||||
ARFLAGS = cr
|
ARCHFLAGS= cr
|
||||||
RANLIB = echo
|
RANLIB = echo
|
||||||
#
|
#
|
||||||
# Location of the extended-precision BLAS (XBLAS) Fortran library
|
# Location of the extended-precision BLAS (XBLAS) Fortran library
|
||||||
# used for building and testing extended-precision routines. The
|
# used for building and testing extended-precision routines. The
|
||||||
|
|
|
@ -53,9 +53,9 @@ CFLAGS = -O3 -qnosave
|
||||||
# The archiver and the flag(s) to use when building archive (library)
|
# The archiver and the flag(s) to use when building archive (library)
|
||||||
# If you system has no ranlib, set RANLIB = echo.
|
# If you system has no ranlib, set RANLIB = echo.
|
||||||
#
|
#
|
||||||
AR = ar
|
ARCH = ar
|
||||||
ARFLAGS = cr
|
ARCHFLAGS= cr
|
||||||
RANLIB = ranlib
|
RANLIB = ranlib
|
||||||
#
|
#
|
||||||
# Location of the extended-precision BLAS (XBLAS) Fortran library
|
# Location of the extended-precision BLAS (XBLAS) Fortran library
|
||||||
# used for building and testing extended-precision routines. The
|
# used for building and testing extended-precision routines. The
|
||||||
|
|
|
@ -56,9 +56,9 @@ CFLAGS = -O3
|
||||||
# The archiver and the flag(s) to use when building archive (library)
|
# The archiver and the flag(s) to use when building archive (library)
|
||||||
# If you system has no ranlib, set RANLIB = echo.
|
# If you system has no ranlib, set RANLIB = echo.
|
||||||
#
|
#
|
||||||
AR = ar
|
ARCH = ar
|
||||||
ARFLAGS = cr
|
ARCHFLAGS= cr
|
||||||
RANLIB = ranlib
|
RANLIB = ranlib
|
||||||
#
|
#
|
||||||
# Location of the extended-precision BLAS (XBLAS) Fortran library
|
# Location of the extended-precision BLAS (XBLAS) Fortran library
|
||||||
# used for building and testing extended-precision routines. The
|
# used for building and testing extended-precision routines. The
|
||||||
|
|
|
@ -56,9 +56,9 @@ CFLAGS = -g
|
||||||
# The archiver and the flag(s) to use when building archive (library)
|
# The archiver and the flag(s) to use when building archive (library)
|
||||||
# If you system has no ranlib, set RANLIB = echo.
|
# If you system has no ranlib, set RANLIB = echo.
|
||||||
#
|
#
|
||||||
AR = ar
|
ARCH = ar
|
||||||
ARFLAGS = cr
|
ARCHFLAGS= cr
|
||||||
RANLIB = ranlib
|
RANLIB = ranlib
|
||||||
#
|
#
|
||||||
# Location of the extended-precision BLAS (XBLAS) Fortran library
|
# Location of the extended-precision BLAS (XBLAS) Fortran library
|
||||||
# used for building and testing extended-precision routines. The
|
# used for building and testing extended-precision routines. The
|
||||||
|
|
|
@ -52,9 +52,9 @@ CFLAGS = -O3
|
||||||
# The archiver and the flag(s) to use when building archive (library)
|
# The archiver and the flag(s) to use when building archive (library)
|
||||||
# If you system has no ranlib, set RANLIB = echo.
|
# If you system has no ranlib, set RANLIB = echo.
|
||||||
#
|
#
|
||||||
AR = ar
|
ARCH = ar
|
||||||
ARFLAGS = cr
|
ARCHFLAGS= cr
|
||||||
RANLIB = ranlib
|
RANLIB = ranlib
|
||||||
#
|
#
|
||||||
# Location of the extended-precision BLAS (XBLAS) Fortran library
|
# Location of the extended-precision BLAS (XBLAS) Fortran library
|
||||||
# used for building and testing extended-precision routines. The
|
# used for building and testing extended-precision routines. The
|
||||||
|
|
|
@ -52,9 +52,9 @@ CFLAGS =
|
||||||
# The archiver and the flag(s) to use when building archive (library)
|
# The archiver and the flag(s) to use when building archive (library)
|
||||||
# If you system has no ranlib, set RANLIB = echo.
|
# If you system has no ranlib, set RANLIB = echo.
|
||||||
#
|
#
|
||||||
AR = ar
|
ARCH = ar
|
||||||
ARFLAGS = cr
|
ARCHFLAGS= cr
|
||||||
RANLIB = echo
|
RANLIB = echo
|
||||||
#
|
#
|
||||||
# Location of the extended-precision BLAS (XBLAS) Fortran library
|
# Location of the extended-precision BLAS (XBLAS) Fortran library
|
||||||
# used for building and testing extended-precision routines. The
|
# used for building and testing extended-precision routines. The
|
||||||
|
|
|
@ -52,9 +52,9 @@ CFLAGS =
|
||||||
# The archiver and the flag(s) to use when building archive (library)
|
# The archiver and the flag(s) to use when building archive (library)
|
||||||
# If you system has no ranlib, set RANLIB = echo.
|
# If you system has no ranlib, set RANLIB = echo.
|
||||||
#
|
#
|
||||||
AR = ar
|
ARCH = ar
|
||||||
ARFLAGS = cr
|
ARCHFLAGS= cr
|
||||||
RANLIB = echo
|
RANLIB = echo
|
||||||
#
|
#
|
||||||
# Location of the extended-precision BLAS (XBLAS) Fortran library
|
# Location of the extended-precision BLAS (XBLAS) Fortran library
|
||||||
# used for building and testing extended-precision routines. The
|
# used for building and testing extended-precision routines. The
|
||||||
|
|
|
@ -2207,8 +2207,8 @@ OBJ_FILES := $(C_FILES:.o=.o)
|
||||||
all: ../../$(LAPACKELIB)
|
all: ../../$(LAPACKELIB)
|
||||||
|
|
||||||
../../$(LAPACKELIB): $(ALLOBJA) $(ALLOBJB) $(ALLXOBJ) $(DEPRECATED)
|
../../$(LAPACKELIB): $(ALLOBJA) $(ALLOBJB) $(ALLXOBJ) $(DEPRECATED)
|
||||||
$(AR) $(ARFLAGS) ../../$(LAPACKELIB) $(ALLOBJA)
|
$(ARCH) $(ARCHFLAGS) ../../$(LAPACKELIB) $(ALLOBJA)
|
||||||
$(AR) $(ARFLAGS) ../../$(LAPACKELIB) $(ALLOBJB) $(ALLXOBJ) $(DEPRECATED)
|
$(ARCH) $(ARCHFLAGS) ../../$(LAPACKELIB) $(ALLOBJB) $(ALLXOBJ) $(DEPRECATED)
|
||||||
$(RANLIB) ../../$(LAPACKELIB)
|
$(RANLIB) ../../$(LAPACKELIB)
|
||||||
|
|
||||||
.c.o:
|
.c.o:
|
||||||
|
|
|
@ -186,7 +186,7 @@ OBJ = lapacke_cgb_nancheck.o \
|
||||||
all: lib
|
all: lib
|
||||||
|
|
||||||
lib: $(OBJ)
|
lib: $(OBJ)
|
||||||
$(AR) $(ARFLAGS) ../../$(LAPACKELIB) $(OBJ)
|
$(ARCH) $(ARCHFLAGS) ../../$(LAPACKELIB) $(OBJ)
|
||||||
$(RANLIB) ../../$(LAPACKELIB)
|
$(RANLIB) ../../$(LAPACKELIB)
|
||||||
|
|
||||||
.c.o:
|
.c.o:
|
||||||
|
|
|
@ -455,26 +455,26 @@ endif
|
||||||
all: ../$(LAPACKLIB)
|
all: ../$(LAPACKLIB)
|
||||||
|
|
||||||
../$(LAPACKLIB): $(ALLOBJ) $(ALLXOBJ) $(DEPRECATED)
|
../$(LAPACKLIB): $(ALLOBJ) $(ALLXOBJ) $(DEPRECATED)
|
||||||
$(AR) $(ARFLAGS) $@ $(ALLOBJ) $(ALLXOBJ) $(DEPRECATED)
|
$(ARCH) $(ARCHFLAGS) $@ $(ALLOBJ) $(ALLXOBJ) $(DEPRECATED)
|
||||||
$(RANLIB) $@
|
$(RANLIB) $@
|
||||||
|
|
||||||
single: $(SLASRC) $(DSLASRC) $(SXLASRC) $(SCLAUX) $(ALLAUX)
|
single: $(SLASRC) $(DSLASRC) $(SXLASRC) $(SCLAUX) $(ALLAUX)
|
||||||
$(AR) $(ARFLAGS) ../$(LAPACKLIB) $(SLASRC) $(DSLASRC) \
|
$(ARCH) $(ARCHFLAGS) ../$(LAPACKLIB) $(SLASRC) $(DSLASRC) \
|
||||||
$(SXLASRC) $(SCLAUX) $(ALLAUX) $(ALLXAUX)
|
$(SXLASRC) $(SCLAUX) $(ALLAUX) $(ALLXAUX)
|
||||||
$(RANLIB) ../$(LAPACKLIB)
|
$(RANLIB) ../$(LAPACKLIB)
|
||||||
|
|
||||||
complex: $(CLASRC) $(ZCLASRC) $(CXLASRC) $(SCLAUX) $(ALLAUX)
|
complex: $(CLASRC) $(ZCLASRC) $(CXLASRC) $(SCLAUX) $(ALLAUX)
|
||||||
$(AR) $(ARFLAGS) ../$(LAPACKLIB) $(CLASRC) $(ZCLASRC) \
|
$(ARCH) $(ARCHFLAGS) ../$(LAPACKLIB) $(CLASRC) $(ZCLASRC) \
|
||||||
$(CXLASRC) $(SCLAUX) $(ALLAUX) $(ALLXAUX)
|
$(CXLASRC) $(SCLAUX) $(ALLAUX) $(ALLXAUX)
|
||||||
$(RANLIB) ../$(LAPACKLIB)
|
$(RANLIB) ../$(LAPACKLIB)
|
||||||
|
|
||||||
double: $(DLASRC) $(DSLASRC) $(DXLASRC) $(DZLAUX) $(ALLAUX)
|
double: $(DLASRC) $(DSLASRC) $(DXLASRC) $(DZLAUX) $(ALLAUX)
|
||||||
$(AR) $(ARFLAGS) ../$(LAPACKLIB) $(DLASRC) $(DSLASRC) \
|
$(ARCH) $(ARCHFLAGS) ../$(LAPACKLIB) $(DLASRC) $(DSLASRC) \
|
||||||
$(DXLASRC) $(DZLAUX) $(ALLAUX) $(ALLXAUX)
|
$(DXLASRC) $(DZLAUX) $(ALLAUX) $(ALLXAUX)
|
||||||
$(RANLIB) ../$(LAPACKLIB)
|
$(RANLIB) ../$(LAPACKLIB)
|
||||||
|
|
||||||
complex16: $(ZLASRC) $(ZCLASRC) $(ZXLASRC) $(DZLAUX) $(ALLAUX)
|
complex16: $(ZLASRC) $(ZCLASRC) $(ZXLASRC) $(DZLAUX) $(ALLAUX)
|
||||||
$(AR) $(ARFLAGS) ../$(LAPACKLIB) $(ZLASRC) $(ZCLASRC) \
|
$(ARCH) $(ARCHFLAGS) ../$(LAPACKLIB) $(ZLASRC) $(ZCLASRC) \
|
||||||
$(ZXLASRC) $(DZLAUX) $(ALLAUX) $(ALLXAUX)
|
$(ZXLASRC) $(DZLAUX) $(ALLAUX) $(ALLXAUX)
|
||||||
$(RANLIB) ../$(LAPACKLIB)
|
$(RANLIB) ../$(LAPACKLIB)
|
||||||
|
|
||||||
|
|
|
@ -35,27 +35,27 @@ QRLL = qr/LL/cgeqrf.o qr/LL/dgeqrf.o qr/LL/sgeqrf.o qr/LL/zgeqrf.o qr/LL/sceil.
|
||||||
all: cholrl choltop lucr lull lurec qrll
|
all: cholrl choltop lucr lull lurec qrll
|
||||||
|
|
||||||
cholrl: $(CHOLRL)
|
cholrl: $(CHOLRL)
|
||||||
$(AR) $(ARFLAGS) $(VARIANTSDIR)/cholrl.a $(CHOLRL)
|
$(ARCH) $(ARCHFLAGS) $(VARIANTSDIR)/cholrl.a $(CHOLRL)
|
||||||
$(RANLIB) $(VARIANTSDIR)/cholrl.a
|
$(RANLIB) $(VARIANTSDIR)/cholrl.a
|
||||||
|
|
||||||
choltop: $(CHOLTOP)
|
choltop: $(CHOLTOP)
|
||||||
$(AR) $(ARFLAGS) $(VARIANTSDIR)/choltop.a $(CHOLTOP)
|
$(ARCH) $(ARCHFLAGS) $(VARIANTSDIR)/choltop.a $(CHOLTOP)
|
||||||
$(RANLIB) $(VARIANTSDIR)/choltop.a
|
$(RANLIB) $(VARIANTSDIR)/choltop.a
|
||||||
|
|
||||||
lucr: $(LUCR)
|
lucr: $(LUCR)
|
||||||
$(AR) $(ARFLAGS) $(VARIANTSDIR)/lucr.a $(LUCR)
|
$(ARCH) $(ARCHFLAGS) $(VARIANTSDIR)/lucr.a $(LUCR)
|
||||||
$(RANLIB) $(VARIANTSDIR)/lucr.a
|
$(RANLIB) $(VARIANTSDIR)/lucr.a
|
||||||
|
|
||||||
lull: $(LULL)
|
lull: $(LULL)
|
||||||
$(AR) $(ARFLAGS) $(VARIANTSDIR)/lull.a $(LULL)
|
$(ARCH) $(ARCHFLAGS) $(VARIANTSDIR)/lull.a $(LULL)
|
||||||
$(RANLIB) $(VARIANTSDIR)/lull.a
|
$(RANLIB) $(VARIANTSDIR)/lull.a
|
||||||
|
|
||||||
lurec: $(LUREC)
|
lurec: $(LUREC)
|
||||||
$(AR) $(ARFLAGS) $(VARIANTSDIR)/lurec.a $(LUREC)
|
$(ARCH) $(ARCHFLAGS) $(VARIANTSDIR)/lurec.a $(LUREC)
|
||||||
$(RANLIB) $(VARIANTSDIR)/lurec.a
|
$(RANLIB) $(VARIANTSDIR)/lurec.a
|
||||||
|
|
||||||
qrll: $(QRLL)
|
qrll: $(QRLL)
|
||||||
$(AR) $(ARFLAGS) $(VARIANTSDIR)/qrll.a $(QRLL)
|
$(ARCH) $(ARCHFLAGS) $(VARIANTSDIR)/qrll.a $(QRLL)
|
||||||
$(RANLIB) $(VARIANTSDIR)/qrll.a
|
$(RANLIB) $(VARIANTSDIR)/qrll.a
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -59,23 +59,23 @@ ALLOBJ = $(SMATGEN) $(CMATGEN) $(SCATGEN) $(DMATGEN) $(ZMATGEN) \
|
||||||
$(DZATGEN)
|
$(DZATGEN)
|
||||||
|
|
||||||
../../$(TMGLIB): $(ALLOBJ)
|
../../$(TMGLIB): $(ALLOBJ)
|
||||||
$(AR) $(ARFLAGS) $@ $(ALLOBJ)
|
$(ARCH) $(ARCHFLAGS) $@ $(ALLOBJ)
|
||||||
$(RANLIB) $@
|
$(RANLIB) $@
|
||||||
|
|
||||||
single: $(SMATGEN) $(SCATGEN)
|
single: $(SMATGEN) $(SCATGEN)
|
||||||
$(AR) $(ARFLAGS) ../../$(TMGLIB) $(SMATGEN) $(SCATGEN)
|
$(ARCH) $(ARCHFLAGS) ../../$(TMGLIB) $(SMATGEN) $(SCATGEN)
|
||||||
$(RANLIB) ../../$(TMGLIB)
|
$(RANLIB) ../../$(TMGLIB)
|
||||||
|
|
||||||
complex: $(CMATGEN) $(SCATGEN)
|
complex: $(CMATGEN) $(SCATGEN)
|
||||||
$(AR) $(ARFLAGS) ../../$(TMGLIB) $(CMATGEN) $(SCATGEN)
|
$(ARCH) $(ARCHFLAGS) ../../$(TMGLIB) $(CMATGEN) $(SCATGEN)
|
||||||
$(RANLIB) ../../$(TMGLIB)
|
$(RANLIB) ../../$(TMGLIB)
|
||||||
|
|
||||||
double: $(DMATGEN) $(DZATGEN)
|
double: $(DMATGEN) $(DZATGEN)
|
||||||
$(AR) $(ARFLAGS) ../../$(TMGLIB) $(DMATGEN) $(DZATGEN)
|
$(ARCH) $(ARCHFLAGS) ../../$(TMGLIB) $(DMATGEN) $(DZATGEN)
|
||||||
$(RANLIB) ../../$(TMGLIB)
|
$(RANLIB) ../../$(TMGLIB)
|
||||||
|
|
||||||
complex16: $(ZMATGEN) $(DZATGEN)
|
complex16: $(ZMATGEN) $(DZATGEN)
|
||||||
$(AR) $(ARFLAGS) ../../$(TMGLIB) $(ZMATGEN) $(DZATGEN)
|
$(ARCH) $(ARCHFLAGS) ../../$(TMGLIB) $(ZMATGEN) $(DZATGEN)
|
||||||
$(RANLIB) ../../$(TMGLIB)
|
$(RANLIB) ../../$(TMGLIB)
|
||||||
|
|
||||||
$(SCATGEN): $(FRC)
|
$(SCATGEN): $(FRC)
|
||||||
|
|
|
@ -57,9 +57,9 @@ CFLAGS = -O3
|
||||||
# The archiver and the flag(s) to use when building archive (library)
|
# The archiver and the flag(s) to use when building archive (library)
|
||||||
# If you system has no ranlib, set RANLIB = echo.
|
# If you system has no ranlib, set RANLIB = echo.
|
||||||
#
|
#
|
||||||
AR = ar
|
ARCH = ar
|
||||||
ARFLAGS = cr
|
ARCHFLAGS= cr
|
||||||
RANLIB = ranlib
|
RANLIB = ranlib
|
||||||
#
|
#
|
||||||
# Location of the extended-precision BLAS (XBLAS) Fortran library
|
# Location of the extended-precision BLAS (XBLAS) Fortran library
|
||||||
# used for building and testing extended-precision routines. The
|
# used for building and testing extended-precision routines. The
|
||||||
|
|
2
make.inc
2
make.inc
|
@ -1,6 +1,6 @@
|
||||||
SHELL = /bin/sh
|
SHELL = /bin/sh
|
||||||
PLAT = _LINUX
|
PLAT = _LINUX
|
||||||
DRVOPTS = $(NOOPT)
|
DRVOPTS = $(NOOPT)
|
||||||
ARFLAGS= -ru
|
ARCHFLAGS= -ru
|
||||||
#RANLIB = ranlib
|
#RANLIB = ranlib
|
||||||
|
|
||||||
|
|
2
param.h
2
param.h
|
@ -2182,7 +2182,7 @@ USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||||
#define GEMM_DEFAULT_OFFSET_B 0
|
#define GEMM_DEFAULT_OFFSET_B 0
|
||||||
#define GEMM_DEFAULT_ALIGN 0x03fffUL
|
#define GEMM_DEFAULT_ALIGN 0x03fffUL
|
||||||
|
|
||||||
#ifdef MIPS_SIMD
|
#ifdef HAVE_MSA
|
||||||
#define SGEMM_DEFAULT_UNROLL_M 8
|
#define SGEMM_DEFAULT_UNROLL_M 8
|
||||||
#define SGEMM_DEFAULT_UNROLL_N 8
|
#define SGEMM_DEFAULT_UNROLL_N 8
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue