aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gcc/ChangeLog7
-rw-r--r--gcc/config/alpha/alpha.c7
2 files changed, 10 insertions, 4 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index a867ed7..3e9f613 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,4 +1,9 @@
-2001-07-19 Andrew Haley <aph@cambridge.redhat.com>
+2001-07-25 Richard Henderson <rth@redhat.com>
+
+ * config/alpha/alpha.c (alpha_emit_conditional_move): Always
+ swap GE/GT if its an fp comparison.
+
+2001-07-25 Andrew Haley <aph@cambridge.redhat.com>
* alias.c (rtx_equal_for_memref_p): Allow strings as types in
operands.
diff --git a/gcc/config/alpha/alpha.c b/gcc/config/alpha/alpha.c
index 1abf97b..d36adcc 100644
--- a/gcc/config/alpha/alpha.c
+++ b/gcc/config/alpha/alpha.c
@@ -1905,7 +1905,7 @@ alpha_emit_setcc (code)
break;
case GE: case GT: case GEU: case GTU:
- /* These are normally need swapping, but for integer zero we have
+ /* These normally need swapping, but for integer zero we have
special patterns that recognize swapped operands. */
if (!fp_p && op1 == const0_rtx)
break;
@@ -1996,8 +1996,9 @@ alpha_emit_conditional_move (cmp, mode)
break;
case GE: case GT: case GEU: case GTU:
- /* These must be swapped. */
- if (op1 == CONST0_RTX (cmp_mode))
+ /* These normally need swapping, but for integer zero we have
+ special patterns that recognize swapped operands. */
+ if (!fp_p && op1 == const0_rtx)
cmp_code = code, code = NE;
else
{