blob: 55d54efd5dcd6e98773f17d0e9e7859b839ba7fd [file] [log] [blame]
Austin Schuh9a24b372018-01-28 16:12:29 -08001###################################################################################################
2# #
3# This file is part of BLASFEO. #
4# #
5# BLASFEO -- BLAS For Embedded Optimization. #
6# Copyright (C) 2016-2017 by Gianluca Frison. #
7# Developed at IMTEK (University of Freiburg) under the supervision of Moritz Diehl. #
8# All rights reserved. #
9# #
10# HPMPC is free software; you can redistribute it and/or #
11# modify it under the terms of the GNU Lesser General Public #
12# License as published by the Free Software Foundation; either #
13# version 2.1 of the License, or (at your option) any later version. #
14# #
15# HPMPC is distributed in the hope that it will be useful, #
16# but WITHOUT ANY WARRANTY; without even the implied warranty of #
17# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. #
18# See the GNU Lesser General Public License for more details. #
19# #
20# You should have received a copy of the GNU Lesser General Public #
21# License along with HPMPC; if not, write to the Free Software #
22# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA #
23# #
24# Author: Gianluca Frison, giaf (at) dtu.dk #
25# gianluca.frison (at) imtek.uni-freiburg.de #
26# #
27###################################################################################################
28
29include ../../Makefile.rule
30
31OBJS =
32
33ifeq ($(LA), HIGH_PERFORMANCE)
34
35ifeq ($(TARGET), X64_INTEL_HASWELL)
36OBJS += kernel_dgemv_4_lib4.o
37OBJS += kernel_sgemm_4x4_lib4.o kernel_sgemm_diag_lib4.o kernel_sgemv_4_lib4.o kernel_ssymv_4_lib4.o kernel_sgetrf_pivot_4_lib4.o
38endif
39
40ifeq ($(TARGET), X64_INTEL_SANDY_BRIDGE)
41OBJS += kernel_dgemv_4_lib4.o
42#OBJS += kernel_sgemm_4x4_lib4.o kernel_sgemm_diag_lib4.o kernel_sgemv_4_lib4.o kernel_ssymv_4_lib4.o kernel_sgetrf_pivot_4_lib4.o
43OBJS +=
44endif
45
46ifeq ($(TARGET), X64_INTEL_CORE)
47OBJS += kernel_dgemm_4x4_lib4.o kernel_dgemm_diag_lib4.o kernel_dgemv_4_lib4.o kernel_dsymv_4_lib4.o kernel_dgetrf_pivot_4_lib4.o kernel_dgeqrf_4_lib4.o
48OBJS += kernel_sgemm_4x4_lib4.o kernel_sgemm_diag_lib4.o kernel_sgemv_4_lib4.o kernel_ssymv_4_lib4.o kernel_sgetrf_pivot_4_lib4.o kernel_sgecp_lib4.o
49endif
50
51ifeq ($(TARGET), X64_AMD_BULLDOZER)
52OBJS += kernel_dgemm_4x4_lib4.o kernel_dgemm_diag_lib4.o kernel_dgemv_4_lib4.o kernel_dsymv_4_lib4.o kernel_dgetrf_pivot_4_lib4.o kernel_dgeqrf_4_lib4.o
53OBJS += kernel_sgemm_4x4_lib4.o kernel_sgemm_diag_lib4.o kernel_sgemv_4_lib4.o kernel_ssymv_4_lib4.o kernel_sgetrf_pivot_4_lib4.o kernel_sgecp_lib4.o
54endif
55
56ifeq ($(TARGET), ARMV8A_ARM_CORTEX_A57)
57OBJS += kernel_dgemm_4x4_lib4.o kernel_dgemm_diag_lib4.o kernel_dgemv_4_lib4.o kernel_dsymv_4_lib4.o kernel_dgetrf_pivot_4_lib4.o kernel_dgeqrf_4_lib4.o
58OBJS += kernel_sgemm_4x4_lib4.o kernel_sgemm_diag_lib4.o kernel_sgemv_4_lib4.o kernel_ssymv_4_lib4.o kernel_sgetrf_pivot_4_lib4.o kernel_sgecp_lib4.o
59endif
60
61ifeq ($(TARGET), ARMV7A_ARM_CORTEX_A15)
62OBJS += kernel_dgemm_4x4_lib4.o kernel_dgemm_diag_lib4.o kernel_dgemv_4_lib4.o kernel_dsymv_4_lib4.o kernel_dgetrf_pivot_4_lib4.o kernel_dgeqrf_4_lib4.o
63OBJS += kernel_sgemm_4x4_lib4.o kernel_sgemm_diag_lib4.o kernel_sgemv_4_lib4.o kernel_ssymv_4_lib4.o kernel_sgetrf_pivot_4_lib4.o kernel_sgecp_lib4.o
64endif
65
66ifeq ($(TARGET), GENERIC)
67OBJS += kernel_dgemm_4x4_lib4.o kernel_dgemm_diag_lib4.o kernel_dgemv_4_lib4.o kernel_dsymv_4_lib4.o kernel_dgetrf_pivot_4_lib4.o kernel_dgeqrf_4_lib4.o
68OBJS += kernel_sgemm_4x4_lib4.o kernel_sgemm_diag_lib4.o kernel_sgemv_4_lib4.o kernel_ssymv_4_lib4.o kernel_sgetrf_pivot_4_lib4.o kernel_sgecp_lib4.o
69endif
70
71else # LA_REFERENCE | LA_BLAS
72
73endif # LA choice
74
75obj: $(OBJS)
76
77clean:
78 rm -f *.o
79 rm -f *.s
80