]> git.ipfire.org Git - thirdparty/gcc.git/blame - gcc/config/arm/arm-cpus.in
Remove aarch32 support for falkor/qdf24xx, not in released hardware.
[thirdparty/gcc.git] / gcc / config / arm / arm-cpus.in
CommitLineData
a92ffb3e
RE
1# CPU, FPU and architecture specifications for ARM.
2#
3# Copyright (C) 2011-2017 Free Software Foundation, Inc.
4#
5# This file is part of GCC.
6#
7# GCC is free software; you can redistribute it and/or modify it under
8# the terms of the GNU General Public License as published by the Free
9# Software Foundation; either version 3, or (at your option) any later
10# version.
11#
12# GCC is distributed in the hope that it will be useful, but WITHOUT ANY
13# WARRANTY; without even the implied warranty of MERCHANTABILITY or
14# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
15# for more details.
16#
17# You should have received a copy of the GNU General Public License
18# along with GCC; see the file COPYING3. If not see
19# <http://www.gnu.org/licenses/>.
20
21# This file describes all the various CPUs, FPUs and architectures supported
22# by the compiler. It is pre-processed by parsecpu.awk for a number of
23# purposes.
24#
25# The general form is a sequence of begin..end blocks with the following
26# syntax:
27# begin <object-type> <name>
28# attribute-statement*
29# end <object-type> <name>
30#
31# where object type is one of "cpu" "arch" "fpu". Each object type has
32# a specific set of permitted attributes, some of which are optional; further
33# details can be found below.
34#
35# Some objects cross-reference other objects by name. Objects are permitted
36# in any order and it is not necessary to place a cross-referenced object
37# earlier in the file.
38#
39# The object names for cpu, arch and fpu objects are used for the public option
40# names in the final compiler. The order within each group is preserved and
41# forms the order for the list within the compiler.
42
43# Architecture entries
44# format:
45# begin arch <name>
46# tune for <cpu>
47# [tune flags <list>]
48# base <name>
49# isa <isa-flags-list>
50# end arch <name>
51#
52
53begin arch armv2
54 tune for arm2
55 tune flags CO_PROC NO_MODE32
56 base 2
57 isa ARMv2 bit_mode26
58end arch armv2
59
60begin arch armv2a
61 tune for arm2
62 tune flags CO_PROC NO_MODE32
63 base 2
64 isa ARMv2 bit_mode26
65end arch armv2a
66
67begin arch armv3
68 tune for arm6
69 tune flags CO_PROC
70 base 3
71 isa ARMv3 bit_mode26
72end arch armv3
73
74begin arch armv3m
75 tune for arm7m
76 tune flags CO_PROC
77 base 3M
78 isa ARMv3m bit_mode26
79end arch armv3m
80
81begin arch armv4
82 tune for arm7tdmi
83 tune flags CO_PROC
84 base 4
85 isa ARMv4 bit_mode26
86end arch armv4
87
88# Strictly, bit_mode26 is a permitted option for v4t, but there are no
89# implementations that support it, so we will leave it out for now.
90begin arch armv4t
91 tune for arm7tdmi
92 tune flags CO_PROC
93 base 4T
94 isa ARMv4t
95end arch armv4t
96
97begin arch armv5
98 tune for arm10tdmi
99 tune flags CO_PROC
100 base 5
101 isa ARMv5
102end arch armv5
103
104begin arch armv5t
105 tune for arm10tdmi
106 tune flags CO_PROC
107 base 5T
108 isa ARMv5t
109end arch armv5t
110
111begin arch armv5e
112 tune for arm1026ej-s
113 tune flags CO_PROC
114 base 5E
115 isa ARMv5e
116end arch armv5e
117
118begin arch armv5te
119 tune for arm1026ej-s
120 tune flags CO_PROC
121 base 5TE
122 isa ARMv5te
123end arch armv5te
124
125begin arch armv5tej
126 tune for arm1026ej-s
127 tune flags CO_PROC
128 base 5TEJ
129 isa ARMv5tej
130end arch armv5tej
131
132begin arch armv6
133 tune for arm1136j-s
134 tune flags CO_PROC
135 base 6
136 isa ARMv6
137end arch armv6
138
139begin arch armv6j
140 tune for arm1136j-s
141 tune flags CO_PROC
142 base 6J
143 isa ARMv6j
144end arch armv6j
145
146begin arch armv6k
147 tune for mpcore
148 tune flags CO_PROC
149 base 6K
150 isa ARMv6k
151end arch armv6k
152
153begin arch armv6z
154 tune for arm1176jz-s
155 tune flags CO_PROC
156 base 6Z
157 isa ARMv6z
158end arch armv6z
159
160begin arch armv6kz
161 tune for arm1176jz-s
162 tune flags CO_PROC
163 base 6KZ
164 isa ARMv6kz
165end arch armv6kz
166
167begin arch armv6zk
168 tune for arm1176jz-s
169 tune flags CO_PROC
170 base 6KZ
171 isa ARMv6kz
172end arch armv6zk
173
174begin arch armv6t2
175 tune for arm1156t2-s
176 tune flags CO_PROC
177 base 6T2
178 isa ARMv6t2
179end arch armv6t2
180
181begin arch armv6-m
182 tune for cortex-m1
183 base 6M
184 isa ARMv6m
185end arch armv6-m
186
187begin arch armv6s-m
188 tune for cortex-m1
189 base 6M
190 isa ARMv6m
191end arch armv6s-m
192
193begin arch armv7
194 tune for cortex-a8
195 tune flags CO_PROC
196 base 7
197 isa ARMv7
198end arch armv7
199
200begin arch armv7-a
201 tune for cortex-a8
202 tune flags CO_PROC
203 base 7A
204 isa ARMv7a
205end arch armv7-a
206
207begin arch armv7ve
208 tune for cortex-a8
209 tune flags CO_PROC
210 base 7A
211 isa ARMv7ve
212end arch armv7ve
213
214begin arch armv7-r
215 tune for cortex-r4
216 tune flags CO_PROC
217 base 7R
218 isa ARMv7r
219end arch armv7-r
220
221begin arch armv7-m
222 tune for cortex-m3
223 tune flags CO_PROC
224 base 7M
225 isa ARMv7m
226end arch armv7-m
227
228begin arch armv7e-m
229 tune for cortex-m4
230 tune flags CO_PROC
231 base 7EM
232 isa ARMv7em
233end arch armv7e-m
234
235begin arch armv8-a
236 tune for cortex-a53
237 tune flags CO_PROC
238 base 8A
239 isa ARMv8a
240end arch armv8-a
241
242begin arch armv8-a+crc
243 tune for cortex-a53
244 tune flags CO_PROC
245 base 8A
246 isa ARMv8a bit_crc32
247end arch armv8-a+crc
248
249begin arch armv8.1-a
250 tune for cortex-a53
251 tune flags CO_PROC
252 base 8A
253 isa ARMv8_1a
254end arch armv8.1-a
255
256begin arch armv8.2-a
257 tune for cortex-a53
258 tune flags CO_PROC
259 base 8A
260 isa ARMv8_2a
261end arch armv8.2-a
262
263begin arch armv8.2-a+fp16
264 tune for cortex-a53
265 tune flags CO_PROC
266 base 8A
267 isa ARMv8_2a bit_fp16
268end arch armv8.2-a+fp16
269
270begin arch armv8-m.base
271 tune for cortex-m23
272 base 8M_BASE
273 isa ARMv8m_base
274end arch armv8-m.base
275
276begin arch armv8-m.main
277 tune for cortex-m7
278 tune flags CO_PROC
279 base 8M_MAIN
280 isa ARMv8m_main
281end arch armv8-m.main
282
283begin arch armv8-m.main+dsp
284 tune for cortex-m33
285 tune flags CO_PROC
286 base 8M_MAIN
287 isa ARMv8m_main bit_ARMv7em
288end arch armv8-m.main+dsp
289
290begin arch iwmmxt
291 tune for iwmmxt
292 tune flags LDSCHED STRONG XSCALE
293 base 5TE
294 isa ARMv5te bit_xscale bit_iwmmxt
295end arch iwmmxt
296
297begin arch iwmmxt2
298 tune for iwmmxt2
299 tune flags LDSCHED STRONG XSCALE
300 base 5TE
301 isa ARMv5te bit_xscale bit_iwmmxt bit_iwmmxt2
302end arch iwmmxt2
303
304# CPU entries
305# format:
306# begin cpu <name>
307# [cname <c-compatible-name>]
308# [tune for <cpu-name>]
309# [tune flags <list>]
310# architecture <name>
311# [fpu <name>]
312# [isa <additional-isa-flags-list>]
313# [costs <name>]
314# end cpu <name>
315#
316# If omitted, cname is formed from transforming the cpuname to convert
317# non-valid punctuation characters to '_'.
318# If specified, tune for specifies a CPU target to use for tuning this core.
319# isa flags are appended to those defined by the architecture.
320
321
322# V2/V2A Architecture Processors
323begin cpu arm2
324 tune flags CO_PROC NO_MODE32
325 architecture armv2
326 costs slowmul
327end cpu arm2
328
329begin cpu arm250
330 tune flags CO_PROC NO_MODE32
331 architecture armv2
332 costs slowmul
333end cpu arm250
334
335begin cpu arm3
336 tune flags CO_PROC NO_MODE32
337 architecture armv2
338 costs slowmul
339end cpu arm3
340
341
342# V3 Architecture Processors
343begin cpu arm6
344 tune flags CO_PROC
345 architecture armv3
346 costs slowmul
347end cpu arm6
348
349begin cpu arm60
350 tune flags CO_PROC
351 architecture armv3
352 costs slowmul
353end cpu arm60
354
355begin cpu arm600
356 tune flags CO_PROC WBUF
357 architecture armv3
358 costs slowmul
359end cpu arm600
360
361begin cpu arm610
362 tune flags WBUF
363 architecture armv3
364 costs slowmul
365end cpu arm610
366
367begin cpu arm620
368 tune flags CO_PROC WBUF
369 architecture armv3
370 costs slowmul
371end cpu arm620
372
373begin cpu arm7
374 tune flags CO_PROC
375 architecture armv3
376 costs slowmul
377end cpu arm7
378
379begin cpu arm7d
380 tune flags CO_PROC
381 architecture armv3
382 costs slowmul
383end cpu arm7d
384
385begin cpu arm7di
386 tune flags CO_PROC
387 architecture armv3
388 costs slowmul
389end cpu arm7di
390
391begin cpu arm70
392 tune flags CO_PROC
393 architecture armv3
394 costs slowmul
395end cpu arm70
396
397begin cpu arm700
398 tune flags CO_PROC WBUF
399 architecture armv3
400 costs slowmul
401end cpu arm700
402
403begin cpu arm700i
404 tune flags CO_PROC WBUF
405 architecture armv3
406 costs slowmul
407end cpu arm700i
408
409begin cpu arm710
410 tune flags WBUF
411 architecture armv3
412 costs slowmul
413end cpu arm710
414
415begin cpu arm720
416 tune flags WBUF
417 architecture armv3
418 costs slowmul
419end cpu arm720
420
421begin cpu arm710c
422 tune flags WBUF
423 architecture armv3
424 costs slowmul
425end cpu arm710c
426
427begin cpu arm7100
428 tune flags WBUF
429 architecture armv3
430 costs slowmul
431end cpu arm7100
432
433begin cpu arm7500
434 tune flags WBUF
435 architecture armv3
436 costs slowmul
437end cpu arm7500
438
439# Doesn't have an external co-proc, but does have embedded FPA
440# (the FPA part is no-longer supported).
441begin cpu arm7500fe
442 tune flags CO_PROC WBUF
443 architecture armv3
444 costs slowmul
445end cpu arm7500fe
446
447
448# V3M Architecture Processors
449# arm7m doesn't exist on its own, but only with "D", (and "I"), but
450# those don't alter the code, so arm7m is sometimes used.
451begin cpu arm7m
452 tune flags CO_PROC
453 architecture armv3m
454 costs fastmul
455end cpu arm7m
456
457begin cpu arm7dm
458 tune flags CO_PROC
459 architecture armv3m
460 costs fastmul
461end cpu arm7dm
462
463begin cpu arm7dmi
464 tune flags CO_PROC
465 architecture armv3m
466 costs fastmul
467end cpu arm7dmi
468
469
470# V4 Architecture Processors
471begin cpu arm8
472 tune flags LDSCHED
473 architecture armv4
474 costs fastmul
475end cpu arm8
476
477begin cpu arm810
478 tune flags LDSCHED
479 architecture armv4
480 costs fastmul
481end cpu arm810
482
483begin cpu strongarm
484 tune flags LDSCHED STRONG
485 architecture armv4
486 costs strongarm
487end cpu strongarm
488
489begin cpu strongarm110
490 tune flags LDSCHED STRONG
491 architecture armv4
492 costs strongarm
493end cpu strongarm110
494
495begin cpu strongarm1100
496 tune flags LDSCHED STRONG
497 architecture armv4
498 costs strongarm
499end cpu strongarm1100
500
501begin cpu strongarm1110
502 tune flags LDSCHED STRONG
503 architecture armv4
504 costs strongarm
505end cpu strongarm1110
506
507begin cpu fa526
508 tune flags LDSCHED
509 architecture armv4
510 costs fastmul
511end cpu fa526
512
513begin cpu fa626
514 tune flags LDSCHED
515 architecture armv4
516 costs fastmul
517end cpu fa626
518
519
520# V4T Architecture Processors
521begin cpu arm7tdmi
522 tune flags CO_PROC
523 architecture armv4t
524 costs fastmul
525end cpu arm7tdmi
526
527begin cpu arm7tdmi-s
528 cname arm7tdmis
529 tune flags CO_PROC
530 architecture armv4t
531 costs fastmul
532end cpu arm7tdmi-s
533
534begin cpu arm710t
535 tune flags WBUF
536 architecture armv4t
537 costs fastmul
538end cpu arm710t
539
540begin cpu arm720t
541 tune flags WBUF
542 architecture armv4t
543 costs fastmul
544end cpu arm720t
545
546begin cpu arm740t
547 tune flags WBUF
548 architecture armv4t
549 costs fastmul
550end cpu arm740t
551
552begin cpu arm9
553 tune flags LDSCHED
554 architecture armv4t
555 costs fastmul
556end cpu arm9
557
558begin cpu arm9tdmi
559 tune flags LDSCHED
560 architecture armv4t
561 costs fastmul
562end cpu arm9tdmi
563
564begin cpu arm920
565 tune flags LDSCHED
566 architecture armv4t
567 costs fastmul
568end cpu arm920
569
570begin cpu arm920t
571 tune flags LDSCHED
572 architecture armv4t
573 costs fastmul
574end cpu arm920t
575
576begin cpu arm922t
577 tune flags LDSCHED
578 architecture armv4t
579 costs fastmul
580end cpu arm922t
581
582begin cpu arm940t
583 tune flags LDSCHED
584 architecture armv4t
585 costs fastmul
586end cpu arm940t
587
588begin cpu ep9312
589 tune flags LDSCHED
590 architecture armv4t
591 costs fastmul
592end cpu ep9312
593
594
595# V5T Architecture Processors
596begin cpu arm10tdmi
597 tune flags LDSCHED
598 architecture armv5t
599 costs fastmul
600end cpu arm10tdmi
601
602begin cpu arm1020t
603 tune flags LDSCHED
604 architecture armv5t
605 costs fastmul
606end cpu arm1020t
607
608
609# V5TE Architecture Processors
610begin cpu arm9e
611 tune flags LDSCHED
612 architecture armv5te
613 costs 9e
614end cpu arm9e
615
616begin cpu arm946e-s
617 cname arm946es
618 tune flags LDSCHED
619 architecture armv5te
620 costs 9e
621end cpu arm946e-s
622
623begin cpu arm966e-s
624 cname arm966es
625 tune flags LDSCHED
626 architecture armv5te
627 costs 9e
628end cpu arm966e-s
629
630begin cpu arm968e-s
631 cname arm968es
632 tune flags LDSCHED
633 architecture armv5te
634 costs 9e
635end cpu arm968e-s
636
637begin cpu arm10e
638 tune flags LDSCHED
639 architecture armv5te
640 costs fastmul
641end cpu arm10e
642
643begin cpu arm1020e
644 tune flags LDSCHED
645 architecture armv5te
646 costs fastmul
647end cpu arm1020e
648
649begin cpu arm1022e
650 tune flags LDSCHED
651 architecture armv5te
652 costs fastmul
653end cpu arm1022e
654
655begin cpu xscale
656 tune flags LDSCHED XSCALE
657 architecture armv5te
658 isa bit_xscale
659 costs xscale
660end cpu xscale
661
662begin cpu iwmmxt
663 tune flags LDSCHED XSCALE
664 architecture iwmmxt
665 costs xscale
666end cpu iwmmxt
667
668begin cpu iwmmxt2
669 tune flags LDSCHED XSCALE
670 architecture iwmmxt2
671 costs xscale
672end cpu iwmmxt2
673
674begin cpu fa606te
675 tune flags LDSCHED
676 architecture armv5te
677 costs 9e
678end cpu fa606te
679
680begin cpu fa626te
681 tune flags LDSCHED
682 architecture armv5te
683 costs 9e
684end cpu fa626te
685
686begin cpu fmp626
687 tune flags LDSCHED
688 architecture armv5te
689 costs 9e
690end cpu fmp626
691
692begin cpu fa726te
693 tune flags LDSCHED
694 architecture armv5te
695 costs fa726te
696end cpu fa726te
697
698
699# V5TEJ Architecture Processors
700begin cpu arm926ej-s
701 cname arm926ejs
702 tune flags LDSCHED
703 architecture armv5tej
704 costs 9e
705end cpu arm926ej-s
706
707begin cpu arm1026ej-s
708 cname arm1026ejs
709 tune flags LDSCHED
710 architecture armv5tej
711 costs 9e
712end cpu arm1026ej-s
713
714
715# V6 Architecture Processors
716begin cpu arm1136j-s
717 cname arm1136js
718 tune flags LDSCHED
719 architecture armv6j
720 costs 9e
721end cpu arm1136j-s
722
723begin cpu arm1136jf-s
724 cname arm1136jfs
725 tune flags LDSCHED
726 architecture armv6j
727 fpu vfpv2
728 costs 9e
729end cpu arm1136jf-s
730
731begin cpu arm1176jz-s
732 cname arm1176jzs
733 tune flags LDSCHED
734 architecture armv6kz
735 costs 9e
736end cpu arm1176jz-s
737
738begin cpu arm1176jzf-s
739 cname arm1176jzfs
740 tune flags LDSCHED
741 architecture armv6kz
742 fpu vfpv2
743 costs 9e
744end cpu arm1176jzf-s
745
746begin cpu mpcorenovfp
747 tune flags LDSCHED
748 architecture armv6k
749 costs 9e
750end cpu mpcorenovfp
751
752begin cpu mpcore
753 tune flags LDSCHED
754 architecture armv6k
755 fpu vfpv2
756 costs 9e
757end cpu mpcore
758
759begin cpu arm1156t2-s
760 cname arm1156t2s
761 tune flags LDSCHED
762 architecture armv6t2
763 costs v6t2
764end cpu arm1156t2-s
765
766begin cpu arm1156t2f-s
767 cname arm1156t2fs
768 tune flags LDSCHED
769 architecture armv6t2
770 fpu vfpv2
771 costs v6t2
772end cpu arm1156t2f-s
773
774
775# V6M Architecture Processors
776begin cpu cortex-m1
777 cname cortexm1
778 tune flags LDSCHED
779 architecture armv6-m
780 costs v6m
781end cpu cortex-m1
782
783begin cpu cortex-m0
784 cname cortexm0
785 tune flags LDSCHED
786 architecture armv6-m
787 costs v6m
788end cpu cortex-m0
789
790begin cpu cortex-m0plus
791 cname cortexm0plus
792 tune flags LDSCHED
793 architecture armv6-m
794 costs v6m
795end cpu cortex-m0plus
796
797
798# V6M Architecture Processors for small-multiply implementations.
799begin cpu cortex-m1.small-multiply
800 cname cortexm1smallmultiply
801 tune for cortex-m1
802 tune flags LDSCHED SMALLMUL
803 architecture armv6-m
804 costs v6m
805end cpu cortex-m1.small-multiply
806
807begin cpu cortex-m0.small-multiply
808 cname cortexm0smallmultiply
809 tune for cortex-m0
810 tune flags LDSCHED SMALLMUL
811 architecture armv6-m
812 costs v6m
813end cpu cortex-m0.small-multiply
814
815begin cpu cortex-m0plus.small-multiply
816 cname cortexm0plussmallmultiply
48c0758a 817 tune for cortex-m0plus
a92ffb3e
RE
818 tune flags LDSCHED SMALLMUL
819 architecture armv6-m
820 costs v6m
821end cpu cortex-m0plus.small-multiply
822
823
824# V7 Architecture Processors
825begin cpu generic-armv7-a
826 cname genericv7a
827 tune flags LDSCHED
828 architecture armv7-a
829 costs cortex
830end cpu generic-armv7-a
831
832begin cpu cortex-a5
833 cname cortexa5
834 tune flags LDSCHED
835 architecture armv7-a
836 costs cortex_a5
837end cpu cortex-a5
838
839begin cpu cortex-a7
840 cname cortexa7
841 tune flags LDSCHED
842 architecture armv7ve
843 costs cortex_a7
844end cpu cortex-a7
845
846begin cpu cortex-a8
847 cname cortexa8
848 tune flags LDSCHED
849 architecture armv7-a
850 costs cortex_a8
851end cpu cortex-a8
852
853begin cpu cortex-a9
854 cname cortexa9
855 tune flags LDSCHED
856 architecture armv7-a
857 costs cortex_a9
858end cpu cortex-a9
859
860begin cpu cortex-a12
861 cname cortexa12
862 tune for cortex-a17
863 tune flags LDSCHED
864 architecture armv7ve
865 costs cortex_a12
866end cpu cortex-a12
867
868begin cpu cortex-a15
869 cname cortexa15
870 tune flags LDSCHED
871 architecture armv7ve
872 costs cortex_a15
873end cpu cortex-a15
874
875begin cpu cortex-a17
876 cname cortexa17
877 tune flags LDSCHED
878 architecture armv7ve
879 costs cortex_a12
880end cpu cortex-a17
881
882begin cpu cortex-r4
883 cname cortexr4
884 tune flags LDSCHED
885 architecture armv7-r
886 costs cortex
887end cpu cortex-r4
888
889begin cpu cortex-r4f
890 cname cortexr4f
891 tune flags LDSCHED
892 architecture armv7-r
893 costs cortex
894end cpu cortex-r4f
895
896begin cpu cortex-r5
897 cname cortexr5
898 tune flags LDSCHED
899 architecture armv7-r
900 isa bit_adiv
901 costs cortex
902end cpu cortex-r5
903
904begin cpu cortex-r7
905 cname cortexr7
906 tune flags LDSCHED
907 architecture armv7-r
908 isa bit_adiv
909 costs cortex
910end cpu cortex-r7
911
912begin cpu cortex-r8
913 cname cortexr8
914 tune for cortex-r7
915 tune flags LDSCHED
916 architecture armv7-r
917 isa bit_adiv
918 costs cortex
919end cpu cortex-r8
920
921begin cpu cortex-m7
922 cname cortexm7
923 tune flags LDSCHED
924 architecture armv7e-m
925 isa quirk_no_volatile_ce
926 costs cortex_m7
927end cpu cortex-m7
928
929begin cpu cortex-m4
930 cname cortexm4
931 tune flags LDSCHED
932 architecture armv7e-m
933 costs v7m
934end cpu cortex-m4
935
936begin cpu cortex-m3
937 cname cortexm3
938 tune flags LDSCHED
939 architecture armv7-m
940 isa quirk_cm3_ldrd
941 costs v7m
942end cpu cortex-m3
943
944begin cpu marvell-pj4
945 tune flags LDSCHED
946 architecture armv7-a
947 costs marvell_pj4
948end cpu marvell-pj4
949
950
951# V7 big.LITTLE implementations
952begin cpu cortex-a15.cortex-a7
953 cname cortexa15cortexa7
954 tune for cortex-a7
955 tune flags LDSCHED
956 architecture armv7ve
957 costs cortex_a15
958end cpu cortex-a15.cortex-a7
959
960begin cpu cortex-a17.cortex-a7
961 cname cortexa17cortexa7
962 tune for cortex-a7
963 tune flags LDSCHED
964 architecture armv7ve
965 costs cortex_a12
966end cpu cortex-a17.cortex-a7
967
968
969# V8 A-profile Architecture Processors
970begin cpu cortex-a32
971 cname cortexa32
972 tune for cortex-a53
973 tune flags LDSCHED
974 architecture armv8-a+crc
975 costs cortex_a35
976end cpu cortex-a32
977
978begin cpu cortex-a35
979 cname cortexa35
980 tune for cortex-a53
981 tune flags LDSCHED
982 architecture armv8-a+crc
983 costs cortex_a35
984end cpu cortex-a35
985
986begin cpu cortex-a53
987 cname cortexa53
988 tune flags LDSCHED
989 architecture armv8-a+crc
990 costs cortex_a53
991end cpu cortex-a53
992
993begin cpu cortex-a57
994 cname cortexa57
995 tune flags LDSCHED
996 architecture armv8-a+crc
997 costs cortex_a57
998end cpu cortex-a57
999
1000begin cpu cortex-a72
1001 cname cortexa72
1002 tune for cortex-a57
1003 tune flags LDSCHED
1004 architecture armv8-a+crc
1005 costs cortex_a57
1006end cpu cortex-a72
1007
1008begin cpu cortex-a73
1009 cname cortexa73
1010 tune for cortex-a57
1011 tune flags LDSCHED
1012 architecture armv8-a+crc
1013 costs cortex_a73
1014end cpu cortex-a73
1015
1016begin cpu exynos-m1
1017 cname exynosm1
1018 tune flags LDSCHED
1019 architecture armv8-a+crc
1020 costs exynosm1
1021end cpu exynos-m1
1022
a92ffb3e
RE
1023begin cpu xgene1
1024 tune flags LDSCHED
1025 architecture armv8-a
1026 costs xgene1
1027end cpu xgene1
1028
1029
1030# V8 A-profile big.LITTLE implementations
1031begin cpu cortex-a57.cortex-a53
1032 cname cortexa57cortexa53
1033 tune for cortex-a53
1034 tune flags LDSCHED
1035 architecture armv8-a+crc
1036 costs cortex_a57
1037end cpu cortex-a57.cortex-a53
1038
1039begin cpu cortex-a72.cortex-a53
1040 cname cortexa72cortexa53
1041 tune for cortex-a53
1042 tune flags LDSCHED
1043 architecture armv8-a+crc
1044 costs cortex_a57
1045end cpu cortex-a72.cortex-a53
1046
1047begin cpu cortex-a73.cortex-a35
1048 cname cortexa73cortexa35
1049 tune for cortex-a53
1050 tune flags LDSCHED
1051 architecture armv8-a+crc
1052 costs cortex_a73
1053end cpu cortex-a73.cortex-a35
1054
1055begin cpu cortex-a73.cortex-a53
1056 cname cortexa73cortexa53
1057 tune for cortex-a53
1058 tune flags LDSCHED
1059 architecture armv8-a+crc
1060 costs cortex_a73
1061end cpu cortex-a73.cortex-a53
1062
1063
1064# V8 M-profile implementations.
1065begin cpu cortex-m23
1066 cname cortexm23
1067 tune flags LDSCHED
1068 architecture armv8-m.base
1069 costs v6m
1070end cpu cortex-m23
1071
1072begin cpu cortex-m33
1073 cname cortexm33
1074 tune flags LDSCHED
1075 architecture armv8-m.main+dsp
1076 costs v7m
1077end cpu cortex-m33
1078
1079# FPU entries
1080# format:
1081# begin fpu <name>
1082# isa <isa-flags-list>
1083# end fpu <name>
1084
1085begin fpu vfp
1086 isa VFPv2 FP_DBL
1087end fpu vfp
1088
1089begin fpu vfpv2
1090 isa VFPv2 FP_DBL
1091end fpu vfpv2
1092
1093begin fpu vfpv3
1094 isa VFPv3 FP_D32
1095end fpu vfpv3
1096
1097begin fpu vfpv3-fp16
1098 isa VFPv3 FP_D32 bit_fp16conv
1099end fpu vfpv3-fp16
1100
1101begin fpu vfpv3-d16
1102 isa VFPv3 FP_DBL
1103end fpu vfpv3-d16
1104
1105begin fpu vfpv3-d16-fp16
1106 isa VFPv3 FP_DBL bit_fp16conv
1107end fpu vfpv3-d16-fp16
1108
1109begin fpu vfpv3xd
1110 isa VFPv3
1111end fpu vfpv3xd
1112
1113begin fpu vfpv3xd-fp16
1114 isa VFPv3 bit_fp16conv
1115end fpu vfpv3xd-fp16
1116
1117begin fpu neon
1118 isa VFPv3 NEON
1119end fpu neon
1120
1121begin fpu neon-vfpv3
1122 isa VFPv3 NEON
1123end fpu neon-vfpv3
1124
1125begin fpu neon-fp16
1126 isa VFPv3 NEON bit_fp16conv
1127end fpu neon-fp16
1128
1129begin fpu vfpv4
1130 isa VFPv4 FP_D32
1131end fpu vfpv4
1132
1133begin fpu neon-vfpv4
1134 isa VFPv4 NEON
1135end fpu neon-vfpv4
1136
1137begin fpu vfpv4-d16
1138 isa VFPv4 FP_DBL
1139end fpu vfpv4-d16
1140
1141begin fpu fpv4-sp-d16
1142 isa VFPv4
1143end fpu fpv4-sp-d16
1144
1145begin fpu fpv5-sp-d16
1146 isa FPv5
1147end fpu fpv5-sp-d16
1148
1149begin fpu fpv5-d16
1150 isa FPv5 FP_DBL
1151end fpu fpv5-d16
1152
1153begin fpu fp-armv8
1154 isa FP_ARMv8 FP_D32
1155end fpu fp-armv8
1156
1157begin fpu neon-fp-armv8
1158 isa FP_ARMv8 NEON
1159end fpu neon-fp-armv8
1160
1161begin fpu crypto-neon-fp-armv8
1162 isa FP_ARMv8 CRYPTO
1163end fpu crypto-neon-fp-armv8
1164
1165# Compatibility aliases.
1166begin fpu vfp3
1167 isa VFPv3 FP_D32
1168end fpu vfp3