(clobber (reg:CC FLAGS_REG))])])
(define_insn_and_split "*x86_64_shld_ndd_2"
- [(set (match_operand:DI 0 "nonimmediate_operand")
+ [(set (match_operand:DI 0 "register_operand")
(ior:DI (ashift:DI (match_operand:DI 1 "nonimmediate_operand")
(match_operand:QI 3 "nonmemory_operand"))
(lshiftrt:DI (match_operand:DI 2 "register_operand")
&& ix86_pre_reload_split ()"
"#"
"&& 1"
- [(parallel [(set (match_dup 4)
+ [(parallel [(set (match_dup 0)
(ior:DI (ashift:DI (match_dup 1)
(and:QI (match_dup 3) (const_int 63)))
(subreg:DI
(minus:QI (const_int 64)
(and:QI (match_dup 3)
(const_int 63)))) 0)))
- (clobber (reg:CC FLAGS_REG))
- (set (match_dup 0) (match_dup 4))])]
-{
- operands[4] = gen_reg_rtx (DImode);
- emit_move_insn (operands[4], operands[0]);
-})
+ (clobber (reg:CC FLAGS_REG))])])
(define_insn "x86_shld<nf_name>"
[(set (match_operand:SI 0 "nonimmediate_operand" "+r*m")
(clobber (reg:CC FLAGS_REG))])])
(define_insn_and_split "*x86_shld_ndd_2"
- [(set (match_operand:SI 0 "nonimmediate_operand")
+ [(set (match_operand:SI 0 "register_operand")
(ior:SI (ashift:SI (match_operand:SI 1 "nonimmediate_operand")
(match_operand:QI 3 "nonmemory_operand"))
(lshiftrt:SI (match_operand:SI 2 "register_operand")
&& ix86_pre_reload_split ()"
"#"
"&& 1"
- [(parallel [(set (match_dup 4)
+ [(parallel [(set (match_dup 0)
(ior:SI (ashift:SI (match_dup 1)
(and:QI (match_dup 3) (const_int 31)))
(subreg:SI
(minus:QI (const_int 32)
(and:QI (match_dup 3)
(const_int 31)))) 0)))
- (clobber (reg:CC FLAGS_REG))
- (set (match_dup 0) (match_dup 4))])]
-{
- operands[4] = gen_reg_rtx (SImode);
- emit_move_insn (operands[4], operands[0]);
-})
+ (clobber (reg:CC FLAGS_REG))])])
(define_expand "@x86_shift<mode>_adj_1"
[(set (reg:CCZ FLAGS_REG)
(clobber (reg:CC FLAGS_REG))])])
(define_insn_and_split "*x86_64_shrd_ndd_2"
- [(set (match_operand:DI 0 "nonimmediate_operand")
+ [(set (match_operand:DI 0 "register_operand")
(ior:DI (lshiftrt:DI (match_operand:DI 1 "nonimmediate_operand")
(match_operand:QI 3 "nonmemory_operand"))
(ashift:DI (match_operand:DI 2 "register_operand")
&& ix86_pre_reload_split ()"
"#"
"&& 1"
- [(parallel [(set (match_dup 4)
+ [(parallel [(set (match_dup 0)
(ior:DI (lshiftrt:DI (match_dup 1)
(and:QI (match_dup 3) (const_int 63)))
(subreg:DI
(minus:QI (const_int 64)
(and:QI (match_dup 3)
(const_int 63)))) 0)))
- (clobber (reg:CC FLAGS_REG))
- (set (match_dup 0) (match_dup 4))])]
-{
- operands[4] = gen_reg_rtx (DImode);
- emit_move_insn (operands[4], operands[0]);
-})
+ (clobber (reg:CC FLAGS_REG))])])
(define_insn "x86_shrd<nf_name>"
[(set (match_operand:SI 0 "nonimmediate_operand" "+r*m")
(clobber (reg:CC FLAGS_REG))])])
(define_insn_and_split "*x86_shrd_ndd_2"
- [(set (match_operand:SI 0 "nonimmediate_operand")
+ [(set (match_operand:SI 0 "register_operand")
(ior:SI (lshiftrt:SI (match_operand:SI 1 "nonimmediate_operand")
(match_operand:QI 3 "nonmemory_operand"))
(ashift:SI (match_operand:SI 2 "register_operand")
&& ix86_pre_reload_split ()"
"#"
"&& 1"
- [(parallel [(set (match_dup 4)
+ [(parallel [(set (match_dup 0)
(ior:SI (lshiftrt:SI (match_dup 1)
(and:QI (match_dup 3) (const_int 31)))
(subreg:SI
(minus:QI (const_int 32)
(and:QI (match_dup 3)
(const_int 31)))) 0)))
- (clobber (reg:CC FLAGS_REG))
- (set (match_dup 0) (match_dup 4))])]
-{
- operands[4] = gen_reg_rtx (SImode);
- emit_move_insn (operands[4], operands[0]);
-})
+ (clobber (reg:CC FLAGS_REG))])])
;; Base name for insn mnemonic.
(define_mode_attr cvt_mnemonic