https://gcc.gnu.org/bugzilla/show_bug.cgi?id=55212
--- Comment #216 from Kazumoto Kojima <kkojima at gcc dot gnu.org> --- Created attachment 59034 --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=59034&action=edit a patch augments 58905 In the problematic case c#214, the subreg pass requires to recognize the insn (insn 224 223 131 17 (set (mem:HI (plus:SI (reg/f:SI 167 [ _13 ]) (reg:SI 0 r0)) [0 S2 A16]) (subreg:HI (reg:SI 236) 0)) "utf16-nopic.go":75:9 -1 (nil)) but it can't be recognized with the new patterns in the 58905. The patch adds it. This patch is assumed to be applied to the top of 58832, 58833, 58883, 58905 and 59000, though it could be reconstructed as the revised 58905. It's tested only with the target libgcc/libstdc++v3/libgo builds and check-gcc excecute.exp on the cross compilers. I plan to do more tests.