From 32ee391b8317246560f346617f92a876bd376e30 Mon Sep 17 00:00:00 2001 From: Richard Henderson Date: Tue, 31 Oct 2000 17:52:52 -0800 Subject: [PATCH] i386.c (fcmov_comparison_operator): Check for CCFPmode or CCFPUmode instead of CCmode. * config/i386/i386.c (fcmov_comparison_operator): Check for CCFPmode or CCFPUmode instead of CCmode. (ix86_expand_fp_movcc): Call ix86_expand_setcc for most unordered operations as well. From-SVN: r37179 --- gcc/ChangeLog | 7 +++++++ gcc/config/i386/i386.c | 8 +++++++- 2 files changed, 14 insertions(+), 1 deletion(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 25004ba2275..750c1c2a2ba 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,10 @@ +2000-10-31 Richard Henderson + + * config/i386/i386.c (fcmov_comparison_operator): Check for + CCFPmode or CCFPUmode instead of CCmode. + (ix86_expand_fp_movcc): Call ix86_expand_setcc for most + unordered operations as well. + 2000-10-31 Richard Henderson * c-semantics.c (genrtl_do_stmt): Use integer_zerop instead diff --git a/gcc/config/i386/i386.c b/gcc/config/i386/i386.c index b27edaaf811..396df6eb795 100644 --- a/gcc/config/i386/i386.c +++ b/gcc/config/i386/i386.c @@ -1339,7 +1339,7 @@ fcmov_comparison_operator (op, mode) case EQ: case NE: return 1; case LTU: case GTU: case LEU: case ORDERED: case UNORDERED: case GEU: - if (inmode == CCmode) + if (inmode == CCFPmode || inmode == CCFPUmode) return 1; return 0; default: @@ -5600,6 +5600,12 @@ ix86_expand_fp_movcc (operands) case LE: case GE: case GT: + case UNEQ: + case UNGE: + case UNGT: + case UNLE: + case UNLT: + case LTGT: tmp = gen_reg_rtx (QImode); ix86_expand_setcc (code, tmp); code = NE; -- 2.30.2