|
- ###############################################################################
- # Copyright (c) 2025, 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 OPENBLAS PROJECT 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.
- ###############################################################################
-
- BBLASOBJS_P = $(BBLASOBJS:.$(SUFFIX)=.$(PSUFFIX))
- SBBLASOBJS_P = $(SBBLASOBJS:.$(SUFFIX)=.$(PSUFFIX))
- SHBLASPBJS_P = $(SHBLASOBJS:.$(SUFFIX)=.$(PSUFFIX))
- SBLASOBJS_P = $(SBLASOBJS:.$(SUFFIX)=.$(PSUFFIX))
- DBLASOBJS_P = $(DBLASOBJS:.$(SUFFIX)=.$(PSUFFIX))
- QBLASOBJS_P = $(QBLASOBJS:.$(SUFFIX)=.$(PSUFFIX))
- CBLASOBJS_P = $(CBLASOBJS:.$(SUFFIX)=.$(PSUFFIX))
- ZBLASOBJS_P = $(ZBLASOBJS:.$(SUFFIX)=.$(PSUFFIX))
- XBLASOBJS_P = $(XBLASOBJS:.$(SUFFIX)=.$(PSUFFIX))
- SBEXTOBJS_P = $(SBEXTOBJS:.$(SUFFIX)=.$(PSUFFIX))
-
- COMMONOBJS_P = $(COMMONOBJS:.$(SUFFIX)=.$(PSUFFIX))
-
- HPLOBJS_P = $(HPLOBJS:.$(SUFFIX)=.$(PSUFFIX))
-
- BLASOBJS = $(SHBLASOBJS) $(BBLASOBJS) $(SBEXTOBJS) $(SBBLASOBJS) $(SBLASOBJS) $(DBLASOBJS) $(CBLASOBJS) $(ZBLASOBJS) $(CBAUXOBJS)
- BLASOBJS_P = $(SHBLASPBJS_P) $(BBLASOBJS_P) $(SBEXTOBJS_P) $(SBBLASOBJS_P) $(SBLASOBJS_P) $(DBLASOBJS_P) $(CBLASOBJS_P) $(ZBLASOBJS_P) $(CBAUXOBJS_P)
-
- ifdef EXPRECISION
- BLASOBJS += $(QBLASOBJS) $(XBLASOBJS)
- BLASOBJS_P += $(QBLASOBJS_P) $(XBLASOBJS_P)
- endif
-
- ifdef QUAD_PRECISION
- BLASOBJS += $(QBLASOBJS) $(XBLASOBJS)
- BLASOBJS_P += $(QBLASOBJS_P) $(XBLASOBJS_P)
- endif
-
- $(SHBLASOBJS) $(SHBLASOBJS_P) : override CFLAGS += -DHFLOAT16 -UDOUBLE -UCOMPLEX
- $(BBLASOBJS) $(BBLASOBJS_P) : override CFLAGS += -DBFLOAT16 -DBGEMM -UDOUBLE -UCOMPLEX
- $(SBBLASOBJS) $(SBBLASOBJS_P) : override CFLAGS += -DBFLOAT16 -UDOUBLE -UCOMPLEX
- $(SBLASOBJS) $(SBLASOBJS_P) : override CFLAGS += -UDOUBLE -UCOMPLEX
- $(DBLASOBJS) $(DBLASOBJS_P) : override CFLAGS += -DDOUBLE -UCOMPLEX
- $(QBLASOBJS) $(QBLASOBJS_P) : override CFLAGS += -DXDOUBLE -UCOMPLEX
- $(CBLASOBJS) $(CBLASOBJS_P) : override CFLAGS += -UDOUBLE -DCOMPLEX
- $(ZBLASOBJS) $(ZBLASOBJS_P) : override CFLAGS += -DDOUBLE -DCOMPLEX
- $(XBLASOBJS) $(XBLASOBJS_P) : override CFLAGS += -DXDOUBLE -DCOMPLEX
- $(SBEXTOBJS) $(SBEXTOBJS_P) : override CFLAGS += -DBFLOAT16 -UDOUBLE -UCOMPLEX
-
- $(SHBLASOBJS_P) : override CFLAGS += -DPROFILE $(COMMON_PROF)
- $(BBLASOBJS_P) : override CFLAGS += -DPROFILE $(COMMON_PROF)
- $(SBBLASOBJS_P) : override CFLAGS += -DPROFILE $(COMMON_PROF)
- $(SBLASOBJS_P) : override CFLAGS += -DPROFILE $(COMMON_PROF)
- $(DBLASOBJS_P) : override CFLAGS += -DPROFILE $(COMMON_PROF)
- $(QBLASOBJS_P) : override CFLAGS += -DPROFILE $(COMMON_PROF)
- $(CBLASOBJS_P) : override CFLAGS += -DPROFILE $(COMMON_PROF)
- $(ZBLASOBJS_P) : override CFLAGS += -DPROFILE $(COMMON_PROF)
- $(XBLASOBJS_P) : override CFLAGS += -DPROFILE $(COMMON_PROF)
- $(SBEXTOBJS_P) : override CFLAGS += -DPROFILE $(COMMON_PROF)
-
- libs :: $(BLASOBJS) $(COMMONOBJS)
- $(AR) $(ARFLAGS) -ru $(TOPDIR)/$(LIBNAME) $^
-
- prof :: $(BLASOBJS_P) $(COMMONOBJS_P)
- $(AR) $(ARFLAGS) -ru $(TOPDIR)/$(LIBNAME_P) $^
-
- hpl :: $(HPLOBJS) $(COMMONOBJS)
- $(AR) $(ARFLAGS) -ru $(TOPDIR)/$(LIBNAME) $^
-
- hpl_p :: $(HPLOBJS_P) $(COMMONOBJS_P)
- $(AR) $(ARFLAGS) -ru $(TOPDIR)/$(LIBNAME_P) $^
-
- kernel :: $(BLASOBJS)
- $(AR) $(ARFLAGS) -ru $(TOPDIR)/$(LIBNAME) $^
-
- commonlibs :: $(COMMONOBJS)
- $(AR) $(ARFLAGS) -ru $(TOPDIR)/$(LIBNAME) $^
-
- commonprof :: $(COMMONOBJS_P)
- $(AR) $(ARFLAGS) -ru $(TOPDIR)/$(LIBNAME_P) $^
-
- quick :
- $(MAKE) -C $(TOPDIR) libs
-
- bms.$(SUFFIX):bm.c $(TOPDIR)/../bench/bmcommon.h
- $(CC) $(CFLAGS) -UDOUBLE -UCOMPLEX -c $< -o $(@F)
-
- bmd.$(SUFFIX):bm.c $(TOPDIR)/../bench/bmcommon.h
- $(CC) $(CFLAGS) -DDOUBLE -UCOMPLEX -c $< -o $(@F)
-
- bmd-k.$(SUFFIX):bm-k.c $(TOPDIR)/../bench/bmcommon.h
- $(CC) $(CFLAGS) -DDOUBLE -UCOMPLEX -c $< -o $(@F)
-
- ifdef QUAD_PRECISION
- bmq.$(SUFFIX):bmq.c $(TOPDIR)/../bench/bmcommon.h
- $(CC) $(CFLAGS) -DXDOUBLE -UCOMPLEX -c $< -o $(@F)
-
- bmx.$(SUFFIX):bmx.c $(TOPDIR)/../bench/bmcommon.h
- $(CC) $(CFLAGS) -DXDOUBLE -DCOMPLEX -c $< -o $(@F)
- else
- bmq.$(SUFFIX):bm.c $(TOPDIR)/../bench/bmcommon.h
- $(CC) $(CFLAGS) -DXDOUBLE -UCOMPLEX -c $< -o $(@F)
-
- bmx.$(SUFFIX):bmz.c $(TOPDIR)/../bench/bmcommon.h
- $(CC) $(CFLAGS) -DXDOUBLE -DCOMPLEX -c $< -o $(@F)
- endif
-
- bmc.$(SUFFIX):bmz.c $(TOPDIR)/../bench/bmcommon.h
- $(CC) $(CFLAGS) -UDOUBLE -DCOMPLEX -c $< -o $(@F)
-
- bmz.$(SUFFIX):bmz.c $(TOPDIR)/../bench/bmcommon.h
- $(CC) $(CFLAGS) -DDOUBLE -DCOMPLEX -c $< -o $(@F)
-
- bmd_nn.$(SUFFIX):bm_special.c $(TOPDIR)/../bench/bmcommon.h
- $(CC) $(CFLAGS) -DDOUBLE -UCOMPLEX -DNN -c $< -o $(@F)
-
- bmd_nt.$(SUFFIX):bm_special.c $(TOPDIR)/../bench/bmcommon.h
- $(CC) $(CFLAGS) -DDOUBLE -UCOMPLEX -DNT -c $< -o $(@F)
-
- bmd_tn.$(SUFFIX):bm_special.c $(TOPDIR)/../bench/bmcommon.h
- $(CC) $(CFLAGS) -DDOUBLE -UCOMPLEX -DTN -c $< -o $(@F)
-
- bmd_tt.$(SUFFIX):bm_special.c $(TOPDIR)/../bench/bmcommon.h
- $(CC) $(CFLAGS) -DDOUBLE -UCOMPLEX -DTT -c $< -o $(@F)
-
- bm-phy.$(SUFFIX):bm-phy.c $(TOPDIR)/../bench/bmcommon.h
- $(CC) $(CFLAGS) -DDOUBLE -UCOMPLEX -c $< -o $(@F)
-
- bms.$(PSUFFIX):bm.c $(TOPDIR)/../bench/bmcommon.h
- $(CC) $(PFLAGS) -UDOUBLE -UCOMPLEX -c $< -o $(@F)
-
- bmd.$(PSUFFIX):bm.c $(TOPDIR)/../bench/bmcommon.h
- $(CC) $(PFLAGS) -DDOUBLE -UCOMPLEX -c $< -o $(@F)
-
- ifdef QUAD_PRECISION
- bmq.$(PSUFFIX):bmq.c $(TOPDIR)/../bench/bmcommon.h
- $(CC) $(PFLAGS) -DXDOUBLE -UCOMPLEX -c $< -o $(@F)
-
- bmx.$(PSUFFIX):bmx.c $(TOPDIR)/../bench/bmcommon.h
- $(CC) $(PFLAGS) -DXDOUBLE -DCOMPLEX -c $< -o $(@F)
- else
- bmq.$(PSUFFIX):bm.c $(TOPDIR)/../bench/bmcommon.h
- $(CC) $(PFLAGS) -DXDOUBLE -UCOMPLEX -c $< -o $(@F)
-
- bmx.$(PSUFFIX):bmz.c $(TOPDIR)/../bench/bmcommon.h
- $(CC) $(PFLAGS) -DXDOUBLE -DCOMPLEX -c $< -o $(@F)
- endif
-
- bmc.$(PSUFFIX):bmz.c $(TOPDIR)/../bench/bmcommon.h
- $(CC) $(PFLAGS) -UDOUBLE -DCOMPLEX -c $< -o $(@F)
-
- bmz.$(PSUFFIX):bmz.c $(TOPDIR)/../bench/bmcommon.h
- $(CC) $(PFLAGS) -DDOUBLE -DCOMPLEX -c $< -o $(@F)
-
- bms : bms.$(SUFFIX) $(SBLASOBJS) $(COMMONOBJS) $(SOBJS) $(OBJS) $(LIBS)
- $(CC) -o $(@F) $(CFLAGS) $^ $(EXTRALIB) $(CEXTRALIB)
-
- bmd : bmd.$(SUFFIX) $(DBLASOBJS) $(COMMONOBJS) $(DOBJS) $(OBJS) $(LIBS)
- $(CC) -o $(@F) $(CFLAGS) $^ $(EXTRALIB) $(CEXTRALIB) -lm
-
- bmd-k : bmd-k.$(SUFFIX) $(DBLASOBJS) $(COMMONOBJS) $(DOBJS) $(OBJS) $(LIBS)
- $(CC) -o $(@F) $(CFLAGS) $^ $(EXTRALIB) $(CEXTRALIB) -lm
-
- bmq : bmq.$(SUFFIX) $(QBLASOBJS) $(COMMONOBJS) $(QOBJS) $(OBJS) $(LIBS)
- $(CC) -o $(@F) $(CFLAGS) $^ $(EXTRALIB) $(CEXTRALIB)
-
- bmc : bmc.$(SUFFIX) $(CBLASOBJS) $(COMMONOBJS) $(COBJS) $(OBJS) $(LIBS)
- $(CC) -o $(@F) $(CFLAGS) $^ $(EXTRALIB) $(CEXTRALIB) $(FEXTRALIB)
-
- bmz : bmz.$(SUFFIX) $(ZBLASOBJS) $(COMMONOBJS) $(ZOBJS) $(OBJS) $(LIBS)
- $(CC) -o $(@F) $(CFLAGS) $^ $(EXTRALIB) $(CEXTRALIB)
-
- bmx : bmx.$(SUFFIX) $(XBLASOBJS) $(COMMONOBJS) $(XOBJS) $(OBJS) $(LIBS)
- $(CC) -o $(@F) $(CFLAGS) $^ $(EXTRALIB) $(CEXTRALIB)
-
- bmd_nn : bmd_nn.$(SUFFIX) $(DBLASOBJS) $(COMMONOBJS) $(DOBJS) $(OBJS) $(LIBS)
- $(CC) -o $(@F) $(CFLAGS) $^ $(EXTRALIB) $(CEXTRALIB)
-
- bmd_nt : bmd_nt.$(SUFFIX) $(DBLASOBJS) $(COMMONOBJS) $(DOBJS) $(OBJS) $(LIBS)
- $(CC) -o $(@F) $(CFLAGS) $^ $(EXTRALIB) $(CEXTRALIB)
-
- bmd_tn : bmd_tn.$(SUFFIX) $(DBLASOBJS) $(COMMONOBJS) $(DOBJS) $(OBJS) $(LIBS)
- $(CC) -o $(@F) $(CFLAGS) $^ $(EXTRALIB) $(CEXTRALIB)
-
- bmd_tt : bmd_tt.$(SUFFIX) $(DBLASOBJS) $(COMMONOBJS) $(DOBJS) $(OBJS) $(LIBS)
- $(CC) -o $(@F) $(CFLAGS) $^ $(EXTRALIB) $(CEXTRALIB)
-
- bm-phy:bm-phy.$(SUFFIX) $(DBLASOBJS) $(COMMONOBJS) $(DOBJS) $(OBJS) $(LIBS)
- $(CC) -o $(@F) $(CFLAGS) $^ $(EXTRALIB) $(CEXTRALIB)
-
- bmcc : bmcc.$(SUFFIX) $(CBLASOBJS) $(COMMONOBJS) $(COBJS) $(OBJS) $(LIBS)
- $(CC) -o $(@F) $(CFLAGS) $^ $(EXTRALIB) $(CEXTRALIB)
-
- bmzc : bmzc.$(SUFFIX) $(ZBLASOBJS) $(COMMONOBJS) $(ZOBJS) $(OBJS) $(LIBS)
- $(CC) -o $(@F) $(CFLAGS) $^ $(EXTRALIB) $(CEXTRALIB)
-
- bms.prof : bms.$(PSUFFIX) $(SBLASOBJS_P) $(COMMONOBJS_P) $(SOBJS) $(OBJS) $(LIBS_P)
- $(CC) -o $(@F) $(PFLAGS) $^ $(EXTRALIB) $(CEXTRALIB)
-
- bmd.prof : bmd.$(PSUFFIX) $(DBLASOBJS_P) $(COMMONOBJS_P) $(DOBJS) $(OBJS) $(LIBS_P)
- $(CC) -o $(@F) $(PFLAGS) $^ $(EXTRALIB) $(CEXTRALIB)
-
- bmq.prof : bmq.$(PSUFFIX) $(QBLASOBJS_P) $(COMMONOBJS_P) $(QOBJS) $(OBJS) $(LIBS_P)
- $(CC) -o $(@F) $(PFLAGS) $^ $(EXTRALIB) $(CEXTRALIB)
-
- bmc.prof : bmc.$(PSUFFIX) $(CBLASOBJS_P) $(COMMONOBJS) $(COBJS) $(OBJS) $(LIBS_P)
- $(CC) -o $(@F) $(PFLAGS) $^ $(EXTRALIB) $(CEXTRALIB)
-
- bmz.prof : bmz.$(PSUFFIX) $(ZBLASOBJS_P) $(COMMONOBJS) $(ZOBJS) $(OBJS) $(LIBS_P)
- $(CC) -o $(@F) $(PFLAGS) $^ $(EXTRALIB) $(CEXTRALIB)
-
- bmx.prof : bmz.$(PSUFFIX) $(XBLASOBJS_P) $(COMMONOBJS) $(XOBJS) $(OBJS) $(LIBS_P)
- $(CC) -o $(@F) $(PFLAGS) $^ $(EXTRALIB) $(CEXTRALIB)
-
- bms.cxml : bms.$(SUFFIX) $(SOBJS) $(OBJS)
- $(CC) -o $(@F) $(CFLAGS) $^ $(LIBCXML)
-
- bmd.cxml : bmd.$(SUFFIX) $(DOBJS) $(OBJS)
- $(CC) -o $(@F) $(CFLAGS) $^ $(LIBCXML)
-
- bmc.cxml : bmc.$(SUFFIX) $(COBJS) $(OBJS)
- $(CC) -o $(@F) $(CFLAGS) $^ $(LIBCXML)
-
- bmz.cxml : bmz.$(SUFFIX) $(ZOBJS) $(OBJS)
- $(CC) -o $(@F) $(CFLAGS) $^ $(LIBCXML)
-
- bms.scsl : bms.$(SUFFIX) $(SOBJS) $(OBJS)
- $(CC) -o $(@F) $(CFLAGS) $^ $(LIBSCSL)
-
- bmd.scsl : bmd.$(SUFFIX) $(DOBJS) $(OBJS)
- $(CC) -o $(@F) $(CFLAGS) $^ $(LIBSCSL)
-
- bmc.scsl : bmc.$(SUFFIX) $(COBJS) $(OBJS)
- $(CC) -o $(@F) $(CFLAGS) $^ $(LIBSCSL)
-
- bmz.scsl : bmz.$(SUFFIX) $(ZOBJS) $(OBJS)
- $(CC) -o $(@F) $(CFLAGS) $^ $(LIBSCSL)
-
- bms.acml : bms.$(SUFFIX) $(SOBJS) $(OBJS)
- $(CC) -o $(@F) $(CFLAGS) $^ $(LIBACML)
-
- bmd.acml : bmd.$(SUFFIX) $(DOBJS) $(OBJS)
- $(CC) -o $(@F) $(CFLAGS) $^ $(LIBACML)
-
- bmc.acml : bmc.$(SUFFIX) $(COBJS) $(OBJS)
- $(CC) -o $(@F) $(CFLAGS) $^ $(LIBACML)
-
- bmz.acml : bmz.$(SUFFIX) $(ZOBJS) $(OBJS)
- $(CC) -o $(@F) $(CFLAGS) $^ $(LIBACML)
-
- bms.sun : bms.$(SUFFIX) $(SOBJS) $(OBJS)
- $(CC) -o $(@F) $(CFLAGS) $^ $(LIBSUNPERF) $(EXTRALIB) $(CEXTRALIB)
-
- bmd.sun : bmd.$(SUFFIX) $(DOBJS) $(OBJS)
- $(CC) -o $(@F) $(CFLAGS) $^ $(LIBSUNPERF) $(EXTRALIB) $(CEXTRALIB)
-
- bmc.sun : bmc.$(SUFFIX) $(COBJS) $(OBJS)
- $(CC) -o $(@F) $(CFLAGS) $^ $(LIBSUNPERF) $(EXTRALIB) $(CEXTRALIB)
-
- bmz.sun : bmz.$(SUFFIX) $(ZOBJS) $(OBJS)
- $(CC) -o $(@F) $(CFLAGS) $^ $(LIBSUNPERF) $(EXTRALIB) $(CEXTRALIB)
-
- bms.atlas : bms.$(SUFFIX) $(SOBJS) $(OBJS)
- $(CC) -o $(@F) $(CFLAGS) $^ $(LIBATLAS)
-
- bmd.atlas : bmd.$(SUFFIX) $(DOBJS) $(OBJS)
- $(CC) -o $(@F) $(CFLAGS) $^ $(LIBATLAS)
-
- bmc.atlas : bmc.$(SUFFIX) $(COBJS) $(OBJS)
- $(CC) -o $(@F) $(CFLAGS) $^ $(LIBATLAS)
-
- bmz.atlas : bmz.$(SUFFIX) $(ZOBJS) $(OBJS)
- $(CC) -o $(@F) $(CFLAGS) $^ $(LIBATLAS)
-
- bms.essl : bms.$(SUFFIX) $(SOBJS) $(OBJS)
- $(CC) $(FCOMMON_OPT) -o $(@F) $^ $(LIBESSL)
-
- bmd.essl : bmd.$(SUFFIX) $(DOBJS) $(OBJS)
- $(CC) $(CCOMMON_OPT) -o $(@F) $^ $(LIBESSL)
-
- bmc.essl : bmc.$(SUFFIX) $(COBJS) $(OBJS)
- $(F77) $(CCOMMON_OPT) -o $(@F) $^ $(LIBESSL)
-
- bmz.essl : bmz.$(SUFFIX) $(ZOBJS) $(OBJS)
- $(CC) $(CCOMMON_OPT) -o $(@F) $^ $(LIBESSL)
-
- bms.flame : bms.$(SUFFIX) $(SOBJS) $(OBJS)
- $(CC) -o $(@F) $(CFLAGS) $^ $(LIBFLAME)
-
- bmd.flame : bmd.$(SUFFIX) $(DOBJS) $(OBJS)
- $(CC) -o $(@F) $(CFLAGS) $^ $(LIBFLAME)
-
- bmc.flame : bmc.$(SUFFIX) $(COBJS) $(OBJS)
- $(CC) -o $(@F) $(CFLAGS) $^ $(LIBFLAME)
-
- bmz.flame : bmz.$(SUFFIX) $(ZOBJS) $(OBJS)
- $(CC) -o $(@F) $(CFLAGS) $^ $(LIBFLAME)
-
- bms.flame.prof : bms.$(SUFFIX) $(SOBJS) $(OBJS_P)
- $(F77) -o $(@F) $(PFLAGS) $^ $(LIBFLAME)
-
- bmd.flame.prof : bmd.$(SUFFIX) $(DOBJS) $(OBJS_P)
- $(F77) -o $(@F) $(PFLAGS) $^ $(LIBFLAME)
-
- bmc.flame.prof : bmc.$(SUFFIX) $(COBJS) $(OBJS_P)
- $(F77) -o $(@F) $(PFLAGS) $^ $(LIBFLAME)
-
- bmz.flame.prof : bmz.$(SUFFIX) $(ZOBJS) $(OBJS_P)
- $(F77) -o $(@F) $(PFLAGS) $^ $(LIBFLAME)
-
- bms.mkl : bms.$(SUFFIX) $(SOBJS) $(OBJS)
- $(CC) -o $(@F) $(CFLAGS) $^ $(LIBMKL) $(EXTRALIB) $(CEXTRALIB)
-
- bmd.mkl : bmd.$(SUFFIX) $(DOBJS) $(OBJS)
- $(CC) -static -o $(@F) $(CFLAGS) $^ $(LIBMKL) $(EXTRALIB) $(CEXTRALIB)
-
- bmc.mkl : bmc.$(SUFFIX) $(COBJS) $(OBJS)
- $(CC) -o $(@F) $(CFLAGS) $^ $(LIBMKL) $(EXTRALIB) $(CEXTRALIB)
-
- bmz.mkl : bmz.$(SUFFIX) $(ZOBJS) $(OBJS)
- $(CC) -o $(@F) $(CFLAGS) $^ $(LIBMKL) $(EXTRALIB) $(CEXTRALIB)
-
- bmq.mkl : bmq.$(SUFFIX) $(QOBJS) $(OBJS)
- $(CC) -o $(@F) $(CFLAGS) $^ $(LIBMKL) $(EXTRALIB) $(CEXTRALIB)
-
- bms.mkl.prof : bms.$(PSUFFIX) $(SOBJS) $(OBJS)
- $(CC) -o $(@F) $(PFLAGS) $^ $(LIBMKL)
-
- bmd.mkl.prof : bmd.$(PSUFFIX) $(DOBJS) $(OBJS)
- $(CC) -o $(@F) $(PFLAGS) $^ $(LIBMKL)
-
- bmc.mkl.prof : bmc.$(PSUFFIX) $(COBJS) $(OBJS)
- $(CC) -o $(@F) $(PFLAGS) $^ $(LIBMKL)
-
- bmz.mkl.prof : bmz.$(PSUFFIX) $(ZOBJS) $(OBJS)
- $(CC) -o $(@F) $(PFLAGS) $^ $(LIBMKL)
-
- bms.mlib : bms.$(SUFFIX) $(SOBJS) $(OBJS)
- $(F77) -o $(@F) $(CFLAGS) $^ $(LIBMLIB)
-
- bmd.mlib : bmd.$(SUFFIX) $(DOBJS) $(OBJS)
- $(F77) -o $(@F) $(CFLAGS) $^ $(LIBMLIB)
-
- bmc.mlib : bmc.$(SUFFIX) $(COBJS) $(OBJS)
- $(F77) -o $(@F) $(CFLAGS) $^ $(LIBMLIB)
-
- bmz.mlib : bmz.$(SUFFIX) $(ZOBJS) $(OBJS)
- $(F77) -o $(@F) $(CFLAGS) $^ $(LIBMLIB)
-
- bms.veclib : bms.$(SUFFIX) $(SOBJS)
- $(CC) -o $(@F) $(CFLAGS) $^ $(LIBVECLIB)
-
- bmd.veclib : bmd.$(SUFFIX) $(DOBJS)
- $(CC) -o $(@F) $(CFLAGS) $^ $(LIBVECLIB)
-
- bmc.veclib : bmc.$(SUFFIX) $(COBJS)
- $(CC) -o $(@F) $(CFLAGS) $^ $(LIBVECLIB)
-
- bmz.veclib : bmz.$(SUFFIX) $(ZOBJS)
- $(CC) -o $(@F) $(CFLAGS) $^ $(LIBVECLIB)
-
- bms.fuji : bms.$(SUFFIX) $(SOBJS)
- ifndef SMP
- fcc -KV9FMADD -SSL2 -o $(@F) $^
- else
- fcc -KV9FMADD -SSL2BLAMP -o $(@F) $^
- endif
-
- bmd.fuji : bmd.$(SUFFIX) $(DOBJS)
- ifndef SMP
- fcc -KV9FMADD -SSL2 -o $(@F) $^
- else
- fcc -KV9FMADD -SSL2BLAMP -o $(@F) $^
- endif
-
- bmc.fuji : bmc.$(SUFFIX) $(COBJS)
- ifndef SMP
- fcc -KV9FMADD -SSL2 -o $(@F) $^
- else
- fcc -KV9FMADD -SSL2BLAMP -o $(@F) $^
- endif
-
- bmz.fuji : bmz.$(SUFFIX) $(ZOBJS)
- ifndef SMP
- fcc -KV9FMADD -SSL2 -o $(@F) $^
- else
- fcc -KV9FMADD -SSL2BLAMP -o $(@F) $^
- endif
-
- bench: bench.$(SUFFIX) $(BLASOBJS) $(COMMONOBJS) $(OBJS) $(LIBS)
- $(CC) -o $(@F) $(CFLAGS) $^ $(EXTRALIB) $(CEXTRALIB)
-
- bench.$(SUFFIX): bench.c
- $(CC) -c -o $(@F) $(CFLAGS) $^
-
- bench_old: bench_old.$(SUFFIX) $(DBLASOBJS) $(COMMONOBJS) $(OBJS) $(LIBS)
- $(CC) -o $(@F) $(CFLAGS) $^ $(EXTRALIB) $(CEXTRALIB)
-
- kbench: kbench.$(SUFFIX) $(DBLASOBJS) $(COMMONOBJS) $(OBJS) $(LIBS)
- $(CC) -o $(@F) $(CFLAGS) $^ $(EXTRALIB) $(CEXTRALIB)
-
- prebench: prebench.$(SUFFIX) $(DBLASOBJS) $(COMMONOBJS) $(OBJS) $(LIBS)
- $(CC) -o $(@F) $(CFLAGS) $^ $(EXTRALIB) $(CEXTRALIB)
-
- kbench_rank_k: kbench_rank_k.$(SUFFIX) $(DBLASOBJS) $(COMMONOBJS) $(OBJS) $(LIBS)
- $(CC) -o $(@F) $(CFLAGS) $^ $(EXTRALIB) $(CEXTRALIB)
-
- smallbench: smallbench.$(SUFFIX) $(BLASOBJS) $(COMMONOBJS) $(OBJS) $(LIBS)
- $(CC) -o $(@F) $(CFLAGS) $^ $(EXTRALIB) $(CEXTRALIB)
-
- smallbench.mkl: smallbench.$(SUFFIX)
- $(CC) -o $(@F) $(CFLAGS) $^ $(LIBMKL) $(EXTRALIB) $(CEXTRALIB)
-
- bench.sun: bench.$(SUFFIX) $(OBJS)
- $(CC) -o $(@F) $(CFLAGS) $^ $(LIBSUNPERF) $(EXTRALIB) $(CEXTRALIB)
-
- bench.cxml: bench.$(SUFFIX) $(OBJS)
- $(CC) -o $(@F) $(CFLAGS) $^ $(LIBCXML)
-
- bench.atlas: bench.$(SUFFIX) $(OBJS)
- $(CC) -o $(@F) $(CFLAGS) $^ $(LIBATLAS)
-
- bench.essl: bench.$(SUFFIX) $(OBJS)
- $(CC) -o $(@F) $(CFLAGS) $^ $(LIBESSL) ../../level1/others/libmisc.$(LIBSUFFIX)
-
- bench.scsl: bench.$(SUFFIX) $(OBJS)
- $(CC) -o $(@F) $(CFLAGS) $^ $(LIBSCSL) $(EXTRALIB) $(CEXTRALIB)
-
- bench.acml: bench.$(SUFFIX) $(OBJS)
- $(CC) -static -o $(@F) $(CFLAGS) $^ $(LIBACML) $(EXTRALIB) $(CEXTRALIB)
-
- bench.flame: bench.$(SUFFIX) $(OBJS)
- $(CC) -o $(@F) $(CFLAGS) $^ $(LIBFLAME) $(EXTRALIB) $(CEXTRALIB)
-
- kbench.mkl: kbench.$(SUFFIX) $(OBJS)
- $(CC) -static -o $(@F) $(CFLAGS) $^ $(LIBMKL) $(EXTRALIB) $(CEXTRALIB)
-
- bench.mkl: bench.$(SUFFIX) $(OBJS)
- $(CC) -static -o $(@F) $(CFLAGS) $^ $(LIBMKL) $(EXTRALIB) $(CEXTRALIB)
-
- bench_old.mkl: bench_old.$(SUFFIX) $(OBJS)
- $(CC) -static -o $(@F) $(CFLAGS) $^ $(LIBMKL) $(EXTRALIB) $(CEXTRALIB)
-
- bench.mlib: bench.$(SUFFIX) $(OBJS)
- $(F77) -o $(@F) $(CFLAGS) $^ $(LIBMLIB)
-
- bench.veclib: bench.$(SUFFIX) $(OBJS)
- $(CC) -o $(@F) $(CFLAGS) $^ $(LIBVECLIB)
-
- params : params.$(SUFFIX) $(SBLASOBJS) $(COMMONOBJS) $(SOBJS) $(OBJS) $(LIBS)
- $(CC) -o $(@F) $(CFLAGS) $^ $(EXTRALIB) $(CEXTRALIB)
-
- paramd : paramd.$(SUFFIX) $(DBLASOBJS) $(COMMONOBJS) $(DOBJS) $(OBJS) $(LIBS)
- $(CC) -o $(@F) $(CFLAGS) $^ $(EXTRALIB) $(CEXTRALIB)
-
- paramq : paramq.$(SUFFIX) $(QBLASOBJS) $(COMMONOBJS) $(QOBJS) $(OBJS) $(LIBS)
- $(CC) -o $(@F) $(CFLAGS) $^ $(EXTRALIB) $(CEXTRALIB)
-
- paramc : paramc.$(SUFFIX) $(CBLASOBJS) $(COMMONOBJS) $(COBJS) $(OBJS) $(LIBS)
- $(CC) -o $(@F) $(CFLAGS) $^ $(EXTRALIB) $(CEXTRALIB)
-
- paramz : paramz.$(SUFFIX) $(ZBLASOBJS) $(COMMONOBJS) $(ZOBJS) $(OBJS) $(LIBS)
- $(CC) -o $(@F) $(CFLAGS) $^ $(EXTRALIB) $(CEXTRALIB)
-
- paramx : paramx.$(SUFFIX) $(XBLASOBJS) $(COMMONOBJS) $(XOBJS) $(OBJS) $(LIBS)
- $(CC) -o $(@F) $(CFLAGS) $^ $(EXTRALIB) $(CEXTRALIB)
-
- params-ex : params-ex.$(SUFFIX) $(SBLASOBJS) $(COMMONOBJS) $(SOBJS) $(OBJS) $(LIBS)
- $(CC) -o $(@F) $(CFLAGS) $^ $(EXTRALIB) $(CEXTRALIB)
-
- paramd-ex : paramd-ex.$(SUFFIX) $(DBLASOBJS) $(COMMONOBJS) $(DOBJS) $(OBJS) $(LIBS)
- $(CC) -o $(@F) $(CFLAGS) $^ $(EXTRALIB) $(CEXTRALIB)
-
- paramq-ex : paramq-ex.$(SUFFIX) $(QBLASOBJS) $(COMMONOBJS) $(QOBJS) $(OBJS) $(LIBS)
- $(CC) -o $(@F) $(CFLAGS) $^ $(EXTRALIB) $(CEXTRALIB)
-
- paramc-ex : paramc-ex.$(SUFFIX) $(CBLASOBJS) $(COMMONOBJS) $(COBJS) $(OBJS) $(LIBS)
- $(CC) -o $(@F) $(CFLAGS) $^ $(EXTRALIB) $(CEXTRALIB)
-
- paramz-ex : paramz-ex.$(SUFFIX) $(ZBLASOBJS) $(COMMONOBJS) $(ZOBJS) $(OBJS) $(LIBS)
- $(CC) -o $(@F) $(CFLAGS) $^ $(EXTRALIB) $(CEXTRALIB)
-
- paramx-ex : paramx-ex.$(SUFFIX) $(XBLASOBJS) $(COMMONOBJS) $(XOBJS) $(OBJS) $(LIBS)
- $(CC) -o $(@F) $(CFLAGS) $^ $(EXTRALIB) $(CEXTRALIB)
-
- params.atlas : params.$(SUFFIX) $(OBJS) $(SOBJS)
- $(CC) -o $(@F) $(CFLAGS) $^ $(LIBATLAS)
-
- paramd.atlas : paramd.$(SUFFIX) $(OBJS) $(DOBJS)
- $(CC) -o $(@F) $(CFLAGS) $^ $(LIBATLAS)
-
- paramc.atlas : paramc.$(SUFFIX) $(OBJS) $(COBJS)
- $(CC) -o $(@F) $(CFLAGS) $^ $(LIBATLAS)
-
- paramz.atlas : paramz.$(SUFFIX) $(OBJS) $(ZOBJS)
- $(CC) -o $(@F) $(CFLAGS) $^ $(LIBATLAS)
-
- params.sun : params.$(SUFFIX) $(OBJS) $(SOBJS)
- $(CC) -o $(@F) $(CFLAGS) $^ $(LIBSUNPERF)
-
- paramd.sun : paramd.$(SUFFIX) $(OBJS) $(DOBJS)
- $(CC) -o $(@F) $(CFLAGS) $^ $(LIBSUNPERF)
-
- paramc.sun : paramc.$(SUFFIX) $(OBJS) $(COBJS)
- $(CC) -o $(@F) $(CFLAGS) $^ $(LIBSUNPERF)
-
- paramz.sun : paramz.$(SUFFIX) $(OBJS) $(ZOBJS)
- $(CC) -o $(@F) $(CFLAGS) $^ $(LIBSUNPERF)
-
- params.essl : params.$(SUFFIX) $(OBJS) $(SOBJS)
- $(CC) -o $(@F) $(CFLAGS) $^ $(LIBESSL)
-
- paramd.essl : paramd.$(SUFFIX) $(OBJS) $(DOBJS)
- $(CC) -o $(@F) $(CFLAGS) $^ $(LIBESSL)
-
- paramc.essl : paramc.$(SUFFIX) $(OBJS) $(COBJS)
- $(CC) -o $(@F) $(CFLAGS) $^ $(LIBESSL)
-
- paramz.essl : paramz.$(SUFFIX) $(OBJS) $(ZOBJS)
- $(CC) -o $(@F) $(CFLAGS) $^ $(LIBESSL)
-
- params.mkl : params.$(SUFFIX) $(OBJS) $(SOBJS)
- $(CC) -o $(@F) $(CFLAGS) $^ $(LIBMKL)
-
- paramd.mkl : paramd.$(SUFFIX) $(OBJS) $(DOBJS)
- $(CC) -o $(@F) $(CFLAGS) $^ $(LIBMKL)
-
- paramc.mkl : paramc.$(SUFFIX) $(OBJS) $(COBJS)
- $(CC) -o $(@F) $(CFLAGS) $^ $(LIBMKL)
-
- paramz.mkl : paramz.$(SUFFIX) $(OBJS) $(ZOBJS)
- $(CC) -o $(@F) $(CFLAGS) $^ $(LIBMKL)
-
- params.acml : params.$(SUFFIX) $(OBJS) $(SOBJS)
- $(CC) -o $(@F) $(CFLAGS) $^ $(LIBACML)
-
- paramd.acml : paramd.$(SUFFIX) $(OBJS) $(DOBJS)
- $(CC) -o $(@F) $(CFLAGS) $^ $(LIBACML)
-
- paramc.acml : paramc.$(SUFFIX) $(OBJS) $(COBJS)
- $(CC) -o $(@F) $(CFLAGS) $^ $(LIBACML)
-
- paramz.acml : paramz.$(SUFFIX) $(OBJS) $(ZOBJS)
- $(CC) -o $(@F) $(CFLAGS) $^ $(LIBACML)
-
- params.flame : params.$(SUFFIX) $(OBJS) $(SOBJS)
- $(CC) -o $(@F) $(CFLAGS) $^ $(LIBFLAME) $(EXTRALIB) $(CEXTRALIB)
-
- paramd.flame : paramd.$(SUFFIX) $(OBJS) $(DOBJS)
- $(CC) -o $(@F) $(CFLAGS) $^ $(LIBFLAME) $(EXTRALIB) $(CEXTRALIB)
-
- paramc.flame : paramc.$(SUFFIX) $(OBJS) $(COBJS)
- $(CC) -o $(@F) $(CFLAGS) $^ $(LIBFLAME) $(EXTRALIB) $(CEXTRALIB)
-
- paramz.flame : paramz.$(SUFFIX) $(OBJS) $(ZOBJS)
- $(CC) -o $(@F) $(CFLAGS) $^ $(LIBFLAME) $(EXTRALIB) $(CEXTRALIB)
-
- params.$(SUFFIX):param.c $(TOPDIR)/../bench/bmcommon.h
- $(CC) $(CFLAGS) -UDOUBLE -UCOMPLEX -c $< -o $(@F)
-
- paramd.$(SUFFIX):param.c $(TOPDIR)/../bench/bmcommon.h
- $(CC) $(CFLAGS) -DDOUBLE -UCOMPLEX -c $< -o $(@F)
-
- paramq.$(SUFFIX):param.c $(TOPDIR)/../bench/bmcommon.h
- $(CC) $(CFLAGS) -DXDOUBLE -UCOMPLEX -c $< -o $(@F)
-
- paramc.$(SUFFIX):paramz.c $(TOPDIR)/../bench/bmcommon.h
- $(CC) $(CFLAGS) -UDOUBLE -DCOMPLEX -c $< -o $(@F)
-
- paramz.$(SUFFIX):paramz.c $(TOPDIR)/../bench/bmcommon.h
- $(CC) $(CFLAGS) -DDOUBLE -DCOMPLEX -c $< -o $(@F)
-
- paramx.$(SUFFIX):paramz.c $(TOPDIR)/../bench/bmcommon.h
- $(CC) $(CFLAGS) -DXDOUBLE -DCOMPLEX -c $< -o $(@F)
-
- params-ex.$(SUFFIX):param-ex.c $(TOPDIR)/../bench/bmcommon.h
- $(CC) $(CFLAGS) -UDOUBLE -UCOMPLEX -c $< -o $(@F)
-
- paramd-ex.$(SUFFIX):param-ex.c $(TOPDIR)/../bench/bmcommon.h
- $(CC) $(CFLAGS) -DDOUBLE -UCOMPLEX -c $< -o $(@F)
-
- paramq-ex.$(SUFFIX):param-ex.c $(TOPDIR)/../bench/bmcommon.h
- $(CC) $(CFLAGS) -DXDOUBLE -UCOMPLEX -c $< -o $(@F)
-
- paramc-ex.$(SUFFIX):paramz-ex.c $(TOPDIR)/../bench/bmcommon.h
- $(CC) $(CFLAGS) -UDOUBLE -DCOMPLEX -c $< -o $(@F)
-
- paramz-ex.$(SUFFIX):paramz-ex.c $(TOPDIR)/../bench/bmcommon.h
- $(CC) $(CFLAGS) -DDOUBLE -DCOMPLEX -c $< -o $(@F)
-
- paramx-ex.$(SUFFIX):paramz-ex.c $(TOPDIR)/../bench/bmcommon.h
- $(CC) $(CFLAGS) -DXDOUBLE -DCOMPLEX -c $< -o $(@F)
-
- gen_insn_flash.c :
- echo '#include <stdio.h>' > gen_insn_flash.c
- echo '#include <stdlib.h>' >> gen_insn_flash.c
- echo '#define ICACHE_SIZE ( 256 << 10)' >> gen_insn_flash.c
- echo 'int main(void){' >> gen_insn_flash.c
- echo 'int i;' >> gen_insn_flash.c
- echo '#ifdef __alpha' >> gen_insn_flash.c
- echo 'printf(".set noat;.set noreorder;\n");' >> gen_insn_flash.c
- echo 'printf(".arch ev6;.text;.align 5\n");' >> gen_insn_flash.c
- echo 'printf(".globl insn_flash\n");' >> gen_insn_flash.c
- echo 'printf(".ent insn_flash\n");' >> gen_insn_flash.c
- echo 'printf("insn_flash:\n");' >> gen_insn_flash.c
- echo 'for (i = 0; i < ICACHE_SIZE / 4; i++)' >> gen_insn_flash.c
- echo 'printf("br 1f\n 1:\n");' >> gen_insn_flash.c
- echo 'printf(".align 5;ret;.end insn_flash\n");'>> gen_insn_flash.c
- echo '#else' >> gen_insn_flash.c
- echo 'printf(".text;.align 32\n");' >> gen_insn_flash.c
- echo 'printf(".globl insn_flash\n");' >> gen_insn_flash.c
- echo 'printf("insn_flash:\n");' >> gen_insn_flash.c
- echo 'for (i = 0; i < ICACHE_SIZE / 2; i++)' >> gen_insn_flash.c
- echo 'printf("jmp 1f\n 1:\n");' >> gen_insn_flash.c
- echo 'printf(".align 32;ret\n");' >> gen_insn_flash.c
- echo '#endif' >> gen_insn_flash.c
- echo 'return 0;' >> gen_insn_flash.c
- echo '}' >> gen_insn_flash.c
-
- insn_flash.$(SUFFIX) : gen_insn_flash
- ./gen_insn_flash > temp.s
- $(AS) -o $(@F) temp.s
- rm -f temp.s
-
- dummy :
-
- clean ::
- @if test -d $(ARCH); then \
- (cd $(ARCH) && $(MAKE) clean) \
- fi
- @find . -name '*.o' | xargs rm -rf
- @rm -rf *.a *.s *.po *.obj *.i *.so core core.* gmon.out *.cso \
- *.csx *.is *~ *.exe *.flame *.pdb *.dwf \
- gen_insn_flash.c gen_insn_flash *.stackdump *.dll *.exp *.lib \
- *.pc *.pcl *.def *.i *.prof linktest.c \
- bms bmd bmc bmz bmq bmx \
- params paramd paramc paramz paramq paramx \
- params-ex paramd-ex paramc-ex paramz-ex paramq-ex paramx-ex \
- bench tpp kbench kbench2 \
- *.mkl *.sun *.acml *.cxml *.essl *.atlas *.scsl *.mlib *.veclib *.fuji
|