From d1324b4b8e85aafadf058482c874e3956745e86b Mon Sep 17 00:00:00 2001
From: rth <rth@138bc75d-0d04-0410-961f-82ee72b054a4>
Date: Sun, 15 Jul 2001 15:56:46 +0000
Subject: [PATCH]         * config/alpha/alpha.c
 (alpha_emit_xfloating_compare): Use CCmode         instead of COMPARE for the
 EQUIV expression.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@44024 138bc75d-0d04-0410-961f-82ee72b054a4
---
 gcc/ChangeLog            | 5 +++++
 gcc/config/alpha/alpha.c | 8 ++++----
 2 files changed, 9 insertions(+), 4 deletions(-)

diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 90761024ad09..4ff9680953e7 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,8 @@
+2001-07-15  Richard Henderson  <rth@redhat.com>
+
+	* config/alpha/alpha.c (alpha_emit_xfloating_compare): Use CCmode
+	instead of COMPARE for the EQUIV expression.
+
 2001-07-15  Richard Henderson  <rth@redhat.com>
 
 	* flow.c (redirect_edge_and_branch_force): Initialize
diff --git a/gcc/config/alpha/alpha.c b/gcc/config/alpha/alpha.c
index 12bd57700495..bab97c267189 100644
--- a/gcc/config/alpha/alpha.c
+++ b/gcc/config/alpha/alpha.c
@@ -2406,10 +2406,10 @@ alpha_emit_xfloating_compare (code, op0, op1)
   operands[1] = op1;
   out = gen_reg_rtx (DImode);
 
-  /* ??? Strange equiv cause what's actually returned is -1,0,1, not a
-     proper boolean value.  */
-  alpha_emit_xfloating_libcall (func, out, operands, 2, 
-				gen_rtx_COMPARE (TFmode, op0, op1));
+  /* ??? Strange mode for equiv because what's actually returned
+     is -1,0,1, not a proper boolean value.  */
+  alpha_emit_xfloating_libcall (func, out, operands, 2,
+				gen_rtx_fmt_ee (code, CCmode, op0, op1));
 
   return out;
 }
-- 
GitLab