-
- Downloads
Merge two define_insn: <avx512>_blendm<mode>, <avx512>_load<mode>_mask.
Those two define_insns have same pattern, and <avx512>_load<mode>_mask would always be matched since it show up earlier in the md file, and it may lose some opportunity in pass_reload since <avx512>_load<mode>_mask only have constraint "0C" for operand2, and "v" constraint in <avx512>_vblendm<mode> would never be matched. 2020-07-21 Hongtao Liu <hongtao.liu@intel.com> gcc/ PR target/96246 * config/i386/sse.md (<avx512>_load<mode>_mask, <avx512>_load<mode>_mask): Extend to generate blendm instructions. (<avx512>_blendm<mode>, <avx512>_blendm<mode>): Change define_insn to define_expand. gcc/testsuite/ * gcc.target/i386/avx512bw-pr96246-1.c: New test. * gcc.target/i386/avx512bw-pr96246-2.c: New test. * gcc.target/i386/avx512vl-pr96246-1.c: New test. * gcc.target/i386/avx512vl-pr96246-2.c: New test. * gcc.target/i386/avx512bw-vmovdqu16-1.c: Adjust test. * gcc.target/i386/avx512bw-vmovdqu8-1.c: Ditto. * gcc.target/i386/avx512f-vmovapd-1.c: Ditto. * gcc.target/i386/avx512f-vmovaps-1.c: Ditto. * gcc.target/i386/avx512f-vmovdqa32-1.c: Ditto. * gcc.target/i386/avx512f-vmovdqa64-1.c: Ditto. * gcc.target/i386/avx512vl-pr92686-movcc-1.c: Ditto. * gcc.target/i386/avx512vl-pr96246-1.c: Ditto. * gcc.target/i386/avx512vl-pr96246-2.c: Ditto. * gcc.target/i386/avx512vl-vmovapd-1.c: Ditto. * gcc.target/i386/avx512vl-vmovaps-1.c: Ditto. * gcc.target/i386/avx512vl-vmovdqa32-1.c: Ditto. * gcc.target/i386/avx512vl-vmovdqa64-1.c: Ditto.
Showing
- gcc/config/i386/sse.md 15 additions, 19 deletionsgcc/config/i386/sse.md
- gcc/testsuite/gcc.target/i386/avx512bw-pr96246-1.c 30 additions, 0 deletionsgcc/testsuite/gcc.target/i386/avx512bw-pr96246-1.c
- gcc/testsuite/gcc.target/i386/avx512bw-pr96246-2.c 47 additions, 0 deletionsgcc/testsuite/gcc.target/i386/avx512bw-pr96246-2.c
- gcc/testsuite/gcc.target/i386/avx512bw-vmovdqu16-1.c 3 additions, 3 deletionsgcc/testsuite/gcc.target/i386/avx512bw-vmovdqu16-1.c
- gcc/testsuite/gcc.target/i386/avx512bw-vmovdqu8-1.c 3 additions, 3 deletionsgcc/testsuite/gcc.target/i386/avx512bw-vmovdqu8-1.c
- gcc/testsuite/gcc.target/i386/avx512f-vmovapd-1.c 1 addition, 1 deletiongcc/testsuite/gcc.target/i386/avx512f-vmovapd-1.c
- gcc/testsuite/gcc.target/i386/avx512f-vmovaps-1.c 1 addition, 1 deletiongcc/testsuite/gcc.target/i386/avx512f-vmovaps-1.c
- gcc/testsuite/gcc.target/i386/avx512f-vmovdqa32-1.c 1 addition, 1 deletiongcc/testsuite/gcc.target/i386/avx512f-vmovdqa32-1.c
- gcc/testsuite/gcc.target/i386/avx512f-vmovdqa64-1.c 1 addition, 1 deletiongcc/testsuite/gcc.target/i386/avx512f-vmovdqa64-1.c
- gcc/testsuite/gcc.target/i386/avx512vl-pr92686-movcc-1.c 4 additions, 4 deletionsgcc/testsuite/gcc.target/i386/avx512vl-pr92686-movcc-1.c
- gcc/testsuite/gcc.target/i386/avx512vl-pr96246-1.c 36 additions, 0 deletionsgcc/testsuite/gcc.target/i386/avx512vl-pr96246-1.c
- gcc/testsuite/gcc.target/i386/avx512vl-pr96246-2.c 51 additions, 0 deletionsgcc/testsuite/gcc.target/i386/avx512vl-pr96246-2.c
- gcc/testsuite/gcc.target/i386/avx512vl-vmovapd-1.c 2 additions, 2 deletionsgcc/testsuite/gcc.target/i386/avx512vl-vmovapd-1.c
- gcc/testsuite/gcc.target/i386/avx512vl-vmovaps-1.c 2 additions, 2 deletionsgcc/testsuite/gcc.target/i386/avx512vl-vmovaps-1.c
- gcc/testsuite/gcc.target/i386/avx512vl-vmovdqa32-1.c 2 additions, 2 deletionsgcc/testsuite/gcc.target/i386/avx512vl-vmovdqa32-1.c
- gcc/testsuite/gcc.target/i386/avx512vl-vmovdqa64-1.c 2 additions, 2 deletionsgcc/testsuite/gcc.target/i386/avx512vl-vmovdqa64-1.c
Loading
Please register or sign in to comment