2003-12-26 Guilhem Lavaux <guilhem@kaffe.org>
[official-gcc.git] / gcc / config / mmix / mmix-modes.def
blobe4ebb30565ec82c9a63860f7e8a94c639c21a418
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_MODE (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_MODE (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_MODE (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_MODE (CC_FUN);