+2003-12-17 Ulrich Weigand <uweigand@de.ibm.com>
+
+ PR target/11992
+ * config/s390/s390.md ("*cmpmem_long_64"): Use CLCLE instruction
+ instead of CLCL.
+ ("*cmpmem_long_31"): Likewise.
+
2003-12-16 Zack Weinberg <zack@codesourcery.com>
Backport the following patches from mainline.
(use (match_dup 2))
(use (match_dup 3))]
"TARGET_64BIT"
- "clcl\\t%0,%1"
- [(set_attr "op_type" "RR")
+ "clcle\\t%0,%1,0\;jo\\t.-4"
+ [(set_attr "op_type" "NN")
(set_attr "atype" "mem")
- (set_attr "type" "vs")])
+ (set_attr "type" "vs")
+ (set_attr "length" "8")])
(define_insn "cmpstr_long_31"
[(clobber (match_operand:DI 0 "register_operand" "=d"))
(use (match_dup 2))
(use (match_dup 3))]
"!TARGET_64BIT"
- "clcl\\t%0,%1"
- [(set_attr "op_type" "RR")
+ "clcle\\t%0,%1,0\;jo\\t.-4"
+ [(set_attr "op_type" "NN")
(set_attr "atype" "mem")
- (set_attr "type" "vs")])
+ (set_attr "type" "vs")
+ (set_attr "length" "8")])
; Convert condition code to integer in range (-1, 0, 1)