On Fri, Jan 20, 2017 at 2:32 PM, Andrew Senkevich <andrew.n.senkev...@gmail.com> wrote:
> here is intrinsics for ktest{b,w,d,q} and kortest{b,w,d,q}. Is it Ok? > > gcc/ > * config/i386/avx512bwintrin.h: Add k-mask test, kortest intrinsics. > * config/i386/avx512dqintrin.h: Ditto. > * config/i386/avx512fintrin.h: Ditto. > * gcc/config/i386/i386.c: Handle new builtins. > * config/i386/i386-builtin.def: Add new builtins. > * config/i386/sse.md (ktest<mode>, kortest<mode>): New. > (UNSPEC_KORTEST, UNSPEC_KTEST): New. > > gcc/testsuite/ > * gcc.target/i386/avx512bw-ktestd-1.c: New test. > * gcc.target/i386/avx512bw-ktestq-1.c: Ditto. > * gcc.target/i386/avx512dq-ktestb-1.c: Ditto. > * gcc.target/i386/avx512f-ktestw-1.c: Ditto. > * gcc.target/i386/avx512bw-kortestd-1.c: Ditto. > * gcc.target/i386/avx512bw-kortestq-1.c: Ditto. > * gcc.target/i386/avx512dq-kortestb-1.c: Ditto. > * gcc.target/i386/avx512f-kortestw-1.c: Ditto. IMO, you should add some runtime tests. Otherwise, the patch LGTM, but I'l leave the final approval to Kirill. Uros.