FSF GCC merge 02/23/03
[official-gcc.git] / gcc / config / mmix / mmix-modes.def
blob001a04dce774c3a445335fab62df472b004780c0
1 /* Definitions of target machine for GNU compiler, for MMIX.
2 Copyright (C) 2002 Free Software Foundation, Inc.
3 Contributed by Hans-Peter Nilsson (hp@bitrange.com)
5 This file is part of GCC.
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 2, or (at your option)
10 any later version.
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.
17 You should have received a copy of the GNU General Public License
18 along with GCC; see the file COPYING. If not, write to
19 the Free Software Foundation, 59 Temple Place - Suite 330,
20 Boston, MA 02111-1307, USA. */
22 /* Node: Condition Code */
24 /* Like other non-CC0 ports, MMIX need to code which combination of
25 comparison insn and branch insn or conditional-set insn to use into the
26 condition mode. The CC mode depends partly on which condition is used
27 and partly on the type of the operands. */
29 /* The "usual" CC mode is used for a signed operands integer comparison,
30 where the CMP insn is used and the result is (integer) -1, 0 or 1 for
31 respectively a < b, a == b and a > b. */
33 /* The CC_UNS mode is for an unsigned operands integer comparison using
34 the CMPU insn. Result values correspond to those in CCmode. */
35 CC (CC_UNS)
37 /* The CC_FP mode is for a non-equality floating-point comparison, using
38 the FCMP or FCMPE insn. The result is (integer) -1 or 1 for
39 espectively a < b and a > b, otherwise 0. */
40 CC (CC_FP)
42 /* The CC_FPEQ mode is for an equality floating-point comparison, using
43 the FEQL or FEQLE insn. The result is (integer) 1 for a == b,
44 otherwise 0 (including NaN:s). */
45 CC (CC_FPEQ)
47 /* The CC_FUN mode is for an ordering comparison, using the FUN or FUNE
48 insn. The result is (integer) 1 if a is unordered to b, otherwise the
49 result is 0. */
50 CC (CC_FUN)