OSDN Git Service

* config/avr/avr-mcus.def (avr_mcu_types): ATtiny4313 and
[pf3gnuchains/gcc-fork.git] / gcc / config / epiphany / epiphany-modes.def
1 /* Definitions of target machine for GNU compiler, Adapteva Epiphany cpu.
2    Copyright (C) 2002, 2007, 2009, 2011 Free Software Foundation, Inc.
3    Contributed by Embecosm on behalf of Adapteva, Inc.
4
5 This file is part of GCC.
6
7 GCC is free software; you can redistribute it and/or modify
8 it under the terms of the GNU General Public License as published by
9 the Free Software Foundation; either version 3, or (at your option)
10 any later version.
11
12 GCC is distributed in the hope that it will be useful,
13 but WITHOUT ANY WARRANTY; without even the implied warranty of
14 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
15 GNU General Public 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 CC_MODE (CC_Z);      /* only Z valid - for add, testing result.  */
22 CC_MODE (CC_N_NE);   /* N for not-equal (for lsl).  */
23 CC_MODE (CC_C_LTU);  /* C for unsigned-less-than (for add with carry).  */
24 CC_MODE (CC_C_GTU);  /* C for unsigned-greater-than (for sub with carry).  */
25 CC_MODE (CC_FP);
26 CC_MODE (CC_FP_EQ);  /* AZ for equal.  */
27 CC_MODE (CC_FP_ORD); /* AZ || ~AC for ordered.  */
28 CC_MODE (CC_FP_UNEQ); /* AZ || ~AC for unordered / equal.  */
29 CC_MODE (CC_FP_GTE); /* ~AC  / AZ for greater than / equal.  */
30 #if 0 /* This would be needed for simplified NaN testing.  */
31 RESET_FLOAT_FORMAT (SF, motorola_single_format);
32 RESET_FLOAT_FORMAT (DF, motorola_double_format);
33 #endif
34 VECTOR_MODES (INT, 4);          /* V4QI V2HI */
35 VECTOR_MODES (INT, 8);          /* V8QI V4HI V2SI */
36 VECTOR_MODE (FLOAT, SF, 2);     /* V2SF */
37 ADJUST_ALIGNMENT (V8QI, epiphany_vect_align);
38 ADJUST_ALIGNMENT (V4HI, epiphany_vect_align);
39 ADJUST_ALIGNMENT (V2SI, epiphany_vect_align);
40 ADJUST_ALIGNMENT (V2SF, epiphany_vect_align);