-
- Downloads
[PATCH 2/2] AVX10.2: Support media instructions
gcc/ChangeLog:
* config/i386/avx10_2-512mediaintrin.h: Add new intrins.
* config/i386/avx10_2mediaintrin.h: Ditto.
* config/i386/i386-builtin.def: Add new builtins.
* config/i386/i386-builtins.cc (def_builtin): Handle shared
builtins between AVXVNNIINT16 and AVX10.2.
* config/i386/i386-expand.cc (ix86_check_builtin_isa_match):
Ditto.
* config/i386/sse.md (unspec): Add UNSPEC_VDPPHPS.
(avx10_2_mpsadbw<mask_name>): New define_insn.
(<mask_codefor><sse4_1_avx2>_mpsadbw<mask_name>): Ditto.
(vpdp<vpdpwprodtype>_<mode>): Add AVX10_2_256.
(vpdp<vpdpwprodtype>_v16si): New defin_insn.
(vpdp<vpdpwprodtype>_<mode>_mask): Ditto.
(*vpdp<vpdpwprodtype>_<mode>_maskz): Ditto.
(vpdp<vpdpwprodtype>_<mode>_maskz): New expander.
(vdpphps_<mode>): New define_insn.
(vdpphps_<mode>_mask): Ditto.
(*vdpphps_<mode>_maskz): Ditto.
(vdpphps_<mode>_maskz): New expander.
gcc/testsuite/ChangeLog:
* gcc.target/i386/avxvnniint16-1.c: Add new macro test.
* gcc.target/i386/avx-1.c: Ditto.
* gcc.target/i386/sse-13.c: Ditto.
* gcc.target/i386/sse-14.c: Ditto.
* gcc.target/i386/sse-22.c: Ditto.
* gcc.target/i386/sse-23.c: Ditto.
* gcc.target/i386/avx10_2-512-media-1.c: Add test.
* gcc.target/i386/avx10_2-media-1.c: Ditto.
* gcc.target/i386/avxvnniint16-builtin.c: New test.
* gcc.target/i386/avx10_2-512-vdpphps-2.c: Ditto.
* gcc.target/i386/avx10_2-512-vmpsadbw-2.c: Ditto.
* gcc.target/i386/avx10_2-512-vpdpwsud-2.c: Ditto.
* gcc.target/i386/avx10_2-512-vpdpwsuds-2.c: Ditto.
* gcc.target/i386/avx10_2-512-vpdpwusd-2.c: Ditto.
* gcc.target/i386/avx10_2-512-vpdpwusds-2.c: Ditto.
* gcc.target/i386/avx10_2-512-vpdpwuud-2.c: Ditto.
* gcc.target/i386/avx10_2-512-vpdpwuuds-2.c: Ditto.
* gcc.target/i386/avx10_2-builtin-2.c: Ditto.
* gcc.target/i386/avx10_2-vdpphps-2.c: Ditto.
* gcc.target/i386/avx10_2-vmpsadbw-2.c: Ditto.
* gcc.target/i386/avx10_2-vpdpwsud-2.c: Ditto.
* gcc.target/i386/avx10_2-vpdpwsuds-2.c: Ditto.
* gcc.target/i386/avx10_2-vpdpwusd-2.c: Ditto.
* gcc.target/i386/avx10_2-vpdpwusds-2.c: Ditto.
* gcc.target/i386/avx10_2-vpdpwuud-2.c: Ditto.
* gcc.target/i386/avx10_2-vpdpwuuds-2.c: Ditto.
Co-authored-by:
Hongyu Wang <hongyu.wang@intel.com>
Showing
- gcc/config/i386/avx10_2-512mediaintrin.h 280 additions, 0 deletionsgcc/config/i386/avx10_2-512mediaintrin.h
- gcc/config/i386/avx10_2mediaintrin.h 472 additions, 0 deletionsgcc/config/i386/avx10_2mediaintrin.h
- gcc/config/i386/i386-builtin.def 64 additions, 12 deletionsgcc/config/i386/i386-builtin.def
- gcc/config/i386/i386-builtins.cc 6 additions, 5 deletionsgcc/config/i386/i386-builtins.cc
- gcc/config/i386/i386-expand.cc 3 additions, 0 deletionsgcc/config/i386/i386-expand.cc
- gcc/config/i386/sse.md 139 additions, 6 deletionsgcc/config/i386/sse.md
- gcc/testsuite/gcc.target/i386/avx-1.c 8 additions, 0 deletionsgcc/testsuite/gcc.target/i386/avx-1.c
- gcc/testsuite/gcc.target/i386/avx10_2-512-media-1.c 60 additions, 0 deletionsgcc/testsuite/gcc.target/i386/avx10_2-512-media-1.c
- gcc/testsuite/gcc.target/i386/avx10_2-512-vdpphps-2.c 71 additions, 0 deletionsgcc/testsuite/gcc.target/i386/avx10_2-512-vdpphps-2.c
- gcc/testsuite/gcc.target/i386/avx10_2-512-vmpsadbw-2.c 93 additions, 0 deletionsgcc/testsuite/gcc.target/i386/avx10_2-512-vmpsadbw-2.c
- gcc/testsuite/gcc.target/i386/avx10_2-512-vpdpwsud-2.c 71 additions, 0 deletionsgcc/testsuite/gcc.target/i386/avx10_2-512-vpdpwsud-2.c
- gcc/testsuite/gcc.target/i386/avx10_2-512-vpdpwsuds-2.c 74 additions, 0 deletionsgcc/testsuite/gcc.target/i386/avx10_2-512-vpdpwsuds-2.c
- gcc/testsuite/gcc.target/i386/avx10_2-512-vpdpwusd-2.c 71 additions, 0 deletionsgcc/testsuite/gcc.target/i386/avx10_2-512-vpdpwusd-2.c
- gcc/testsuite/gcc.target/i386/avx10_2-512-vpdpwusds-2.c 74 additions, 0 deletionsgcc/testsuite/gcc.target/i386/avx10_2-512-vpdpwusds-2.c
- gcc/testsuite/gcc.target/i386/avx10_2-512-vpdpwuud-2.c 70 additions, 0 deletionsgcc/testsuite/gcc.target/i386/avx10_2-512-vpdpwuud-2.c
- gcc/testsuite/gcc.target/i386/avx10_2-512-vpdpwuuds-2.c 73 additions, 0 deletionsgcc/testsuite/gcc.target/i386/avx10_2-512-vpdpwuuds-2.c
- gcc/testsuite/gcc.target/i386/avx10_2-builtin-2.c 8 additions, 0 deletionsgcc/testsuite/gcc.target/i386/avx10_2-builtin-2.c
- gcc/testsuite/gcc.target/i386/avx10_2-media-1.c 112 additions, 0 deletionsgcc/testsuite/gcc.target/i386/avx10_2-media-1.c
- gcc/testsuite/gcc.target/i386/avx10_2-vdpphps-2.c 16 additions, 0 deletionsgcc/testsuite/gcc.target/i386/avx10_2-vdpphps-2.c
- gcc/testsuite/gcc.target/i386/avx10_2-vmpsadbw-2.c 16 additions, 0 deletionsgcc/testsuite/gcc.target/i386/avx10_2-vmpsadbw-2.c
Loading
Please register or sign in to comment