+2016-12-27 Uros Bizjak <ubizjak@gmail.com>
+
+ * config/i386/i386.md (andqi_ext_1): Use general_operand
+ predicate for operand 2.
+
2016-12-27 Uros Bizjak <ubizjak@gmail.com>
PR target/78904
(compare
(and:QI
(subreg:QI
- (zero_extract:SI (match_operand 1 "ext_register_operand" "0")
+ (zero_extract:SI (match_operand 1 "ext_register_operand" "0,0")
(const_int 8)
(const_int 8)) 0)
- (match_operand 2 "const_int_operand" "n"))
+ (match_operand:QI 2 "general_operand" "Qn,m"))
(const_int 0)))
- (set (zero_extract:SI (match_operand 0 "ext_register_operand" "=Q")
+ (set (zero_extract:SI (match_operand 0 "ext_register_operand" "=Q,Q")
(const_int 8)
(const_int 8))
(subreg:SI
(match_dup 2)) 0))]
"ix86_match_ccmode (insn, CCNOmode)"
"and{b}\t{%2, %h0|%h0, %2}"
- [(set_attr "type" "alu")
+ [(set_attr "isa" "*,nox64")
+ (set_attr "type" "alu")
(set_attr "mode" "QI")])
(define_insn "*andqi_ext_2"
(set (zero_extract:SI (match_dup 2)
(const_int 8)
(const_int 8))
- (subreg:SI
- (and:QI
- (subreg:QI
- (zero_extract:SI (match_dup 2)
- (const_int 8)
- (const_int 8)) 0)
- (match_dup 3)) 0))])])
+ (subreg:SI
+ (and:QI
+ (subreg:QI
+ (zero_extract:SI (match_dup 2)
+ (const_int 8)
+ (const_int 8)) 0)
+ (match_dup 3)) 0))])])
;; Don't do logical operations with memory inputs.
(define_peephole2