1 /* ISA feature enumerations for C-SKY targets. 2 Copyright (C) 2018-2019 Free Software Foundation, Inc. 3 Contributed by C-SKY Microsystems and Mentor Graphics. 4 5 This file is part of GCC. 6 7 GCC is free software; you can redistribute it and/or modify it 8 under the terms of the GNU General Public License as published 9 by the Free Software Foundation; either version 3, or (at your 10 option) any later version. 11 12 GCC is distributed in the hope that it will be useful, but WITHOUT 13 ANY WARRANTY; without even the implied warranty of MERCHANTABILITY 14 or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public 15 License 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 #ifndef GCC_CSKY_ISA_FEATURE_H 22 #define GCC_CSKY_ISA_FEATURE_H 23 24 25 #ifndef CSKY_ISA_MACRO 26 #define CSKY_ISA_MACRO 27 #endif 28 29 #define CSKY_ISA_FEATURE_DEFINE(x) isa_bit_ ## x 30 #define CSKY_ISA_FEATURE_GET(x) CSKY_ISA_FEATURE_DEFINE (x) 31 32 enum csky_isa_feature 33 { 34 CSKY_ISA_FEATURE_DEFINE (none), 35 #undef CSKY_ISA 36 #define CSKY_ISA(IDENT, DESC) \ 37 CSKY_ISA_FEATURE_DEFINE (IDENT), 38 #include "csky_isa.def" 39 #undef CSKY_ISA 40 CSKY_ISA_FEATURE_DEFINE (max) 41 }; 42 43 #define CSKY_ISA_FEAT(x) x, 44 #define CSKY_ISA_FEAT_NONE CSKY_ISA_FEAT (isa_bit_none) 45 46 47 #endif /* GCC_CSKY_ISA_FEATURE_H */ 48