https://gcc.gnu.org/bugzilla/show_bug.cgi?id=82524
--- Comment #7 from Uroš Bizjak <ubizjak at gmail dot com> --- (In reply to Jakub Jelinek from comment #6) > (insn 66 37 38 2 (set (reg:SI 0 ax [159]) > (reg:SI 3 bx [159])) "pr82545.c":27 82 {*movsi_internal} > (nil)) > (insn 38 66 39 2 (parallel [ > (set (zero_extract:SI (reg:SI 0 ax [159]) > (const_int 8 [0x8]) > (const_int 8 [0x8])) > (subreg:SI (plus:QI (subreg:QI (zero_extract:SI (reg:SI 0 ax > [159]) > (const_int 8 [0x8]) > (const_int 8 [0x8])) 0) > (subreg:QI (zero_extract:SI (reg:SI 1 dx [163]) > (const_int 8 [0x8]) > (const_int 8 [0x8])) 0)) 0)) > (clobber (reg:CC 17 flags)) > ]) "pr82545.c":27 235 {*addqi_ext_2} > (nil)) Do we need "+Q" instead of "=Q" on LHS zero_extract patterns?