1 ifneq ($(C_COMPILER), PGI)
3 ifeq ($(C_COMPILER), CLANG)
6 ifneq (1, $(filter 1,$(GCCVERSIONGT4) $(ISCLANG)))
7 CCOMMON_OPT += -march=armv8-a
8 ifneq ($(F_COMPILER), NAG)
9 FCOMMON_OPT += -march=armv8-a
17 CCOMMON_OPT += -march=armv8-a
18 ifneq ($(F_COMPILER), NAG)
19 FCOMMON_OPT += -march=armv8-a
23 ifeq ($(CORE), CORTEXA53)
24 CCOMMON_OPT += -march=armv8-a -mtune=cortex-a53
25 ifneq ($(F_COMPILER), NAG)
26 FCOMMON_OPT += -march=armv8-a -mtune=cortex-a53
30 ifeq ($(CORE), CORTEXA57)
31 CCOMMON_OPT += -march=armv8-a -mtune=cortex-a57
32 ifneq ($(F_COMPILER), NAG)
33 FCOMMON_OPT += -march=armv8-a -mtune=cortex-a57
37 ifeq ($(CORE), CORTEXA72)
38 CCOMMON_OPT += -march=armv8-a -mtune=cortex-a72
39 ifneq ($(F_COMPILER), NAG)
40 FCOMMON_OPT += -march=armv8-a -mtune=cortex-a72
44 ifeq ($(CORE), CORTEXA73)
45 CCOMMON_OPT += -march=armv8-a -mtune=cortex-a73
46 ifneq ($(F_COMPILER), NAG)
47 FCOMMON_OPT += -march=armv8-a -mtune=cortex-a73
51 # Use a72 tunings because Neoverse-N1 is only available
53 ifeq ($(CORE), NEOVERSEN1)
54 ifeq (1, $(filter 1,$(GCCVERSIONGTEQ7) $(ISCLANG)))
55 ifeq ($(GCCVERSIONGTEQ9), 1)
56 CCOMMON_OPT += -march=armv8.2-a -mtune=neoverse-n1
57 ifneq ($(F_COMPILER), NAG)
58 FCOMMON_OPT += -march=armv8.2-a -mtune=neoverse-n1
61 CCOMMON_OPT += -march=armv8.2-a -mtune=cortex-a72
62 ifneq ($(F_COMPILER), NAG)
63 FCOMMON_OPT += -march=armv8.2-a -mtune=cortex-a72
67 CCOMMON_OPT += -march=armv8-a -mtune=cortex-a72
68 ifneq ($(F_COMPILER), NAG)
69 FCOMMON_OPT += -march=armv8-a -mtune=cortex-a72
74 # Use a53 tunings because a55 is only available in GCC>=8.1
75 ifeq ($(CORE), CORTEXA55)
76 ifeq (1, $(filter 1,$(GCCVERSIONGTEQ7) $(ISCLANG)))
77 ifeq ($(GCCVERSIONGTEQ8), 1)
78 CCOMMON_OPT += -march=armv8.2-a -mtune=cortex-a55
79 ifneq ($(F_COMPILER), NAG)
80 FCOMMON_OPT += -march=armv8.2-a -mtune=cortex-a55
83 CCOMMON_OPT += -march=armv8.2-a -mtune=cortex-a53
84 ifneq ($(F_COMPILER), NAG)
85 FCOMMON_OPT += -march=armv8.2-a -mtune=cortex-a53
89 CCOMMON_OPT += -march=armv8-a -mtune=cortex-a53
90 ifneq ($(F_COMPILER), NAG)
91 FCOMMON_OPT += -march=armv8-a -mtune=cortex-a53
96 ifeq ($(CORE), THUNDERX)
97 CCOMMON_OPT += -march=armv8-a -mtune=thunderx
98 ifneq ($(F_COMPILER), NAG)
99 FCOMMON_OPT += -march=armv8-a -mtune=thunderx
103 ifeq ($(CORE), FALKOR)
104 CCOMMON_OPT += -march=armv8-a -mtune=falkor
105 ifneq ($(F_COMPILER), NAG)
106 FCOMMON_OPT += -march=armv8-a -mtune=falkor
110 ifeq ($(CORE), THUNDERX2T99)
111 CCOMMON_OPT += -march=armv8.1-a -mtune=thunderx2t99
112 ifneq ($(F_COMPILER), NAG)
113 FCOMMON_OPT += -march=armv8.1-a -mtune=thunderx2t99
117 ifeq ($(CORE), THUNDERX3T110)
118 ifeq ($(GCCVERSIONGTEQ10), 1)
119 CCOMMON_OPT += -march=armv8.3-a -mtune=thunderx3t110
120 ifneq ($(F_COMPILER), NAG)
121 FCOMMON_OPT += -march=armv8.3-a -mtune=thunderx3t110
124 CCOMMON_OPT += -march=armv8.1-a -mtune=thunderx2t99
125 ifneq ($(F_COMPILER), NAG)
126 FCOMMON_OPT += -march=armv8.1-a -mtune=thunderx2t99
131 ifeq ($(CORE), VORTEX)
132 CCOMMON_OPT += -march=armv8.3-a
133 ifneq ($(F_COMPILER), NAG)
134 FCOMMON_OPT += -march=armv8.3-a
138 ifeq (1, $(filter 1,$(GCCVERSIONGTEQ9) $(ISCLANG)))
139 ifeq ($(CORE), TSV110)
140 CCOMMON_OPT += -march=armv8.2-a -mtune=tsv110
141 ifneq ($(F_COMPILER), NAG)
142 FCOMMON_OPT += -march=armv8.2-a -mtune=tsv110
147 ifeq ($(GCCVERSIONGTEQ9), 1)
148 ifeq ($(CORE), EMAG8180)
149 CCOMMON_OPT += -march=armv8-a -mtune=emag
150 ifneq ($(F_COMPILER), NAG)
151 FCOMMON_OPT += -march=armv8-a -mtune=emag
156 ifeq (1, $(filter 1,$(GCCVERSIONGTEQ11) $(ISCLANG)))
157 ifeq ($(CORE), A64FX)
158 CCOMMON_OPT += -march=armv8.2-a+sve -mtune=a64fx
159 ifneq ($(F_COMPILER), NAG)
160 FCOMMON_OPT += -march=armv8.2-a+sve -mtune=a64fx