diff options
author | rth <rth@138bc75d-0d04-0410-961f-82ee72b054a4> | 2000-01-26 02:06:21 +0000 |
---|---|---|
committer | rth <rth@138bc75d-0d04-0410-961f-82ee72b054a4> | 2000-01-26 02:06:21 +0000 |
commit | 79777bad6e0e3cd486c1fc67a9f522d10bf46163 (patch) | |
tree | c6229116cfdf9e594c081b7617483b79b2816773 /gcc/rtl.def | |
parent | 06fe29c4e271ed66afd00132b2a3d82ef4d1d8f7 (diff) | |
download | gcc-79777bad6e0e3cd486c1fc67a9f522d10bf46163.tar.gz |
* tree.def (UNNE_EXPR): Remove.
* c-typeck.c (build_binary_op): Don't handle it.
* expr.c (expand_expr, do_jump, do_store_flag): Likewise.
* cp/typeck.c (build_binary_op_nodefault): Likewise.
* rtl.def (UNNE): Remove.
(LTGT): Add.
* jump.c (reverse_condition): Update accordingly.
(swap_condition): Likewise.
(comparison_dominates_p): Handle unordered comparisons.
(reverse_condition_maybe_unordered): New.
* rtl.h (reverse_condition_maybe_unordered): Declare.
* sparc.c (select_cc_mode): Update for UNNE/LTGT.
(output_cbranch): Use reverse_condition_maybe_unordered and LTGT.
* sparc.h (REVERSIBLE_CC_MODE): Always true. Update docs.
* sparc.md (bltgt): New.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@31624 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/rtl.def')
-rw-r--r-- | gcc/rtl.def | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/gcc/rtl.def b/gcc/rtl.def index 94b72b810d2..996a38e9e9e 100644 --- a/gcc/rtl.def +++ b/gcc/rtl.def @@ -742,13 +742,15 @@ DEF_RTL_EXPR(UNORDERED, "unordered", "ee", '<') DEF_RTL_EXPR(ORDERED, "ordered", "ee", '<') /* These are equivalent to unordered or ... */ -DEF_RTL_EXPR(UNNE, "unne", "ee", '<') DEF_RTL_EXPR(UNEQ, "uneq", "ee", '<') DEF_RTL_EXPR(UNGE, "unge", "ee", '<') DEF_RTL_EXPR(UNGT, "ungt", "ee", '<') DEF_RTL_EXPR(UNLE, "unle", "ee", '<') DEF_RTL_EXPR(UNLT, "unlt", "ee", '<') +/* This is an ordered NE, ie !UNEQ, ie false for NaN. */ +DEF_RTL_EXPR(LTGT, "ltgt", "ee", '<') + /* Represents the result of sign-extending the sole operand. The machine modes of the operand and of the SIGN_EXTEND expression determine how much sign-extension is going on. */ |