(define_insn "scc"
[(set (match_operand:SI 0 "register_operand" "=r")
- (match_operator:SI 3 "comparison_operator"
+ (match_operator:SI 3 "ordered_comparison_operator"
[(match_operand:SI 1 "reg_or_0_operand" "rM")
(match_operand:SI 2 "arith11_operand" "rI")]))]
""
(define_insn ""
[(set (match_operand:DI 0 "register_operand" "=r")
- (match_operator:DI 3 "comparison_operator"
+ (match_operator:DI 3 "ordered_comparison_operator"
[(match_operand:DI 1 "reg_or_0_operand" "rM")
(match_operand:DI 2 "arith11_operand" "rI")]))]
"TARGET_64BIT"
(define_insn "iorscc"
[(set (match_operand:SI 0 "register_operand" "=r")
- (ior:SI (match_operator:SI 3 "comparison_operator"
+ (ior:SI (match_operator:SI 3 "ordered_comparison_operator"
[(match_operand:SI 1 "reg_or_0_operand" "rM")
(match_operand:SI 2 "arith11_operand" "rI")])
- (match_operator:SI 6 "comparison_operator"
+ (match_operator:SI 6 "ordered_comparison_operator"
[(match_operand:SI 4 "reg_or_0_operand" "rM")
(match_operand:SI 5 "arith11_operand" "rI")])))]
""
(define_insn ""
[(set (match_operand:DI 0 "register_operand" "=r")
- (ior:DI (match_operator:DI 3 "comparison_operator"
+ (ior:DI (match_operator:DI 3 "ordered_comparison_operator"
[(match_operand:DI 1 "reg_or_0_operand" "rM")
(match_operand:DI 2 "arith11_operand" "rI")])
- (match_operator:DI 6 "comparison_operator"
+ (match_operator:DI 6 "ordered_comparison_operator"
[(match_operand:DI 4 "reg_or_0_operand" "rM")
(match_operand:DI 5 "arith11_operand" "rI")])))]
"TARGET_64BIT"
;; from an scc insn (negscc and incscc).
(define_insn "negscc"
[(set (match_operand:SI 0 "register_operand" "=r")
- (neg:SI (match_operator:SI 3 "comparison_operator"
+ (neg:SI (match_operator:SI 3 "ordered_comparison_operator"
[(match_operand:SI 1 "reg_or_0_operand" "rM")
(match_operand:SI 2 "arith11_operand" "rI")])))]
""
(define_insn ""
[(set (match_operand:DI 0 "register_operand" "=r")
- (neg:DI (match_operator:DI 3 "comparison_operator"
+ (neg:DI (match_operator:DI 3 "ordered_comparison_operator"
[(match_operand:DI 1 "reg_or_0_operand" "rM")
(match_operand:DI 2 "arith11_operand" "rI")])))]
"TARGET_64BIT"
(define_insn "incscc"
[(set (match_operand:SI 0 "register_operand" "=r,r")
- (plus:SI (match_operator:SI 4 "comparison_operator"
+ (plus:SI (match_operator:SI 4 "ordered_comparison_operator"
[(match_operand:SI 2 "register_operand" "r,r")
(match_operand:SI 3 "arith11_operand" "rI,rI")])
(match_operand:SI 1 "register_operand" "0,?r")))]
(define_insn ""
[(set (match_operand:DI 0 "register_operand" "=r,r")
- (plus:DI (match_operator:DI 4 "comparison_operator"
+ (plus:DI (match_operator:DI 4 "ordered_comparison_operator"
[(match_operand:DI 2 "register_operand" "r,r")
(match_operand:DI 3 "arith11_operand" "rI,rI")])
(match_operand:DI 1 "register_operand" "0,?r")))]
(define_insn "decscc"
[(set (match_operand:SI 0 "register_operand" "=r,r")
(minus:SI (match_operand:SI 1 "register_operand" "0,?r")
- (match_operator:SI 4 "comparison_operator"
+ (match_operator:SI 4 "ordered_comparison_operator"
[(match_operand:SI 2 "register_operand" "r,r")
(match_operand:SI 3 "arith11_operand" "rI,rI")])))]
""
(define_insn ""
[(set (match_operand:DI 0 "register_operand" "=r,r")
(minus:DI (match_operand:DI 1 "register_operand" "0,?r")
- (match_operator:DI 4 "comparison_operator"
+ (match_operator:DI 4 "ordered_comparison_operator"
[(match_operand:DI 2 "register_operand" "r,r")
(match_operand:DI 3 "arith11_operand" "rI,rI")])))]
"TARGET_64BIT"
(define_expand "movsicc"
[(set (match_operand:SI 0 "register_operand" "")
(if_then_else:SI
- (match_operand 1 "comparison_operator" "")
+ (match_operand 1 "ordered_comparison_operator" "")
(match_operand:SI 2 "reg_or_cint_move_operand" "")
(match_operand:SI 3 "reg_or_cint_move_operand" "")))]
""
(define_insn ""
[(set (match_operand:SI 0 "register_operand" "=r,r,r,r")
(if_then_else:SI
- (match_operator 2 "comparison_operator"
+ (match_operator 2 "ordered_comparison_operator"
[(match_operand:SI 3 "register_operand" "r,r,r,r")
(match_operand:SI 4 "arith11_operand" "rI,rI,rI,rI")])
(match_operand:SI 1 "reg_or_cint_move_operand" "0,J,N,K")
(define_insn ""
[(set (match_operand:SI 0 "register_operand" "=r,r,r,r,r,r,r,r")
(if_then_else:SI
- (match_operator 5 "comparison_operator"
+ (match_operator 5 "ordered_comparison_operator"
[(match_operand:SI 3 "register_operand" "r,r,r,r,r,r,r,r")
(match_operand:SI 4 "arith11_operand" "rI,rI,rI,rI,rI,rI,rI,rI")])
(match_operand:SI 1 "reg_or_cint_move_operand" "0,0,0,0,r,J,N,K")
(define_expand "movdicc"
[(set (match_operand:DI 0 "register_operand" "")
(if_then_else:DI
- (match_operand 1 "comparison_operator" "")
+ (match_operand 1 "ordered_comparison_operator" "")
(match_operand:DI 2 "reg_or_cint_move_operand" "")
(match_operand:DI 3 "reg_or_cint_move_operand" "")))]
"TARGET_64BIT"
(define_insn ""
[(set (match_operand:DI 0 "register_operand" "=r,r,r,r,r")
(if_then_else:DI
- (match_operator 2 "comparison_operator"
+ (match_operator 2 "ordered_comparison_operator"
[(match_operand:DI 3 "register_operand" "r,r,r,r,r")
(match_operand:DI 4 "arith11_operand" "rI,rI,rI,rI,rI")])
(match_operand:DI 1 "reg_or_cint_move_operand" "0,r,J,N,K")
(define_insn ""
[(set (match_operand:DI 0 "register_operand" "=r,r,r,r,r,r,r,r")
(if_then_else:DI
- (match_operator 5 "comparison_operator"
+ (match_operator 5 "ordered_comparison_operator"
[(match_operand:DI 3 "register_operand" "r,r,r,r,r,r,r,r")
(match_operand:DI 4 "arith11_operand" "rI,rI,rI,rI,rI,rI,rI,rI")])
(match_operand:DI 1 "reg_or_cint_move_operand" "0,0,0,0,r,J,N,K")
(define_insn ""
[(set (pc)
(if_then_else
- (match_operator 3 "comparison_operator"
+ (match_operator 3 "ordered_comparison_operator"
[(match_operand:SI 1 "reg_or_0_operand" "rM")
(match_operand:SI 2 "arith5_operand" "rL")])
(label_ref (match_operand 0 "" ""))
(define_insn ""
[(set (pc)
(if_then_else
- (match_operator 3 "comparison_operator"
+ (match_operator 3 "ordered_comparison_operator"
[(match_operand:SI 1 "reg_or_0_operand" "rM")
(match_operand:SI 2 "arith5_operand" "rL")])
(pc)
(define_insn ""
[(set (pc)
(if_then_else
- (match_operator 3 "comparison_operator"
+ (match_operator 3 "ordered_comparison_operator"
[(match_operand:DI 1 "reg_or_0_operand" "rM")
(match_operand:DI 2 "reg_or_0_operand" "rM")])
(label_ref (match_operand 0 "" ""))
(define_insn ""
[(set (pc)
(if_then_else
- (match_operator 3 "comparison_operator"
+ (match_operator 3 "ordered_comparison_operator"
[(match_operand:DI 1 "reg_or_0_operand" "rM")
(match_operand:DI 2 "reg_or_0_operand" "rM")])
(pc)
(define_insn ""
[(set (pc)
(if_then_else
- (match_operator 3 "cmpib_comparison_operator"
+ (match_operator 3 "ordered_comparison_operator"
[(match_operand:DI 1 "reg_or_0_operand" "rM")
(match_operand:DI 2 "arith5_operand" "rL")])
(label_ref (match_operand 0 "" ""))
(define_insn ""
[(set (pc)
(if_then_else
- (match_operator 3 "cmpib_comparison_operator"
+ (match_operator 3 "ordered_comparison_operator"
[(match_operand:DI 1 "reg_or_0_operand" "rM")
(match_operand:DI 2 "arith5_operand" "rL")])
(pc)
(define_insn "decrement_and_branch_until_zero"
[(set (pc)
(if_then_else
- (match_operator 2 "comparison_operator"
+ (match_operator 2 "ordered_comparison_operator"
[(plus:SI
(match_operand:SI 0 "reg_before_reload_operand" "+!r,!*f,*Q")
(match_operand:SI 1 "int5_operand" "L,L,L"))