diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index b417d4b0aefcae30d0d79de57b6db67c17fcbaeb..73aa02573f5562a90676070f0ce18f6abc955b8f 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -66,7 +66,8 @@
 	(cbranch<mode>4): Use ordered_comparison_operator predicate
 	for operator0.
 	(cstore<mode>4): Ditto for operator1.
-	(mov<SWIM:mode>cc): Ditto.
+	(mov<SWIM:mode>cc and corresponding splitter): Ditto.
+	(add<mode>cc): ditto.
 
 2010-07-30  Richard Guenther  <rguenther@suse.de>
 
diff --git a/gcc/config/i386/i386.md b/gcc/config/i386/i386.md
index 265295a04db4954818d6666b9aa4b5f9ebf8adc4..510a6c5072040a120e7c97ad0fe90001eb36859b 100644
--- a/gcc/config/i386/i386.md
+++ b/gcc/config/i386/i386.md
@@ -16340,7 +16340,7 @@
 ;; Conditional addition patterns
 (define_expand "add<mode>cc"
   [(match_operand:SWI 0 "register_operand" "")
-   (match_operand 1 "comparison_operator" "")
+   (match_operand 1 "ordered_comparison_operator" "")
    (match_operand:SWI 2 "register_operand" "")
    (match_operand:SWI 3 "const_int_operand" "")]
   ""
@@ -16655,7 +16655,7 @@
 
 (define_split
   [(set (match_operand 0 "register_operand" "")
-	(if_then_else (match_operator 1 "comparison_operator"
+	(if_then_else (match_operator 1 "ordered_comparison_operator"
 				[(reg FLAGS_REG) (const_int 0)])
 		      (match_operand 2 "register_operand" "")
 		      (match_operand 3 "register_operand" "")))]