Update Makefile.arm64
[platform/upstream/openblas.git] / Makefile.arm64
1 ifneq ($(C_COMPILER), PGI)
2 ifeq ($(CORE), ARMV8)
3 CCOMMON_OPT += -march=armv8-a
4 ifneq ($(F_COMPILER), NAG)
5 FCOMMON_OPT += -march=armv8-a
6 endif
7 endif
8
9 ifeq ($(CORE), CORTEXA53)
10 CCOMMON_OPT += -march=armv8-a -mtune=cortex-a53
11 ifneq ($(F_COMPILER), NAG)
12 FCOMMON_OPT += -march=armv8-a -mtune=cortex-a53
13 endif
14 endif
15
16 ifeq ($(CORE), CORTEXA57)
17 CCOMMON_OPT += -march=armv8-a -mtune=cortex-a57
18 ifneq ($(F_COMPILER), NAG)
19 FCOMMON_OPT += -march=armv8-a -mtune=cortex-a57
20 endif
21 endif
22
23 ifeq ($(CORE), CORTEXA72)
24 CCOMMON_OPT += -march=armv8-a -mtune=cortex-a72
25 ifneq ($(F_COMPILER), NAG)
26 FCOMMON_OPT += -march=armv8-a -mtune=cortex-a72
27 endif
28 endif
29
30 ifeq ($(CORE), CORTEXA73)
31 CCOMMON_OPT += -march=armv8-a -mtune=cortex-a73
32 ifneq ($(F_COMPILER), NAG)
33 FCOMMON_OPT += -march=armv8-a -mtune=cortex-a73
34 endif
35 endif
36
37 # Use a72 tunings because Neoverse-N1 is only available
38 # in GCC>=9
39 ifeq ($(CORE), NEOVERSEN1)
40 ifeq ($(GCCVERSIONGTEQ7), 1)
41 ifeq ($(GCCVERSIONGTEQ9), 1)
42 CCOMMON_OPT += -march=armv8.2-a -mtune=neoverse-n1
43 ifneq ($(F_COMPILER), NAG)
44 FCOMMON_OPT += -march=armv8.2-a -mtune=neoverse-n1
45 endif
46 else
47 CCOMMON_OPT += -march=armv8.2-a -mtune=cortex-a72
48 ifneq ($(F_COMPILER), NAG)
49 FCOMMON_OPT += -march=armv8.2-a -mtune=cortex-a72
50 endif
51 endif
52 else
53 CCOMMON_OPT += -march=armv8-a -mtune=cortex-a72
54 ifneq ($(F_COMPILER), NAG)
55 FCOMMON_OPT += -march=armv8-a -mtune=cortex-a72
56 endif
57 endif
58 endif
59
60 ifeq ($(CORE), THUNDERX)
61 CCOMMON_OPT += -march=armv8-a -mtune=thunderx
62 ifneq ($(F_COMPILER), NAG)
63 FCOMMON_OPT += -march=armv8-a -mtune=thunderx
64 endif
65 endif
66
67 ifeq ($(CORE), FALKOR)
68 CCOMMON_OPT += -march=armv8-a -mtune=falkor
69 ifneq ($(F_COMPILER), NAG)
70 FCOMMON_OPT += -march=armv8-a -mtune=falkor
71 endif
72 endif
73
74 ifeq ($(CORE), THUNDERX2T99)
75 CCOMMON_OPT += -march=armv8.1-a -mtune=thunderx2t99
76 ifneq ($(F_COMPILER), NAG)
77 FCOMMON_OPT += -march=armv8.1-a -mtune=thunderx2t99
78 endif
79 endif
80
81 ifeq ($(CORE), THUNDERX3T110)
82 ifeq ($(GCCVERSIONGTEQ10), 1)
83 CCOMMON_OPT += -march=armv8.3-a -mtune=thunderx3t110
84 ifneq ($(F_COMPILER), NAG)
85 FCOMMON_OPT += -march=armv8.3-a -mtune=thunderx3t110
86 endif
87 else
88 CCOMMON_OPT += -march=armv8.1-a -mtune=thunderx2t99
89 ifneq ($(F_COMPILER), NAG)
90 FCOMMON_OPT += -march=armv8.1-a -mtune=thunderx2t99
91 endif
92 endif
93 endif
94
95 ifeq ($(CORE), VORTEX)
96 CCOMMON_OPT += -march=armv8.3-a
97 ifneq ($(F_COMPILER), NAG)
98 FCOMMON_OPT += -march=armv8.3-a
99 endif
100 endif
101
102 ifeq ($(GCCVERSIONGTEQ9), 1)
103 ifeq ($(CORE), TSV110)
104 CCOMMON_OPT += -march=armv8.2-a -mtune=tsv110
105 ifneq ($(F_COMPILER), NAG)
106 FCOMMON_OPT += -march=armv8.2-a -mtune=tsv110
107 endif
108 endif
109 endif
110
111 ifeq ($(GCCVERSIONGTEQ9), 1)
112 ifeq ($(CORE), EMAG8180)
113 CCOMMON_OPT += -march=armv8-a -mtune=emag
114 ifneq ($(F_COMPILER), NAG)
115 FCOMMON_OPT += -march=armv8-a -mtune=emag
116 endif
117 endif
118 endif
119 endif