On Fri, Aug 14, 2020 at 5:57 PM Uros Bizjak wrote: > > On Fri, Aug 14, 2020 at 8:03 AM Hongtao Liu wrote: > > > > Hi: > > For struct initialization, when it fits in a TImode, gcc will use > > pinsr insn which causes poor codegen described in PR93897 and PR96562. > > You should probably remove TImode handling also from ix86_expand_pextr. > Yes, but i failed to construct a testcase to cover this part. Anyway, the regression test for i386/x86-64 backend is ok, bootstrap is ok. I also run the patch on SPEC2017, no big impact. > Uros. > > > Bootstrap is ok, regression test is ok for i386/x86-64 backend. > > Ok for trunk? > > > > ChangeLog > > gcc/ > > PR target/96562 > > PR target/93897 > > * config/i386/i386-expand.c (ix86_expand_pinsr): Don't use > > pinsr for TImode. > > > > gcc/testsuite/ > > * gcc.target/i386/pr96562-1.c: New test. > > > > -- > > BR, > > Hongtao Update patch. -- BR, Hongtao