https://gcc.gnu.org/bugzilla/show_bug.cgi?id=103897
--- Comment #4 from Hongtao.liu <crazylht at gmail dot com> --- For 2), it seems to be a generic optimization to optimize (set (mem:V4SI (reg:DI 95) [0 *dst_7(D)+0 S16 A128]) (ashiftrt:V4SI (subreg:V4SI (vec_select:V8HI (vec_concat:V16HI (const_vector:V8HI [ (const_int 0 [0]) repeated x8 ]) (mem:V8HI (reg:DI 96) [0 *src_3(D)+0 S16 A128])) (parallel [ (const_int 0 [0]) (const_int 8 [0x8]) (const_int 1 [0x1]) (const_int 9 [0x9]) (const_int 2 [0x2]) (const_int 10 [0xa]) (const_int 3 [0x3]) (const_int 11 [0xb]) ])) 0) (const_int 16 [0x10]))) to sign_extend of (mem:V8HI (reg:DI 96)