https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98856
--- Comment #27 from Uroš Bizjak <ubizjak at gmail dot com> --- (In reply to Richard Biener from comment #26) > but that doesn't seem to match for some unknown reason. Try this: (define_peephole2 [(match_scratch:DI 5 "Yv") (set (match_operand:DI 0 "sse_reg_operand") (match_operand:DI 1 "general_reg_operand")) (set (match_operand:V2DI 2 "sse_reg_operand") (vec_concat:V2DI (match_operand:DI 3 "sse_reg_operand") (match_operand:DI 4 "nonimmediate_gr_operand")))] "" [(set (match_dup 0) (match_dup 1)) (set (match_dup 5) (match_dup 4)) (set (match_dup 2) (vec_concat:V2DI (match_dup 3) (match_dup 5)))])