summaryrefslogtreecommitdiff
path: root/gcc/config/c6x/c6x-isas.def
blob: 45659b5e93dee0e39e7ff3396759237fee2436f6 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
/* C6X ISA names.
   Copyright (C) 2011-2013 Free Software Foundation, Inc.

   This file is part of GCC.

   GCC is free software; you can redistribute it and/or modify it
   under the terms of the GNU General Public License as published by
   the Free Software Foundation; either version 3, or (at your option)
   any later version.

   GCC is distributed in the hope that it will be useful, but
   WITHOUT ANY WARRANTY; without even the implied warranty of
   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
   General Public License for more details.

   You should have received a copy of the GNU General Public License
   along with GCC; see the file COPYING3.  If not see
   <http://www.gnu.org/licenses/>.  */

/* Define ISAs for the -march option, used both in C6X.c and to
   generate c6x-tables.opt.  Before including this file, define a
   macro:

   C6X_ISA (NAME, ENUM_VALUE, FLAGS)

   where NAME is the name for use with -march=, ENUM_VALUE is an enum
   corresponding to this arch, and FLAGS is a combination of flags
   that together specify the available instructions.  */

C6X_ISA("c62x", C6X_CPU_C62X, C6X_INSNS_C62X)
C6X_ISA("c64x", C6X_CPU_C64X, C6X_INSNS_C62X | C6X_INSNS_C64X)
C6X_ISA("c64x+", C6X_CPU_C64XP, C6X_INSNS_C62X | C6X_INSNS_C64X | C6X_INSNS_C64XP)
C6X_ISA("c67x", C6X_CPU_C67X, C6X_INSNS_C62X | C6X_INSNS_C67X)
C6X_ISA("c67x+", C6X_CPU_C67XP, C6X_INSNS_C62X | C6X_INSNS_C67X | C6X_INSNS_C67XP)
C6X_ISA("c674x", C6X_CPU_C674X,
	(C6X_INSNS_C62X | C6X_INSNS_C64X | C6X_INSNS_C64XP | C6X_INSNS_C67X
         | C6X_INSNS_C67XP | C6X_INSNS_C674X))