https://gcc.gnu.org/bugzilla/show_bug.cgi?id=120410
--- Comment #2 from Oleg Endo <olegendo at gcc dot gnu.org> ---
The xtrct patterns use this expression
(ior:SI (ashift:SI (match_operand:SI 1 "arith_reg_operand" "r")
(const_int 16))
(lshiftrt:SI (match_operand:SI 2 "arith_reg_operand" "0")
(const_int 16))))]
It seems something in the target independent optimizers has changed and now
combine tries to match the pattern with a "plus" code instead of "ior". The
patch is almost trivial. Will commit shortly.