1/* Machine mode class definitions for GCC.
2 Copyright (C) 2003-2017 Free Software Foundation, Inc.
3
4This file is part of GCC.
5
6GCC is free software; you can redistribute it and/or modify it under
7the terms of the GNU General Public License as published by the Free
8Software Foundation; either version 3, or (at your option) any later
9version.
10
11GCC is distributed in the hope that it will be useful, but WITHOUT ANY
12WARRANTY; without even the implied warranty of MERCHANTABILITY or
13FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
14for more details.
15
16You should have received a copy of the GNU General Public License
17along with GCC; see the file COPYING3. If not see
18<http://www.gnu.org/licenses/>. */
19
20#define MODE_CLASSES \
21 DEF_MODE_CLASS (MODE_RANDOM), /* other */ \
22 DEF_MODE_CLASS (MODE_CC), /* condition code in a register */ \
23 DEF_MODE_CLASS (MODE_INT), /* integer */ \
24 DEF_MODE_CLASS (MODE_PARTIAL_INT), /* integer with padding bits */ \
25 DEF_MODE_CLASS (MODE_POINTER_BOUNDS), /* bounds */ \
26 DEF_MODE_CLASS (MODE_FRACT), /* signed fractional number */ \
27 DEF_MODE_CLASS (MODE_UFRACT), /* unsigned fractional number */ \
28 DEF_MODE_CLASS (MODE_ACCUM), /* signed accumulator */ \
29 DEF_MODE_CLASS (MODE_UACCUM), /* unsigned accumulator */ \
30 DEF_MODE_CLASS (MODE_FLOAT), /* floating point */ \
31 DEF_MODE_CLASS (MODE_DECIMAL_FLOAT), /* decimal floating point */ \
32 DEF_MODE_CLASS (MODE_COMPLEX_INT), /* complex numbers */ \
33 DEF_MODE_CLASS (MODE_COMPLEX_FLOAT), \
34 DEF_MODE_CLASS (MODE_VECTOR_INT), /* SIMD vectors */ \
35 DEF_MODE_CLASS (MODE_VECTOR_FRACT), /* SIMD vectors */ \
36 DEF_MODE_CLASS (MODE_VECTOR_UFRACT), /* SIMD vectors */ \
37 DEF_MODE_CLASS (MODE_VECTOR_ACCUM), /* SIMD vectors */ \
38 DEF_MODE_CLASS (MODE_VECTOR_UACCUM), /* SIMD vectors */ \
39 DEF_MODE_CLASS (MODE_VECTOR_FLOAT)
40