1 /* Definitions of target machine for GNU compiler
, for MMIX.
2 Copyright (C
) 2002, 2004 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
)
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
, 51 Franklin Street
, Fifth Floor
,
20 Boston
, MA
02110-1301, 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.
*/
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 respectively a
< b and a
> b
, otherwise
0.
*/
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
).
*/
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