ping! On Fri, Jul 10, 2020 at 5:24 PM Hongtao Liu <crazy...@gmail.com> wrote: > > + maintainer. > cc H.J > > On Thu, Jul 9, 2020 at 4:33 PM Hongtao Liu <crazy...@gmail.com> wrote: > > > > Hi: > > For a constant vector having one duplicated value, there's no need > > to put the whole vector in the constant pool, using embedded broadcast > > instead. > > > > Bootstrap test is Ok, regression test for i386/x86-64 backend is ok. > > > > gcc/ChangeLog: > > > > PR target/87767 > > * config/i386/i386-features.c > > (replace_constant_pool_with_broadcast): New function. > > (constant_pool_broadcast): Ditto. > > (class pass_constant_pool_broadcast): New pass. > > (make_pass_constant_pool_broadcast): Ditto. > > * config/i386/i386-passes.def: Insert new pass after combine. > > * config/i386/i386-protos.h > > (make_pass_constant_pool_broadcast): Declare. > > * config/i386/sse.md (*avx512dq_mul<mode>3<mask_name>_bcst, > > *avx512f_mul<mode>3<mask_name>_bcst): New define_insn. > > > > gcc/testsuite/ChangeLog: > > > > PR target/87767 > > * gcc.target/i386/avx2-broadcast-pr87767-1.c: New test. > > * gcc.target/i386/avx512f-broadcast-pr87767-1.c: New test. > > * gcc.target/i386/avx512f-broadcast-pr87767-2.c: New test. > > * gcc.target/i386/avx512vl-broadcast-pr87767-1.c: New test. > > * gcc.target/i386/pr92865-1.c: Adjust testcase. > > > > > > > > > > -- > > BR, > > Hongtao > > > > -- > BR, > Hongtao
-- BR, Hongtao